网络摄像头实时数据解码 yv12转换为rgb

目前在做一个有关于网络摄像头的项目。摄像头采用的是雄迈的网络摄像头。项目有一个需求就是要将实时的摄像头数据转换为图片,然后再将图片环形展开,转换为长方形的条带。目前遇到的问题就是如何将实时流转换为rgb图片。

在此记录下这个过程:

  1、首先设置实时数据回调

 2、设置显示回调或者设备解码回调(后者需要自己解码显示)

3、再实时数据回调函数里面输入待解码的数据。就是将回调函数里面的码流数据输入到播放库的解码输入函数。

4、在显示回调函数里面将yuv的数据转换为rgb数据。(自己的这个项目是yv12数据类型)。转换的方法可以参考YV12转RGB 方法真的很好。自己用的是OpenCV的库,很方便

最后提醒一下:显示回调函数里面最好不要用CV::imshow() 函数。我用了以后一直显示不出来,以为转换失败了。后面我将rgb图片写入硬盘后才发现,转换时成功的。

猜你喜欢

转载自blog.csdn.net/qq_37947654/article/details/82257232