我试图用ffmpeg连接多个视频,我使用文本文件作为输入,但我得到了"Files.txt:处理输入时发现无效数据;。
我的命令:
ffmpeg -i Files.txt -filter_complex "[0:v]fps=25,format=yuv420p,setpts=PTS-STARTPTS[v0];[0:a]aformat=sample_rates=44100:channel_layouts=stereo,asetpts=PTS-STARTPTS[a0];[1:v]fps=25,format=yuv420p,setpts=PTS-STARTPTS[v1];[1:a]aformat=sample_rates=44100:channel_layouts=stereo,asetpts=PTS-STARTPTS[a1];[v0][a0][v1][a1]concat=n=2:v=1:a=1" -movflags +faststart output.mp4
我的文本文件:
file '1.mp4'
file '2.mp4'
只有concat-demuxer接受文本文件列表
使用concat解复用器:
ffmpeg -f concat -i input.txt output.mp4
或者正常列出输入并使用concat过滤器:
ffmpeg -i 1.mp4 -i 2.mp4 -filter_complex "[0:v]fps=25,format=yuv420p,setpts=PTS-STARTPTS[v0];[0:a]aformat=sample_rates=44100:channel_layouts=stereo,asetpts=PTS-STARTPTS[a0];[1:v]fps=25,format=yuv420p,setpts=PTS-STARTPTS[v1];[1:a]aformat=sample_rates=44100:channel_layouts=stereo,asetpts=PTS-STARTPTS[a1];[v0][a0][v1][a1]concat=n=2:v=1:a=1" -movflags +faststart output.mp4
除非使用如上所示的concat-demuxer,或者在shell中使用某种功能将列表解释为输入,否则不能使用列出输入的文本文件。CCD_ 1没有这样的特征。
您的文件很可能是用非UTF-8编码的。请尝试将文件保存为UTF-8编码。