如何对萤石云视频解码
作者:互联网
背景原因:
遇到了一个问题,需要把萤石云视频流作为自定义流嵌入到腾讯音视频trtc,不过从海康设备获取的流需要解码为yuv数据,但是萤石云开发包没有暴漏解码库,如何做呢?
解决办法:
在android版本的萤石云sdk(CH-HCNetSDK)中,可以直接调用PlayerSDK.jar的播放解码函数进行解码,解码后直接转为YV12丢给trtc就可以了。
那么ios(EZOpensdk_iOS)中有没有相似的方法呢?可以看到这个libEZOpenSDK.a库文件接近四百兆,在苹果电脑解压缩,可以看到里面有个文件PlayCtrl_shell.o,打印列表
夹/libEZOpenSDK_arm64/PlayCtrl_shell.o
夹/libEZOpenSDK_arm64/PlayCtrl_shell.o
U _AudioSessionSetActive
U _HK_EnterMutex
U _HK_LeaveMutex
U _HK_MemorySet
U _OBJC_CLASS_$_UIDevice
---------------- T _PLAYM4_GetDecodeEngine
---------------- T _PLAYM4_GetMpOffset
---------------- T _PlayM4_AdjustWaveAudio
---------------- T _PlayM4_CloseAudioDevice
---------------- T _PlayM4_CloseFile
…
这说明里面已经包含了解码播放库,从海康sdk把头文件拿过来直接调用,结果是成功的,最后证明,android中使用的流程和ios中使用的流程几乎一摸一样。
萤石云中使用了很多的海康sdk中的内容,解决这种问题,还是需要把海康的接口也看看的。
标签:----------------,视频,解码,libEZOpenSDK,海康,HK,萤石 来源: https://blog.csdn.net/lgs790709/article/details/113754683