我有一个以.ts结尾的文件(例如,这是前10 MB)。我想将其转换为更主流的格式(例如mp4,MPEG2-PS ...),如果可能的话(例如,重新混合)以无损方式进行。
我已经阅读了如何将.ts文件转换成有用的东西?题。我尝试avidemux
使用视频和音频流的“复制”设置以及MPEG的“ PS”容器格式。失败并显示错误消息“不兼容的音频/对于DVD,音频必须为48 kHz MP2(立体声),AC3,DTS或LPCM(立体声)”。
我还尝试了建议的CLI命令。
avconv -i 10MB.ts -vcodec copy -acodec copy 10MB.mpg
至少在使用VLC播放时,输出文件具有正确的视频,但没有声音。这很令人困惑,因为avconv
似乎已正确检测到音频流。
Input #0, mpegts, from '10MB.ts':
Duration: 00:00:06.36, start: 51523.824800, bitrate: 12563 kb/s
Program 37888
Stream #0.0[0x100]: Video: mpeg2video (Main), yuv420p, 1440x1080 [PAR 4:3 DAR 16:9], 20000 kb/s, 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc
Stream #0.1[0x110]: Audio: aac, 0 channels, fltp, 144 kb/s
Stream #0.2[0x130]: Data: [6][0][0][0] / 0x0006
Stream #0.3[0x138]: Data: [6][0][0][0] / 0x0006
Stream #0.4[0x140]: Data: [13][0][0][0] / 0x000D
Stream #0.5[0x160]: Data: [13][0][0][0] / 0x000D
Stream #0.6[0x161]: Data: [13][0][0][0] / 0x000D
Stream #0.7[0x162]: Data: [13][0][0][0] / 0x000D
Stream #0.8[0x170]: Data: [13][0][0][0] / 0x000D
Stream #0.9[0x171]: Data: [13][0][0][0] / 0x000D
Stream #0.10[0x172]: Data: [13][0][0][0] / 0x000D
Output #0, mpeg, to '10MB.mpg':
Metadata:
encoder : Lavf54.20.4
Stream #0.0: Video: mpeg2video, yuv420p, 1440x1080 [PAR 4:3 DAR 16:9], q=2-31, 20000 kb/s, 90k tbn, 90k tbc
Stream mapping:
Stream #0:0 -> #0:0 (copy)
我还尝试了另一个问题的注释中建议的CLI命令。
avconv -i 10MB.ts -c:v copy -c:a libfaac 10MB.mp4
同样,输出文件中没有声音。
编辑:我试过VLC由@Daniel的建议。这几乎是完美的。这是快速且用户友好的。我只需要单击“转换/保存”,添加输入文件,选择MP4配置文件,将视频编解码器和音频编解码器配置为“保留原始视频/音频轨道”,选择目标文件,然后单击“开始”。视频看起来很完美,但是音频多少有些损坏,但这可能是由于我的视频音频流中有些奇特的东西引起的。
ffmpeg
。