【音视频】ffmpeg命令提取像素格式

1、提取YUV数据

  • 提取yuv数据,并保持分辨率与原视频一致

使用-pix_fmt或-pixel_format指定yuv格式提取数据,并保持原来的分辨率

shell 复制代码
ffmpeg -i music.mp4 -t "01:00" -pixel_format yuv420p music.yuv

提取成功后,可以使用ffplay指定yuv数据的帧率、分辨率来播放:

shell 复制代码
ffplay .\music.yuv -framerate 30 -video_size 1920x1080
  • 提取视频并且改变分辨率,比如改变分辨率为1280x720
shell 复制代码
ffmpeg -i music.mp4 -pix_fmt yuv420p -s 1280x720 music.yuv

使用ffplay播放:

shell 复制代码
ffplay .\music.yuv -framerate 30 -video_size 1280x720

效果如下:

  • 提取RGB数据
shell 复制代码
ffmpeg -i music.mp4 -pix_fmt rgb24 -s 1280x720 music.rgb

使用ffplay播放rgb数据,如果指定为yuv就会出现花屏

shell 复制代码
ffplay .\music.rgb -pixel_format rgb24 -framerate 30 -video_size 1280x720
  • rgb与yuv互转

指定输入源格式和输出源格式即可实现格式互转,如把rgb转换为yuv:

注意这里一开始需要给定输入源的帧率和分辨率、像素格式

shell 复制代码
ffmpeg  -pixel_format rgb24 -framerate 30 -s 1920x1080 -i music.rgb -pixel_format yuv420p music_rgbtoyuv.yuv 

使用ffplay播放即可,如果指定播放格式不对,就会出现各种问题

shell 复制代码
ffplay music_rgbtoyuv.yuv -pixel_format yuv420p -video_size 1920x1080

如出现花屏、多个画面等问题

二、提取pcm数据

提取pcm数据需要指定采样率、采样通道、音频格式等数据

这个命令就是把mp3文件中的pcm数据采集出来,需要指定adpcm_ima_alp 编解码器

shell 复制代码
 ffmpeg -i music.mp3 -codec adpcm_ima_alp -ar 44.1k -ch_layout stereo music.pcm

提取出来的数据如下

相关推荐
开开心心_Every8 小时前
手机隐私数据彻底删除工具:回收或弃用手机前防数据恢复
android·windows·python·搜索引擎·智能手机·pdf·音视频
天夏已微凉8 小时前
1.3.1 Linux音频框架alsa详细介绍
linux·音视频
科技小E8 小时前
国标GB28181视频平台EasyCVR安防系统部署知识:如何解决异地监控集中管理和组网问题
大数据·网络·人工智能·音视频
Mapmost10 小时前
【数据融合实战手册·应用篇】“数字孪生+视频融合”让智慧城市拥有空间感知
信息可视化·音视频·无人机·智慧城市
Oliverro11 小时前
EasyRTC嵌入式音视频通话SDK驱动智能硬件音视频应用新发展
人工智能·音视频
天夏已微凉15 小时前
1.2 Linux音频系统发展历程与关键技术演进
linux·c语言·驱动开发·音视频
大力水手~16 小时前
微信小程序上传视频,解决ios上传完video组件无法播放
ios·微信小程序·音视频
travel_wsy18 小时前
webrtc 视频直播
前端·vue.js·音视频·webrtc
DisonTangor18 小时前
LLaMA-Omni 2:基于 LLM 的自回归流语音合成实时口语聊天机器人
人工智能·开源·aigc·音视频·llama
urhero19 小时前
Python+ffmpeg 实现给视频添加字幕
ffmpeg·音视频·python编程·视频编辑·实用视频工具·添加字幕