FFmpeg 系列文章目录 【FFmpeg】Windows 搭建 FFmpeg 命令行运行环境 【FFmpeg】FFmpeg 相关术语简介 ( 容器 | 媒体流 | 数据帧 | 数据包 | 编解码器 | | 帧处理 | 编码 | 复用 ) 【FFmpeg】ffmpeg 命令查询一 ( 版本 | 编译配置 | 复用格式 | 编解码器 ) 【FFmpeg】ffmpeg 命令查询二 ( 比特流过滤器 | 可用协议 | 过滤器 | 像素格式 | 标准声道布局 | 音频采样格式 | 颜色名称 ) 【FFmpeg】ffmpeg 命令查询三 ( 查询 ffmpeg 命令分类支持的参数 ) ---- 文章目录 FFmpeg 四、查询 " 编码器 " 类型设置 libx264 时所支持的参数 五、查询命令设置项以及具体参数 一、查看具体的 ffmpeg 命令分类所支持的参数 ---- 查看具体的 ffmpeg 命令分类所支持的参数语法如下 : 如果在命令中使用了 flv 视频 , 其解复用器可以设置的参数类型 ; ffmpeg -h muxer=flv 执行过程 : 打印出的 flv 视频格式支持的解复用器 ; 命令行输出 :
功能 视频转换和编辑工具 示例 1、从mp4视频文件中提取音频并保存为mp3音频格式 [root@node_116 video]# ffmpeg -i video.mp4 -vn sound.mp3 ffmpeg version 4.1.3-static https://johnvansickle.com/ffmpeg/ Copyright (c) 2000-2019 the FFmpeg developers [root@node_116 video]# ls sound.mp3 video.mp4 2、从视频文件或gif图片中逐帧提取图片,并加上编号。 [root@node_116 video]# ls frame_100.png frame_138.png 此处省略N张图片输去... 3、将png或jpg等图片格式合并成视频文件或gif图片,也就是示例 水印位置对应命令中的x轴和y轴。
参数 说明 -h 帮助 -i filename 输入文件 -t duration 设置处理时间,格式为hh:mm:ss - ss position 设置起始时间,格式为hh:mm:ss -b:v bitrate 设置视频码率 -b:a bitrate 设置音频码率 -r fps 设置帧率 -s wxh 设置帧大小,格式为欸WxH -c:v codec 设视频编码器 -c:a codec 设置音频编码器 -ar freq 设置音频采样率
ffmpeg相关命令 相关概念 音/视频流:在音视频领域,一路音/视频成为一路流。 容器:一般把mp4、flv、mov等文件格式称之为容器。在这些常用格式文件中可以存放多路音视频文件。 基本命令格式 ffmpeg [global_options] {[input_file_options] -i input_url}... -c:a copy srtout3.mp4 ffmpeg -i video.avi -vf subtitles=subtitle.srt out.avi ffmpeg -filter_complex 完整命令: ffmpeg -i input.mp4 -vf delogo=0:0:220:90:100:1 output.mp4 结果如下图所示: 截取视频图像 ffmpeg -i input.mp4 视频剪切 #提取图片 ffmpeg –i test.avi –r 1 –f image2 image-%3d.jpeg #剪切视频 ffmpeg -ss 0:1:30 -t 0:0:20
#合并多个视频,可以使用下面命令行: ffmpeg -i input1.mp4 -i input2.mp4 -i input3.mp4 -lavfi hstack=inputs=3 output.mp4 ffmpeg -f lavfi -i color=c=black:s=1280x720 -vframes 1 black.png 该命令将创建一张1280*720的图片 然后就可以使用下面这个命令来合并成网格视频了 cutebaby_3.mp3 #拼接不同格式的文件,下面的命令合并了三种不同格式的文件,FFmpeg concat 过滤器会重新编码它们。 ] concat=n=3:v=1:a=1 [v] [a]' -map '[v]' -map '[a]' <编码器选项> output.mkv 6、添加字幕 linux 下使用 ffmpeg 的命令 ffmpeg 7、FFMpeg转码命令: 1、wav和MP3转换 ffmpeg -i find_blue.wav -ac 1 -ar 8000 -b:a 16k -f mp3 test.mp3 其中: -ac
,使用 -qscale 0 ffmpeg -i input.webm -qscale 0 output.mp4 3、转换视频文件到音频文件 ffmpeg -i input.mp4 -vn output.mp3 ffmpeg -i input.mp4 -vn -ar 44100 -ac 2 -ab 320 -f mp3 output.mp3 在这里, -vn – 表明我们已经在输出文件中禁用视频录制。 比如说你想要一个来自视频的位置 (200,150),且具有 640 像素宽度和 480 像素高度的视频,命令应该是: $ ffmpeg -i input.mp4 -filter:v "crop=640 /home/sk/myvideos/part4.mp4 现在,接合所有文件,使用命令: ffmpeg -f concat -i join.txt -c copy output.mp4 如果你得到一些像下面的错误 -f concat -safe 0 -i join.txt -c copy output.mp4 上面的命令将接合 part1.mp4、part2.mp4、part3.mp4 和 part4.mp4
摘要 玩视频就会用到FFmpeg,以下是一些我经常用到的命令,或者网上搜集到的命令放在这里做笔记~ 转换格式 转换为 MP4 格式: ffmpeg -i input.mov output.mp4 视频剪切 %03d.png 两个音频合并 ffmpeg -i "concat:30.mp3|50.mp3" -acodec copy 80.mp3 m4a转mp3 ffmpeg -i input.m4a -acodec libmp3lame -aq 2 output.mp3 mp4全复制转换ts ffmpeg -i catfood.mp4 -vcodec copy -acodec copy -vbsf h264_mp4toannexb 《Linux(Centos7)安装Ffmpeg》 《使用ffmpeg提取视频文件中的音频》 《通过Ffmpeg把M3u8格式转换成Mp4》 如需查看其他关于FFmpeg内容也可前往FFmpeg笔记:https ://www.wo.hn.cn/ 完结 以上就是所有关于FFmpeg常用命令的内容,欢迎小伙伴们交流讨论。
文章目录 前言 一、下载 FFMPEG 二、拷贝可执行文件 三、拷贝动态库文件 四、运行 ffmpeg 命令 总结 ---- 前言 Android 中需要使用到 FFMPEG , 先在 Windows 中搭建一个 FFMPEG 命令行环境 , 用于进行验证 , 测试 , 学习 ; ---- 一、下载 FFMPEG 进入 FFMPEG 官网下载界面 http://www.ffmpeg.org/download.html 命令 查看 ffmpeg 版本号 : ffmpeg -version 执行结果 : C:\Users\octop>ffmpeg -version ffmpeg version n4.4-19-g8d172d9409 enable-sdl2 --enable-libsoxr --enable-libsrt --enable-libsvtav1 --enable-libtwolame --enable-libuavs3d 9.100 / 3. 9.100 libpostproc 55. 9.100 / 55. 9.100 ---- 总结 ffmpeg 命令运行环境搭建完毕 , 开始学习 ffmpeg
ffmpeg -version 命令 信息ffmpeg -i options -f 视频/音频/图像/网络推流/ts切片 ffmpeg -formats 查看ffprobe -i xiaoerchuidiao.mp3 -v quiet -print_format json -show_format -show_streams -show_frames 转换ffmpeg -i gs.mpga -qscale 0 gs_b.mp3 合成「ffmpeg -i xiaoerchuidiao.mp3 -i gs_b.mp3 -f mp3 a.mp3」「ffmpeg -i bj.mp3 -q 1 -map a bj_b.mp3」「ffmpeg -f mp3 fix.mp3」 裁剪 ffmpeg -i xiaoerchuidiao.mp3 -ss 00:00:12 -t 00:00:16 -acodec copy -y a.mp3 提取「ffmpeg -i feng.mp4 -r 1 -f image2 image-%3d.png」 「ffmpeg -i feng.mp4 -vf fps=1/60 img%03d.jpg」 水印ffmpeg -
常用命令 (1)水印 overlaye ffmpeg -i good_scale.mp4 -i mark.png -filter_complex overlay=10:10 good_mark.mp4 (2)人物滤镜 colorchannelmixer (3)截取视频片段 copy ffmpeg -ss 5 -i input.mp4 -t 10 -c:v copy -c:a copy ffmpeg -i video_file -i audio_file -c:v copy -c:a copy output_file //合并视频音频流 视 (6)频截图 ffmpeg -ss 01:23 ffmpeg -i input.mp4 %04d.jpg \\第一行命令是把0001.jpg、0002.jpg、0003.jpg等编码成output.mp4, \\第二行则是相反把 (8)视频中去水印delogo ffmpeg -i good_mark.mp4 -vf delogo=x=10:y=10:w=100:h=60 delogo.mp4 (ffmpeg
项目地址: https://github.com/u2takey/ffmpeg-go 使用例子 import ( ffmpeg "github.com/u2takey/ffmpeg-go" ) split Filter("select", ffmpeg.Args{fmt.Sprintf("gte(n,%d)", frameNum)}). Output("pipe:", ffmpeg.KwArgs{"vframes": 1, "format": "image2", "vcodec": "mjpeg"}). Output(outFileName, ffmpeg.KwArgs{"c:v": "libx264", "preset": "veryslow"}). Open-cv (gocv) 一起使用做视频人脸识别 see complete example at: opencv 结果: [hm9281lwu6.jpeg] 支持生成 flowchart [zrp6fggmr3.
注意: 命令参数区分大小写。 ffmpeg支持多输入和多输出。 3. 3.3.1 提取音频 从视频中提取音频文件并保存为MP3格式: ffmpeg -i input.mp4 -vn -acodec mp3 output.mp3 ffmpeg -i input.mp4 -vn -c:a mp3 output.mp3 此命令中,-vn用于忽略视频流,仅输出音频。 3.3.2 合并音视频 可以将音频与视频合并为一个文件: ffmpeg -i video.mp4 -i audio.mp3 -c:v copy -c:a aac output.mp4 此命令将MP4视频和 MP3音频合并成一个新的MP4文件。
-acodec libfaac -f flv rtmp://domain/rtmplive/home 3、推流桌面+麦克风 ffmpeg -f avfoundation -i "1:0" -vcodec copy output_file.mp4 8、视频剪切 ffmpeg –i test.avi –r 1 –f image2 image-%3d.jpeg //提取图片 ffmpeg -ss 0:1:30 第一个使用-vol选项,它接受从0到256的整数值,其中256是最大值 ffmpeg -i music.mp3 -vol 30 sound_low.mp3 另一种方法是使用表中描述的卷过滤器: 音量降低到三分之二 ffmpeg -i music.mp3 -af volume=2/3 quiet_music.mp3 增加10分贝的音量 ffmpeg -i music.mp3 -af volume=10dB ffmpeg -i input.mp3 -vol 400 output.mp3 20、视频转gif ffmpeg -i capx.mp4 -t 10 -s 320x240 -pix_fmt
-window_title "test time" -ss 2 -t 10 -autoexit test.mp4 播放本地 MP3 音频文件 buweishui.mp3 的命令: ffplay buweishui.mp3 更多参考 http://www.ffmpeg.org/ffmpeg-filters.html 09-ffmpeg命令参数说明 主要参数 ● -i 设定输入流 ● -f 设定输出格式(format) ● 在第一个命令中,我们保留了原始编码格式,并直接将音频流复制到输出文件中;而在第二个命令中,我们强制将音频流转换为 MP3 编码格式。同时,在第二个命令中还省略了视频部分,使用了 -vn 参数。 rgb24_320x240_2.rgb 这里我们使用了 -t 参数指定只抽取前 3 秒的数据,在第一个命令中使用了 -pix_fmt 参数指定了输出文件的像素格式为 rgb24,同时在两个命令中都使用了 image2.gif 将 GIF 转化为 视频 ffmpeg -f gif -i image2.gif image2.mp4 15-ffmpeg命令视频录制 ffmpeg命令视频录制(Windows
CMD使用到的命令 D: -> 表示进入D盘 cd /live -> 表示进入某个路径 执行条件 1.ffmpeg.exe 与视频放在同一目录下,纯英文目录 2.执行以上命令进入到ffmpeg.exe所在的目录 3.在当前目录执行 ffmpeg.exe 命令 查看是否执行成功 打开ffmpeg ? rtmp推流 rtmp推流 ffmpeg.exe -re -i "a.mp4" -acodec aac -ar 32000 -vcodec copy -f flv "rtmp://wst.zhihuishu.com k=0a259b-5f10797f" rtmp固定时间推流 ffmpeg.exe -ss 00:02:45 -re -i "a.mp4" -acodec aac -ar 32000 -vcodec
例如,在输入框的左三、中三和右三,我们可以使用命令:ffmpeg -i input -vf crop=iw/3:ih:0:0 output ffmpeg -i input -vf crop=iw/3 :ih:iw/3:0 output ffmpeg -i input -vf crop=iw/3:ih:iw/3*2:0 output练习题:(1)裁剪100x100的区域,起点为(12,34).crop 表达式参考:http://www.ffmpeg.org/ffmpeg-utils.html 3 Expression Evaluationlt(x, y) Return 1 if x is lesser 如果想以多宫格的方式展现,则可以自己建立一个足够大的画布,下面就来看一下多宫格展示的例子:ffmpeg -i 1.mp4 -i 2.mp4 -i 3.mp4 -i 4.mp4 -filter_complex 图片图片只叠加左上右上的命令:ffmpeg -i 1.mp4 -i 2.mp4 -i 3.mp4 -i 4.mp4 -filter_complex "nullsrc=size=640x480[base
` 的命令: ``` ffplay buweishui.mp3 ``` ## 播放网络流 * 播放网络 RTMP 流的命令,使用 `-window_title` 参数设置窗口标题为 "rtmp stream 更多参考 http://www.ffmpeg.org/ffmpeg-filters.html 09-ffmpeg命令参数说明 主要参数 ● -i 设定输入流 ● -f 设定输出格式(format) ● 在第一个命令中,我们保留了原始编码格式,并直接将音频流复制到输出文件中;而在第二个命令中,我们强制将音频流转换为 MP3 编码格式。同时,在第二个命令中还省略了视频部分,使用了 `-vn` 参数。 copy 1.flv ffmpeg -i 2.mp4 -codec copy 2.flv ffmpeg -i 3.mp4 -codec copy 3.flv ``` 开始拼接文件 以MP4格式进行拼接 15-ffmpeg命令视频录制 ffmpeg命令视频录制(Windows) 先安装dshow软件Screen Capturer Recorder ● 项目地址:https://sourceforge.net
例如,在输入框的左三、中三和右三,我们可以使用命令: ffmpeg -i input -vf crop=iw/3:ih:0:0 output ffmpeg -i input -vf crop=iw /3:ih:iw/3:0 output ffmpeg -i input -vf crop=iw/3:ih:iw/3*2:0 output 练习题:(1)裁剪100x100的区域,起点为(12,34 表达式参考:http://www.ffmpeg.org/ffmpeg-utils.html 3 Expression Evaluation lt(x, y) Return 1 if x is lesser overlay画布,画布大小640:480, 使用[0:v][1:v][2:v][3:v]将输入的4个视频流去除,分别进行缩放处理,然后基于nullsrc生成的画布进行视频平铺,命令中自定义upperleft 在这里插入图片描述 在这里插入图片描述 只叠加左上右上的命令: ffmpeg -i 1.mp4 -i 2.mp4 -i 3.mp4 -i 4.mp4 -filter_complex "nullsrc
ffmpeg在做音视频编解码时非常方便,所以很多场景下转码使用的是ffmpeg,铜鼓通过ffmpeg –help命令操作可以看到ffmpeg常见的命令大概分为六部分: 1. ffmpeg 公共做操参数部分 3. 文件主要操作参数部分 4. 视频操作参数部分 5. 音频操作参数部分 6. 字幕操作参数部分 ffmpeg信息查询部分主要参数: ? bbs.chinaffmpeg.com的孙悟空提示,这个列表比较长,还有一些信息,可以自己执行命令查看 根据上图可以看到,在输出的内容中,分为三部分: 第一列是多媒体文件格式的Demuxing支持与 的基本编转码原理 ffmpeg工具主要用途为编码、解码、转码,常用ffmpeg做的为转码操作,使用ffmpeg转码主要原理为: ? 视频编码从rv40转为mpeg4; 3. 视频码率从原来的377 kb/s 转为 200 kb/s; 4.
,看看如何利用 ffmpeg 读取码流中每一帧的信息。 [1 ] 音频帧还是视频帧 [2 ] 关键帧还是非关键帧 [3 ] 帧的数据和大小 [4 ] 时间戳信息 2. 为什么要关注这些信息 ? [1 ] 音频帧还是视频帧 -> 分别送入音频/视频××× [2 ] 关键帧还是非关键帧 -> 追帧优化 [3 ] 帧的数据和大小 -> 取出帧的内容 [4 ] 时间戳信息 -> 音视频同步 3 如何从 ffmpeg 取出这些信息 ? ffmpeg 提供了一个函数 av_read_frame 来完成解封装的过程,它会从码流里面提取每一个音频、视频帧,它使用了结构体 AVPacket 来记录每一帧的信息。