【音视频】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

提取出来的数据如下

相关推荐
趣浪吧36 分钟前
【JSON-to-Video】设置背景视频片断
json·aigc·音视频·视频
昨日之日200637 分钟前
SoloSpeech - 高质量语音处理模型,一键提取指定说话人音频并提升提取音频清晰度和质量 本地一键整合包下载
人工智能·音视频
科技小E3 小时前
嵌入式SDK技术EasyRTC音视频实时通话助力即时通信社交/教育等多场景创新应用
人工智能·音视频
梁汉强6663 小时前
B站缓存视频数据m4s转mp4
缓存·音视频
eguid_15 小时前
WebRTC中sdp多媒体会话协议报文详细解读
音视频·webrtc·实时音视频·sdp·sdp交换·ice协商
alive90317 小时前
FFmpeg移植教程(linux平台)
linux·ubuntu·ffmpeg·ffmpeg移植
Regnaiq17 小时前
Chorme如何对于youtube视频进行画中画背景播放?
音视频
Mr数据杨18 小时前
AIGC工具平台-GPT-SoVITS-v4-TTS音频推理克隆
gpt·aigc·音视频
Antonio91518 小时前
【音视频】 FFmpeg 解码H265
ffmpeg·音视频