各位老师和朋友好,我想用DM365做TS流的网络硬解码。以前用DM365的Encode Demo程序改造成了一个TS流的发送端,用UDP传输,是参考移植了VLC的相关代码。后来在电脑上用VLC UDP接收能正常解码显示。现在想做一个与之配套的硬解码器,替代电脑上的VLC软解码软件。刚看了Decode的Demo程序,感觉很复杂很乱,比Encode的代码要繁杂很多。一时间无从下手。本来解码就是要比编码难做。
我现在的想法是一步一步来,暂不考虑TS流的解码,也不考虑音频。先直接解DM365编的H264裸流,用UDP接收。因为Demo程序是用Loader模块来实现文件流的读取和管理。如果我想改造成UDP接收数据,该如何下手。感觉Demo程序读取文件很严格也很死板,MS只能从开头读,也不判断帧头,读取的一帧肯定是正常开始的一帧。而如果UDP网络接收,由于编码端后来有其它处理,不是一帧一帧的输出,而是有组合成一个固定长度输出,所以接收这边肯定不会是一个H264帧一帧的读取。所以感觉弄起来有点麻烦。特别是看了Decode的Demo程序,各种FIFO,各种Buffer之间的关系很乱。读文件还要先搞一个Loader_prime读第一帧。感觉读静态文件可行。弄成网络接收数据实时解码有点麻烦。
还请各位老师,朋友,高手们指点一下思路。谢谢!