前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >FFmpeg最全教程

FFmpeg最全教程

作者头像
AI拉呱
发布于 2021-01-14 03:07:30
发布于 2021-01-14 03:07:30
31.5K015
代码可运行
举报
运行总次数:15
代码可运行

文章目录

  • ffmpeg
    • install ffmpeg
      • debian install
      • 简介
    • 基础概念
          • 容器(Container)
          • 流(Stream)
          • 帧(Frame)
          • 编解码器(Codec)
          • 复用/解复用(mux/demux)
          • 帧率
          • 码率
  • FFplay使用指南
        • FFplay是什么
        • FFplay 使用示例
        • 通用选项
        • 主要选项
        • 高级选项
        • 快捷键
        • 参考资料
  • FFmpeg常用命令
        • 常用命令
        • 参考资料
    • 格式转换
      • 参考资料
        • FFmpeg是什么
    • FFmpeg使用方法
        • 主要选项
        • 视频选项
        • 音频选项
        • 高级选项
        • 参考资料
  • FFprobe使用指南
        • FFprobe 是什么 ?
        • FFprobe 使用示例
        • 主要选项
        • 参考资料
  • FFmpeg推流到SRS
      • SRS安装
      • 推流
      • 拉流
      • 参考资料

ffmpeg

install ffmpeg

debian install

  • 编辑/etc/apt/sources.list加入
    • deb http://www.deb-multimedia.org jessie main
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
apt update
apt-get install deb-multimedia-keyring
apt install ffmpeg

简介

​ FFmpeg的名称来自MPEG视频编码标准,前面的“FF”代表“Fast Forward”,FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。可以轻易地实现多种视频格式之间的相互转换。包括如下几个部分:

  • libavformat:用于各种音视频封装格式的生成和解析,包括获取解码所需信息以生成解码上下文结构和读取音视频帧等功能,包含demuxers和muxer库。
  • libavcodec:用于各种类型声音/图像编解码。
  • libavutil:包含一些公共的工具函数。
  • libswscale:用于视频场景比例缩放、色彩映射转换。
  • libpostproc:用于后期效果处理。
  • ffmpeg:是一个命令行工具,用来对视频文件转换格式,也支持对电视卡实时编码。
  • ffsever:是一个HTTP多媒体实时广播流服务器,支持时光平移。
  • ffplay:是一个简单的播放器,使用ffmpeg 库解析和解码,通过SDL显示。
  • ffprobe:收集多媒体文件或流的信息,并以人和机器可读的方式输出。

基础概念

容器(Container)

​ 一种文件格式,比如flv,mkv等。包含下面5种流以及文件头信息。

流(Stream)

​ 一种视频数据信息的传输方式,5种流:音频,视频,字幕,附件,数据。

帧(Frame)

​ 帧代表一幅静止的图像,分为I帧,P帧,B帧。

编解码器(Codec)

​ 是对视频进行压缩或者解压缩,CODEC = COde(编码) +DECode(解码)。

复用/解复用(mux/demux)

​ 把不同的流按照某种容器的规则放入容器,这种行为叫做复用(mux)。

​ 把不同的流从某种容器中解析出来,这种行为叫做解复用(demux)。

帧率

​ 帧率也叫帧频率,帧率是视频文件中每一秒的帧数,肉眼想看到连续移动图像至少需要15帧。

码率

​ 比特率(也叫码率,数据率)是一个确定整体视频/音频质量的参数,秒为单位处理的字节数,码率和视频质量成正比,在视频文件中中比特率用bps来表达。

FFplay使用指南

FFplay是什么
FFplay 使用示例
通用选项
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
'-L'    显示 license
'-h, -?, -help, --help [arg]' 打印帮助信息;可以指定一个参数 arg ,如果不指定,只打印基本选项
    可选的 arg 选项:
    'long'    除基本选项外,还将打印高级选项
    'full'    打印一个完整的选项列表,包含 encoders, decoders, demuxers, muxers, filters 等的共享以及私有选项
    'decoder=decoder_name'    打印名称为 "decoder_name" 的解码器的详细信息
    'encoder=encoder_name'    打印名称为 "encoder_name" 的编码器的详细信息
    'demuxer=demuxer_name'    打印名称为 "demuxer_name" 的 demuxer 的详细信息
    'muxer=muxer_name'        打印名称为 "muxer_name" 的 muxer 的详细信息
    'filter=filter_name'      打印名称为 "filter_name" 的过滤器的详细信息
	
'-version'     显示版本信息
'-formats'     显示有效的格式
'-codecs'      显示 libavcodec 已知的所有编解码器
'-decoders'    显示有效的解码器
'-encoders'    显示有效的编码器
'-bsfs'        显示有效的比特流过滤器
'-protocols'   显示有效的协议
'-filters'     显示 libavfilter 有效的过滤器
'-pix_fmts'    显示有效的像素格式 
'-sample_fmts' 显示有效的采样格式
'-layouts'     显示通道名称以及标准通道布局
'-colors'      显示认可的颜色名称
'-hide_banner' 禁止打印欢迎语;也就是禁止默认会显示的版权信息、编译选项以及库版本信息等
主要选项
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
'-x width'        强制以 "width" 宽度显示
'-y height'       强制以 "height" 高度显示
'-an'	          禁止音频
'-vn'             禁止视频
'-ss pos'         跳转到指定的位置()
'-t duration'     播放 "duration" 秒音/视频
'-bytes'          按字节跳转
'-nodisp'         禁止图像显示(只输出音频)
'-f fmt'          强制使用 "fmt" 格式
'-window_title title'  设置窗口标题(默认为输入文件名)
'-loop number'    循环播放 "number" (0将一直循环)
'-showmode mode'  设置显示模式
    可选的 mode :
    '0, video'    显示视频
    '1, waves'    显示音频波形
    '2, rdft'     显示音频频带
    默认值为 'video',你可以在播放进行时,按 "w" 键在这几种模式间切换

'-i input_file'   指定输入文件
高级选项
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
'-sync type'          设置主时钟为音频、视频、或者外部。默认为音频。主时钟用来进行音视频同步
'-threads count'      设置线程个数
'-autoexit'           播放完成后自动退出
'-exitonkeydown'      任意键按下时退出
'-exitonmousedown'    任意鼠标按键按下时退出
'-acodec codec_name'  强制指定音频解码器为 "codec_name"
'-vcodec codec_name'  强制指定视频解码器为 "codec_name"
'-scodec codec_name'  强制指定字幕解码器为 "codec_name"
快捷键
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
'q, ESC'            退出
'f'                 全屏
'p, SPC'            暂停
'w'                 切换显示模式(视频/音频波形/音频频带)
's'                 步进到下一帧
'left/right'        快退/快进 10'down/up'           快退/快进 1 分钟
'page down/page up' 跳转到前一章/下一章(如果没有章节,快退/快进 10 分钟)
'mouse click'       跳转到鼠标点击的位置(根据鼠标在显示窗口点击的位置计算百分比)
参考资料

FFmpeg常用命令

常用命令

1.分离视频音频流

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ffmpeg -i input_file -vcodec copy -an output_file_video  //分离视频流
ffmpeg -i input_file -acodec copy -vn output_file_audio  //分离音频流

2.视频解复用

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ffmpeg –i test.mp4 –vcodec copy –an –f m4v test.264
ffmpeg –i test.avi –vcodec copy –an –f m4v test.264

3.视频转码

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ffmpeg –i test.mp4 –vcodec h264 –s 352*278 –an –f m4v test.264              //转码为码流原始文件
ffmpeg –i test.mp4 –vcodec h264 –bf 0 –g 25 –s 352*278 –an –f m4v test.264  //转码为码流原始文件
ffmpeg –i test.avi -vcodec mpeg4 –vtag xvid –qsame test_xvid.avi            //转码为封装文件
//-bf B帧数目控制,-g 关键帧间隔控制,-s 分辨率控制

4.视频封装

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ffmpeg –i video_file –i audio_file –vcodec copy –acodec copy output_file

5.视频剪切

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ffmpeg –i test.avi –r 1 –f image2 image-%3d.jpeg        //提取图片
ffmpeg -ss 0:1:30 -t 0:0:20 -i input.avi -vcodec copy -acodec copy output.avi    //剪切视频
//-r 提取图像的频率,-ss 开始时间,-t 持续时间

6.视频录制

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ffmpeg –i rtsp://192.168.3.205:5555/test –vcodec copy out.avi
参考资料

格式转换

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 将mp4文件转换为flv
ffmpeg -i IU.mp4 -acodec aac test.flv   
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
-i "1.avi"		# 输入文件是
-title "Test" 	# 影片的标题
-s 368x208 		# 输出的分辨率为368x208,注意片源一定要是16:9的不然会变形
-r 29.97		# 帧数
-b 1500			# 视频数据流量,用-b xxxx的指令则使用固定码率,还可以用动态码率如:-qscale 4-qscale 64的质量比6-acodec 		# aac音频编码用AAC
-ac 			# 声道数12
-ar 24000		# 声音的采样频率
-ab 128			# 音频数据流量,一般选择326496128
-vol 200		# 200%的音量,自己改
-ab bitrate     # 设置音频码率
-ar freq 		# 设置音频采样率
-ss 			# 指定时间点开始转换任务(time_off set the start time offset),-ss后跟的时间单位为秒 .
-s 320x240 		# 指定分辨率   
-bitexact 		# 使用标准比特率 
-vcodec xvid    # 使用xvid压缩

参考资料

FFmpeg是什么

​ ffmpeg(命令行工具) 是一个快速的音视频转换工具。

FFmpeg使用方法

​ ffmpeg [全局选项] {[输入文件选项] -i ‘输入文件’} … {[输出文件选项] ‘输出文件’}

主要选项
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
-f fmt (input/output)’ 
	强制输入或输出文件格式。通常,输入文件的格式是自动检测的,
	输出文件的格式是通过文件扩展名来进行猜测的,所有该选项大
	多数时候不需要。
‘-i filename (input)’ 
	输入文件名
‘-y (global)’ 
	覆盖输出文件而不询问
‘-n (global)’ 
	不覆盖输出文件,如果一个给定的输出文件已经存在,则立即
	退出
‘-c[:stream_specifier] codec (input/output,per-stream)’
‘-codec[:stream_specifier] codec (input/output,per-stream)为一个或多个流选择一个编码器(当使用在一个输出文件之前时)
	或者一个解码器(当使用在一个输入文件之前时)。codec 是一个
	编码器/解码器名称或者一个特定值“copy”(只适用输出)。
‘-t duration (output)’ 
	当到达 duration 时,停止写输出。
	duration 可以是一个数字(),或者使用hh:mm:ss[.xxx]形式。
	-to 和 -t 是互斥的,-t 优先级更高。
‘-to position (output)’ 
	在 position 处停止写输出。
	duration 可以是一个数字(),或者使用hh:mm:ss[.xxx]形式。
	-to 和 -t 是互斥的,-t 优先级更高。
‘-fs limit_size (output)’
	设置文件大小限制,以字节表示
‘-ss position (input/output)当作为输入选项时(-i 之前),在输入文件中跳转到 position。
	需要注意的是,在大多数格式中,不太可能精确的跳转,因此,
	ffmpeg 将跳转到 position 之前最接近的位置。当进行转码
	并且 ‘-accurate_seek’ 打开时(默认),位于跳转点和 position 
	之间的额外部分将被解码并且丢弃。当做流拷贝或者当使用
	‘-noaccurate_seek’时,它将被保留下来。
	当作为输出选项时(在输出文件名前),解码但是丢弃输入,直到
	时间戳到达 position。
	position 可以是秒或者 hh:mm:ss[.xxx] 形式
‘-itsoffset offset (input)’
	设置输入时间偏移。 offset 将被添加到输入文件的时间戳。指定
	一个正偏移,意味着相应的流将被延时指定时间。
‘-timestamp date (output)’
	在容器中设置录音时间戳
‘-metadata[:metadata_specifier] key=value (output,per-metadata)’
	设置metadata key/value对
‘-target type (output)指定目标文件类型(vcd, svcd, dvd, dv, dv50)。
	type 可以带有 pal-, ntsc- 或 film- 前缀,以使用相应的标准。
	所有的格式选项(bitrate, codecs, buffer sizes)将自动设定。
‘-dframes number (output)’
	设置要录制数据帧的个数。这是 -frames:d 的别名
‘-frames[:stream_specifier] framecount (output,per-stream)’  
	framecount 帧以后,停止写流。
‘-q[:stream_specifier] q (output,per-stream)’
‘-qscale[:stream_specifier] q (output,per-stream)使用固定质量范围(VBR)。
‘-filter[:stream_specifier] filtergraph (output,per-stream)’
	创建filtergraph 指定的过滤图,并使用它来过滤流。
‘-filter_script[:stream_specifier] filename (output,per-stream)’
	该选项与‘-filter’相似,唯一的不同是,它的参数是一个存放
	过滤图的文件的名称。
‘-pre[:stream_specifier] preset_name (output,per-stream)’ 
	指定匹配流的预设
‘-stats (global)’
	打印编码进程/统计信息。默认打开,可以使用 -nostats 禁用。
‘-stdin’ 
	开启标准输入交互。默认打开,除非标准输入作为一个输入。
	可以使用 -nostdin 禁止。
‘-debug_ts (global)’
	打印时间戳信息。默认关闭。
‘-attach filename (output)’
	添加一个附件到输出文件中
‘-dump_attachment[:stream_specifier] filename (input,per-stream)’ 
	提取匹配的附件流到filename指定的文件中。
视频选项
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
-vframes number (output)’
	设置录制视频帧的个数。这是 -frames:v 的别名
‘-r[:stream_specifier] fps (input/output,per-stream)设置帧率(Hz 值, 分数或缩写)-s[:stream_specifier] size (input/output,per-stream)’
	设置帧大小。格式为 ‘wxh’ (默认与源相同)-aspect[:stream_specifier] aspect (output,per-stream)’
	设置视频显示长宽比
‘-vn (output)’
	禁止视频录制
‘-vcodec codec (output)’
	设置视频 codec。这是 -codec:v 的别名
‘-pass[:stream_specifier] n (output,per-stream)’
	选择pass number (1 or 2)。用来进行双行程视频编码。
‘-passlogfile[:stream_specifier] prefix (output,per-stream)’
	设置 two-pass 日志文件名前缀,默认为“ffmpeg2pass”。
‘-vf filtergraph (output)’
	创建 filtergraph 指定的过滤图,并使用它来过滤流。
‘-pix_fmt[:stream_specifier] format (input/output,per-stream)’
	设置像素格式。
‘-sws_flags flags (input/output)’
	设置软缩放标志
‘-vdt n’
	丢弃阈值
‘-psnr’
	计算压缩帧的 PSNR-vstats’
	复制视频编码统计信息到‘vstats_HHMMSS.log’
‘-vstats_file file’
	复制视频编码统计信息到 file
‘-force_key_frames[:stream_specifier] time[,time...] (output,per-stream)’
‘-force_key_frames[:stream_specifier] expr:expr (output,per-stream)’
	在指定的时间戳强制关键帧
‘-copyinkf[:stream_specifier] (output,per-stream)’
	当进行流拷贝时,同时拷贝开头的非关键帧
‘-hwaccel[:stream_specifier] hwaccel (input,per-stream)’
	使用硬件加速来解码匹配的流
‘-hwaccel_device[:stream_specifier] hwaccel_device (input,per-stream)’
	选择硬件加速所使用的设备。该选项只有‘-hwaccel’同时指定时才有意义。
音频选项
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
-aframes number (output)’
	设置录制音频帧的个数。这是 -frames:a 的别名
‘-ar[:stream_specifier] freq (input/output,per-stream)’
	设置音频采样率。
‘-aq q (output)’
	设置音频质量。这是 -q:a 的别名
‘-ac[:stream_specifier] channels (input/output,per-stream)’
	设置音频通道数。
‘-an (output)’
	禁止音频录制
‘-acodec codec (input/output)’
	设置音频codec。这是-codec:a的别名
‘-sample_fmt[:stream_specifier] sample_fmt (output,per-stream)’
	设置音频采样格式
‘-af filtergraph (output)’
	创建filtergraph 所指定的过滤图,并使用它来过滤流
高级选项
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
-map [-]input_file_id[:stream_specifier][,sync_file_id[:stream_specifier]] | [linklabel] (output)’
	指定一个或多个流作为输出文件的源。
	命令行中的第一个 -map 选项,指定输出流0的源,
	第二个 -map 选项,指定输出流1的源,等等。
‘-map_channel [input_file_id.stream_specifier.channel_id|-1][:output_file_id.stream_specifier]’
	将一个给定输入的音频通道映射到一个输出。
‘-map_metadata[:metadata_spec_out] infile[:metadata_spec_in] (output,per-metadata)’
	设置下一个输出文件的 metadata 信息。
‘-map_chapters input_file_index (output)’
	从索引号为 input_file_index 的输入文件中拷贝章节到下一个输出文件中。
‘-timelimit duration (global)’
	ffmpeg 运行 duration 秒后推出
‘-dump (global)’
	将每一个输入包复制到标准输出
‘-hex (global)’
	复制包时,同时复制负载
‘-re (input)’
	以本地帧率读取数据。主要用来模拟一个采集设备,
	或者实时输入流(例如:当从一个文件读取时).-vsync parameter’
	视频同步方法
‘-async samples_per_second’
	音频同步方法
‘-shortest (output)’
	当最短的输入流结束时,终止编码
‘-muxdelay seconds (input)’
	设置最大解封装-解码延时
‘-muxpreload seconds (input)’
	设置初始解封装-解码延时
‘-streamid output-stream-index:new-value (output)’
	为一个输出流分配一个新的stream-id。
‘-bsf[:stream_specifier] bitstream_filters (output,per-stream)’
	为匹配的流设置比特流过滤器
‘-filter_complex filtergraph (global)’
	定义一个复杂的过滤图
‘-lavfi filtergraph (global)’
	定义一个复杂的过滤图。相当于‘-filter_complex’
‘-filter_complex_script filename (global)’
   该选项类似于‘-filter_complex’,唯一的不同是
   它的参数是一个定义过滤图的文件的文件名
‘-accurate_seek (input)’
   打开或禁止在输入文件中的精确跳转。默认打开。
参考资料

FFprobe使用指南

FFprobe 是什么 ?

​ ffprobe 是一个多媒体流分析工具。它从多媒体流中收集信息,并且以人类和机器可读的形式打印出来。它可以用来检测多媒体流的容器类型,以及每一个多媒体流的格式和类型。它可以作为一个独立的应用来使用,也可以结合文本过滤器执行更复杂的处理。

FFprobe 使用示例
主要选项
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
-f format’    强制使用的格式  
‘-unit’        显示值的单位  
‘-prefix’      显示的值使用标准国际单位制词头  
‘-byte_binary_prefix’ 对字节值强制使用二进制前缀  
‘-sexagesimal’ 时间值使用六十进位的格式 HH:MM:SS.MICROSECONDS-pretty’      美化显示值的格式。它相当于 "-unit -prefix -byte_binary_prefix -sexagesimal"-of, -print_format writer_name[=writer_options]’   
              设置输出打印格式。writer_name 指定打印程序 (writer) 的名称,writer_options   
              指定传递给 writer 的选项。例如:将输出打印为 JSON 格式:-print_format json   
‘-select_streams stream_specifier’   
              只选择 stream_specifier 指定的流。该选项只影响那些与流相关的选项  
              (例如:show_streams, show_packets,)。  
              举例:只显示音频流,使用命令:  
                ffprobe -show_streams -select_streams a INPUT-show_data’ 显示有效载荷数据,以十六进制和ASCII转储。与 ‘-show_packets’ 结合使用,它将   
              dump 包数据;与 ‘-show_streams’ 结合使用,它将 dump codec 附加数据。  
‘-show_error’    显示探测输入文件时的错误信息  
‘-show_format’   显示输入多媒体流的容器格式信息  
‘-show_packets’  显示输入多媒体流中每一个包的信息  
‘-show_frames’   显示输入多媒体流中的每一帧以及字幕的信息  
‘-show_streams’  显示输入多媒体流中每一个流的信息  
‘-show_programs’ 显示输入多媒体流中程序以及它们的流的信息  
‘-show_chapters’ 显示格式中存储的章节信息  
‘-count_frames’  计算每一个流中的帧数,在相应的段中进行显示  
‘-count_packets’ 计算每一个流中的包数,在相应的段中进行显示  
‘-show_program_version’   显示程序版本及配置相关信息  
‘-show_library_versions’  显示库版本相关信息  
‘-show_versions’          显示程序和库版本相关信息。相当于同时设置‘-show_program_version’ 和   
                          ‘-show_library_versions’  
‘-i input_file’           指定输入文件  
参考资料

FFmpeg推流到SRS

SRS安装

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
unzip SRS-CentOS6-x86_64-2.0.243.zip
cd SRS-CentOS6-x86_64-2.0.243/
bash   INSTALL 
/etc/init.d/srs start

推流

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ffmpeg -re -i "/root/test.flv" -vcodec copy -acodec copy -f flv rtmp://172.17.229.3/live/test001 

ffmpeg -re -i 20190314.mp4 -c copy -f flv rtmp://172.17.229.3/live/test001
# -r 以本地帧频读数据,主要用于模拟捕获设备。
# 表示ffmpeg将按照帧率发送数据,不会按照最高的效率发送

拉流

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ffmpeg -i rtmp://server/live/streamName -c copy dump.flv

参考资料

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/12/29 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
FFmpeg常用指令
然后就是用.Net调用FFmpeg,在网上找了下开源程序发现了一个FFmpegCore结果没有找到文档,算了还是原生cmd调用吧。 然后就有了这么个玩意
SingYi
2022/07/13
3.2K0
FFmpeg常用指令
【FFmpeg】FFmpeg 帮助文档使用
【FFmpeg】FFmpeg 相关术语简介 【FFmpeg】FFmpeg 相关术语简介 二
韩曙亮
2023/03/29
6.7K0
【FFmpeg】FFmpeg 帮助文档使用
ffplay文档[通俗易懂]
FFplay是一个使用FFmpeg库和SDL库的非常简单和便携的媒体播放器。它主要用作各种FFmpeg API的测试平台。
全栈程序员站长
2022/07/05
2.7K0
FFmpeg 入门
下图是另一个例子: ffplay -f lavfi -i rgbtestsrc -vf "split[a][b];[a]pad=2*iw[1];[b]vflip[2];[1][2]overlay=w"
王磊-字节跳动
2021/06/27
4.7K0
FFmpeg使用手册 - FFmpeg 的基本组成
1 FFmpeg 的基本组成 FFmpeg 的基本组成包含Format、Codec、Filter、Devices、Utils等,结构如图:
用户3765803
2019/03/05
2.9K0
FFmpeg使用手册 - FFmpeg 的基本组成
1.ffmpeg、ffplay、ffprobe命令使用
ffmpeg命令- 用于转码的应用程序, 也可以从url/现场音频/视频源抓取输入源
诺谦
2020/05/18
2.6K0
1.ffmpeg、ffplay、ffprobe命令使用
FFmpeg常用命令讲解及实战二
FFmpeg 有三个作用不同的工具软件 ffmpeg.exe,ffplay.exe,ffprobe.exe,本文主要讲讲这些工具软件的使用方法。
Gnep@97
2023/11/24
5890
FFmpeg常用命令讲解及实战二
FFmpeg 参数使用说明
FFmpeg是一款非常好用的多媒体框架,软件支持视频解码、视频格式转换、视频裁剪等各种实用功能。FFmpeg可以被各种代码语言调用,帮助用户轻松完成各种视频音频处理,是编程人员非常熟悉的一款多媒体处理工具。KK下载站为您提供FFmpeg官方下载,有需要的朋友可以下载使用哦!
西里国际站
2023/04/19
1.9K0
ffmpeg常用命令
FFmpeg是一个强大的开源多媒体处理工具,它可以用于录制、转换以及流化音频和视频。它是一个跨平台的项目,可以在多种操作系统上运行,包括Windows、Mac OS和Linux。这个工具可以执行各种各样的音视频处理任务,包括但不限于:
Jensen_97
2024/04/18
4960
FFmpeg常用命令行讲解及实战一
上图红框内为编译选项,编译选项支持编解码的格式、封装的格式及网络协议等等第三方包。其中比较常用的:
Gnep@97
2023/11/21
1.8K0
FFmpeg常用命令行讲解及实战一
FFmpeg命令也就这几类了吧
FFmpeg作为多媒体处理领域的强大开源工具,提供了丰富的音视频处理命令,广泛用于视频转换、格式处理、流媒体传输等。FFmpeg操作基于命令行,灵活而高效,涵盖多种应用场景。本文将为您提供最全的FFmpeg命令讲解,从基础命令结构到各类详细应用示例,帮助您轻松掌握FFmpeg的实用技巧。
程序员的园
2024/11/14
2720
FFmpeg命令也就这几类了吧
FFmpeg从入门到精通-云享读书会
FFmpeg是一款开源软件,用于生成处理多媒体数据的各类库和程序。FFmpeg可以转码、处理视频和图片(调整视频、图片大小,去噪等)、打包、传输及播放视频。作为最受欢迎的视频和图像处理软件,它被来自各行各业的不同公司所广泛使用。
DS小龙哥
2022/10/06
5.4K0
FFmpeg从入门到精通-云享读书会
音视频基本概念和FFmpeg的简单入门
最近正好有音视频编辑的需求,虽然之前粗略的了解过FFmpeg不过肯定是不够用的,借此重新学习下;
乔达摩@嘿
2022/05/10
1.3K0
音视频基本概念和FFmpeg的简单入门
ffmpeg结构梳理总结
导语:初学ffmpeg的人往往觉得ffmpeg纷繁复杂,不知道从何处下手,感觉理不清头绪。这篇文章就是尽量帮助大家理清ffmpeg的逻辑结构和学习路线。
汪秀军
2018/08/11
2.6K1
ffmpeg结构梳理总结
ffmpeg 入门
http://einverne.github.io/post/2015/12/ffmpeg-first.html
bear_fish
2018/09/19
2.9K0
音视频平凡之路之FFmpeg全面介绍
FFmpeg中的FF全称是"Fast Forward",后面的mpeg全称是"Moving Picture Experts Group"(动态图像专家组),FFmpeg既是一款音视频编解码工具,也是一组音视频编解码开发套件,作为编解码开发套件,它为开发者提供了丰富的音视频处理的调用接口。
马上就说
2020/11/11
2.1K0
音视频平凡之路之FFmpeg全面介绍
[1304]ffmpeg安装及使用
FFmpeg是一款功能强大的开源多媒体处理工具,它支持几乎所有的视频和音频格式,以及几乎所有的编解码器。
周小董
2024/11/24
2.3K0
[1304]ffmpeg安装及使用
实战详细讲解ffmpeg命令的使用(来自一线的经验,视频合并&avi转MP4&补空白音频【收藏下来一定用的到】)
ffmpeg是一个非常快速的视频和音频转换器,也可以从实时音频/视频源中抓取。它还可以在任意采样率之间进行转换,并使用高质量的多相滤波器动态调整视频大小。他能够兼容Windows,Linux以及mac三种操作系统(说白了就是这三种操作系统都能用)。ffmpeg的下载地址是:ffmpeg的下载地址 安装过程没啥好说的,按照提示一直点下一步就行了。这里需要说明的一点是ffmpeg安装好之后最好在PATH中配置ffmpeg的环境变量。配置好之后在命令行中输入ffmpeg会出现如下结果:
码农飞哥
2021/09/14
23.9K2
实战详细讲解ffmpeg命令的使用(来自一线的经验,视频合并&avi转MP4&补空白音频【收藏下来一定用的到】)
FFmpeg 使用教程
默认的编译会生成4个可执行文件和8个静态库。可执行文件包括用于转码、推流、Dump媒体文件的ffmpeg、用于播放媒体文件的ffplay、
派大星在吗
2021/12/06
1.6K0
使用ffmpeg下载m3u8流媒体-转mp4用于video组件播放
编译好的windows可用版本的下载地址(官网中可以连接到这个网站,和官方网站保持同步):http://ffmpeg.zeranoe.com/builds/
用户10106350
2022/10/28
1.5K0
使用ffmpeg下载m3u8流媒体-转mp4用于video组件播放
相关推荐
FFmpeg常用指令
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验