本文最后更新于 739 天前,其中的信息可能已经有所发展或是发生改变。
引言
因为接触了YouTube-dl,下载频道的所有内容非常好用,但是下载下来是webm格式兼容性不是太好,于是查看了使用ffmpeg转换格式的命令
早就写好的文章今天才发现没发,要不是Linux自带的视频多数格式不能解码我会不会忘记发布这篇文章啊
配置文件
后来发现改下配置文件就行,在文件后加上
--merge-output-format mp4
放下我的配置文件
-o 'C:/Users/yexca/Downloads/Video/%(uploader)s/%(upload_date)s%(title)s%(id)s.%(ext)s' --merge-output-format mp4
单个命令
使用下述命令即可快速转码
ffmpeg -i before.webm after.mp4
但一个一个转码属实是太慢了,于是想到了使用批处理
批处理
新建记事本,输入以下代码
for %%a in (*.webm) do ffmpeg -i "%%~a" -vcodec copy -f mp4 "%%~na.mp4"
其中(*.webm)为原始文件类型 “%%~na.mp4″为想要生成的文件类型
然后保存并命名为run.bat
后放到相应文件夹运行即可
但这样每次想转不同的文件还得编辑下,不大实用啊(
dos
然后我就看了一点bat文件的东西,简单写了下面的程序(需要使用GB2312
编码才可以正常在命令行输出中文)
echo off
:0
echo 请输入数字选择操作
echo 1.转码
echo 2.删除
echo 3.退出
set /p choice=请选择
goto %choice%
:1
set /p before=请输入转码前文件格式
set /p after=请输入转码后文件格式
echo 开始转码%before%到%after%
for %%a in (*.%before%) do ffmpeg -i "%%~a" -vcodec copy -f %after% "%%~na.%after%"
echo 转码完成
goto 0
:2
set /p delet=请输入需要删除的文件格式
echo 开始删除%delet%
del *.%delet%
del %delet%
echo 删除完成
goto 0
:3
exit
放到相应文件夹下用就好了
参考文章
事实上这段代码基于另一个程序修改(虽然大部分代码重写),但很遗憾我找不到原作者的文章了
FDM挂了,youtube-dl鬼慢,烤肉man的末日到了!中AnnMilne的评论