我录制了一个视频(Ocam,Windows10)并进行了测试。
它运行正常,但当我上传它时,它只在服务器上显示一个音频文件。当我使用 Windows Movie Maker 转换它时,它运行正常。以下是两个文件,用于非常短的 2 秒示例。
以下是文件链接:
转换前 - 仅音频,下载后为视频https://neurodermitis-gesund.de/test/test.mp4
转换后https://neurodermitis-gesund.de/test/test_converted.mp4
我感兴趣的是为什么这在转换后有效而不是之前有效,因为两个文件的视频格式每秒帧数等都是相同的。
我已经在网站管理员上问过这个问题,他们关闭了它并建议我在 SuperUsers 上问
答案1
我感兴趣的是为什么这在转换后有效而不是之前有效,因为两个文件的视频格式每秒帧数等都是相同的。
记住这一点很重要.mp4
是用于不同数据流集(视频和音频)的容器格式并且这些流不能保证在所有软件,服务或设备上运行(即,无论是什么解释该文件都可能无法完全理解它)。
扩展我原来的评论,原始 Ocam 录制和转换后的录制之间的编解码器/音频格式不同。您可以使用以下工具查看此信息:ffprobe(例如Windows 版本的ffmpeg)。撇开一些细微的差别,这两个视频显然使用了不同的视频和音频流:
测试.mp4:
Video: mpeg4 (Simple Profile) (mp4v / 0x7634706D) Audio: mp3 (mp4a / 0x6134706D)
测试_转换.mp4
Video: h264 (High) (avc1 / 0x31637661) Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz
它运行良好,但是当我上传它时,它只在服务器上显示一个音频文件。
在个人测试中,Android 10(基于 *nix)设备能够播放音频(.mp3
)流(但不能播放视频流)test.mp4
。但是,Windows 10 可以完美播放这两个文件。
猜测一下,如果服务器是基于 *nix 的,那么服务器可能能够读取.mp3
音频流test.mp4
但不能读取视频流,这似乎是合理的。因此它将其视为可以读取的部分(即音频文件)。