我有一堆.ts视频文件,我想要合并到一个文件中,这样我就可以将它转换成一个.mp4视频。
.ts文件位于“E:\视频测试”文件夹中,如下所示:
E:\videotest\0.ts
E:\videotest\1.ts
[...]
E:\videotest\100.ts我使用PowerShell命令输出.txt文件中的文件:
foreach ($i in Get-ChildItem .\*.ts) {echo "file '$i'" >> mylist.txt}生成的mylist.txt如下所示:
file 'E:\videotest\0.ts'
file 'E:\videotest\1.ts'
[...]
file 'E:\videotest\100.ts' 当我运行命令时:
ffmpeg -f concat -safe "0" -protocol_whitelist "file,http,https,tcp,tls" -i "E:\videotest\concat\mylist.txt" -c copy "E:\videotest\concat\combined_video.ts"我知道错误:
第1行:未知关键字‘Line ://
E:\videotest\concat\mylist.txt:处理输入时发现的无效数据
但是,如果我在文件中添加一个子文件夹层,如下所示:
E:\videotest\0\0.ts
E:\videotest\1\1.ts
[...]
E:\videotest\100\100.ts 并将mylist.txt更改为:
file 'E:\videotest\0\0.ts'
file 'E:\videotest\1\1.ts'
[...]
file 'E:\videotest\100\100.ts' 相同的ffmpeg命令将工作并创建combined_video.ts文件。
为什么转换使用子文件夹结构而不是从主文件夹转换?
如何调整ffmpeg命令以使其工作?
谢谢。
发布于 2020-11-02 15:52:38
事实证明,问题在于"mylist.txt“文件的编码。由于某种原因,它被编码为"UCS-2 LE BOM“。在将其设置为"UTF-8“之后,我能够连接这些文件。
https://stackoverflow.com/questions/64624398
复制相似问题