基于FFmpeg的视频播放器之五:使用SDL2渲染yuv420p

一.yuv文件准备

找到一个mp4文件,然后用FFmpeg命令将它转换成yuv文件,这里使用一个野生动物视频Wildlife.mp4。
首先要使用ffmpeg查看mp4文件的一些信息,比如编码器类型、像素格式、分辨率、帧率等。

ffmpeg -i Wildlife.mp4

基于FFmpeg的视频播放器之五:使用SDL2渲染yuv420p_第1张图片

 从上图所示的信息,可以看到像素格式是yuv420p、分辨率是1280x720、帧率是29.97,所以这里直接转换成yuv文件即可,不需要添加转换像素格式的参数。

ffmpeg -i Wildlife.mp4 Wildlife.yuv

转换完成后,ffplay播放一下。

ffplay -f rawvideo -video_size 1280x720 -i Wildlife.yuv

基于FFmpeg的视频播放器之五:使用SDL2渲染yuv420p_第2张图片

 ok,没问题。

二.SDL渲染视频

#include "QHSDLVideoRender.h"
 
#include 
 
QHSDLVideoRender::QHSDLVideoRender()
    : m_screen(nullptr)
    , m_render(nullptr)
    , m_texture(nullptr)
{
 
}
 
QHSDLVideoRender::~QHSDLVide

你可能感兴趣的:(基于FFmpeg的视频播放器,音视频,FFmpeg,SDL,yuv420p)