做得好的营销网站,做网络推广怎么找客户,重庆网站建立,网站集约化建设较好的城市1.ffmpeg主要参数
-f fmt#xff08;输入/输出#xff09; 强制输入或输出文件格式。 格式通常是自动检测输入文件#xff0c;
并从输出文件的文件扩展名中猜测出来#xff0c;所以在大多数情况下这个选项是不需要的。-i url#xff08;输入#xff09; 输入文件的网址-…1.ffmpeg主要参数
-f fmt输入/输出 强制输入或输出文件格式。 格式通常是自动检测输入文件
并从输出文件的文件扩展名中猜测出来所以在大多数情况下这个选项是不需要的。-i url输入 输入文件的网址-y全局参数 覆盖输出文件而不询问-n全局参数 不要覆盖输出文件如果指定的输出文件已经存在请立即退出。-c [stream_specifier] codec输入/输出每个流
选择一个编码器当在输出文件之前使用或解码器当在输入文件之前使用时用于
一个或多个流。codec 是解码器/编码器的名称或 copy仅输出以指示该流不被重新编码。
如ffmpeg -i INPUT -map 0 -c:v libx264 -c:a copy OUTPU-codec [stream_specifier]编解码器输入/输出每个流 同 -c-t duration输入/输出 当用作输入选项在-i之前时限制从输入文件读取的数据的
持续时间。当用作输出选项时在输出url之前在持续时间到达持续时间之后停止输出。-ss位置输入/输出 当用作输入选项时在-i之前在这个输入文件中寻找位置。请注意在大多数格式中不可能精确搜索因此ffmpeg将在位置之前寻找最近的搜索点。
当转码和-accurate_seek被启用时默认搜索点和位置之间的这个额外的分段将被解码和丢弃。当进行流式复制或使用-noaccurate_seek时它将被保留。当用作输出选项在输出url之前时
解码但丢弃输入直到时间戳到达位置。-frames [stream_specifier] framecountoutputper-stream
停止在帧计数帧之后写入流。-filter [stream_specifier] filtergraphoutputper-stream
创建由filtergraph指定的过滤器图并使用它来过滤流。filtergraph是应用于
流的filtergraph的描述并且必须具有相同类型的流的单个输入和单个输出。
在过滤器图形中输入与标签中的标签相关联标签中的输出与标签相关联。
有关filtergraph语法的更多信息请参阅ffmpeg-filters手册。
-------------------------------------------------
2.ffmpeg音频参数
-vframes num输出
设置要输出的视频帧的数量。对于-framesv这是一个过时的别名您应该使用它。-r [stream_specifier]
fps输入/输出每个流设置帧率Hz值分数或缩写。作为输入选项忽略存储
在文件中的任何时间戳根据速率生成新的时间戳。这与用于-framerate选项不同它
在FFmpeg的旧版本中使用的是相同的。如果有疑问请使用-framerate而不是输入选
项-r。作为输出选项复制或丢弃输入帧以实现恒定输出帧频fps。-s [stream_specifier]大小输入/输出每个流 设置窗口大小。作为输入选项
这是video_size专用选项的快捷方式由某些分帧器识别其帧尺寸未被存储在文件中。
作为输出选项这会将缩放视频过滤器插入到相应过滤器图形的末尾。请直接使用比例过
滤器将其插入到开头或其他地方。格式是wxh默认 - 与源相同。-aspect [stream_specifier] 宽高比输出每个流设置方面指定的视频显示宽高比。
aspect可以是浮点数字符串也可以是numden形式的字符串其中num和den是宽高比的
分子和分母。例如“43”“169”“1.3333”和“1.7777”是有效的参数值。如果与-vcodec
副本一起使用则会影响存储在容器级别的宽高比但不会影响存储在编码帧中的宽高比如果存在。-vn输出 禁用视频录制。-vcodec编解码器输出 设置视频编解码器。这是-codecv的别名。-vf filtergraph输出 创建由filtergraph指定的过滤器图并使用它来过滤流。
-----------------------------------
3.编码/解码命令 提取yuv数据
ffmpeg -i testVedio,flv -an -c:v rawivideo -pix_fmt yuv420p out.yuv提取yuv数据
-pix_fmt设置像素格式
-----------------------------------
提取PCM数据
ffmpeg -i break.mp4 -vn -ar 44100 -ac 2 -f s16le out.pcm提取PCM数据
-ar 设置音频采样率
-ac 设置音频通道数目
-f 设置pcm文件数据格式
-------------------------------------
编码命令
ffmpeg -s 1920×1080 -iout.yuv -vcodec h264 out.h264
使用和64编码压缩音频数据ffmpeg -ar 44100 -ac 2 -f sl16le -i out.pcm -acodec libfdk_acc out.acc
使用fdk_aac编码压缩PCM数据
------------------------------------
4.处理原始数据
提取YUV数据
ffmpeg -i input.mp4 -an -c:v rawvideo -pixel_format yuv420p out.yuv
ffplay -s wxh out.yuv
-c:v rawvideo 指定将视频转成原始数据
-pixel_format yuv420p 指定转换格式为yuv420pYUV转H264
ffmpeg -f rawvideo -pix_fmt yuv420p -s 320x240 -r 30 -i out.yuv -c:v libx264 -f rawvideo out.h264提取PCM数据
ffmpeg -i out.mp4 -vn -ar 44100 -ac 2 -f s16le out.pcm
ffplay -ar 44100 -ac 2 -f s16le -i out.pcmPCM转WAV
ffmpeg -f s16be -ar 8000 -ac 2 -acodec pcm_s16be -i input.raw output.wav
-------------------------------------
mp4 的封装格式转成flv
ffmpeg -i out.mp4 -vcodec copy -acodec copy out.flv
-------------------------------------------
5.裁剪/合并命令
裁剪命令
ffmpeg -SS 00:00:00 -t 10 -i break.mp4 -vcodec copy -acodec copy 1.ts
-SS position跳转到输入文件的postion位置可以是秒数或者hh:mm:ss形式
-t duration读取到文件的duration位置可以是秒数或者hh:mm:ss形式
-------------------------------------------
合并命令
ffmpeg -f concat -i input.txt -vcodec copy -acodec copy new.ts
合并input.txt的视频文件列表
input.txt格式: file fileNameffmpeg -i out.h264 -i out.aac -vcodec copy -acodec copy out.mp4
音视频合并
-------------------------------------------
6.图片/视频互转命令
ffmpeg -i break.mp4 -t5 -r 2 -S 1024x768 %3d.jpeg视频转图片-r fps设置图片截取速率可以为浮点数
-S WxH设置截取图片的大小
ffmpeg -i %3d.jpeg out.mp4图片转视频
ffmpeg -i %3d.jpeg -r 5 out.gif图片转gif动图
ffmpeg -i break.mp4 -t 5 -r 30 image.gif视频转gif动图
------------------------------------------ 7.录制命令
ffmpeg -y f x11grab -r 30 -S 1024x768 -i :0.0 -preset ultrafast output.mp4
录制屏幕命令并编码封装成mp4文件-preset设置编码器预设参数
-ultrafast最快的编码方式ffmpeg -f alsa -i pulse -ar 44100 -ac2 -f s16le out.pcm
获取音频数据命令ffmpeg -f avfoundation -i 1:0 -r 29.97 -c:v libx264 -crf 0 -c:a libfdk_aac -profile:a aac_he_v2 -b:a 32k out.flv
录制视频音频命令-i 1:0 冒号前面的 1 代表的屏幕索引号。冒号后面的0代表的声音索相号。
-c:v 与参数 -vcodec 一样表示视频编码器。c 是 codec 的缩写v 是video的缩写。
-crf 是 x264 的参数。 0 表式无损压缩。
-c:a 与参数 -acodec 一样表示音频编码器。
-profile 是 fdk_aac 的参数。 aac_he_v2 表式使用 AAC_HE v2 压缩数据。
-b:a 指定音频码率。 b 是 bitrate的缩写, a是 audio的缩与。
---------------------------------------------
直播命令
ffmpeg -re -i input.mp4 -acodec copy -vcodec copy -f flv rtmp://xxx
推视频流至流媒体服务器-re读取输入的原始帧速率ffmpeg -i http://ivi.bupt.edu.cn/hls/cctv6hd.m3u8 -C copy output.m3u8
保存流媒体服务器上的流至本地
----------------------------------------------------
8.视频处理命令:
ffmpeg -i in.mp3 -filter_ complex atempo0.5 out.mp3
对声音进行变速不变调处理
-filter_ complex filtergraph设置复杂滤镜
atempo设置音频速度因子(0.5 - 100默认1)ffmpeg -i testVideo.flv -vf cropin_ W-200:in_ _h- 100 -vcodec libx264 -c:a copy out.flv
裁剪视频
-vf filtergraph创建和使用filtergraph指定的滤镜组
crop滤镜名称