zoukankan      html  css  js  c++  java
  • ffmpeg工具的使用

    1、多个mp3文件合并成一个mp3文件

    ffmpeg64.exe -i "concat:123.mp3|124.mp3" -acodec copy output.mp3
    解释:-i代表输入参数
              contact:123.mp3|124.mp3代表着需要连接到一起的音频文件
               -acodec copy output.mp3 重新编码并复制到新文件中
    拼接的另一种方式,未验证
    $ cat mylist.txt file
    '/path/to/file1' file '/path/to/file2' file '/path/to/file3' $ ffmpeg -f concat -i mylist.txt -c copy output
     
    2、音频文件格式转换
     
    ffmpeg64.exe -i null.ape -ar 44100 -ac 2 -ab 16k -vol 50 -f mp3 null.mp3
    解释:-i代表输入参数
               -acodec aac(音频编码用AAC) 
              -ar 设置音频采样频率
              -ac  设置音频通道数
              -ab 设定声音比特率
               -vol <百分比> 设定音量
     
    3、ffmpeg实现一张图片+音频合成视频

    ffmpeg -loop 1 -i “%img% -i“ %audio%” -c:a copy -c:v libx264 -s 1280x720 -pix_fmt yuv420p -r 15 -shortest "%output%"

    -loop 1 :因为只有一张图片所以必须加入这个参数(循环这张图片)
    -pix_fmt:指定图片输入格式(有yuv420,yuv444等各种格式)
    -s :指定视频的分辨率
    -vcodec libx264:生成视频的编码格式,这里指定的是x264

    ffmpeg -loop 1 -i *.jpg -i *.mp3 -c:v libx264 -tune stillimage -c:a aac -strict experimental -b:a 192k -pix_fmt yuv420p -shortest out.mp4

    4、将视频分割成图像

      ffmpeg -i video.flv image%d.jpg  

    该命令生成名为image1.jpg,image2.jpg等文件...

    5、将照片或横幅添加到音频

    ffmpeg -loop 1 -i image.jpg -i Heaven.mp3 -c:v libx264 -c:a aac -strict experimental -b:a 192k -shortest output.mp4

    6、多张图片和音频合成视频

    ffmpeg -threads 2 -y -r 10 -i /tmpdir/image%04d.jpg -i audio.mp3 -absf aac_adtstoasc output.mp4

    -threads 2 以两个线程进行运行, 加快处理的速度。

    -y 对输出文件进行覆盖

    -r 10 fps设置为10帧/秒(不同位置有不同含义,后面再解释)

    -i /tmpdir/image%04d.jpg 输入图片文件,图片文件保存为 image0001.jpg image0002.jpg ….

    -i audio.mp3 输入的音频文件

    7、给mp3添加封面:

    ffmpeg -i in.mp3 -i test.png -map 0:0 -map 1:0 -c copy -id3v2_version 3 -metadata:s:v title="Album cover" -metadata:s:v comment="Cover (Front)" out.mp3

    8、截取视频片段:

    ffmpeg  -i ./plutopr.mp4 -vcodec copy -acodec copy -ss 00:00:10 -to 00:00:15 ./cutout1.mp4 -y

    -ss time_off        set the start time offset 设置从视频的哪个时间点开始截取,上文从视频的第10s开始截取
    -to 截到视频的哪个时间点结束。上文到视频的第15s结束。截出的视频共5s.
    如果用-t 表示截取多长的时间如 上文-to 换位-t则是截取从视频的第10s开始,截取15s时长的视频。即截出来的视频共15s.

    注意的地方是:
     如果将-ss放在-i ./plutopr.mp4后面则-to的作用就没了,跟-t一样的效果了,变成了截取多长视频。一定要注意-ss的位置。

    参数解析
    -vcodec copy表示使用跟原视频一样的视频编解码器。
    -acodec copy表示使用跟原视频一样的音频编解码器。

    -i 表示源视频文件
    -y 表示如果输出文件已存在则覆盖。

    9. 视频画面上下翻转

    ffmpeg -i 0.mp4 -vf vflip a.mp4

    左右翻转:

    ffmpeg -i 0.mp4 -vf hflip b.mp4

    画面顺时针旋转90度:

    ffmpeg -i 0.mp4 -vf transpose=1 c.mp4

    画面逆时针旋转90°:

    ffmpeg -i 0.mp4 -vf transpose=2 d.mp4

    10、

  • 相关阅读:
    cnpm镜像安装
    wxParse解析html
    C++回调函数
    QT源码分析:QTcpServer
    QT实现支持加密的Sqlite数据库引擎
    VS2013+OpenCV3.4.2编译
    Android Tcp操作
    使用Delphi开发linux应用
    QT5.10+MinGW+OpenCV3.4.2编译
    C++ ActiveX开发的问题讨论
  • 原文地址:https://www.cnblogs.com/liangblog/p/14683838.html
Copyright © 2011-2022 走看看