[发明专利]软件解码中解码器以独立进程存在的解码方法无效
申请号: | 201110456978.5 | 申请日: | 2011-12-30 |
公开(公告)号: | CN102523451A | 公开(公告)日: | 2012-06-27 |
发明(设计)人: | 黄祖斌;袁庆丰;王翔宇 | 申请(专利权)人: | 南京超然科技有限公司 |
主分类号: | H04N7/26 | 分类号: | H04N7/26 |
代理公司: | 南京天翼专利代理有限责任公司 32112 | 代理人: | 王玉梅 |
地址: | 210029 江苏省南京市*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 软件 解码 解码器 独立 进程 存在 方法 | ||
技术领域
本发明涉及网络传输过程中的多媒体数据解码技术领域,特别是一种软件解码中解码器以独立进程存在的解码方法。
背景技术
一般来讲,日常应用中解码器都是用来解码完整性有保障的多媒体文件,但是在网络通讯中,多媒体数据的传输过程中存在多种不确定因素,在网络传输或者存储过程中很容易出现错误,所以在实际应用中经网络传输发送到解码器的码流会存在一定的错误率,导致错误的情况包括丢包,乱序,包被破坏等。而解码器对输入的数据很敏感,一个比特的错误可能会严重影响画面。虽然解码器对输入数据可以做一定的解析和排错,但是由于发生错误的码流,其错误的形式有多种,而解码器的排错能力有限,总有意想不到的错误发生。当未知错误发生的时候,可能会引起解码器的内存混乱,干扰其它的运行模块。而如果解码器能够以独立进程形式存在,则可以将解码发生的错误局限在解码器进程内,避免对其它运行模块的影响。
发明内容
本发明的目的是,提供一种软件解码中解码器以独立进程存在的解码方法,以使得解码发生的错误局限在解码器进程中,而不对其它运行模块发生干扰。
为实现上述目的,本发明采取的技术方案为:一种软件解码中解码器以独立进程存在的解码方法为:应用作为父进程,解码器作为子进程;应用父进程接收从网络中传输过来的多媒体数据码流,并将多媒体数据码流发送写入到解码器子进程中;解码器子进程对接收到的多媒体数据码流进行解码,并将解码后的多媒体流输出到应用父进程中,由应用父进程将多媒体流输出;
上述应用父进程与解码器子进程之间的数据交互流程包括以下步骤:
(1).应用父进程等待接收网络传输过来的多媒体数据码流;
(2).应用父进程判断解码器子进程是否存在:如果解码器子进程不存在,则创建新的解码器子进程,直至判断结果为解码器子进程存在;
(3).应用父进程将接收到的多媒体数据码流写入已存在的解码器子进程;
(4).应用父进程判断码流的写入是否成功:如果码流发送不成功,则应用父进程将解码器子进程杀掉,然后重新创建新的解码器子进程,并重复步骤(2)至步骤(3)的方法,直至判断结果为:码流已成功写入解码器子进程中;
(5).解码器子进程对接收到的多媒体数据码流进行解码,并将解码后的多媒体流回应至应用父进程中;
(6).应用父进程等待解码器子进程的回应:如果解码器子进程有回应,则应用父进程获得解码后的多媒体流,并将多媒体流输出;然后重复步骤(1)至步骤(6)的内容;
如果解码器子进程没有回应,则应用父进程重复步骤(4)中将解码器子进程杀掉及其之后,至步骤(5)的处理方法;直至应用父进程能够得到解码器子进程的回应,应用父进程获得解码后的多媒体流,并将多媒体流输出;然后重复步骤(1)至步骤(6)的内容。
在应用父进程向解码器子进程写入码流时,由于数据量较小,所以优选为利用IPC机制中的管道来实现应用父进程与解码器子进程之间码流和信令的传输,同时父进程向子进程读写数据时,可以判断子进程是否正常;
在解码器子进程向应用父进程传输多媒体流时,由于解码后多媒体流的数据量很大,为了保证父进程与子进程之间的同步,同时防止覆盖上一个多媒体的输出,本发明中设置了IPC机制的共享内存,来满足上述要求,使得父进程的多媒体流输出更加流畅。
本发明中利用的IPC机制的管道和共享内存技术为现有技术。本发明的监控机制基于管道和共享内存内多媒体数据的时间戳等相关信息:如通过管道的读写是否阻塞可以判断子进程是否死锁;通过管道的读写是否失败可以判断子进程是否死掉;通过时间戳等信息还可以判断解码是否有错误,如果有错误,则反馈给应用层;通过共享内存的设置,使得父进程能够最快速度读走多媒体流,防止输出的多媒体流出现前后帧的撕裂现象,这在子进程使用多线程解码的情况下尤其重要。
本发明通过将解码器以独立进程的形式实现多媒体数据为网络传输时的解码工作;将解码进程中可能出现的错误局限在了解码器子进程中,避免了对其它运行模块的干扰,同时也不会对应用父进程造成影响。此外,本发明还利用了IPC机制的管道和共享内存技术,保证应用父进程与解码器子进程之间的数据和信令交互,实现了完善的监控机制,也使得应用父进程中解码后的多媒体流输出更加流畅。
附图说明
图1所示为本发明的一种具体实施例示意图;
图2所示为本发明中应用父进程与解码器子进程之间的数据交互流程示意图。
具体实施方式
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京超然科技有限公司,未经南京超然科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110456978.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:模拟门脉性肝硬化病理变化演示模型
- 下一篇:摩擦连接环