`

Ffmpeg快速命令使用

阅读更多

Ffmpeg使用语法

ffmpeg [[options][`-i' input_file]]... {[options] output_file}...

如果没有输入文件,那么视音频捕捉(只在Linux下有效,因为Linux下把音视频设备当作文件句柄来处理)就会起作用。作为通用的规则,选项一 般用于下一个特定的文件。如果你给 –b 64选项,改选会设置下一个视频速率。对于原始输入文件,格式选项可能是需要的。缺省情况下,ffmpeg试图尽可能的无损转换,采用与输入同样的音频视 频参数来输出。


ffmpeg转换所涉及到的选项较多,可参考ffmpeg选项详解


ffmpeg支持多种文件格式和多种音频、视频编码器,可参考ffmepg格式详解 ,(附:常见视频文件格式详解

视频文件截图

  • 截取一张352x240尺寸大小的,格式为jpg的图片
ffmpeg -i test.asf -y -f image2 -t 0.001 -s 352x240 a.jpg
  • 把视频的前30帧转换成一个Animated Gif
ffmpeg -i test.asf -vframes 30 -y -f gif a.gif
  • 截取指定时间的缩微图
ffmpeg -i test.avi -y -f image2 -ss 8 -t 0.001 -s 350x240 test.jpg
-ss后跟的时间单位为秒
  • 转换文件为3GP格式
ffmpeg -y -i test.mpeg -bitexact -vcodec h263 -b 128 -r 15 -s 176x144 
 -acodec aac -ac 2 -ar 22500 -ab 24 -f 3gp test.3gp
ffmpeg -y -i test.wmv -ac 1 -acodec libamr_nb -ar 8000 -ab 12200 -s 176x144 -b 128 -r 15 test.3gp

视频格式转换

  • 如何使用 ffmpeg 编码得到高质量的视频
ffmpeg.exe -i "D:\Video\Fearless\Fearless.avi" -target film-dvd -s 720x352
 -padtop 64 -padbottom 64 -maxrate 7350000 -b 3700000 -sc_threshold 1000000000 
 -trellis -cgop -g 12 -bf 2 -qblur 0.3 -qcomp 0.7 -me full -dc 10 -mbd 2
 -aspect 16:9 -pass 2 -passlogfile "D:\Video\ffmpegencode" -an -f mpeg2video "D:\Fearless.m2v"
  • 转换指定格式文件到FLV格式
ffmpeg.exe -i test.mp3 -ab 56 -ar 22050 -b 500 -r 15 -s 320x240 f:\test.flv 
ffmpeg.exe -i test.wmv -ab 56 -ar 22050 -b 500 -r 15 -s 320x240 f:\test.flv
  • 转码解密的VOB
ffmpeg -i snatch_1.vob -f avi -vcodec mpeg4 -b 800 -g 300 -bf 2 -acodec mp3 -ab 128 snatch.avi
上面的命令行将vob的文件转化成avi文件,mpeg4的视频和mp3的音频。注意命令中使用了B帧,所以mpeg4流是divx5兼容的。GOP大小是300意味着29.97帧频下每10秒就有INTRA帧。该映射在音频语言的DVD转码时候尤其有用。
  • 同时编码到几种格式并且在输入流和输出流之间建立映射
ffmpeg -i /tmp/a.wav -ab 64 /tmp/a.mp2 -ab 128 /tmp/b.mp2 -map 0:0 -map 0:0
上面的命令行转换一个64Kbits 的a.wav到128kbits的a.mp2 ‘-map file:index’在输出流的顺序上定义了哪一路输入流是用于每一个输出流的。
  • 转换文件为3GP格式
ffmpeg -i test.avi -y -b 20 -s sqcif -r 10 -acodec amr_wb -ab 23.85 -ac 1 -ar 16000 test.3gp
注:如果要转换为3GP格式,则ffmpeg在编译时必须加上–enable-amr_nb –enable-amr_wb,详细内容可参考:转换视频为3GPP格式
  • 转换文件为MP4格式(支持iPhone/iTouch)
ffmpeg  -y  -i input.wmv  -f mp4 -async 1-s 480x320  -acodec libfaac -vcodec libxvid  -qscale 7 -dts_delta_threshold 1 output.mp4
ffmpeg  -y  -i source_video.avi input -acodec libfaac -ab 128000 -vcodec mpeg4 -b 1200000 -mbd 2 -flags +4mv+trell -aic 2 -cmp 2 -subcmp 2 -s 320x180 -title X final_video.mp4
  • 将一段音频与一段视频混合
ffmpeg -i son.wav -i video_origine.avi video_finale.mpg
  • 将一段视频转换为DVD格式
ffmpeg -i source_video.avi -target pal-dvd -ps 2000000000 -aspect 16:9 finale_video.mpeg
注:target pal-dvd : Output format ps 2000000000 maximum size for the output file, in bits (here, 2 Gb) aspect 16:9 : Widescreen
  • 转换一段视频为DivX格式
ffmpeg -i video_origine.avi -s 320x240 -vcodec msmpeg4v2 video_finale.avi
  • Turn X images to a video sequence
ffmpeg -f image2 -i image%d.jpg video.mpg
注:This command will transform all the images from the current directory (named image1.jpg, image2.jpg, etc...) to a video file named video.mpg.
  • Turn a video to X images
ffmpeg -i video.mpg image%d.jpg
注:This command will generate the files named image1.jpg, image2.jpg, ...
The following image formats are also availables : PGM, PPM, PAM, PGMYUV, JPEG, GIF, PNG, TIFF, SGI.

屏幕录制

  • 使用ffmpeg录像屏幕
ffmpeg -vcodec mpeg4 -b 1000 -r 10 -g 300 -vd x11:0,0 -s 1024x768 ~/test.avi

:其中,-vd x11:0,0 指录制所使用的偏移为 x=0 和 y=0,-s 1024×768 指录制视频的大小为 1024×768。录制的视频文件为 test.avi,将保存到用户主目录中

如果你只想录制一个应用程序窗口或者桌面上的一个固定区域,那么可以指定偏移位置和区域大小。使用xwininfo -frame命令可以完成查找上述参数。

 

  • 重新调整视频尺寸大小
ffmpeg -vcodec mpeg4 -b 1000 -r 10 -g 300 -i ~/test.avi -s 800×600 ~/test-800-600.avi
注:ffmpeg的屏幕录制功能只能在Linux环境下有效。

视频采集

  • 把摄像头的实时视频录制下来,存储为文件
ffmpeg  -f video4linux -s 320*240 -r 10 -i /dev/video0  test.asf
更多信息可参考ffmpeg工程组论坛的讨论贴:有关ffmpeg的视频采集
注:ffmpeg的视频采集功能只能在Linux环境下使用

使用ffmpeg压制H.264视频

ffmpeg -threads 4 -i INPUT -r 29.97 -vcodec libx264 -s 480x272 -flags +loop -cmp +chroma -deblockalpha 0 -deblockbeta 0 -crf 24 
-bt 256k -refs 1 -coder 0 -me umh -me_range 16 -subq 5 -partitions +parti4x4+parti8x8+partp8x8 -g 250 -keyint_min 25 -level 30 
-qmin 10 -qmax 51 -trellis 2 -sc_threshold 40 -i_qfactor 0.71 -acodec libfaac -ab 128k -ar 48000 -ac 2 OUTPUT
注:使用该指令可以压缩出比较清晰,而且文件转小的H.264视频文件
分享到:
评论

相关推荐

    ffmpeg转码截取、截图、合并

    `ffmpeg命令详解.doc`和`ffmpeg快速命令使用.pdf`是关于FFmpeg命令的详细文档,可以帮助你深入理解各种选项和参数。`ffmpeg获取视频时长.txt`则可能包含如何使用FFmpeg获取视频长度的信息,这对于视频处理的预处理...

    ffmpeg命令手册及例程(官网)-2021.pdf

    ffmpeg 命令手册及例程(官网)-2021 ffmpeg 是一个功能强大且快速的视频和音频转换器,可以从直播音视频源抓取视频和音频,也可以在高质量的多相位滤波器中实时调整视频大小和采样率。ffmpeg 可以从多个输入文件...

    FFMpeg常用命令

    FFMpeg常用命令详解 FFMpeg是一款功能强大、功能多样化的音视频处理工具,提供了丰富的命令选项和参数,能够满足各种音视频处理需求。下面是FFMpeg常用命令的...通过master这些命令,可以快速地实现音视频处理任务。

    ffmpeg OSX 命令文件

    这个"ffmpeg OSX 命令文件"可能包含了关于如何在macOS上使用FFmpeg的详细指南和示例。 首先,让我们了解一下FFmpeg的基本使用: 1. 安装FFmpeg:在macOS上,你可以通过Homebrew来安装FFmpeg。打开终端,输入`brew ...

    FFmpeg使用手册(FFmpeg官方文档中文翻译)

    FFmpeg是一款强大的开源多媒体处理工具,它包含了音...综上所述,FFmpeg使用手册(FFmpeg官方文档中文翻译)提供了全面的FFmpeg使用指南,无论是初学者还是经验丰富的开发者,都能从中受益,快速掌握FFmpeg的各项功能。

    ffmpeg编译及使用

    通过以下命令可以获取最新的ffmpeg源代码: ```bash svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg ``` #### 三、支持库的安装与编译 为了增强ffmpeg的功能,需要额外安装和编译一系列的多媒体库,...

    ffmpeg命令详解

    本文将深入解析ffmpeg的使用方法,通过具体的命令示例,帮助读者更好地理解和应用这一工具。 #### 基础命令与应用场景 1. **视频与音频合成** - 将一系列图片序列帧与音频文件合并成视频。例如,将`darkdoor.[001...

    ffmpeg.exe使用说明

    ### ffmpeg.exe 使用说明详解 #### 一、简介 `ffmpeg.exe`是一款强大的多媒体...通过上述命令,您可以灵活地使用`ffmpeg.exe`进行视频和音频的处理工作。希望本文能帮助您更好地理解和掌握`ffmpeg.exe`的强大功能。

    ffmpeg命令整理 1

    使用 FFmpeg 截图非常简单,通过 `-ss` 参数设置截取时间点,`-t` 参数设置截取时长,`-f mjpeg` 或 `-f image2` 指定输出格式为JPEG或PNG图片,`-i` 指定输入文件,`-y` 表示覆盖已存在文件。例如: ``` ffmpeg ...

    java中使用FFMpeg获取视频时长

    使用它,可以创建Java对象来执行FFmpeg命令。 - `fluent-ffmpeg`:这是一个更高级的Java库,提供了更友好的API来操作FFmpeg。它不仅支持基本的FFmpeg命令,还提供了一些额外的功能,如流处理和转换。 3. **获取...

    可以使用的ffmpeg-4.2.2-win64-static.zip

    下面我们将深入探讨FFmpeg的核心功能、如何使用以及压缩包内的文件作用。 1. FFmpeg核心功能: - 音频和视频编码:FFmpeg支持多种编码格式,如H.264、VP9、AAC、Opus等,可用于将文件编码为适合网络传输或存储的...

    FFmpeg中文使用说明.zip

    总的来说,FFmpeg的中文使用手册详细地解释了这些命令和参数的含义,帮助用户快速掌握这个工具,无论你是音视频制作人员还是开发者,都能从中受益匪浅。手册中还可能包含实际案例和故障排查指南,以解决你在使用过程...

    ffmpeg-0.4.9.rar_ffmpeg_ffmpeg-0.4.8

    - 影视后期制作:视频编辑者可以利用FFmpeg进行快速的视频格式转换,或者从长视频中提取精华片段。 - 直播服务:直播平台可以通过FFmpeg接收并分发视频流,确保用户可以流畅观看。 - 自动化脚本:开发者可以编写...

    ffmpeg一键安装包

    FFmpeg 是一个强大的开源多媒体处理工具,用于...总的来说,这个"ffmpeg一键安装包"对于那些在Linux环境中需要快速使用FFmpeg的用户来说,是一个非常实用的工具,它消除了手动安装的复杂性,让FFmpeg的使用更加便捷。

    ffmpeg-rpm.zip

    这对于系统管理员和开发者来说是一个非常便利的功能,尤其对于那些需要在多台服务器上快速部署FFmpeg的场景。 总的来说,"ffmpeg-rpm.zip"提供了一种便捷的方式,在Linux系统中安装和管理FFmpeg的最新版本,其中...

    ffmpeg实现视频截图

    在视频截图方面,FFmpeg提供了一种简单而高效的方法,可以快速从视频中抓取静态图像。以下是对这个主题的详细解释。 1. FFmpeg基本使用: FFmpeg是一个命令行工具,通过在终端或命令提示符中输入相应的命令来执行...

    ffmpeg压缩视频功能

    1. 执行FFmpeg命令:在Android应用中,你可以通过JNI(Java Native Interface)调用FFmpeg命令。首先,编写一个C/C++接口,如`executeFFmpegCmd`,接收命令字符串作为参数,并调用系统调用来执行FFmpeg命令。 2. ...

    ffmpeg封装H246为MP4

    在本文中,我们将详细讨论如何使用FFmpeg将H264编码的视频流封装到MP4容器中,这是一项常见的任务,特别是在处理网络视频流或进行多媒体文件格式转换时。 首先,理解H264和MP4是非常必要的。H264,也称为AVC...

    利用ffmpeg获取视频封面图,时长信息

    本篇文章将详细探讨如何使用`ffmpeg`来获取视频的封面图以及视频的时长信息,尤其对于Java开发者来说,这些知识是进行多媒体处理时的基础。 首先,让我们了解如何通过`ffmpeg`获取视频封面图。视频封面图通常是指...

Global site tag (gtag.js) - Google Analytics