int sws_scale(struct SwsContext *c, const uint8_t *const srcSlice[],const int srcStride[], int srcSliceY, int srcSliceH,uint8_t *const dst[], const int dstStride[]);

文章目录

  • 原因一:
  • 原因二:

原因一:

sws_scale最后两个参数的内存未分配

//检查
if (!check_image_pointers(srcSlice, c->srcFormat, srcStride)) {av_log(c, AV_LOG_ERROR, "bad src image pointers\n");return 0;
}
if (!check_image_pointers((const uint8_t* const*)dst, c->dstFormat, dstStride)) {av_log(c, AV_LOG_ERROR, "bad dst image pointers\n");return 0;
}

解决办法:给swsframe 分配具体的空间

AVFrame *swsframe = av_frame_alloc();
av_image_alloc(swsframe->data, swsframe->linesize,rtspCmd->m_h264_sps.width, rtspCmd->m_h264_sps.height, AV_PIX_FMT_YUV420P, 1);
while (av_read_frame(ctx->pFmtCtx, pkt)
{if(avcodec_send_packet(ctx->pCodecCtx, pkt) && (0 == avcodec_receive_frame(pCodecCtx, pFrame))){int out_hight = sws_scale(mideaState->video_sws_ctx,(const uint8_t* const*)frame->data,frame->linesize,0,mideaState->video_ctx->height,swsframe->data,swsframe->linesize);//此处不能av_frame_unref(swsFrame)}
}

资源释放:

av_freep(&swsframe->data[0]).

原因二:

sws_getContext的参数和sws_scale的参数不统一

sws_scale():bad dst image pointers相关推荐

  1. [LeetCode]:116:Populating Next Right Pointers in Each Node

    题目: Given a binary tree struct TreeLinkNode {TreeLinkNode *left;TreeLinkNode *right;TreeLinkNode *ne ...

  2. FFmpeg源码分析:sws_scale图像缩放与图像转换

    FFmpeg在libswscale模块提供图像缩放与图像转换功能,比如1080P图像缩放为720P,或者YUV422P转换为YUV420P.图像缩放函数有个SwsContext结构体作为上下文,上一篇 ...

  3. FFmpeg源代码简单分析:libswscale的sws_scale()

    ===================================================== FFmpeg的库函数源代码分析文章列表: [架构图] FFmpeg源代码结构图 - 解码 F ...

  4. ICQ被购后看腾讯出击DST:迈出国际化的关键一步

    4月12日夜,亿万中国人熟悉的QQ企鹅又增添了一些"国际背景". 腾讯宣布,以3亿美元现金正式入股俄罗斯投资公司DST,由此获得DST的10.26%普通股和0.51%总投票权,并有 ...

  5. FFmpeg资料来源简单分析:libswscale的sws_getContext()

    ===================================================== FFmpeg库函数的源代码的分析文章: [骨架] FFmpeg源码结构图 - 解码 FFmp ...

  6. FFmpeg源代码简单分析:libswscale的sws_getContext()

    ===================================================== FFmpeg的库函数源代码分析文章列表: [架构图] FFmpeg源代码结构图 - 解码 F ...

  7. ffmpeg源码简析(十)libswscale中的SwsContext,sws_scale()

    libswscale是一个主要用于处理图片像素数据的类库.可以完成图片像素格式的转换,图片的拉伸等工作.  libswscale常用的函数数量很少,一般情况下就3个: sws_getContext() ...

  8. 【opencv】(2) 图像处理:边界填充、图像融合、图像阈值、数值计算

    主要内容有:边界填充 cv2.copyMakeBorder(),数值计算 cv2.add(),改变尺寸 cv2.resize(),图像融合 cv2.addWeighted(),图像阈值 cv2.thr ...

  9. UDP数据转发解决WiFi与有限以太网之间控制命令传递:RGBLink

    简 介: 针对RGBLink有线入网的特点,使用了一台中间工控机做了有线.无线之间的转接.利用了sokit软件完成UDP数据转发,可以利用TEASOFT软件自动控制RGBLink设备. 关键词: RG ...

最新文章

  1. 原生ajax+php上传图片的简单实现
  2. css调整表格在屏幕上的位置
  3. Java设计模式——单例模式的七种写法
  4. 在Simplicity Studio下创建适用于EFR32的工程项目
  5. java flash截图_求大神们帮助, 如何在java中实现文字数据转换成图片或flash显示
  6. 路由与交换技术(铺垫内容)
  7. vba 检查一个文件夹中的文件在另一个文件夹中是否存在(不含扩展名)
  8. HAProxy反向代理搭建discuz论坛
  9. 【shell系列】之awk简单介绍
  10. 《南溪的目标检测学习笔记》的笔记目录
  11. win10怎么重装系统虚拟机win7
  12. 输入n个学生的成绩c语言,c语言帮忙改错!输入n个学生的成绩信息,按照每个学生的个人平均成绩从高到低输出他们的信息...
  13. 如何删除服务中不存在在服务
  14. 差分管电路图_电子管差分放大电路改造方案
  15. 小米组织架构调整:雷军兼任中国区总裁,王川组建大家电部发力白电市场
  16. 使用python求解特征值与特征向量
  17. 阿里妈妈展示广告引擎动态算力再探索:面向业务收益的机器自适应调配
  18. 最全解释:Linux操作系统下的软件安装与管理详解(源码安装、rpm/dpkg、yum/apt-get安装)
  19. destoon8.0火车头免登陆发布接口+全模块采集规则+主动推送百度
  20. 【Matlab编程】新手入门第三天

热门文章

  1. ViewPager+Fragment添加一行若干小红球滚动指示器指示当前ViewPager翻阅位置(可供第三方使用的类)
  2. Adam学习25之读取sam生成的alignmentRecord含recordGroupDictionary
  3. github Topic 功能 | github 常用条件查询
  4. 爬虫实战——爬取小说《从你的全世界路过》
  5. 股票大数据分析软件V2.7
  6. 超融合架构 — Hyper Converged Infrastructure 小记
  7. 洛谷P1462 通往奥格瑞玛的道路
  8. [Unity3D]Unity3D游戏开发之Xml解析实现NPC对话系统
  9. Linux C/C++编程:setsockopt、getsockopt
  10. 6-7 日期-求当年天数