使用ffmpeg将一个目录下的mkv格式的视频文件转换成mp4格式

最近学剪辑,从BT种子下载的素材资源都是mkv格式的,不能直接导入到视频剪辑软件中。这种情况下需要用一些格式转换工具进行转换,也可以使用ffmpeg进行编辑。

ffmpeg是一个命令行工具,用来对本地的音频视频软件进行编辑。ffmpeg我也是头一次使用,虽然知道它的功能强大,但之前了解之后安装放在自己的电脑上,就没动过了,趁着这次尝试一下。

首先,我用迅雷将影视资源下载到的目录如下:

ffmpeg处理一个文件的命令有两种方式:

  • ffmpeg -i 要转换的视频地址 转换后的视频存放地址
  • ffmpeg -i 要转换的视频地址 -c copy 转换后的视频存放地址
    两种方式的区别为将前者会重新将原视频进行编码后再进行转换,后者则不编码直接进行转换。所以后者速度上会快一些。这里选择第二种方式对上图中第一个mkv文件进行尝试转换,输出的目录为我的桌面。

输入第一部分命令后,将文件直接拖拽到命令行空格处,自动将目录粘贴,并继续输入自己的存储路径,我这里先保存到桌面,/Users/guolianxin/Desktop,如下:

发现报错了,原因是存储的路径并不是指一个文件夹,而是要附带上转换的格式。

我重新添加了内容要保存为的文件明名字和格式后缀,成功在桌面生成了目标文件。

打开文件,出现问题:提示无法打开文件或流。

报错如下:
[mp4 @ 0x12f607870] track 1: codec frame size is not set [mp4 @ 0x12f607870] flac in MP4 support is experimental, add '-strict -2' if you want to use it. Could not write header for output file #0 (incorrect codec parameters ?): Experimental feature Error initializing output stream 0:1 --

网上搜了一下,发现是编码为mp4时使用flac是实验性的,需要添加允许的命令,以及写入的文件头有问题。

我也不会,找了其他命令:
ffmpeg -i 输入路径 -c:v copy -c:a aac -strict -2 输出路径

然后处理了十几秒,成功导出:

相关推荐
runing_an_min34 分钟前
ffmpeg视频滤镜:提取缩略图-framestep
ffmpeg·音视频·framestep
韩曙亮13 小时前
【FFmpeg】FFmpeg 内存结构 ③ ( AVPacket 函数简介 | av_packet_ref 函数 | av_packet_clone 函数 )
ffmpeg·音视频·avpacket·av_packet_clone·av_packet_ref·ffmpeg内存结构
oushaojun217 小时前
ubuntu中使用ffmpeg和nginx推流rtmp视频
nginx·ubuntu·ffmpeg·rtmp
莫固执,朋友18 小时前
网络抓包工具tcpdump 在海思平台上的编译使用
网络·ffmpeg·音视频·tcpdump
lxkj_202419 小时前
修改ffmpeg实现https-flv内容加密
网络协议·https·ffmpeg
cuijiecheng201819 小时前
音视频入门基础:MPEG2-TS专题(6)——FFmpeg源码中,获取MPEG2-TS传输流每个transport packet长度的实现
ffmpeg·音视频
VisionX Lab1 天前
数据脱敏工具:基于 FFmpeg 的视频批量裁剪
python·ffmpeg·音视频
柳鲲鹏2 天前
全网首发:Ubuntu编译跨平台嵌入式支持ffmpeg的OpenCV
linux·ubuntu·ffmpeg
冰山一脚20132 天前
ffplay音频SDL播放处理
ffmpeg
cuijiecheng20182 天前
音视频入门基础:MPEG2-TS专题(7)——FFmpeg源码中,读取出一个transport packet数据的实现
ffmpeg·音视频