CN102547203B - 一种视音频文件读取的方法和装置 - Google Patents
一种视音频文件读取的方法和装置 Download PDFInfo
- Publication number
- CN102547203B CN102547203B CN201010618300.8A CN201010618300A CN102547203B CN 102547203 B CN102547203 B CN 102547203B CN 201010618300 A CN201010618300 A CN 201010618300A CN 102547203 B CN102547203 B CN 102547203B
- Authority
- CN
- China
- Prior art keywords
- data
- ifilereader
- iclipreader
- iplaylistelement
- user
- 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.)
- Expired - Fee Related
Links
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本发明实施例公开了一种视音频文件读取的方法和装置,所述方法包括:获取用户产生的一条IPlayList的播放列表;将当前的IPlayList设置给IFileReader;按照用户的要求控制IFileReader进行操作;FileReader根据不同的控制命令从IPlayList播放列表中取出对应的IPlayListElement,根据当前IPlayListElement中取出对应的文件信息,创建对应的IclipReader,读取数据;当IFileReader收到从IClipReader返回的数据,IFileReader根据需要查找解码器,解码数据;如果解码后的数据需要制式变换,则变换数据的制式;返回用户需要的数据。通过本发明实施例,可以让用户简单的使用接口就可以支持各种文件的读取,简化了调用者的繁杂的读取流程,优化文件读取速度,提高文件的使用效率,提高数据的利用率,用户只要加入新格式的IClipReader就可以支持新的格式,统一调用流程,管理所有文件的使用。
Description
技术领域
本发明实施例涉及非线性编剪辑软件及视音频后期特效处理与合成软件领域,特别涉及一种视音频文件读取的方法和装置。
背景技术
在利用非线性编剪辑软件及视音频后期特效处理与合成软件,制作广告、片花、电影等的过程中,经常需要高效读取大量的各种不同格式,不同压缩方式的文件,每一种文件的读取方法和解压缩的方法都不相同,对于每一种文件我们都需要设计一种调用流程来使用该类型的文件,这样对于使用者特别的繁杂。
发明内容
为了统一调用流程,管理所有文件的使用,本发明实施例提供一种视音频文件读取的方法和装置,管理所有文件的使用,来方便调用者使用,简化了繁杂的读取流程,优化文件读取速度,提高文件的使用效率。
为达到上述目的,本发明实施例一方面提供一种文件读取的方法,包括:
获取用户产生的一条IPlayList的播放列表;
将当前的IPlayList设置给IFileReader;
按照用户的要求控制IFileReader进行操作;
所述IFileReader根据不同的控制命令从所述IPlayList播放列表中取出对应的IPlayListElement,根据当前IPlayListElement中取出对应的文件信息,创建对应的IclipReader,读取数据;
当IFileReader收到从IClipReader返回的数据,IFileReader根据需要查找解码器,解码数据;
如果解码后的数据需要制式变换,则变换数据的制式;
返回用户需要的数据。
另一方面,本发明实施例还提供一种文件读取的装置,包括:
获取模块,用于获取用户产生的一条IPlayList的播放列表,所述播放列表是由IPlayListElement按照播出时间排列的。
设置模块,用于把当前的IPlayList设置给IfileReader;
控制模块,用于按照用户的要求控制IFileReader进行Seek,play,shuttle,Stop;
创建模块,用于IFileReader根据不同的控制命令从PlayList播放列表中取出对应的IPlayListElement,根据当前PlayListElement中取出对应的文件信息,创建对应的IClipReader读取数据;
解码模块,用于当IFileReader收到从IClipReader返回的数据,IFileReader根据需要查找解码器,解码数据;
变换模块,用于如果解码后的数据需要制式变换,则变换数据的制式;
返回模块,用于返回用户需要的数据。
与现有技术相比,本发明实施例具有以下优点:通过本发明实施例,可以让用户简单的使用接口就可以支持各种文件的读取,简化了调用者的繁杂的读取流程,优化文件读取速度,提高文件的使用效率,提高数据的利用率,简化了用户添加新的格式支持,用户只要加入新格式的IClipReader就可以支持新的格式,来统一调用流程,管理所有文件的使用。
附图说明
图1为本发明实施例一中接口的调用流程图;
图2为本发明实施例二中视音频文件读取的方法的流程图;
图3为本发明实施例三中视音频文件读取的方法的具体实现流程图;
图4为本发明实施例四中视音频文件读取的装置的结构图。
具体实施方式
本发明实施例提供一种视音频文件读取的方法和装置,通过本发明实施例,提供了一个完整读操作封装,来统一调用流程,管理所有文件的使用,从而方便调用者使用,并提供了统一的调用管理机制,简化了调用者的繁杂的读取流程,优化文件读取速度,提高文件的使用效率。
本发明设计了四个核心的模块来实现这个调用流程,如图1所示,为本发明实施例一中提出的接口的调用流程图,模块的接口分别是IplayList接口101,IplayListElement接口102,IfileReader接口103,IClipReader接口104,各个接口的要求如下:
IPlayListElement接口101:由用户产生的播放单元。包括要播出的文件名、文件的基本信息、文件的播出起始位置、结束位置、在PlayList中的起始位置以及结束位置。功能有:
保存数据单元的基本信息;
提供岁数据单元信息的修改。
IPlayList接口102:由用户产生的播放列表,由IPlayListElement组成。按照IPlayListElement在IPlayList中的起始位置有小到大排列的。在PlayList中的Element不能用相互重叠。功能有:
提供给FileReader所需要的数据链表;
支持数据的各种定位功能;
支持数据的各种增删插操作功能;
支持PlayList中存在空隙的情况。
IClipReader接口103:视频、音频、图文等不同各类素材的统一读操作行为。功能有:
提供对视频、音频文件的数据读取;
支持数据的缓存;
按照调用者要求读取一定范围的数据。
IFileReader接口104:对所有文件读操作的完整封装。功能有:
保存数据读数据;
提供局部数据的读操作;
提供对原始数据读的控制,Seek,play,shuttle,Stop;
提供管道流量控制(PIPE size);
支持任意位置数据的读取;
支持异步数据的读取;
支持读取数据的优先级排列;
支持不同类型数据的读取,可以返回原始数据的内容,也可以是解码后的数据,也可以是混合后的数据;
支持不同制式数据的读取(如在PAL下读取HDV的文件),可以返回原始大小的内容,也可以是经过Scaler的数据(如经过Pan And Scan,LetterBox)。
如图2所示,为本发明实施例二中的视音频文件读取的方法的流程图,步骤如下:
S201,获取用户产生的一条IPlayList的播放列表,所述播放列表是由IPlayListElement按照播出时间排列的。
S202,将当前的IPlayList设置给IfileReader。
S203,按照用户的要求控制IFileReader进行Seek,play,shuttle,Stop。
S204,IFileReader根据不同的控制命令从PlayList播放列表中取出对应的IPlayListElement,根据当前IPlayListElement中取出对应的文件信息,创建对应的IClipReader读取数据。
S205,当IFileReader收到从IClipReader返回的数据,IFileReader根据需要查找解码器,解码数据。
S206,如果解码后的数据需要制式变换,则变换数据的制式。
S207,返回用户需要的数据。
其中,IClipReader执行流程如下:
收到IFileReader要读取的数据;
从文件中读取数据;
返回数据给IfileReader。
如图3所示,为本发明实施例三中的视音频文件读取的方法的具体实现流程图。
包括以下步骤:
S301,用户创建一条IPlayList的播放列表,所述播放列表是由IPlayListElement按照播出时间排列的。
S302,创建FileReader,设置播放列表,设置流量控制。
S303,按照用户的要求控制IFileReader进行Seek,play,shuttle或Stop,如果是seek,跳转到S304,如果是stop,跳转到S305,如果是play,跳转到S306。
其中,Seek为P位置,Play从P位置开始。
S304,设置预取数据为N,N=1,跳转到S307。
S305,等待所有没有处理完数据的IClipReader。销毁所有的IClipReader。
S306,设置预取数据为N,N=PIPE size。
S307,检查所有的IClipReader发出的数据是否都处理完成,销毁已经处理完数据的IclipReader。
S308,从IplayList播放列表中取出(P+n)位置的IplayListElement。
S309,根据IplayListElement中的文件信息,创建对应的IclipReader。
S310,使用IclipReader读取(P+n)位置文件中的数据,同时进行S311和S314。
S311,设置N=N-1;判断n是否小于N,如果是,则跳转到S312,如果否,则跳转到S313。
S312,判断当前IplayListElement是否已经读取完成?如果是,则跳转到步骤S307,如果否,则跳转到S310。
S313,等待IclipReader返回读取数据。
S314,IclipReader读取对应位置的数据。
S315,IclipReader发送异步读取数据。
S316,IclipReader收到异步读取数据。
S317,收到IclipReader返回读取数据,设置N=N+1,同时进行S318和S312。
S318,判断数据是否需要解码,如果是,跳转到S319,如果否,跳转到S320。
S319,查找解码器,解码数据。
S320,判断解码后的数据是否需要制式变换,如果是,跳转到S321,如果否,跳转到S322。
S321,进行制式变换。
S322,输出数据,返回给用户。
如图4所示,为本发明实施例提出的视音频文件读取的装置的结构图,包括:
获取模块401,用于获取用户产生的一条IPlayList的播放列表,所述播放列表是由IPlayListElement按照播出时间排列的。
设置模块402,用于把当前的IPlayList设置给IfileReader。
控制模块403,用于按照用户的要求控制IFileReader进行Seek,play,shuttle,Stop。
创建模块404,用于IFileReader根据不同的控制命令从PlayList播放列表中取出对应的IPlayListElement,根据当前PlayListElement中取出对应的文件信息,创建对应的IClipReader读取数据。
解码模块405,用于当IFileReader收到从IClipReader返回的数据,IFileReader根据需要查找解码器,解码数据。
变换模块406,用于如果解码后的数据需要制式变换,则变换数据的制式。
返回模块407,用于返回用户需要的数据。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以可借助软件加必要的通用硬件平台的方式来实现基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
Claims (10)
1.一种视音频文件读取的方法,其特征在于,包括:
获取用户产生的一条IPlayList的播放列表;
将当前的IPlayList设置给IFileReader;
按照用户的要求控制IFileReader进行操作;
所述IFileReader根据不同的控制命令从所述IPlayList播放列表中取出对应的IPlayListElement,根据当前IPlayListElement中取出的对应的文件信息,创建对应的IClipReader,读取数据;
当IFileReader收到从IClipReader返回的数据,IFileReader根据需要查找解码器,解码数据;
如果解码后的数据需要制式变换,则变换数据的制式;
返回用户需要的数据;
其中,所述IPlayList、IFileReader、IPlayListElement、IClipReader是为统一调用流程封装的读操作接口,其中的IPlayList和IPlayListElement分别是由用户产生的播放列表和播放单元,IClipReader提供对不同种类素材的统一读操作行为,IFileReader提供对所有文件读操作的完整封装。
2.如权利要求1所述的方法,其特征在于,所述按照用户的要求控制IFileReader进行操作,具体包括Seek,Play,Shuttle或Stop。
3.如权利要求2所述的方法,其特征在于,如果操作为Stop,还包括:
等待所有没有处理完数据的IClipReader,销毁所有的IClipReader。
4.如权利要求2所述的方法,其特征在于,如果操作为Seek,还包括:
设置预取数据N,并且检查所有的IClipReader发出的数据是不是都处理完成,销毁已经处理完数据的IClipReader,所述N为1。
5.如权利要求2所述的方法,其特征在于,如果操作为Play,还包括:
从P位置开始,设置预取数据N,并且检查所有的IClipReader发出的数据是不是都处理完成,销毁已经处理完数据的IClipReader,所述N为PIPESIZE。
6.如权利要求5所述的方法,其特征在于,所述取出对应的IPlayListElement,为取出(P+n)位置的IPlayListElement。
7.如权利要求1所述的方法,其特征在于,还包括:IClipReader执行流程如下:
收到IFileReader要读取的数据;
从文件中读取数据;
返回数据给IFileReader。
8.如权利要求1所述的方法,其特征在于,还包括:如果解码后的数据不需要制式变换,则直接输出数据。
9.如权利要求1所述的方法,其特征在于,所述播放列表是由IPlayListElement按照播出时间排列的。
10.一种视音频文件读取的装置,其特征在于,包括:
获取模块,用于获取用户产生的一条IPlayList的播放列表,所述播放列表是由IPlayListElement按照播出时间排列的;
设置模块,用于把当前的IPlayList设置给IFileReader;
控制模块,用于按照用户的要求控制IFileReader进行Seek,Play,Shuttle,Stop;
创建模块,用于IFileReader根据不同的控制命令从PlayList播放列表中取出对应的IPlayListElement,根据当前IPlayListElement中取出的对应的文件信息,创建对应的IClipReader读取数据;
解码模块,用于当IFileReader收到从IClipReader返回的数据,IFileReader根据需要查找解码器,解码数据;
变换模块,用于如果解码后的数据需要制式变换,则变换数据的制式;
返回模块,用于返回用户需要的数据;
其中,所IPlayList、IFileReader、IPlayListElement、IClipReader是为统一调用流程封装的读操作接口,其中的IPlayListt和IPlayListElement分别是由用户产生的播放列表和播放单元,IClipReader提供对不同种类素材的统一读操作行为,IFileReader提供对所有文件读操作的完整封装。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010618300.8A CN102547203B (zh) | 2010-12-31 | 2010-12-31 | 一种视音频文件读取的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010618300.8A CN102547203B (zh) | 2010-12-31 | 2010-12-31 | 一种视音频文件读取的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102547203A CN102547203A (zh) | 2012-07-04 |
CN102547203B true CN102547203B (zh) | 2017-02-08 |
Family
ID=46353020
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010618300.8A Expired - Fee Related CN102547203B (zh) | 2010-12-31 | 2010-12-31 | 一种视音频文件读取的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102547203B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104424218B (zh) * | 2013-08-23 | 2019-04-12 | 腾讯科技(深圳)有限公司 | 应用数据的调用方法和装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1826655A (zh) * | 2003-06-11 | 2006-08-30 | 索尼株式会社 | 信息处理设备和方法、程序记录介质和程序 |
CN1896948A (zh) * | 2005-07-11 | 2007-01-17 | 美国凹凸微系有限公司 | 用于计算设备的低功率数字音频解码/播放系统 |
CN201585077U (zh) * | 2009-12-21 | 2010-09-15 | 成都基业长青科技有限责任公司 | 集成化多设备访问控制管理平台 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9754625B2 (en) * | 2008-07-31 | 2017-09-05 | Warner Bros. Entertainment Inc. | Generation and use of user-selected scenes playlist from distributed digital content |
-
2010
- 2010-12-31 CN CN201010618300.8A patent/CN102547203B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1826655A (zh) * | 2003-06-11 | 2006-08-30 | 索尼株式会社 | 信息处理设备和方法、程序记录介质和程序 |
CN1896948A (zh) * | 2005-07-11 | 2007-01-17 | 美国凹凸微系有限公司 | 用于计算设备的低功率数字音频解码/播放系统 |
CN201585077U (zh) * | 2009-12-21 | 2010-09-15 | 成都基业长青科技有限责任公司 | 集成化多设备访问控制管理平台 |
Also Published As
Publication number | Publication date |
---|---|
CN102547203A (zh) | 2012-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100591104C (zh) | 一种单向网的网页点播多媒体应用的系统及实现方法 | |
CN104276100A (zh) | 手机用支座、电视电话系统、卡拉ok系统、汽车导航系统及紧急信息通知系统 | |
CN1251494C (zh) | 用于创建多媒体可操作光盘的系统和方法 | |
CN101609401B (zh) | 一种无干扰屏幕录制方法和系统 | |
CN101102326A (zh) | 信息处理装置、信息处理方法、信息处理程序和记录介质 | |
CN105376502A (zh) | 一种全媒体在线编辑工具 | |
CN101510313A (zh) | 一种gif生成方法、系统及媒体播放器 | |
CN1666197A (zh) | 用于以交互模式为了导航移动焦点的方法和设备 | |
CN102074257A (zh) | 软硬件结合解码的通用多媒体播放设备及其播放方法 | |
US20010039572A1 (en) | Data stream adaptation server | |
CN102243581A (zh) | 多媒体桌面背景设置方法、多媒体播放器 | |
CN104754349A (zh) | 硬解码音视频的方法及装置 | |
CN101174448A (zh) | 有声图片播放方法、装置和有声图片索引文件生成方法 | |
CN202406198U (zh) | 面向实时音视频流的字幕叠加系统 | |
JP2010166537A (ja) | メタデータを活用するデジタルビデオ受信装置、携帯情報機器、番組関連情報活用システム及びそれらの制御方法 | |
CN101741587B (zh) | 播放ppt的多媒体终端及在其上播放ppt的方法 | |
CN102780728A (zh) | 媒体文件转码下载方法及客户端 | |
CN101018355A (zh) | 手机影音与彩信格式自动转换系统与方法 | |
CN102547203B (zh) | 一种视音频文件读取的方法和装置 | |
US20080106640A1 (en) | Method of multiple stream formatting in a multimedia system | |
US20180225289A1 (en) | Audio/video file playback method and audio/video file playback apparatus | |
CN102811383A (zh) | 一种基于机顶盒的视频文件播放方法及装置 | |
CN2907117Y (zh) | 一种单向网的网页点播多媒体应用的系统 | |
CN1794799A (zh) | 一种节目录制装置以及录制方法 | |
CN104332154A (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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170208 Termination date: 20181231 |