zoukankan      html  css  js  c++  java
  • FFmpeg:Avframe内存分配方式

    1.第一种

            m_pFrameVideoOut = av_frame_alloc();
            m_pFrameVideoOut->format = AV_PIX_FMT_BGR24;
            m_pFrameVideoOut->width = m_VideoCodecCtx->width;
            m_pFrameVideoOut->height = m_VideoCodecCtx->height;
            if (av_image_alloc(m_pFrameVideoOut->data, m_pFrameVideoOut->linesize, m_pFrameVideoOut->width, m_pFrameVideoOut->height, AV_PIX_FMT_BGR24, 16) < 0)
            {
                return ;
            }

    2.第二种

            m_pFrameVideoOut = av_frame_alloc();
            m_pFrameVideoOut->format = AV_PIX_FMT_BGR24;
            m_pFrameVideoOut->width = m_VideoCodecCtx->width;
            m_pFrameVideoOut->height = m_VideoCodecCtx->height;
            av_frame_get_buffer(m_pFrameVideoOut, 16);

    3.第三种

        int bufferSize = av_image_get_buffer_size(AV_PIX_FMT_YUV420P, nWidth, nHeight, 1);;
        m_InputFrame = av_frame_alloc();
        m_InputFrame->width = nWidth;
        m_InputFrame->height = nHeight;
        m_InputFrame->format = AV_PIX_FMT_YUV420P;
        m_Buffer = (unsigned char *)av_malloc(bufferSize);
        av_image_fill_arrays(m_InputFrame->data, m_InputFrame->linesize, m_Buffer, AV_PIX_FMT_YUV420P, nWidth, nHeight, 1);

  • 相关阅读:
    Oracle之PL/SQL学习笔记
    Git常用命令
    Web前端上万字的知识总结
    Objective-C中小怪兽的逻辑
    PHP精选数组函数
    数据库连接字符串方法
    WM_CAP_DRIVER_CONNECT
    GB2312/ANSI编码转中文字符
    opencv播放不了AVI视频的问题
    我的MFC/C++学习笔记 http://blog.bccn.net/CrystalFan/6909
  • 原文地址:https://www.cnblogs.com/lidabo/p/15033757.html
Copyright © 2011-2022 走看看