我正在寻找一个代码来转换目录中的视频文件,该目录中每个视频文件都有多个子文件夹。我想运行一个批处理代码,以便它可以转换视频文件并将其保存在原始文件所在的位置。
例子:
: tree movies/
movies/
├── subfolder1
│ └── movie1.mp4
├── subfolder2
│ └── movie2.mp4
└── subfolder3
└── movie3.mp4
3 directories, 3 files
等等。
我希望输出与我的主要结构相同,但采用.m3u8 格式。
我使用了一个可以手动转换每部电影的代码,但由于某种原因,我只能在该服务器上使用 .m3u8 文件或链接,我无法使其在整个互联网上运行。
for i in *.mp4; do
ffmpeg -i "$i" -c copy -map 0 -hls_time 3 -hls_list_size 0 -f hls "${i%.*}.hls"
done
答案1
来自 Stack Exchange 答案https://unix.stackexchange.com/questions/227662/how-to-rename-multiple-files-using-find
for i in $(find . -name '*.mp4'); do command_you_want_to_execute ; done