CN103347212A - Vod节目的播放方法和装置 - Google Patents
Vod节目的播放方法和装置 Download PDFInfo
- Publication number
- CN103347212A CN103347212A CN2013102177270A CN201310217727A CN103347212A CN 103347212 A CN103347212 A CN 103347212A CN 2013102177270 A CN2013102177270 A CN 2013102177270A CN 201310217727 A CN201310217727 A CN 201310217727A CN 103347212 A CN103347212 A CN 103347212A
- Authority
- CN
- China
- Prior art keywords
- vod program
- data
- peripheral hardware
- buffering area
- playing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明公开了一种VOD节目的播放方法和装置,其中所述方法包括:VOD节目播放装置显示VOD节目菜单后;在检测到有符合条件的外设后,在所述外设中创建外设缓冲区;VOD节目播放装置向所述VOD节目服务器发送VOD节目数据请求信息;并在接收到所述VOD节目服务器返回的VOD节目数据缓冲到所述外设缓冲区中;并在判断出所述外设缓冲区中缓冲的数据达到可播放条件时,读取所述外设缓冲区中缓存的数据进行播放。本发明技术方案中外设缓冲区的容量足够大,即使短时间内网速较慢或不稳定,也能使得VOD节目数据被从外设缓冲区读取到播放模块过程中的即时速率大于该节目播放码率,从而避免出现播放该节目时出现卡顿。
Description
技术领域
本发明涉及机顶盒技术领域,尤其涉及一种VOD节目的播放方法和装置。
背景技术
近年来,有线电视的数字化得到了推广,数字化的有线电视***被广泛地部署。每个数字有线电视***一般包括数量众多的机顶盒。机顶盒可以用于接收和播放普通的电视节目,但这些电视节目及其播放的时间都是由各有线电视台预先设定的,用户无法自主地选择观看特定的节目及观看的时间。因而,机顶盒通常也提供了VOD(Video On Demand,视频点播)服务,用以供用户自主地点播观看特定的节目,同时选定观看的时间;其中,节目包括:电视节目、网络视频或其它网络媒体信息。
支持VOD服务的VOD***一般由VOD前端处理***、传输网络、和用户的机顶盒组成。其中,VOD前端处理***包括VOD节目服务器、和磁盘阵列,VOD节目服务器用于与用户交互、管理数据、管理网络和计费,磁盘阵列用于存储数据库。用户的机顶盒与VOD前端处理***之间通过传输网络相互连接。为便于描述,本申请文件将VOD***中可供点播的节目简称为VOD节目。
目前,现有的VOD***针对用户的点播请求,提供点播服务的流程,通常如图1a所示,包括如下步骤:
S001:VOD节目菜单的推送。
具体地,机顶盒将用户创建的一个点播请求通过传输网络发送给VOD前端处理***中的其中一个VOD节目服务器;VOD节目服务器从存储的数据库中查询出各VOD节目的信息,并将所述各信息发送给机顶盒;机顶盒将所述各信息编辑成对应的VOD节目菜单呈现给用户,供用户选择节目
S002:VOD节目的点播。
具体地,待用户完成VOD节目选择后,机顶盒将用户选择的节目信息向VOD节目服务器返回;VOD节目服务器根据接收到的节目信息,在数据库中查询出对应的VOD节目数据,并将该数据向该机顶盒发送;机顶盒根据接收到的VOD节目数据,播放VOD节目。
为保证播放的流畅性,会在机顶盒中设置缓冲区;机顶盒将接收到的该VOD节目的数据,缓冲到该机顶盒内置的缓冲区中,再从该缓冲区中读取该节目的数据进行播放;当传输网络的网速较慢或不稳定时,可通过读取缓冲区中的数据来保证播放的流畅性。
然而,本发明的发明人发现,由于成本的原因,机顶盒内置的缓冲区通常容量较小,而随着视频技术的发展,比如3D视频、高清视频技术的出现,单个VOD节目的数据越来越大;使得机顶盒内置的缓冲区已不能保证VOD节目的播放的流畅性,经常出现卡顿或无法继续播放的现象。
发明内容
针对上述现有技术方案存在的缺陷,本发明提供了一种VOD节目的播放方法和装置,用以避免播放中的节目发生卡顿或无法继续播放的现象,提高播放的流畅性。
本发明的技术方案公开了一种VOD节目播放方法,包括:
VOD节目播放装置向VOD节目服务器发送点播请求,并根据所述VOD节目服务器返回的节目信息显示VOD节目菜单后,检测外设接口;在检测到所述外设接口连接有符合条件的外设后,在所述外设中创建外设缓冲区;
VOD节目播放装置根据用户在所述VOD节目菜单中所选择的VOD节目,向所述VOD节目服务器发送VOD节目数据请求信息;并
在接收到所述VOD节目服务器返回的VOD节目数据后,将接收到的数据缓冲到所述外设缓冲区中;并在判断出所述外设缓冲区中缓冲的数据达到可播放条件时,读取所述外设缓冲区中缓存的数据进行播放。
较佳地,所述在检测到所述外设接口连接有符合条件的外设后,在所述外设中创建外设缓冲区具体为:
在检测到所述外设接口所连接的外设的剩余空间大于设定的阈值容量,则确认检测到符合条件的外设;之后,在所述外设中创建外设缓冲区。
较佳地,所述在接收到所述VOD节目服务器返回的VOD节目数据后,将接收到的数据缓冲到所述外设缓冲区中具体为:
所述VOD节目播放装置在接收到所述VOD节目数据后,即触发所述将接收到的数据缓冲到所述外设缓冲区中的操作;
或者,所述VOD节目播放装置在接收到所述VOD节目数据后,根据接收到的数据直接进行播放;在检测到所述VOD节目数据的传输码率小于播放码率后,触发所述将接收到的数据缓冲到所述外设缓冲区中的操作。
较佳地,所述缓冲到所述外设缓冲区中的数据按缓冲的先后顺序依次存放到多个设定大小的缓冲文件中;以及
所述将接收到的数据缓冲到所述外设缓冲区中;并在判断出所述外设缓冲区中缓冲的数据达到可播放条件时,读取所述外设缓冲区中缓存的数据进行播放具体为:
所述VOD节目播放装置每隔设定时间进行如下操作:判断所述外设缓冲区中缓冲的数据是否达到所述可播放条件;若是,则按照先入先出顺序读取所述外设缓冲区中的缓冲文件中的数据进行播放;
之后,所述VOD节目播放装置将接收到的VOD节目数据缓冲到所述外设缓冲区中。
较佳地,所述将接收到的数据缓冲到所述外设缓冲区具体为:
所述VOD节目播放装置在检测到所述外设缓冲区中存在剩余空间时,创建可写的缓冲文件;
所述VOD节目播放装置将接收到的所述VOD节目数据写入到所述可写的缓冲文件中;
所述可写的缓冲文件被写满后,所述VOD节目播放装置将所述可写的缓冲文件标记为只读,并将标记为只读的缓冲文件加入到先入先出队列中。
较佳地,所述可播放条件具体包括:
所述外设缓冲区中缓冲了设定数据量的数据;
或者,所述VOD节目播放装置接收到用户通过遥控器发送的启动播放指令;
或者,所述VOD节目播放装置检测到所述外设缓冲区已无剩余空间。
本发明的技术方案还公开了一种VOD节目播放装置,包括:
点播模块,向VOD节目服务器发送点播请求,并根据所述VOD节目服务器返回的节目信息显示VOD节目菜单后,发送缓冲区创建通知;以及根据用户在所述VOD节目菜单中所选择的VOD节目,向所述VOD节目服务器发送VOD节目数据请求信息;并接收所述VOD节目服务器返回的VOD节目数据;
外设缓冲区创建模块,用于接收到所述缓冲区创建通知后,检测外设接口;在检测到所述外设接口连接有符合条件的外设后,在所述外设中创建外设缓冲区;
数据缓冲模块,用于从所述点播模块获取所述VOD节目服务器返回的VOD节目数据,将获取的数据缓冲到所述外设缓冲区中;并在判断出所述外设缓冲区中缓冲的数据达到可播放条件时,读取所述外设缓冲区中缓存的数据进行发送;
播放模块,用于根据所述数据缓冲模块发送的数据进行播放。
其中,所述数据缓冲模块具体包括:
数据读取单元,用于每隔设定时间,发送停止存入通知后,判断所述外设缓冲区中缓冲的数据是否达到所述可播放条件;若是,则按照先入先出顺序读取所述外设缓冲区中的缓冲文件中的数据进行发送;之后,发送继续存入通知;
数据存入单元,用于接收到所述继续存入通知后,从所述点播模块获取所述VOD节目服务器返回的VOD节目数据,将获取的数据缓冲到所述外设缓冲区中;以及接收到所述停止存入通知后,停止从所述点播模块获取所述VOD节目服务器返回的VOD节目数据。
本发明的技术方案还公开了一种VOD节目播放装置,包括:
点播模块,向VOD节目服务器发送点播请求,并根据所述VOD节目服务器返回的节目信息显示VOD节目菜单后,发送缓冲区创建通知;以及根据用户在所述VOD节目菜单中所选择的VOD节目,向所述VOD节目服务器发送VOD节目数据请求信息;并接收所述VOD节目服务器返回的VOD节目数据;
外设缓冲区创建模块,用于接收到所述缓冲区创建通知后,检测外设接口,在检测到所述外设接口连接有符合条件的外设后,在所述外设中创建外设缓冲区;
播放模块,用于根据从所述点播模块获取所述VOD节目服务器返回的VOD节目数据进行播放;并在获取数据的码率小于播放码率时,发送缓冲通知,并停止从所述点播模块获取数据;
数据缓冲模块,用于接收到所述播放模块发送的缓冲通知后,从所述点播模块获取所述VOD节目服务器返回的VOD节目数据,将获取的数据缓冲到所述外设缓冲区中;并在判断出所述外设缓冲区中缓冲的数据达到可播放条件时,读取所述外设缓冲区中缓存的数据向所述播放模块发送;
所述播放模块,用于根据所述数据缓冲模块发送的数据进行播放。
其中,所述数据缓冲模块具体包括:
数据读取单元,用于每隔设定时间,发送停止存入通知后,判断所述外设缓冲区中缓冲的数据是否达到所述可播放条件;若是,则按照先入先出顺序读取所述外设缓冲区中的缓冲文件中的数据进行发送;之后,发送继续存入通知;
数据存入单元,用于接收到所述继续存入通知或所述缓冲通知后,从所述点播模块获取所述VOD节目服务器返回的VOD节目数据,将获取的数据缓冲到所述外设缓冲区中;以及接收到所述停止存入通知后,停止从所述点播模块获取所述VOD节目服务器返回的VOD节目数据。
本发明的技术方案,通过在外设中设置的外设缓冲区,实现对VOD节目边缓冲边播放的功能,由于外设缓冲区的容量足够大,即使短时间内网速较慢或不稳定导致出现VOD节目的即时传输码率小于播放码率的情况,也能使得该VOD节目的数据被从外设缓冲区读取到播放模块过程中的即时速率大于该节目播放码率,从而避免出现播放该节目时出现卡顿,提高播放的流畅性。
附图说明
图1a为现有技术的VOD节目播放方法的流程图;
图1b为本发明实施例的VOD节目播放装置创建外设缓冲区的流程图;
图2为本发明实施例的VOD节目播放方法的流程图;
图3为本发明实施例的一种VOD节目播放装置的内部结构框图;
图4为本发明实施例的另一种VOD节目播放装置的内部结构框图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举出优选实施例,对本发明进一步详细说明。然而,需要说明的是,说明书中列出的许多细节仅仅是为了使读者对本发明的一个或多个方面有一个透彻的理解,即便没有这些特定的细节也可以实现本发明的这些方面。
本申请使用的“模块”、“***”等术语旨在包括与计算机相关的实体,例如但不限于硬件、固件、软硬件组合、软件或者执行中的软件。例如,模块可以是,但并不仅限于:处理器上运行的进程、处理器、对象、可执行程序、执行的线程、程序和/或计算机。举例来说,计算设备上运行的应用程序和此计算设备都可以是模块。一个或多个模块可以位于执行中的一个进程和/或线程内,一个模块也可以位于一台计算机上和/或分布于两台或更多台计算机之间。
本发明的发明人考虑到,目前外置存储设备(本申请文件中简称外设)的存储容量已经较大,一部分外设足够同时存储若干个节目的总数据量;且外设接口的数据传输速率也足以满足传输高播放码率VOD节目的数据。因此,可以利用外设作为缓冲区,将VOD节目的数据缓冲到外设缓冲区,并读取外设缓冲区中的节目数据进行播放,使得即使在传输网络的网速较慢或不稳定的情况下,保证VOD节目的播放码率,避免出现VOD节目播放卡顿现象,为用户提供更好的体验。
下面具体介绍本发明实施例公开的VOD节目播放方法。
在本发明的实施例中,在VOD节目播放之前,VOD节目播放装置需创建外设缓冲区并设定相关参数,流程图如图1b所示,具体步骤包括:
S101:VOD节目播放装置向VOD节目服务器发送点播请求,并根据该VOD节目服务器返回的节目信息显示VOD节目菜单。
具体的,VOD节目播放装置将用户创建的一个点播请求,通过传输网络发送给VOD节目服务器;该VOD服务器从存储的数据库中查询出各VOD节目的信息,并将所述各节目的信息发送给该VOD节目播放装置;该VOD节目播放装置将所述各节目的信息编辑成对应的VOD节目菜单呈现给用户,供用户选择节目。
S102:VOD节目播放装置检测外设接口,并确定出外设的相关信息。
具体的,VOD节目播放装置检测机顶盒或显示设备的外设接口,若检测出外设接口连接有外设,则进一步确定出连接的该外设的相关信息。例如,确定出的外设的相关信息可以包括:外设的容量、剩余空间、和格式等信息,并将该外设的相关信息通过电视屏显示。
S103:VOD节目播放装置根据确定出的外设的相关信息,创建外设缓冲区并设定相关参数。
具体的,VOD节目播放装置根据外设的剩余空间,和预先设定的阈值容量,确定出外设缓冲区容量:将外设的剩余空间的容量与阈值容量相比较,若外设的剩余空间的容量大于或等于阈值容量,则创建一个外设缓冲区,该外设缓冲区的容量大于或等于阈值容量且小于外设的剩余空间的容量。例如,将一个USB(Universal Serial BUS,通用串行总线)接口的外置硬盘与机顶盒相连接,本发明技术方案公开的机顶盒中的VOD节目播放装置确定出该外置硬盘的剩余空间的容量为500GB(GigaByte,吉字节),根据预设的30GB的阈值容量,将该外置硬盘的剩余空间中的300GB空间划作外设缓冲区;通常一部1080P(Progressive Scan,逐行检测)网络视频的数据量不超过30GB,则该缓冲区则可以同时缓冲10部1080P网络视频的数据;若外设的剩余空间的容量小于阈值容量,则输出提示信息,例如,提示“剩余空间不能满足视频缓冲需要,请更换容量更大的设备”;
在创建外设缓冲区之后,该VOD节目播放装置根据预先设定的容量,设定外设缓冲区中的单个缓冲文件的大小;例如,将单个缓冲文件的大小设定成8MB(Million Byte,兆字节);而采用当前流行的H264编码方式进行编码的网络视频的平均码率,一般不超过8Mbps(Million bit per second,兆位每秒),即不超过1MB/S(Million Byte/second,兆字节/秒),单个缓冲文件中可以缓冲该网络视频的数秒时长的数据。
在创建外设缓冲区之后,该VOD节目播放装置设定播放VOD节目时的显示分辨率。例如,将显示分辨率默认设定为原始分辨率;其中,原始分辨率为服务器中该VOD节目的分辨率;同一VOD节目的显示分辨率不能大于原始分辨率;
进一步的,VOD节目播放装置在确定出外设的剩余空间的容量大于或等于阈值容量之后,还允许用户手动设定外设缓冲区的容量:若用户输入的容量大于外设的剩余空间的容量,则输出提示信息,例如,提示“设置缓冲区大小越界,缓冲设备没有足够的空间使用”;若用户输入的容量小于阈值容量,则输出提示信息,例如,若预设的阈值容量为512MB,则提示“缓冲区空间设置过小,请设置大于512MB的数值”;否则,将用户输入的容量设定成缓冲区的容量;
进一步的,VOD节目的点播装置还支持用户手动设定VOD节目的显示分辨率:将用户在选定VOD节目的同时,选定的分辨率设定成显示分辨率;其中,供用户选择的各分辨率为预先设定的;例如,352×288、720×576、1280×720、1920×1080等分辨率。
在VOD节目播放装置创建了外设缓冲区后,利用该外设缓冲区进行VOD节目播放的方法,具体流程如图2所示,包括如下具体步骤:
S201:VOD节目播放装置根据用户在所述VOD节目菜单中所选择的VOD节目,向VOD节目服务器发送VOD节目数据请求信息。
具体的,用户在所述VOD节目菜单中选定任一VOD节目后,VOD节目播放装置将该被选定的VOD节目的数据请求信息向VOD节目服务器发送。
S202:VOD节目服务器根据接收到的VOD节目数据请求信息,在数据库中查询出对应的VOD节目数据,并将该数据向该VOD节目播放装置发送。
其中,VOD节目的数据是按照播放时间的先后顺序被发送的。
S203:VOD节目播放装置将接收到的VOD节目数据缓冲到外设缓冲区中,并在判断出外设缓冲区中缓冲的数据达到可播放条件时,读取外设缓冲区中缓存的数据进行播放。
具体地,VOD节目播放装置每隔设定时间进行如下操作:判断外设缓冲区中缓冲的数据是否达到可播放条件;若是,则按照先入先出顺序读取外设缓冲区中的一个缓冲文件中的数据进行播放;之后,VOD节目播放装置将接收到的VOD节目的数据缓冲到外设缓冲区中。
其中,可播放条件可以是VOD节目播放装置检测到外设缓冲区中缓冲了当前VOD节目的设定播放时间长度的数据;可播放条件还可以是VOD节目播放装置接收到用户通过遥控器发送的启动播放指令;可播放条件还可以是VOD节目播放装置检测到外设缓冲区已无剩余空间。
VOD节目播放装置将接收到的VOD节目的数据缓冲到外设缓冲区中,其中,缓冲到该外设缓冲区中的数据是按缓冲的先后顺序依次存放到多个设定大小的缓冲文件中的,具体过程包括:VOD节目播放装置在检测到外设缓冲区中存在剩余空间时,创建一个可写的缓冲文件;将接收到的VOD节目的数据写入该缓冲文件中;该缓冲文件被写满后,将该缓冲文件标记为只读,并将该缓冲文件的标识加入到先入先出队列;再创建另一个可写的缓冲文件,继续将接收到的该VOD节目的后续数据写入到该缓冲文件中,该缓冲文件也被写满后,将该缓冲文件也标记为只读,并将该缓冲文件的标识也加入到先入先出队列。
按照先入先出顺序读取外设缓冲区中的一个缓冲文件中的数据进行播放的具体过程包括:VOD节目播放装置根据所述先入先出队列,确定出排序最先的标识对应的缓冲文件,读取该缓冲文件中的数据进行播放,该缓冲文件中的数据被读取完毕后,释放该缓冲文件所占用的外设缓冲区的空间,并将该缓冲文件在先入先出队列中的标识删除;同时继续读取先入先出队列中下一个标识对应的缓冲文件中的数据并进行播放,该缓冲文件中数据被读取完毕后,也释放该缓冲文件所占用的外设缓冲区的空间,将该缓冲文件在先入先出队列中的标识删除。
事实上,上述步骤S203中,VOD节目播放装置将接收到的VOD节目的数据缓冲到外设缓冲区的操作,可以是在VOD节目播放装置接收到所述VOD节目服务器发送的VOD节目的数据的时候就立即自动触发;
或者,VOD节目播放装置在接收到所述VOD节目服务器发送的VOD节目的数据后,并不对接收的数据进行缓冲,而是直接进行播放;在检测到当前VOD节目的传输码率小于播放码率之后,触发将接收到的VOD节目的数据缓冲到外设缓冲区的操作;并且VOD节目播放装置输出提示信息。例如,提示“网络不稳定,启动数据缓冲,请先欣赏其他精彩内容,稍后继续”。
其中,VOD节目的传输码率,为该VOD节目从VOD节目服务器传输到VOD节目播放装置过程中该VOD节目的码率,该VOD节目的传输码率根据传输过程中该VOD节目的原始分辨率和帧率计算得到;VOD节目的播放码率,为播放该VOD节目需要的码率,该VOD节目的播放码率根据该VOD节目在播放时的显示分辨率和帧率计算得到。
作为一种更优的实施方式,VOD节目播放装置在上述步骤203中,还可以检测当前VOD节目的数据是否缓冲完毕,若是,则结束对当前VOD节目的数据的缓冲。
进一步,VOD节目的点播装置还可检测外设缓冲区是否没有剩余空间,若是,则向VOD节目服务器发送节目数据暂停发送请求,通知所述VOD节目服务器暂停向该VOD节目播放装置发送数据;VOD节目的点播装置若检测到外设缓冲区中出现剩余空间,则向VOD节目服务器发送节目数据继续发送请求,通知所述VOD节目服务器继续向该VOD节目播放装置发送数据。
一般情况下当前VOD节目的平均传输码率是大于该节目的播放码率的,使得该节目缓冲到外设缓冲区的数据的平均速率是大于从外设缓冲区读取该节目的数据的平均速率;由于外设缓冲区的容量足够大,因此可以在外设缓冲区中缓冲较多的VOD节目的数据,使得即使短时间内网速较慢或不稳定导致出现该节目的即时传输码率小于播放码率的情况,也能保证该VOD节目的数据被从外设缓冲区读取出的即时速率大于该节目即时播放码率,避免出现播放该节目时出现卡顿。
较优的,VOD节目播放装置采用socket(插座孔)阻塞模式接收服务器发送来的数据。
较优的,在上述步骤203中,若VOD节目播放装置检测到当前的显示分辨率小于该节目的原始分辨率,VOD节目播放装置将接收到的当前VOD节目的数据转换成该显示分辨率对应码率的数据,再将转换后的数据缓冲到外设缓冲区中,使得外设缓冲区中同样容量的区域可以缓冲更长播放时间的节目数据。其中,如何将高分辨率节目数据转换成低分辨率节目数据为本领域技术人员所熟知,此处不再赘述。
更优的,在上述步骤203中,VOD节目播放装置还可以在机顶盒内置缓存中设置一内置缓冲区,VOD节目播放装置读取外设缓冲区中当前VOD节目的数据后,先写入到该内置缓冲区中,写满该内置缓冲区后,依照先入先出规则,读取该内置缓冲区中的数据进行播放,释放已被播放数据占用的内置缓冲区的空间,并继续从外设缓冲区中读取当前VOD节目的后续数据,写入到该内置缓冲区中。其中,内置缓冲区的容量可以容纳外设缓冲区中多于1个只读缓冲文件的数据量。可以避免在读取前切换只读的缓冲文件时,可能产生的延迟,从而进一步避免播放节目时出现卡顿现象。
本发明的实施例还公开了一种VOD节目播放装置,内部结构框图如图3所示,具体包括:点播模块301、外设缓冲区创建模块302、数据缓冲模块303、播放模块304。
其中,点播模块301用于向VOD节目服务器发送点播请求,并根据该VOD节目服务器返回的节目信息显示VOD节目菜单后,发送缓冲区创建通知;以及根据用户在该VOD节目菜单中所选择的VOD节目,向该VOD节目服务器发送VOD节目数据请求信息;并接收该VOD节目服务器返回的VOD节目数据。
外设缓冲区创建模块302用于接收到点播模块301发送的缓冲区创建通知后,检测外设接口;在检测到该外设接口连接有符合条件的外设后,在该外设中创建外设缓冲区。
数据缓冲模块303用于从点播模块301获取该VOD节目服务器返回的VOD节目数据,将获取的数据缓冲到该外设缓冲区中;并在判断出该外设缓冲区中缓冲的数据达到可播放条件时,读取该外设缓冲区中缓存的数据向播放模块304发送。其中,可播放条件的具体内容,参见上述步骤S203中相应的内容。
播放模块304用于根据数据缓冲模块303发送的数据进行播放。
上述的数据缓冲模块303具体可以包括:数据读取单元311、和数据存入单元312。
其中,数据读取单元311用于每隔设定时间,发送停止存入通知后,判断该外设缓冲区中缓冲的数据是否达到该可播放条件;若是,则按照先入先出顺序读取该外设缓冲区中的缓冲文件中的数据进行发送;之后,发送继续存入通知;其中,如何按照先入先出顺序读取该外设缓冲区中的缓冲文件中的数据的具体方法,参见上述步骤S203中相应的内容。
数据存入单元312用于接收到数据读取单元311发送的继续存入通知后,从点播模块301获取该VOD节目服务器返回的VOD节目数据,将获取的数据缓冲到该外设缓冲区中;以及接收到数据读取单元311发送的停止存入通知后,停止从点播模块301获取该VOD节目服务器返回的VOD节目数据。其中,如何将获取的VOD节目数据缓冲到该外设缓冲区中的具体方法,参见上述步骤S203中相应的内容。
本发明的实施例还公开了一种VOD节目播放装置,内部结构框图如图4所示,具体包括:点播模块401、外设缓冲区创建模块402、播放模块403、和数据缓冲模块404。
其中,点播模块401用于向VOD节目服务器发送点播请求,并根据该VOD节目服务器返回的节目信息显示VOD节目菜单后,发送缓冲区创建通知;以及根据用户在该VOD节目菜单中所选择的VOD节目,向该VOD节目服务器发送VOD节目数据请求信息;并接收该VOD节目服务器返回的VOD节目数据。
外设缓冲区创建模块402用于接收到点播模块401发送的缓冲区创建通知后,检测外设接口,在检测到该外设接口连接有符合条件的外设后,在该外设中创建外设缓冲区。
播放模块403用于根据从点播模块401获取该VOD节目服务器返回的VOD节目数据进行播放;并在获取数据的码率小于播放码率时,发送缓冲通知,并停止从点播模块401获取数据。
数据缓冲模块404用于接收到播放模块401发送的缓冲通知后,从点播模块401获取该VOD节目服务器返回的VOD节目数据,将获取的数据缓冲到该外设缓冲区中;并在判断出该外设缓冲区中缓冲的数据达到可播放条件时,读取该外设缓冲区中缓存的数据向播放模块403发送。其中,可播放条件的具体内容,参见上述步骤S203中相应的内容。
播放模块403用于根据数据缓冲模块404发送的数据进行播放。
上述的数据缓冲模块404具体包括:数据读取单元411、和数据存入单元412。
其中,数据读取单元411用于每隔设定时间,发送停止存入通知后,判断该外设缓冲区中缓冲的数据是否达到该可播放条件;若是,则按照先入先出顺序读取该外设缓冲区中的缓冲文件中的数据进行发送;之后,发送继续存入通知;其中,如何按照先入先出顺序读取该外设缓冲区中的缓冲文件中的数据的具体方法,参见上述步骤S203中相应的内容。
数据存入单元412用于接收到数据读取单元411发送的继续存入通知或播放模块403发送的缓冲通知后,从点播模块401获取该VOD节目服务器返回的VOD节目数据,将获取的数据缓冲到该外设缓冲区中;以及接收到数据读取单元411发送的停止存入通知后,停止从点播模块401获取该VOD节目服务器返回的VOD节目数据。其中,如何将获取的VOD节目数据缓冲到该外设缓冲区中的具体方法,参见上述步骤S203中相应的内容。
本发明的技术方案中,通过在外设中设置的外设缓冲区,实现对VOD节目边缓冲边播放的功能,由于外设缓冲区的容量足够大,即使短时间内网速较慢或不稳定导致出现VOD节目的即时传输码率小于播放码率的情况,也能使得该VOD节目的数据被从外设缓冲区读取到播放模块过程中的即时速率大于该节目播放码率,从而避免出现播放该节目时出现卡顿。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种VOD节目播放方法,其特征在于,包括:
VOD节目播放装置向视频点播VOD节目服务器发送点播请求,并根据所述VOD节目服务器返回的节目信息显示VOD节目菜单后,检测外设接口;在检测到所述外设接口连接有符合条件的外设后,在所述外设中创建外设缓冲区;
VOD节目播放装置根据用户在所述VOD节目菜单中所选择的VOD节目,向所述VOD节目服务器发送VOD节目数据请求信息;并
在接收到所述VOD节目服务器返回的VOD节目数据后,将接收到的数据缓冲到所述外设缓冲区中;并在判断出所述外设缓冲区中缓冲的数据达到可播放条件时,读取所述外设缓冲区中缓存的数据进行播放。
2.如权利要求1所述的方法,其特征在于,所述在检测到所述外设接口连接有符合条件的外设后,在所述外设中创建外设缓冲区具体为:
在检测到所述外设接口所连接的外设的剩余空间大于设定的阈值容量,则确认检测到符合条件的外设;之后,在所述外设中创建外设缓冲区。
3.如权利要求1所述的方法,其特征在于,所述在接收到所述VOD节目服务器返回的VOD节目数据后,将接收到的数据缓冲到所述外设缓冲区中具体为:
所述VOD节目播放装置在接收到所述VOD节目数据后,即触发所述将接收到的数据缓冲到所述外设缓冲区中的操作;
或者,所述VOD节目播放装置在接收到所述VOD节目数据后,根据接收到的数据直接进行播放;在检测到所述VOD节目数据的传输码率小于播放码率后,触发所述将接收到的数据缓冲到所述外设缓冲区中的操作。
4.如权利要求1所述的方法,其特征在于,所述缓冲到所述外设缓冲区中的数据按缓冲的先后顺序依次存放到多个设定大小的缓冲文件中;以及
所述将接收到的数据缓冲到所述外设缓冲区中;并在判断出所述外设缓冲区中缓冲的数据达到可播放条件时,读取所述外设缓冲区中缓存的数据进行播放具体为:
所述VOD节目播放装置每隔设定时间进行如下操作:判断所述外设缓冲区中缓冲的数据是否达到所述可播放条件;若是,则按照先入先出顺序读取所述外设缓冲区中的缓冲文件中的数据进行播放;
之后,所述VOD节目播放装置将接收到的VOD节目数据缓冲到所述外设缓冲区中。
5.如权利要求4所述的方法,其特征在于,所述将接收到的数据缓冲到所述外设缓冲区具体为:
所述VOD节目播放装置在检测到所述外设缓冲区中存在剩余空间时,创建可写的缓冲文件;
所述VOD节目播放装置将接收到的所述VOD节目数据写入到所述可写的缓冲文件中;
所述可写的缓冲文件被写满后,所述VOD节目播放装置将所述可写的缓冲文件标记为只读,并将标记为只读的缓冲文件加入到先入先出队列中。
6.如权利要求4所述的方法,其特征在于,所述可播放条件具体包括:
所述外设缓冲区中缓冲了设定数据量的数据;
或者,所述VOD节目播放装置接收到用户通过遥控器发送的启动播放指令;
或者,所述VOD节目播放装置检测到所述外设缓冲区已无剩余空间。
7.一种VOD节目播放装置,其特征在于,包括:
点播模块,向VOD节目服务器发送点播请求,并根据所述VOD节目服务器返回的节目信息显示VOD节目菜单后,发送缓冲区创建通知;以及根据用户在所述VOD节目菜单中所选择的VOD节目,向所述VOD节目服务器发送VOD节目数据请求信息;并接收所述VOD节目服务器返回的VOD节目数据;
外设缓冲区创建模块,用于接收到所述缓冲区创建通知后,检测外设接口;在检测到所述外设接口连接有符合条件的外设后,在所述外设中创建外设缓冲区;
数据缓冲模块,用于从所述点播模块获取所述VOD节目服务器返回的VOD节目数据,将获取的数据缓冲到所述外设缓冲区中;并在判断出所述外设缓冲区中缓冲的数据达到可播放条件时,读取所述外设缓冲区中缓存的数据进行发送;
播放模块,用于根据所述数据缓冲模块发送的数据进行播放。
8.如权利要求7所述的装置,其特征在于,所述数据缓冲模块具体包括:
数据读取单元,用于每隔设定时间,发送停止存入通知后,判断所述外设缓冲区中缓冲的数据是否达到所述可播放条件;若是,则按照先入先出顺序读取所述外设缓冲区中的缓冲文件中的数据进行发送;之后,发送继续存入通知;
数据存入单元,用于接收到所述继续存入通知后,从所述点播模块获取所述VOD节目服务器返回的VOD节目数据,将获取的数据缓冲到所述外设缓冲区中;以及接收到所述停止存入通知后,停止从所述点播模块获取所述VOD节目服务器返回的VOD节目数据。
9.一种VOD节目播放装置,其特征在于,包括:
点播模块,向VOD节目服务器发送点播请求,并根据所述VOD节目服务器返回的节目信息显示VOD节目菜单后,发送缓冲区创建通知;以及根据用户在所述VOD节目菜单中所选择的VOD节目,向所述VOD节目服务器发送VOD节目数据请求信息;并接收所述VOD节目服务器返回的VOD节目数据;
外设缓冲区创建模块,用于接收到所述缓冲区创建通知后,检测外设接口,在检测到所述外设接口连接有符合条件的外设后,在所述外设中创建外设缓冲区;
播放模块,用于根据从所述点播模块获取所述VOD节目服务器返回的VOD节目数据进行播放;并在获取数据的码率小于播放码率时,发送缓冲通知,并停止从所述点播模块获取数据;
数据缓冲模块,用于接收到所述播放模块发送的缓冲通知后,从所述点播模块获取所述VOD节目服务器返回的VOD节目数据,将获取的数据缓冲到所述外设缓冲区中;并在判断出所述外设缓冲区中缓冲的数据达到可播放条件时,读取所述外设缓冲区中缓存的数据向所述播放模块发送;
所述播放模块,用于根据所述数据缓冲模块发送的数据进行播放。
10.如权利要求9所述的装置,其特征在于,所述数据缓冲模块具体包括:
数据读取单元,用于每隔设定时间,发送停止存入通知后,判断所述外设缓冲区中缓冲的数据是否达到所述可播放条件;若是,则按照先入先出顺序读取所述外设缓冲区中的缓冲文件中的数据进行发送;之后,发送继续存入通知;
数据存入单元,用于接收到所述继续存入通知或所述缓冲通知后,从所述点播模块获取所述VOD节目服务器返回的VOD节目数据,将获取的数据缓冲到所述外设缓冲区中;以及接收到所述停止存入通知后,停止从所述点播模块获取所述VOD节目服务器返回的VOD节目数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310217727.0A CN103347212B (zh) | 2013-06-04 | 2013-06-04 | Vod节目的播放方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310217727.0A CN103347212B (zh) | 2013-06-04 | 2013-06-04 | Vod节目的播放方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103347212A true CN103347212A (zh) | 2013-10-09 |
CN103347212B CN103347212B (zh) | 2016-04-27 |
Family
ID=49281983
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310217727.0A Active CN103347212B (zh) | 2013-06-04 | 2013-06-04 | Vod节目的播放方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103347212B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103618919A (zh) * | 2013-11-19 | 2014-03-05 | 深圳Tcl新技术有限公司 | 网络电视加载视频的方法和装置 |
WO2015113243A1 (zh) * | 2014-01-29 | 2015-08-06 | 华为终端有限公司 | 网络视频播放方法、装置和电子设备 |
CN105245946A (zh) * | 2014-07-10 | 2016-01-13 | 中兴通讯股份有限公司 | 可变码率媒体流的流量控制方法、装置以及*** |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1558665A (zh) * | 2004-01-20 | 2004-12-29 | 大唐微电子技术有限公司 | 一种网络多媒体信息快速播放方法及相应的机顶盒设备 |
CN101106637A (zh) * | 2006-07-13 | 2008-01-16 | 中兴通讯股份有限公司 | 通过机顶盒实现对外接存储设备的媒体文件播放的方法 |
US20100115121A1 (en) * | 2008-10-29 | 2010-05-06 | Edgeware Ab (Se) | Method and an apparatus for data recording and streaming |
CN102006368A (zh) * | 2010-12-03 | 2011-04-06 | 重庆新媒农信科技有限公司 | 基于移动终端记忆卡缓存技术的流媒体音频文件播放方法 |
CN102868908A (zh) * | 2011-07-04 | 2013-01-09 | 哈尔滨融智达网络科技有限公司 | 高效流媒体播放方法和装置 |
-
2013
- 2013-06-04 CN CN201310217727.0A patent/CN103347212B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1558665A (zh) * | 2004-01-20 | 2004-12-29 | 大唐微电子技术有限公司 | 一种网络多媒体信息快速播放方法及相应的机顶盒设备 |
CN101106637A (zh) * | 2006-07-13 | 2008-01-16 | 中兴通讯股份有限公司 | 通过机顶盒实现对外接存储设备的媒体文件播放的方法 |
US20100115121A1 (en) * | 2008-10-29 | 2010-05-06 | Edgeware Ab (Se) | Method and an apparatus for data recording and streaming |
CN102006368A (zh) * | 2010-12-03 | 2011-04-06 | 重庆新媒农信科技有限公司 | 基于移动终端记忆卡缓存技术的流媒体音频文件播放方法 |
CN102868908A (zh) * | 2011-07-04 | 2013-01-09 | 哈尔滨融智达网络科技有限公司 | 高效流媒体播放方法和装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103618919A (zh) * | 2013-11-19 | 2014-03-05 | 深圳Tcl新技术有限公司 | 网络电视加载视频的方法和装置 |
CN103618919B (zh) * | 2013-11-19 | 2017-09-05 | 深圳Tcl新技术有限公司 | 网络电视加载视频的方法和装置 |
WO2015113243A1 (zh) * | 2014-01-29 | 2015-08-06 | 华为终端有限公司 | 网络视频播放方法、装置和电子设备 |
CN105245946A (zh) * | 2014-07-10 | 2016-01-13 | 中兴通讯股份有限公司 | 可变码率媒体流的流量控制方法、装置以及*** |
Also Published As
Publication number | Publication date |
---|---|
CN103347212B (zh) | 2016-04-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11930197B2 (en) | Video decoding method and apparatus, computer device, and storage medium | |
US10225613B2 (en) | Method and apparatus for video playing processing and television | |
US20160269803A1 (en) | Smart tv media player and playback progress adjustment method thereof, and smart tv | |
US20070058926A1 (en) | Optimizing trick modes for streaming media content | |
KR102255223B1 (ko) | 동영상 시스템 및 동영상 처리 방법, 장치 및 컴퓨터 판독 가능 매체 | |
CN103166941A (zh) | 一种数据分享的方法及装置 | |
CN108462899B (zh) | 基于设备能力的流媒体码流自适应传输方法、播放设备及播放*** | |
US9769546B2 (en) | Preview image processing using a bundle of preview images | |
CN102137279B (zh) | 一种实现便捷式电子设备在线视频掉线续播的方法 | |
WO2017080175A1 (zh) | 用于多机位的视频播放器、播放***及播放方法 | |
WO2019164753A1 (en) | Efficient streaming video for static video content | |
CN113424553A (zh) | 用于响应于用户选择而推进交互式媒体项目的重放的技术 | |
CN108337553A (zh) | 一种多媒体数据预下载方法 | |
CN104080006A (zh) | 一种视频处理装置及方法 | |
CN110996157A (zh) | 一种视频播放方法、装置、电子设备及机器可读存储介质 | |
CN103347212A (zh) | Vod节目的播放方法和装置 | |
CN102609048B (zh) | 一种音视频点播的电脑及方法 | |
CN114710702A (zh) | 一种视频的播放方法和装置 | |
CN103491426A (zh) | 一种iptv的视频点播*** | |
MX2008016087A (es) | Metodos y sistema para proporcionar referencias asociadas con corrientes de datos. | |
CN106254961B (zh) | 电视中的视频播放方法及电视 | |
CN110740374B (zh) | 一种多媒体数据的处理方法、装置、计算机设备和存储介质 | |
CN101594477B (zh) | 一种超长字幕渲染的处理*** | |
CN111885417B (zh) | Vr视频播放方法、装置、设备以及存储介质 | |
CN110807106B (zh) | 一种多媒体数据的处理方法、装置、计算机设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |