首页 > 其他分享 >FFmpeg从原始数据中提取YUV或PCM数据命令

FFmpeg从原始数据中提取YUV或PCM数据命令

时间:2024-04-06 11:22:36浏览次数:23  
标签:输出 FFmpeg 文件 音频 YUV 设置 PCM

FFmpeg从原始数据中提取YUV或PCM数据命令

命令的作用

这些被提取出的YUV数据和PCM数据可以用于多媒体的处理或应用,它们可以用于视频分析(如人脸识别,追踪目标,动作检测);图像处理(如颜色校正,图像处理算法);视频压缩,声音分析等等等等。

命令的格式

ffmpeg -i [输入的参数] [输入的文件名] [参数和输出的参数] [输出的文件名]

输入的参数

  • -i:指定输入文件。
  • -f:指定输入文件格式。
  • -ss:从指定时间点开始处理输入文件。
  • -t:设置处理输入文件的持续时间。
  • -r:设置输入文件的帧率。
  • -itsoffset:设置输入文件的音频/视频偏移量。

输入的文件名

指定你要提取的目标音视频。

参数和输出的参数

  • -map:选择要映射到输出文件的流。

  • -map_metadata:选择要映射到输出文件的元数据。

  • -map_chapters:选择要映射到输出文件的章节。

  • -metadata:设置输出文件的元数据。

  • -y:覆盖输出文件而不询问。

  • -v:设置日志输出级别。

  • -hide_banner:隐藏 FFmpeg 的横幅信息。

  • -vf:设置视频滤镜图形。

  • -af:设置音频滤镜图形。

  • -s:设置输出文件的分辨率。

  • -c:v:设置视频编解码器。

  • -b:v:设置视频比特率。

  • -c:a:设置音频编解码器,{占位符,之后会补上音频编解码器的超链接}。

  • -b:a:设置音频比特率。

  • -ar:设置音频采样率。

  • -ac:设置音频通道数。

  • -pix_fmt:设置像素格式 {占位符,之后会补上像素格式的超链接}。

  • -f :指定输出格式,{占位符}。

    写出输出的目标位置,并且在文件的后缀写明提取的是YUV还是PCM

例子

提取output.mp4的YUV数据,并且使用YUV420P的像素格式。

ffmpeg -i D:\v\output.mp4 -pix_fmt YUV420P D:\v\output.yuv

提取output.mp3的PCM数据,并且使用16 位小端序 PCM 格式(s16le)设置音视频编解码器为16 位小端序 PCM 格式(pcm_s16le)

ffmpeg -i D:\v\output.mp3 -f s16le -c:a pcm_s16le D:\v\output.pcm

标签:输出,FFmpeg,文件,音频,YUV,设置,PCM
From: https://www.cnblogs.com/xiaobai1523/p/18117257

相关文章

  • FFmpeg推拉流命令
    FFmpeg推拉流命令命令简介它可以将本地的视频/音频流推送到服务器,也可以将服务器上的音视频流拉到本地。推流命令的命令格式ffmpeg-re-i[输入文件]-c:v[视频编码器]-c:a[音频编码器]-f[输出格式][推流地址]参数解析-re表示采用实时模式,以原始速度推流;-i[输入......
  • FFmpeg 时间戳与时间基
    FFmpeg时间戳与时间基什么是时间基?FFmpeg中时间基是时间刻度,表示每个刻度有多少秒,能更精确的度量时间。在不同的封装格式下,时间基是不同的。简单来说,比如一个时间刻度是0.0001秒,那么时间基就是1/10000。时间基=时间刻度在FFmpeg中表示时间基的的结构体是AVRational,其实就......
  • FFmpeg开发笔记(十一)Windows环境给FFmpeg集成vorbis和amr
    ​FFmpeg内置了aac音频格式,在《FFmpeg开发实战:从零基础到短视频上线》一书的“5.2.2 Linux环境集成mp3lame”又介绍了如何给FFmpeg集成mp3格式,常见的音频文件除了这两种之外,还有ogg和amr两种格式也较常用。其中ogg格式的编解码依赖于libogg和libvorbis,而amr格式的编解码依赖于op......
  • Make编译之编译32bit ffmpeg
    跨平台编译ffmpeg简述下载ffmpeg源码官网或者github下载使用脚本配置configurehi3798板子厂家提供的编译器,在编译ffmpeg时,必须禁用汇编才能通过使用脚本配置项如下:重要配置项--cross-prefix:使用跨平台工具链的前缀,就是去掉后面如gcc、g++的部分--enable-cross-com......
  • ffmpeg tcp/udp 拉流
    参考文章:ffmpeg命令分析-拉取TCP流FFmpeg实现rtp推流ffmpeg除了拉取rtsp,hsl等协议外,也支持直接通过tcp/udp推拉流url格式为udp://ip:port或tcp://ip:port注意:udp或tcp有主被动的概念:主动:自己作为客户端,从服务端拉流被动:自己作为服务端,等待客户端推流直接使用tcp/u......
  • 将BGR转换成为YUV420SP图像格式
      //BGR2YUV(YUV420SP_NV21)voidenCodeYUV420SP(unsignedchar*yuv420sp,unsignedchar*rgb,intwidth,intheight){ if(yuv420sp==NULL||rgb==NULL) return; intframeSize=width*height; intyIndex=0; intuvIndex=frameSize; intR,G,......
  • FFmpeg开发笔记(十)Linux环境给FFmpeg集成vorbis和amr
    ​FFmpeg内置了aac音频格式,在《FFmpeg开发实战:从零基础到短视频上线》一书的“5.2.2 Linux环境集成mp3lame”又介绍了如何给FFmpeg集成mp3格式,常见的音频文件除了这两种之外,还有ogg和amr两种格式也较常用。其中ogg格式的编解码依赖于libogg和libvorbis,而amr格式的编解码依赖于op......
  • linux CentOS 7.9 安装 ffmpeg 6.0 教程【亲测成功】
    查看当前系统版本[[email protected]]#lsb_release-aLSBVersion::core-4.1-amd64:core-4.1-noarchDistributorID:CentOSDescription:CentOSLinuxrelease7.9.2009(Core)Release:7.9.2009Codename:Corewgethttp://www.ffmpeg.org/......
  • FFmpeg常用命令
    FFmpeg常用命令1.信息查询命令ffmpeg-hfull或者manffmpeg#查询帮助手册Usage:ffmpeg[options][[infileoptions]-iinfile]...{[outfileoptions]outfile}....#具体各种可选操作可使用ffmpeg-hfull查看,也可使用manffmpeg查看例子2.分解/复用命令其实就是......
  • FFmpeg开发笔记(九)Linux交叉编译Android的x265库
    ​《FFmpeg开发实战:从零基础到短视频上线》一书的“12.1.2 交叉编译Android需要的so库”介绍了如何在Windows环境交叉编译Android所需FFmpeg的so库,前文又介绍了如何在Linux环境交叉编译Android所需FFmpeg的so库,接下来介绍如何在Linux环境交叉编译Android所需x265的so库。1、安......