首页 > 其他分享 >使用ffmpeg命令处理音视频

使用ffmpeg命令处理音视频

时间:2024-11-09 10:09:03浏览次数:1  
标签:00 ffmpeg ai 音视频 命令 mp4 000 copy

FFmpeg可以运行音频和视频多种格式的录影、转换、流功能,包含了libavcodec(用于多个项目中音频和视频的解码器库)和libavformat(音频与视频格式转换库)。(关于一些底层方面的东西,可以参考ffmpeg和H264视频的编解码) https://www.octfgroup.com/

1,获得一个文件的音视频(编码方面的)信息:

gemfield@ai:~$ ffmpeg -i video.flv -hide_banner


2,把视频的每帧转换成照片:

gemfield@ai:~$ ffmpeg -i video.flv image%d.jpg


把视频的一部分截取出来:

ffmpeg -i civilnet.MP4 -ss 2000 -t 100 -codec copy gemfield.mp4


把视频的一部分截取出来生成图片:

ffmpeg -ss 06:07:19 -i civilnet.mp4 -t 719 gemfield%6d.jpg


3,把照片(image1.jpg, image2.jpg, image3.jpg...)转换为视频,-f设置输出格式:

gemfield@ai:~$ ffmpeg -f image2 -i image%d.jpg video.mpg


4,把音频剥离出来:

gemfield@ai:~$ ffmpeg -i video.flv -vn -ar 44100 -ac 2 -ab 192 -f mp3 audio.mp3


5,把多个视频合并为1个视频:

gemfield@ai:~$ for f in $(ls *.mkv);do echo "file '$f'" >> mylist.txt;done
gemfield@ai:~$ ffmpeg -f concat -i mylist.txt -c copy myvideo.mkv


6,视频格式的转换,比如把mp4格式转换为wmv:

#先看格式是否被支持
gemfield@ai:~$ ffmpeg -formats
#转换
gemfield@ai:~$ ffmpeg -i yourvideoname.mp4 -c:v libx264 outputfilename.wmv


7,把字幕烧写到视频里(注意是烧写到视频里,而不是运行时加载字幕的方式)

#先准备好字幕文件 game.srt
gemfield@ai:~$ ffmpeg -i game.srt game.ass
gemfield@ai:~$ ffmpeg -i myvideo.mkv -vf ass=game.ass myvideo_game_caption.mkv


备注:字幕文件的基本格式

gemfield@ai:~/Downloads/demo_gemfield$ cat game.srt
1
00:00:00,000 --> 00:00:27,000
第一部分:这里是Gemfield

2
00:00:27,000 --> 00:01:10,000
第二部分:那里也是Gemfield

3
00:01:10,000 --> 00:02:21,000
第三部分:到处都是Gemfield

4
00:02:21,000 --> 00:03:45,000
第四部分:但你不是Gemfield

5
00:03:45,000 --> 00:04:42,000
第五部分:他也不是Gemfield

6
00:04:42,000 --> 00:04:52,000
第六部分:那天下谁人不识Gemfield


8,把视频切割成多个

gemfield@ai:~$ ffmpeg -i 10.mkv -t 00:00:39 -codec copy 8.mkv -ss 00:01:01 -codec copy 9.mkv


10,一些更新

#mp4拼接:
ffmpeg -i 1.mp4 -vcodec copy -acodec copy -vbsf h264_mp4toannexb 1.ts
ffmpeg -i 2.mp4 -vcodec copy -acodec copy -vbsf h264_mp4toannexb 2.ts
ffmpeg -i "concat:1.ts|2.ts" -acodec copy -vcodec copy -absf aac_adtstoasc output.mp4

#mp3截取:
ffmpeg -ss 00:00:05 -t 00:02:00 -i testmusic.mp3 twomin.mp3

#mp4配mp3音频:
ffmpeg -i test_yueqianlongma.mp4 -vcodec copy -an output.mp4
#(cut off original audio for original mp4)
ffmpeg -i output.mp4 -i audio.mp3 -vcodec copy -acodec copy result.mp4

#mp4截帧:
ffmpeg -i video.mp4 image%4d.jpg

#单图生成一段视频:
ffmpeg -f concat -safe 0 -i input.txt concat1.mp4
#input.txt内容(去掉#):
#file './frames/image0101.jpg'
#duration 3 (单位秒)
#file './frames/image0101.jpg'

#截取中间一段视频(-ss 起始时间点 -to 结束时间点):
ffmpeg -i source.mp4 -vcodec copy -acodec copy -ss 00:00:10 -to 00:00:15 ./cutout1.mp4


Debug章节
参考Debug/MacroblocksAndMotionVectors - FFmpeg

1,显示运动向量

ffplay -flags2 +export_mvs input.mp4 -vf codecview=mv=pf+bf+bb
或者
ffmpeg -flags2 +export_mvs -i input.mp4 -vf codecview=mv=pf+bf+bb output.mp4
其中:

pf – forward predicted motion vectors of P pictures
bf – forward predicted motion vectors of B pictures
bb – backward predicted motion vectors of B pictures


2,显示宏块类型

ffplay -debug vis_mb_type input.mp4
ffmpeg -debug vis_mb_type -i input.mp4 output.mp4


3,分析QP Values

ffplay -debug vis_qp input.mp4
ffmpeg -debug vis_qp -i input.mp4 output.mp4

 

标签:00,ffmpeg,ai,音视频,命令,mp4,000,copy
From: https://www.cnblogs.com/sathcal/p/18536377

相关文章

  • 安装ffmpeg和crontab执行ffmpeg
    一、centos安装ffmpeg1.下载解压wgethttp://www.ffmpeg.org/releases/ffmpeg-5.0.tar.gztar-zxvfffmpeg-5.0.tar.gz具体需要哪个版本可以进入http://www.ffmpeg.org/releases查看2.进入解压后目录,输入如下命令/usr/local/ffmpeg为自己指定的安装目录(安装目录自己指定)cdffmpe......
  • ffmpeg问题解决:Unrecognized option 'preset'. Error splitting the argument list: O
    来到这里,十有八九是手动编译安装的ffmpeg,在跑视频流程序或命令时出现这个问题。跟这个报错:ffmpeg:errorwhileloadingsharedlibraries:libx264.so.164:cannotopensharedobjectfile:Nosuchfileordirectory的错误本质是一样的,都是由于ffmpeg时使用到了libx264,而在......
  • 编译ffmpeg遇到ERROR: x265 not found using pkg-config解决方法
    配置ffmpeg的configure时,找不到x265的错误./configure--enable-shared--enable-nonfree--enable-gpl--enable-pthreads--enable-libx264--enable-libx265--prefix=../ffmpeg#输出还是会报错ERROR:x265notfoundusingpkg-configIfyouthinkconfiguremadeamistake......
  • centos7环境下二进制编译安装ffmpeg
    yuminstallautoconfautomakebzip2cmakefreetype-develgccgcc-c++gitlibtoolmakemercurialpkgconfigzlib-develyuminstall-yautomakelibtoolautoconfgccgcc-c++makeautomakecmakeopensslopenssl-devel​​mkdir-p/usr/local/src/ffmpeg_sourcescd/u......
  • ffmpeg处理音视频
    FFmpeg怎么念FFmpeg念作efefempeg,其全称为FastForwardMovingPictureExpertGroupFFmpeg是什么FFmpeg是一套领先的多媒体框架,是一套开源且跨平台的多媒体解决方案,提供了音视频的编码、解码、转码、封装、解封装、流媒体、滤镜、播放等功能,官网地址为ffmpeg.orgFFmpeg可......
  • ffmpeg实现图片转视频以及视频转图片
    简介:因为计网作业需要,今天就是讲一讲如何使用ffmpeg把图片转视频以及视频转图片。一、下载ffmpeg你可以在ffmpeg的bin文件下看见以下三个.exe文件二、建个快速打开命令行的bat文件可以新建文件夹.txt->在.txt文件中输入cmd并保存->将.txt后缀名改成.bat可以看一下打开.bat文......
  • ffmpeg安装教程
    1下载所需要的软件mkdir/usr/local/softcd/usr/local/softwgethttps://www.ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2wgethttp://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gzfreetype下载地址http://www.linuxfromscratch.org/blfs/view/svn/gen......
  • FFmpeg原理介绍
    本书《FFmpeg原理》主要讲解FFmpeg原理性的知识,前面几章主要讲解一些音视频开发的基础知识,例如原始数据YUV跟RGB,封装格式FLV跟MP4,压缩编码的基本概念,还有封装格式分析。前面几章是音视频开发,流媒体技术的基础,后面的章节主要讲解如何搭建FFmpeg各种调试环境,同时提供FF......
  • ffmpeg特效处理
    今天继续学习ffmpeg工具,上篇博客主要讲的是ffmpeg对音频和视频的处理,今天这篇是对图像的处理,没想到也能操作。它的命令和处理音视频的一样,都是命令行。能够处理图像的尺寸、裁剪、旋转、模糊、去噪、加水印和生成缩略图等。1、图像处理命令1.1、调整图像大小ffmpeg-iinput.jpg......
  • FFmpeg常用命令
    视频转MP4ffmpeg-iD:\ffmpeg\video\2\2.mp4-vcodeccopy-anD:\v\s\2.mp4视频获取音频ffmpeg-iD:\ffmpeg\video\3\2.mp4-acodeccopy-vnD:\v\m\2.aac视频音频合并ffmpeg-iD:\v\s\2.mp4-iD:\v\m\2.aac-c:vcopy-c:aaac-strictexperimentalD:\v\r\2......