CN1933582A - 再生装置、再生方法、程序、及程序存储介质 - Google Patents

再生装置、再生方法、程序、及程序存储介质 Download PDF

Info

Publication number
CN1933582A
CN1933582A CNA2006101275346A CN200610127534A CN1933582A CN 1933582 A CN1933582 A CN 1933582A CN A2006101275346 A CNA2006101275346 A CN A2006101275346A CN 200610127534 A CN200610127534 A CN 200610127534A CN 1933582 A CN1933582 A CN 1933582A
Authority
CN
China
Prior art keywords
video data
data
unit
file
playback
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
Application number
CNA2006101275346A
Other languages
English (en)
Other versions
CN100539674C (zh
Inventor
小林义行
加藤元树
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Publication of CN1933582A publication Critical patent/CN1933582A/zh
Application granted granted Critical
Publication of CN100539674C publication Critical patent/CN100539674C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2365Multiplexing of several video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23614Multiplexing of additional data and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • H04N21/42653Internal components of the client ; Characteristics thereof for processing graphics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4307Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
    • H04N21/43072Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen of multiple content streams on the same device
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4347Demultiplexing of several video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4348Demultiplexing of additional data and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4622Retrieving content or additional data from different sources, e.g. from a broadcast channel and the Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/488Data services, e.g. news ticker
    • H04N21/4884Data services, e.g. news ticker for displaying subtitles

Abstract

本发明提供了一种再生装置,包括:获取单元,用于获取包括第一信息的重放管理信息,第一信息包括指示了主流的位置的主重放路径;读出单元,用于基于重放管理信息,读取将被再生的主流以及将与主流同步再生的视频数据;第一存储单元,用于存储由读出单元所读取的视频数据;解码单元,用于解码存储在第一存储单元上的视频数据;第二存储单元,用于存储由解码单元解码的视频数据;重放单元,用于基于重放管理信息,通过引用预定计数器来再生由读出单元所读取的主流;以及视频数据输出单元,用于与主流的重放同步地输出存储在第二存储单元上的经过解码的视频数据。

Description

再生装置、再生方法、程序、及程序存储介质
相关申请的交叉参考
本发明包含于2005年9月12日向日本专利局提交的日本专利申请JP2005-263970号中的主题,其全部内容结合于此作为参考。
技术领域
本发明涉及一种再生装置、再生方法、程序、和程序存储介质,更具体的,涉及一种用于同步地显示MPEG 2传输流和与MPEG 2传输流的数据格式不同的动画数据的再生装置、再生方法、程序、和程序存储介质。
背景技术
日本未审查专利申请公开第7-306954号披露了一项动画技术。根据所披露的内容,为了实现严格同步地显示多个动画人物,将显示在屏幕上的人物的动作生成模块在模块列表中进行排列并将其记录在其中。然后,通过参考模块列表来控制动画人物的显示。
在另一项已知技术中,基于HDMV图形流被多路转换成传输流的图形对象用于与MPEG 2传输流格式的视频帧同步地显示图形。
发明内容
为了使用HDMV图形流生成与视频帧同步的图形数据,需要MPEG 2传输流的知识及其相关的开发技能。在日本未审查专利申请公开第7-306954号中所披露的技术同步了以相同数据格式生成的多个动画数据单元。即使使用这项技术,也不能同步显示不同数据格式的视频数据和动画数据。
因而,需要同步显示MPEG 2传输流以及数据格式与MPEG 2传输流不同的动画数据。
在本发明的一个实施例中,再生装置包括:获取单元,用于获取包括了第一信息的重放管理信息,其中,第一重放信息包括指示了包括至少一个流的主流沿着时间轴的位置的主重放路径;读出单元,用于基于通过获取单元所获取的重放管理信息,来读取将被再生的主流以及将与主流同步再生的视频数据;第一存储单元,用于存储由读出单元所读取的视频数据;解码单元,用于解码存储在第一存储单元上的视频数据;第二存储单元,用于存储由解码单元解码的视频数据;重放单元,用于基于获取单元所获取的重放管理信息,通过引用(reference)预定计数器(counter)来再生由读出单元所读取的主流;以及视频数据输出单元,用于与通过重放单元执行的主流的重放同步地输出存储在第二存储单元上的经过解码的视频数据。
再生装置还包括:控制单元,用于通过引用由重放单元所引用的计数器,来控制第一存储单元、解码单元、第二存储单元、和视频数据输出单元的处理。
获取单元可以获取包括了用于调用对应于由控制单元所执行的处理的API的指令的控制信息,并且当通过执行指令来调用API时,控制单元通过引用由重放单元所引用的计数器来控制第一存储单元、解码单元、第二存储单元、和视频数据输出单元的处理。
读出单元可以读取在主流之前的视频数据。
视频数据的数据格式可以不同于的主流的数据格式。
视频数据可以包括由多个帧构成的动画数据。
视频数据可以是JPEG数据格式,并且包括可在Java应用程序上再生的动画数据。
再生装置可进一步包括:混合视频数据生成单元,用于生成将与由重放单元所再生的主流相混合的混合视频数据;以及重放输出单元,用于输出响应于通过混合视频数据生成单元混合并生成的混合视频数据的提供和由重放单元再生的主流的提供而再生的视频数据,其中,视频数据输出单元向混合视频数据生成单元输出经过解码的视频数据。
视频数据输出单元可以在视频数据输出单元将经过解码的视频数据输出到混合视频数据生成单元之前紧接着就获取混合的视频数据,将经过解码的视频数据与所获得的混合视频数据相混合,以及将合成数据输出到混合视频数据生成单元。
再生装置可以包括至少两个混合视频数据生成单元。当第一混合视频数据生成单元生成混合视频数据时,第二混合视频数据生成单元将所生成的混合视频数据提供给重放输出单元。当第二混合视频数据生成单元生成混合视频数据时,第一混合视频数据生成单元将所生成的混合视频数据提供给重放输出单元。
再生装置可以进一步包括记录介质重放单元,用于再生以及读取来自可移动记录介质的信息,其中,获取单元获取由记录介质重放单元从记录介质所读取的重放管理信息。
再生装置可以进一步包括存储单元,用于存储多种数据单元,其中,获取单元获取存储在存储单元上的重放管理信息。
再生装置可以进一步包括记录介质重放单元,用于再生以及读取来自可移动记录介质的信息,其中,读出单元读取由记录介质重放单元从记录介质所读取的主流和视频数据。
再生装置可以进一步包括存储单元,用于存储多种数据单元,其中,读出单元读取存储在存储单元上的主流和视频数据。
由获取单元所获取的重放管理信息可以包括第二信息,其包括不同于主流文件的副流文件的副重放路径。
在本发明的另一个实施例中,用于再生流数据的再生装置的再生方法和计算机程序中的一种包括以下步骤:基于包括第一信息的重放管理信息来读取将被再生的主流,其中第一信息包括指示了包括至少一个流的主流沿着时间轴的位置的重放路径;基于重放管理信息来存储将与主流同步再生的视频数据;解码所存储的视频数据;存储所解码的视频数据;基于重放管理信息,通过引用预定计数器来再生所读取的主流;以及与主流的重放同步地输出所存储的经过解码的视频数据。
根据本发明的实施例,将被再生的主流基于包括第一信息的重放管理信息被读取,其中第一信息包括指示了包括至少一个流的主流沿着时间轴的位置的重放路径;将与主流同步再生的视频数据基于重放管理信息被读取,用于存储;所存储的视频数据被解码;所解码的视频数据被存储;基于重放管理信息,通过引用预定计数器来再生所读取的主流;以及所存储的经过解码的视频数据与主流的重放被同步地输出。
网络指的是使彼此互相连接的至少两个装置能够从一个装置向其他装置传送信息的机制。通过网络通信的装置可以是独立装置或者也可以是形成一个装置的内部组块。
通信指的是无线通信、有线通信、或无线通信和有线通信的组合。在无线通信和有线通信组合的情况下,可以在一个区域中执行无线通信而在另一个区域中执行有线通信。此外,从第一装置到第二装置执行有线通信,然后从第二装置到第三装置执行无线通信。
再生装置可以是独立装置或者在记录和再生装置中执行重放处理的组块。
根据本发明的实施例,流数据被再生。特别地,流数据和视频数据被同步再生。
附图说明
图1是示出了根据本发明第一实施例的再生装置的框图;
图2示出了在将被加载到本发明第一实施例的再生装置上的记录介质上的应用格式;
图3示出了在将被加载到再生装置上的记录介质上的应用格式的另一个实例;
图4示出了在其上已下载有文件的再生装置的状态;
图5示出了AV流;
图6是示出了图1中的控制器的功能的功能框图;
图7示出了虚拟文件系统;
图8示出了虚拟文件系统;
图9示出了本地存储器的目录结构;
图10示出了清单文件的句法;
图11示出了光盘的文件系统;
图12示出了本地存储器的文件系统;
图13示出了路径名称的规定;
图14示出了在虚拟磁盘中的文件/目录结构;
图15示出了由内容作者所分配的内容的内容发送文件格式(content delivery file format)的定义;
图16是示出了图1中解码器的框图;
图17示出了动画重放时间和动画间隔;
图18示出了控制定时(timing)和缓冲能力;
图19示出了图像的加载;
图20示出了图像的加载;
图21A-图21C示出了图像的再次呈现(re-rendering);
图22示出了双缓冲的实例;
图23是示出了添加和更新处理的流程图;
图24是示出了结合处理(binding process)的流程图;
图25是示出了重放处理的流程图;
图26是图25中流程图的继续;
图27是图26中流程图的继续;
图28是示出了动画显示准备处理的流程图;
图29是示出了动画生成处理的流程图;
图30是示出了重复重放处理或重放起点指定的重放处理的流程图;
图31示出了记录有可在再生装置上重放的数据的记录介质的制造过程;以及
图32示出了记录有可在再生装置上重放的数据的记录介质的制造过程。
具体实施方式
在描述本发明的实施例之前,以下将讨论在权利要求和在本发明的实施例中所披露的具体元件之间的特征的对应关系。该描述旨在保证在该说明书中,描述支持本发明的权利要求的实施例。因此,即使在下面实施例中,某个元件没有被叙述为与本发明的某个特征有关,这并不意味着元件与特征无关。相反,即使一些具体元件在此被叙述为对应于权利要求中的一个元件,这也并不意味着该元件不对应权利要求中的任何其他特征。
根据本发明的一个实施例,再生装置(例如,图1中的再生装置1)包括:获取单元(例如,图1或图16中的控制器21),用于获取包括第一信息的重放管理信息(例如,播放列表),第一信息包括指示了包括至少一个流的主流(例如,第一流)沿着时间轴的位置的主重放路径(例如,主路径);读出单元(例如,开关41),用于基于由获取单元所获取的重放管理信息,读出将被再生的主流和将与主流同步再生的视频数据(例如,动画数据);第一存储单元(例如,图16中的预载缓冲器61),用于存储由读出单元所读取的视频数据;解码单元(例如,图16中的动画解码器62),用于解码存储在第一存储单元上的视频数据;第二存储单元(例如,图16中的经解码对象缓冲器63),用于存储由解码单元所解码的视频数据;重放单元(例如,图16中的第一视频解码器72-1和视频平面(video plane)生成器92),用于基于由获取单元所获取的重放管理信息,通过引用预定计数器(例如,STC计数器)来再生由读出单元所读取的主流;以及视频数据输出单元(例如,图16中的合成缓冲器64),用于与由重放单元进行的主流的重放同步地输出存储在第二存储单元上的经过解码的视频数据。
再生装置可以进一步包括控制单元(例如,图16中的动画调度器65),用于通过引用由重放单元所引用的计数器来控制第一存储单元、解码单元、第二存储单元、和视频数据输出单元的处理。
获取单元可以进一步包括获取控制信息(例如,MovieObject文件),包括用于调用对应于由控制单元所执行的处理的API的指令,并且当通过执行该指令来调用API时,控制单元通过引用由重放单元所引用的计数器来控制第一存储单元、解码单元、第二存储单元、和视频数据输出单元的处理。
再生装置可以进一步包括:混合视频数据生成单元(例如,图16中的交互式图形平面生成器94),用于生成将与由重放单元再生的主流相混合的混合视频数据;以及重放输出单元(例如,视频数据处理器96),用于输出响应于由混合视频数据生成单元混合及生成的混合视频数据的提供和由重放单元再生的主流的提供而再生的视频数据,其中,视频数据输出单元将经过解码的视频数据输出到混合视频数据生成单元。
再生装置可以进一步包括至少两个混合视频数据生成单元(例如,图22中的前图形平面151和前图形平面152),其中,当第一混合视频数据生成单元生成混合视频数据时,第二混合视频数据生成单元将所生成的混合视频数据提供给重放输出单元,而当第二混合视频数据生成单元生成混合视频数据时,第一混合视频数据生成单元将所生成的混合视频数据提供给重放输出单元。
再生装置可以进一步包括记录介质重放单元(例如,图1或图16中的光盘驱动器22),用于从可移动记录介质再生以及读取信息,其中,获取单元获取由记录介质重放单元从记录介质所读取的重放管理信息。
再生装置可以进一步包括存储单元(例如,图1或图16的本地存储器24),用于存储多种数据单元,其中,获取单元获取存储在存储单元上的重放管理信息。
再生装置可以进一步包括记录介质重放单元(例如,图1或图16的光盘驱动器22),用于从可移动记录介质再生及读取信息,其中,读出单元读取通过记录介质重放单元从记录介质所读取的主流和视频数据。
再生装置可以进一步包括用于存储多种数据单元的存储单元(例如,图1或图16的本地存储器24),其中,读出单元读取存储在存储单元上的主流和视频数据。
用于再生流数据的再生装置的再生方法、和使得计算机能够执行重放处理的计算机程序中的一种包括以下步骤:基于包括第一信息的重放管理信息(例如,播放列表),读取(例如,图25的步骤S103中的处理)将被再生的主流(例如,第一流),其中第一信息包括了指示包括至少一个流的主流沿着时间轴的位置的重放路径;基于重放管理信息,读取(例如,图28的步骤S161中的处理)将与主流同步再生的视频数据(例如,动画数据),用于存储;解码(例如,图28的步骤S162中的处理)所存储的视频数据;存储(例如,图28的步骤S163中的处理)所解码的视频数据;基于重放管理信息,通过引用预定计数器(例如,STC计数器),来再生(例如,图25到图27的主视频流的重放处理)所读取的主流;以及与主流的重放同步地输出(例如,图29的步骤S207中的处理)所存储的经过解码的视频数据。
以下将参考附图描述本发明的实施例。
图1是示出了根据本发明第一实施例的再生装置1的框图。
控制器21执行准备的控制程序。控制器21还通过控制光盘驱动器22来读取记录在光盘11上的导航程序(稍后讨论),并且在存储器23上展开导航程序,以执行导航程序。因而,控制器21通常控制着再生装置1。当加载光盘11时,控制器21使预定的菜单屏幕显示在外部显示设备上。
在控制器21的控制下,光盘驱动器22从光盘11读取数据,并且将所读取的数据输出到控制器21、存储器23、和解码器26中的一个。如果由光盘驱动器22从光盘11所读取的信息是导航程序和播放列表中的一个,则将所读取的信息提供给控制器21和存储器23中的一个。如果由光盘驱动器22从光盘11所读取的信息是AV流和文本数据中的一个,则将所读取的信息输出到解码器26。
图2示出了加载在本发明实施例的再生装置1上的光盘11的应用格式。在此,记录介质是光盘11。可选地,记录介质可以是磁盘、半导体存储器等。
应用格式包括两层;播放列表层和剪辑层,用于管理AV(audio-visual:音频视频)流。一个AV流或文本数据和伴随该AV流或文本数据的剪辑信息构成的一对作为一个目标被处理并且被称为剪辑。将AV流的数据文件称为AV流文件。将剪辑信息的数据文件称为剪辑信息文件。
通常将计算机所使用的文件作为字节串来处理。沿着时间轴展开AV流文件的内容,并且通常由播放列表中的时间戳(timestamp)来指定剪辑的存取点(access point)。
当由播放列表中的时间戳指定剪辑的存取点时,剪辑信息文件用于从时间戳中找到将开始AV流文件的解码的地址信息。
播放清单是一组指示AV流的重放周期的信息。将指示AV流中的一个重放周期的信息称为播放项(PlayItem)。播放项由沿着时间轴的重放周期的一对IN点(重放开始点)和OUT点(重放结束点)来表示。如图2所示,播放列表包括至少一个播放项。
如图2中所示,最左边部分示出的第一播放列表包括两个播放项。两个播放项引用包括在最左边部分的第一剪辑中的AV流的第一部分和第二部分。从左边数的第二播放列表由单个播放项构成。该播放项引用在右侧示出的整个第二剪辑。在从左边数的第三位置上示出的第三播放列表由两个播放项构成。两个播放项引用在右侧示出的包括在第一剪辑中的AV流的预定部分以及包括在第二剪辑中的AV流的预定部分。
导航程序是用于使控制器21能够控制播放列表的重放以及播放列表的交互式重放的顺序的程序。导航程序也具有显示菜单屏幕的功能,在该菜单屏幕上,用户输入指令来执行重放。导航程序是以诸如Java(注册商标)的编程语言来描述的,并且被记录在诸如光盘11的记录介质上。控制器21执行导航程序。如果将包括在图2中最左边部分上示出的第一播放列表中的第一播放项指定为指示了重放位置的信息,那么就再生包括在最左边部分上示出的第一剪辑中的由第一播放项所引用的AV流的第一部分。
除了播放项所指定的主路径之外,由图3中的副播放项(SubPlayItem)所指定的副路径信息可以包括在图2的播放清单中。随着子播放项的限定,可以与AV流同步地再生没有与由播放项所指定的剪辑(诸如MPEG 2传输流)多路复用的单独数据流。
与由播放项指定的主路径的剪辑AV流相联系地准备包括了呈现(render)所需的字幕文本文件和字体文件的字幕相关信息以及指定了字幕相关信息的重放周期的副播放项。当与在字幕文本文件中描述的数据相对应的字幕以基于写入字体文件中的显示字体显示在显示设备上时,再生剪辑AV流。例如,与由播放项指定的主路径的剪辑AV流相联系地准备不同语言的配音数据以及对应于该配音数据的副播放项(SubPlayItem)。因而,再生及输出不同语言的配音数据的同时再生剪辑AV流。
副播放项和对应的数据(剪辑)可以被记录在光盘11上,或者可以作为补充数据(更新数据)经由网络2从服务器3下载,或者可以在可移动介质(诸如将在稍后讨论的可移动介质28)中获得。稍后将参考图4详细描述从服务器3下载的额外数据的方法。
返回图1,进一步描述该装置。
存储器23存储控制器21执行各种处理所需的数据。例如,本地存储器24是HDD(硬盘驱动器)。
将互联网接口25以有线方式或无线方式连接到网络2。在控制器21的控制下,互联网接口25通过网络2与服务器3通信,并且将从服务器3下载的数据提供给本地存储器24。服务器3下载更新数据的内容,该数据将参看图2进行讨论,并且其将被记录在加载到再生装置1上的光盘11上。本地存储器24记录从服务器3通过网络2下载的内容。
解码器26解码由光盘驱动器22和本地存储器24中的一个提供的AV流或文本数据,并且将合成的视频信号和音频信号输出到外部显示设备。响应于来自解码器26的经过解码的信号,显示设备输出光盘11的内容(即,显示视频并输出音频)。
操作输入单元29包括:输入设备,包括按钮、键、接触板、滚轮(jogdial)等;以及接收器,用于接收从预定的远程指挥器所传输的红外信号。操作输入单元29接收来自用户的操作输入,并将操作输入提供给控制器21。
根据需要,将控制器21连接至驱动器27。将可移动介质28加载到驱动器27上。可移动介质28可以包括磁盘(包括软盘)、光盘(诸如光盘只读存储器(CD-ROM)、或DVD)、诸如小型磁盘(MD(已注册商标))的磁光盘、和半导体存储器中的一个。
如下所述再生记录在加载到再生装置1上的光盘11上的数据以及存储在本地存储器24上的数据。
再生装置1包括诸如HDD(硬盘驱动器)的本地存储器24。以有线方式或无线方式连接到网络2的再生装置1将经过网络2从服务器3所下载的内容存储到本地存储器24上。服务器3下载对记录在加载到再生装置1上的光盘11上的内容(诸如影片)进行更新的数据。
当命令操作输入单元29再生记录在光盘11上的内容和记录在本地存储器24上的下载内容时,控制器21使记录在光盘11上的内容与记录在本地存储器24上的内容相联系,并执行内容的重放处理。
如参考图4所述,彼此联系地再生在光盘11上的内容以及在本地存储器24上的内容。
例如,图1中的光盘11可以是打包出售的介质,并且记录了影片内容。例如,可以将仅是英文字幕文本文件作为可以叠加在影片内容的视频上来显示的字幕数据文件记录在光盘11上。
如图4所示,记录在光盘1上并由播放列表的播放项所引用的剪辑1的AV流是用于显示影片内容的视频并再生对应音频的流。由播放列表的副播放项所引用的剪辑2的字幕相关信息1是用于显示将被叠加在视频上的英文字幕的字幕文本文件。
例如,用户可能想要观看记录在光盘11上的具有不同于英文的语言的字幕的影片内容。光盘11不具有任何不同于英语的语言的所记录的字幕。在这种情况下,用户就不能观看到具有不同于英语的语言的字幕数据的影片。
接下来,用户经过网络2从服务器3下载记录在光盘11上的影片的所需语言的字幕文本文件(或者从可移动介质28中检索字幕文本文件)。例如,可以下载(或者从可移动介质28复制到本地存储器24)阿拉伯文的字幕文本文件。
当用户发布下载对应于预记录在光盘11上的播放项的阿拉伯文的字幕文本文件的指令时,再生装置1访问服务器3,然后下载在服务器3上准备的用于更新记录在光盘11上的内容的文件。
参看图4,示出了由阿拉伯文字幕文本文件(字幕相关信息2)和附属于其的剪辑信息文件构成的剪辑3、能够控制剪辑3中除视频剪辑和音频剪辑(AV流数据)之外的字幕数据的重放和显示的播放列表文件(更新的播放列表文件)、和预记录在光盘11上的英文字幕文本文件、以及从存储在光盘11上的导航程序文件所更新的新导航程序文件。这些信息块被下载并被记录在本地存储器24上。
除了表示主路径的播放项外,更新的播放列表还包括副播放项1和副播放项2,它们中每个均表示一个副路径。更新的播放列表的播放项用于引用包括记录在光盘11上的AV流的剪辑1。副播放项1用于引用包括记录在光盘11上的字幕相关信息1的剪辑2。副播放项2用于引用从服务器3与更新的播放列表一起下载的剪辑3,其包括为阿拉伯文字幕文本文件的字幕相关信息2。
图4中的新导航程序文件指定副播放项1和副播放项2以及更新的播放列表的播放项中的一个作为重放周期。所需的视频与音频数据相联系。具有了这种配置,用户就可以显示由预记录在光盘11上的英文字幕文本文件所限定的英文字幕以及由没有预记录在光盘11上的阿拉伯文字幕文本文件所限定的阿拉伯文字幕中的一个,其中的任何一个都是所需要的。
当执行从服务器3进行下载(从可移动介质28复制)时,再生装置1能够再生和显示作为英文字幕文本文件的剪辑2以及作为没有预记录在光盘11上的阿拉伯文字幕文本文件的剪辑3中的任一个。更具体的,用户从在显示设备上所呈现的菜单屏幕上显示的字幕语言中选择所需语言。因而,用户可以观看英文字幕和阿拉伯文字幕中任一种语言的影片。
如图5所示,记录在光盘11上的AV流包括运动图像专家组(MPEG)2传输流。每个MPEG 2传输流包括整数个对准单元。对准单元具有6144字节(2048×3字节)的大小,并且以源数据包的第一个字节开始。源数据包是192字节长。一个源数据包包括TP_extra_header和传输数据包。TP_extra_header是4字节长,以及传输数据包是188字节长。一个对准单元由32个源数据包构成。视频流或音频流的数据被打包成MPEG 2PES(打包基本流),并且PES包被打包成传输数据包。
图6是示出了图1中控制器21的功能框图。
当控制器21执行准备的控制程序时或当控制器21执行记录在光盘11上的导航程序时,执行图6的功能。
菜单屏幕显示控制器31使得外部显示设备能够显示菜单屏幕。菜单屏幕示出了供用户选择记录在光盘11上的内容的音频、字幕的语言、视频的角度所操作的按钮,以及供用户选择将被下载的更新文件、和将被删除的文件所操作的按钮。
操作输入获取单元32获取表示由用户通过操作输入单元29所输入的操作输入的信号,并且输出表示对应于菜单屏幕显示控制器31、数据获取单元33、本地存储器目录管理器34、和重放控制器37中任一个的用户操作输入的信号。
数据获取单元33控制在图1的互联网接口25上所执行的通信以及与驱动器27上的可移动介质28的信息交换。例如,数据获取单元33从服务器3下载由用户指示的更新文件,然后将所获取的文件输出到本地存储器目录管理器34。当从将在稍后讨论的文件系统合并处理器36接收到表示所需文件的信息时,数据获取单元33通过下载从服务器3获取所需文件,并将所需文件输出到本地存储器目录管理器34。
本地存储器目录管理器34管理在本地存储器24上的目录,控制将数据写到本地存储器24上、从本地存储器24中读取数据以及从本地存储器24中删除数据。在本地存储器目录管理器34的控制下,从本地存储器24中所读取的播放列表被输出到存储器23。将从本地存储器24读取的AV流的音频数据和视频数据、以及字幕文本文件的文本数据输出到解码器26。当文件系统合并处理器36将光盘11上的文件系统与本地存储器24上的文件系统进行合并时,本地存储器目录管理器34将与在本地存储器24上的文件系统相关的信息输出到文件系统合并处理器36。
光盘目录管理器35管理光盘11的目录,并控制从光盘11读取数据。光盘11具有author_id和disc_id作为设置于其上的标识信息。将在光盘目录管理器35的控制下从光盘11读取的标识信息author_id和disc_id提供给数据获取单元33和本地存储器目录管理器34。在光盘目录管理器35的控制下从光盘11读取的播放列表被输出到存储器23。从光盘11读取的AV流的音频数据和视频数据以及字幕文本文件的文本数据被输出到解码器26。当文件系统合并处理器36将在光盘11上的文件系统与在本地存储器24上的文件系统进行合并时,光盘目录管理器35将与光盘11上的文件系统有关的信息输出到文件系统合并处理器36。稍后将描述标识信息author_id和disc_id。
文件系统合并处理器36将光盘11上由光盘目录管理器35提供的文件系统与本地存储器24上由本地存储器目录管理器34所提供的文件系统合并,从而生成一个虚拟文件系统。文件系统合并处理器36将所生成的虚拟文件系统输出到重放控制器37。
在稍后讨论的处理中,文件系统合并处理器36确定删除记录在本地存储器24上的多个文件是否会引起在虚拟文件系统中的文件的链接结构的故障(在链接结构中,数据被链接以基于参考图2到图4所讨论的光盘11的应用格式来再生与播放列表一致的剪辑)。如果文件系统合并处理器36确定在虚拟文件系统中的文件的链接结构中可能发生故障,则提取校正该故障所需的文件。关于所需文件的信息被提供给数据获取数据33。根据需要可以下载所需的文件。
当从本地存储器24中删除多个文件时,会发生不能根据在虚拟文件系统中的任何播放列表来再生(即,不能由任一播放列表来指定)文件。在稍后将讨论的处理中,文件系统合并处理器36指示本地存储器目录管理器34来删除这样不必需的文件。
是否要删除响应于删除文件而导致的不必需的文件可以由用户来设定。
重放控制器37执行由从文件系统合并处理器36提供的虚拟文件系统所指定的导航程序,并且控制内容的重放。更具体的,重放控制器37引用提供给存储器23并存储在其上的播放列表,并且控制本地存储器目录管理器34和光盘目录管理器35基于虚拟文件系统,来读取AV流的音频数据和视频数据,以及视需要读取来自光盘11和本地存储器24的字幕文本文件。重放控制器37控制图1中的解码器26来解码(再生)AV流的音频数据和视频数据,以及视需要解码存储在光盘11和本地存储器24中的一个上的字幕文本文件的文本数据。
文件系统合并处理器36将在光盘11上的文件系统与用于管理从服务器3下载并被记录在本地存储器24上的数据组的文件系统进行合并。当将光盘11加载到再生装置1上时、当请求回放记录在再生装置1上的内容时、当请求输入或输出记录在光盘11和本地存储器24中任意一个上的任何数据时、或当用户发布命令以执行合并操作时,执行合并操作。
虚拟文件系统被定义为再生装置1的系统中的本地文件系统的上层(即,实际上被记录在光盘11和本地存储器24中任一个上的数据的文件系统)。更具体的,如图7所示,应用程序以及处理应用程序的用户可以仅将虚拟文件系统看作上层。应用程序使得本地存储器24能够通过从服务器3下载新数据来记录新数据,并且再生实际上存储在光盘11和本地存储器24中的一个上的数据。虚拟文件系统摘录本地文件系统,从而隐藏了诸如物理设备的本地结构以及再生装置1中的操作系统。
虚拟文件系统的主要功能包括将文件/目录安装在物理设备(诸如光盘11或本地存储器24)上,以生成由用户标识的虚拟盘的文件系统,以及将文件存取应用程序接口(API)提供给所生成的虚拟盘。
当用户输入请求存取记录在光盘11和本地存储器24中的一个上的任何文件的操作输入时,图8的应用程序可以仅标识虚拟文件系统。记录在光盘11和本地存储器24中的一个上的本地文件系统#1、和本地文件系统#2以及光盘11的文件系统的结构将从应用程序和处理应用程序的用户中隐藏起来,并且可通过虚拟文件系统来存取。
为了执行图8的文件存取请求,再生装置1的应用程序调用用于由虚拟文件系统所提供的文件输入和输出的API(应用程序接口),然后,在无需了解光盘驱动的物理结构和文件系统的软件结构的条件下就可以存取存储在光盘11和本地存储器24中的一个上的数据。更具体的,在实践中,虚拟文件系统的API调用在再生装置1内的本地文件系统的API。
虚拟文件系统提供多种类型的API。例如,虚拟文件系统提供用于打开指定文件的open API()、用于关闭指定文件的close()API、用于设定指定文件的读取位置或写入位置的seek()API、用于获取指定文件的状态的stat()API、用于读取指定文件的read()API、用于写入指定文件的write()API等等。重放控制器37所执行的应用程序使用这些API来操纵存储在光盘11和本地存储器24中的一个上的文件。
虚拟文件系统具有分割以及管理本地存储器24的磁盘区的功能。如图9所示,本地存储器24的磁盘区具有目录结构,其中,按每个供应商来将磁盘区分成用于内容供应商(内容作者)的分区。在文件/目录结构中,由内容作者灵活配置紧接在author_id之下的目录disc_id。对包括在所下载数据中的元数据(稍后讨论的清单数据)的描述限定了将数据放在本地存储器24上的何处,就是说,限定了所下载文件的文件/目录结构。
在本地存储器24的文件/目录结构中,分割目录的author_id是唯一标识用于管理包括在所下载数据中的元数据(稍后讨论的清单数据)的实体的标识符。更具体的,author_id标识符唯一地标识包括内容生产商、影片公司、或包括多个内容生产商和影片公司的组。标识符disc_id唯一标识由author_id标识符所标识的内容生产商所提供的光盘11。这些标识符都包括在所下载数据的元数据中。元数据(清单数据)以及author_id和disc_id标识符稍后将讨论。
可通过应用程序存取的虚拟盘的文件/目录结构与光盘11的文件/目录结构兼容。更具体的,将在author_id和disc_id标识符下的数据文件结构与光盘11的数据文件结构合并。因而,配置成具有与光盘11的文件/目录结构兼容的文件/目录结构的虚拟盘的虚拟文件系统。
虚拟文件系统除了目录和文件管理功能之外,还具有管理稍后将讨论的清单文件的功能。将元数据的字段限定成本地文件系统的文件模型的虚拟文件系统的目的有三部分,即,显示演示内容的名称而不是显示本地存储器24的文件的路径或名称,以防止在下载处理中二次更新相同文件,以及限定在虚拟文件系统中的路径名称(即,在光盘11的重放期间的路径名称)。
虚拟文件系统提供两种元数据管理的功能,即,清单文件的操作和元数据的操作。清单文件是表示所下载文件的各种属性的元数据。可以使manifest()存储在对应文件中或者与具有作为标识的关键字的manifest()段的manifest_id标识符的一个文件合并。在另一种情况下,将文件称为清单文件。存储了被下载到本地存储器24的文件的再生装置1还必需存储清单文件。可以以诸如XML的标记语言(mark-up language)文本来描述清单文件。
图10示出了清单文件的句法。
manifest_id标识符是manifest()段的标识符。
author_id字段指定管理清单文件的实体。更具体的,author_id字段指定唯一标识内容生产商、影片公司、或包括多个内容生产商和影片公司的组的标识符。通过引用稍后参考图15讨论的内容分布文件的author_id字段来确定标识符。应用程序或用户可以自由为这个字段设定任何值。
disc_id字段用于将唯一标识光盘11的标识符指定给由author_id标识符所标识的内容生产商。通过引用稍后参考图15所讨论的内容分布文件的disc_id字段来确定标识符。应用程序或用户可以自由为这个字段设定任何值。
内容作者使用版本字段(version field)来管理历史纪录。历史记录号码(history number)在从1到255的整数范围内,并且较新的内容对应较大的号码。通过引用稍后参考图15讨论的内容分布文件的版本字段来确定标识符。无论是应用程序还是用户都不能自由设定这个字段的值。
在display_name字段中,可以很容易被用户标识的名称在此处被定义。更具体的,诸如“Japanese caption of title XXX”的字符串(很难单独从文件名称中想象出来)被设定在display_name字段中。根据ISO/IEC 10646-1标准来编码字符串。
在源字段中,描述了表示文件的源的信息。根据ISO/IEC 646标准来编码在该字段中的值。在网络下载的情况下,描述下载源的URL。
许可字段用于帮助内容作者指定是将批准信息设定为可视属性还是不可视属性。如果将0x00写入到八位的许可字段中,则用户不可视元数据的文件的属性。如果将0x01写入到八位许可字段中,则用户可视元数据文件的属性。如果将0x02写入到八位许可字段中,则禁止重写元数据文件的属性。
src_file_name字段包括唯一标识对应文件记录在本地存储器24的文件系统的目录结构中的何处的信息。更具体的,这个字段指定“路径名称”,该路径名称表示标识在本地存储器24的文件系统的分级层结构中具有文件位置的文件的路径。根据ISO/IEC 646标准来编码文件名称和表示路径名称的目录。
dst_file_name字段包括唯一标识将对应文件记录在目录结构中的何处的信息,该目录结构在实际上记录在本地存储器24上的文件的虚拟盘中的绑定目的地(bind destination)处。更具体的,这个字段指定了表示标识在虚拟文件系统的分级层结构中具有文件位置的文件的路径的“路径名称”。根据ISO/IEC 646标准来编码文件名称和表示路径名称的目录。
src_file_name和dst_file_name字段可以具有相同的文件名称。
以下描述元数据的操作程序。
虚拟文件系统限定了API,用于读取manifest()文件的内容,而不将文件名称、文件位置、或manifest()文件的物理结构披露给应用程序或用户。
更具体的,将由再生装置1执行的应用程序或常驻程序能够通过调用以下API来间接存取manifest():
getProperty
自变量1:
字符串类型数据
使用元数据被操作的文件的绝对路径名称
自变量2:
字符串类型数据
将被读取的元数据的元素名(element name)
返回值:
字符串类型数据
对应于由自变量指定的元素的元数据
函数:
从manifest()文件读取元数据
在实践中,诸如类型信息的API的详细定义需要根据再生装置1的软件执行环境的编程语言规范来进行修改。
图11示出了光盘11的文件系统。如图11所示,光盘11的文件系统具有目录结构。
名为“BDMV”的目录排列在光盘11的根目录下。在目录“BDMV”下,存储了名为“Index.bdmv”的文件和名为“MoveObject.bdmv”的文件。以下,适当地将这些文件分别称为Index文件和MoveObject文件。将每个文件称为跟有“file”的文件名称,并且将每个目录称为跟有“directory”的目录名称。
Index文件包括与用于光盘11的重放的菜单有关的信息。再生装置1使得显示设备基于Index文件来显示重放菜单屏幕。重放菜单屏幕示出了用于再生光盘11上的所有内容、仅再生特殊章、重复再生特殊章、以及显示原始菜单的选项。用所选择的任一选项执行的MovieObject被设定在Index文件中。当用户从重放菜单屏幕选择一个选项时,再生装置1执行在Index文件中所设定的Moveobject指令。
MovieObject文件包括MovieObject。MovieObject包括控制记录在光盘11上的播放列表的重放的指令。再生装置1选择并执行记录在再生装置1上的MovieObject中的一个,从而,再生记录在光盘11上的内容。
定义用于再生稍后讨论的动画数据的应用程序接口(API)。MovieObject包括指令以调用用于再生动画数据的API。例如,当与被给出的播放列表再生的AV数据同步显示动画时,执行包括了用于调用用于再生动画数据的API(基于所提供的API的应用程序)的指令的MovieObject。以此方式,调用并执行API(基于所提供的API的应用程序),并且与AV数据同步地再生及显示动画。
另外排列在BDMV目录下的是名为“BACKUP”的目录(BACKUP目录)、名为“PLAYLIST”的目录(PLAYLIST目录)、名为“CLIPINF”的目录(CLIPINF目录)、名为“STREAM”的目录(STREAM目录)、以及名为“AUXDATA”的目录(AUXDATA目录)。
BACKUP目录存储文件和数据以备份记录在光盘11上的文件和数据。
PLAYLIST目录存储播放列表文件。如图11中所示,每个播放列表文件名称由五位数的文件名称与附属于其的展开名“.mpls”构成。
CLIPINF目录存储剪辑信息文件。如图11中所示,每个剪辑信息文件的文件名称由五位数的文件名称与附属于其的展开名“.clpi”构成。
STREAM目录存储了剪辑AV流文件和副流文件。如图11所示,每个流文件的文件名称由五位数的文件名称与附属于其的展开名“.m2ts”构成。
AUXDATA目录存储了没有包括在剪辑AV流文件和副流文件中但却是从剪辑AV流文件和副流文件中所引用的数据和与剪辑AV流文件和副流文件单独使用的数据的文件。如图11中所示,AUXDATA目录存储了名为“11111.otf”的字幕字体文件和名为“sound.bdmv”的效果声音文件。
JPEG格式的图形动画数据文件也被存储在AUXDATA目录中。基于用于再生动画数据的API,通过启动Java应用程序来再生图形动画数据。
通过定义用于再生动画数据的API,再生装置1设定了动画帧,用于以不同于诸如视频流的流文件格式的格式显示动画。例如,再生装置1因此能够基于Java应用程序,与AV内容数据同步地显示图形动画。
由于将编码方案不同于AV内容的编码方案的数据作为能够与AV内容混合的视频数据来处理,所以增加了著作的自由度。
以不同于视频流的流文件的格式的格式(诸如Java)来描述动画。再生装置1所需的缓冲能力比以与视频相同的数据文件结构准备动画帧时所需的更小。因而,在再生装置1中,很容易实现成本降低和紧凑设计。
光盘11以不能被用户改写的可靠的电子数据的形式、或以物理凹点(physical pit)的形式来存储author_id和disc_id标识符。author_id标识符标识光盘11的内容生产商的内容作者(也称为题目作者),诸如电影的制造公司或发布代理机构。disc_id标识符标识由通过author_id标识符所标识的题目作者所制造的光盘11的类型。
图12示出了本地存储器24的文件系统。如图12中所示,本地存储器24的文件系统也具有目录结构。
至少一个名为“author_id”的目录排列在本地存储器24的根目录下。至少一个名为“disc_id”的目录排列在author_id目录下。disc_id目录包括一组manifest()段或由一个manifest()段构成的清单文件。内容作者自由地设定其他目录和文件的结构。其他目录和文件可以具有与参考图11所讨论的一个光盘11的结构相同的文件/目录结构,或者可具有如参考图12所讨论的结构,其完全不同于参考图11所讨论的文件/目录结构。
如图12所示,除了清单文件外,“disc_id”还包括多个包括“MainMovie”目录、“SubTitle”目录、和“AUXDATA”目录的目录。这些目录还可以包括文件夹和文件。
对于由再生装置1或用户所执行的应用程序来说,图12中的本地存储器24的文件/目录结构是不可视的。
例如,在图10的manifest()段中,作为其路径名称的“/MainMovie/movie01/main.r1.jp.mp2”可能在src_file_name字段中被指定,而作为其路径名称的“/STREAM/01002/m2ts”可能在dst_file_name字段中被指定。如图13所示,将所下载的数据记录在本地存储器24中的author_id和disc_id标识符下的MainMovie目录内的movie01目录中的main.r1.jp.mp2的文件名称中。在虚拟盘的虚拟文件系统中,将所下载的数据作为在STREAM目录中的名为“01002.m2ts”的文件来处理。
以此方式,内容作者可以在src_file_name字段中指定本地存储器24的路径名称,以及在所下载的数据包的manifest()段的dst_file_name字段中的虚拟盘的虚拟文件系统的路径名称。如果将适合于虚拟盘中的虚拟文件系统的路径名称设定在dst_file_name字段中,那么内容作者可以自由设置在实际上记录在本地存储器24上的数据的disc_id下的文件/目录结构,以及在由再生装置1中的disc_id标识符所指定的区域下重新添加目录和文件。
如果在manifest()段中的dst_file_name字段在实际文件下载处保持空白,即,该文件不能够被正由再生装置1所运行的应用程序所引用(就是说,正由再生装置1和用户所运行的应用程序不能意识到该文件的存在)。实际文件被存储在本地存储器24上,并且在本地存储器24的文件系统中正确标识实际文件。由于dst_file_name字段空白,所以认为虚拟文件系统中不存在该文件。因而,对于再生装置1的应用程序和用户来说,该文件隐藏。
该特性被利用。将实际文件下载为在manifest()段中具有空白的dst_file_name字段。稍后,再次下载具有相同的manifest_id和写入dst_file_name字段中的预定路径名称的manifest()段,以重写manitest()段。因而,将由再生装置1运行的应用程序以与新manifest()段的下载同时下载实际文件的方式相同的方式操作。
例如,每次下载多个附加内容(bonus track),或将其递送到预定的记录介质中,并且稍后,仅下载用于周期性重写的包括dst_fie_name字段的manifest()段,以使应用程序标识不同的附加内容。以此配置,用户就会对服务感到满意,其中,用户可以经常添加不同的附加内容,而无需频繁下载大量数据。
在光盘11和本地存储器24的实际文件系统与虚拟盘的文件系统之间同步(绑定)过程中,无论是所谓的静态绑定系统还是动态绑定系统,都可以定义用于更新虚拟文件系统(例如,update())的新API。当响应于用户操作或由应用程序明确调用该API时,更新虚拟文件系统。
在静态绑定中,当将光盘11加载到再生装置1时或在为了将文件/目录结构映射到虚拟文件系统中而切换再生题目的时候,引用在光盘11和本地存储器24中的实际文件系统。在动态绑定中,当发布文件输入和输出请求时,查找所需文件。
虚拟盘的文件/目录结构优选地与光盘11的文件/目录结构匹配。光盘11的文件/目录结构是通过标准来确定的并且通常不能被修改。优选地,内容作者可以自由地设定本地存储器24中的实际目录和文件的结构。如果基于光盘11的固定文件/目录结构来设定虚拟盘的文件/目录结构,则根据诸如光盘11的应用格式的标准来执行重放处理,而且同时要维持由内容作者所分配的数据的自由度。
图14示出了虚拟盘的文件/目录结构。
名为“BDMV”的目录排列在图14的虚拟盘的文件/目录结构的根目录下。在该根目录下,排列有名为“Index.bdmv”的文件和名为“MovieObject.bdmv”的文件。
Index文件包括与菜单有关的信息,该菜单用于再生存储在光盘11和本地存储器24上并且像记录在虚拟盘上的内容一样,由应用程序进行处理的内容。再生装置1使得显示设备能够根据Index文件来显示重放菜单屏幕。重放菜单屏幕可以示出用于再生在光盘11上的所有内容、仅再生特殊章、重复再生特殊章、以及显示原始菜单的选项。由任意所选项执行的MovieObject被设定在Index文件中。当用户从重放菜单屏幕中选择一个选项时,再生装置1执行在Index文件中设置的MoveObject指令。
MovieObject文件包括MovieObject。MovieObject包括用于控制像记录在虚拟盘上一样被处理的播放列表的重放的指令。再生装置1选择并执行像记录在虚拟盘上一样被处理的MovieObject中的一个,从而,再生了像记录在虚拟盘上一样被处理的内容。
排列在BDMV目录下的是名为“BACKUP”的目录(BACKUP目录)、名为“PLAYLIST”的目录(PLAYLIST目录)、名为“CLIPINF”的目录(CLIPINF目录)、名为“STREAM”的目录(STREAM目录)、和名为“AUXDATA”的目录(AUXDATA目录)。
BACKUP目录存储文件和数据,以备份将像记录在虚拟盘上一样被处理的文件和数据。
PLAYLIST目录存储播放列表(PlayList)文件。与光盘11中的方式相同,每个播放列表文件的文件名称由五位数的文件名称与附属于其的扩展名“.mpls”构成。
CLIPINF目录存储剪辑信息文件。与光盘11中的方式相同,每个剪辑信息文件的文件名称由五位数的文件名称与附属于其的扩展名“.clpi”构成。
STREAM目录存储了剪辑AV流文件和副流文件。与光盘11中的方式相同,每个流文件的文件名称具有包括五位数的文件名称与附属于其的扩展名“.m2ts”。
AUXDATA目录存储了没有包括在像记录在虚拟盘上一样被处理的剪辑AV流文件和副流文件中、但是从剪辑AV流文件和副流文件中被引用的数据的文件,以及与剪辑AV流文件和副流文件分开使用的数据的文件。与在上述光盘11中一样,AUXDATA目录记录了字幕字体文件、效果声音文件、和图形动画数据(动画帧)。
如先前所讨论的,再生装置1接收动画帧,用于显示具有格式不同于视频流文件的格式的动画,并且与AV内容数据同步显示以Java应用程序描述的图形动画。
由于将编码方案不同于AV内容的编码方案的数据作为能够与AV内容混合的视频数据来处理,所以增加了著作的自由度。
以不同于视频流的流文件格式的格式(诸如Java)来描述动画。再生装置1所需的缓冲能力比当以与视频相同的数据文件结构来准备动画帧时所需的更小。在该再生装置1中,很容易实现成本降低和紧凑设计。
指示将在菜单屏幕上显示给用户的文件的信息具有通常在display_name字段中被指定的名称。参考图14所讨论的虚拟盘的文件/目录结构实际上对于应用程序和用户来说并没有隐藏。根据再生装置1所执行的应用程序,可以向用户显示虚拟盘的文件/目录结构。
参考图15来描述内容用户使用其来分配内容的内容分配文件格式的规定。可以以每个内容文件单元为基础来单独确定用于内容分配的文件格式。可选地,文件格式可以是包括如图15所示的元数据(manifest())的档案类型。
在档案中的package_header()段和package_body()段可以采用标记语言(诸如XML)的文本表示。
当内容作者以每个文件单元为基础来分配内容时,元数据(manifest())被作为独立的二进制文件或文本文件来处理。换句话说,考虑到在文件添加之后所期望的目录结构,在与内容相联系的manifest()中需要描述适当的状态,该内容是以每个文件单元为基础来进行分配的。
压缩型(compression_type)字段用于指定在package_body()内的数据的压缩方法。如果在这个字段中指定的是零,则在package_body内的数据是非压缩型。
加密型(encryption_type)字段用于指定在package_body()内的数据的加密编码(加密)方法。如果在这个字段中指定的是零,则在package_body内的数据是非加密编码型(明码文本)。
对于在package_body中的数据的加密编码和压缩的顺序来说,是首先执行压缩处理,然后是加密编码处理。
文件计数(file_count)字段用于指定将要被存档的文件的总数。
manifestv_id用于指定manifest()段的标识符。
在下载了存档数据之后,manifest()段可以以每个文件单元为基础(每个档案数据单元为基础)被存储到本地存储器24上。或者,manifest()段可以与具有用作标识符的关键字的manifest()段的manifest_id标识符的文件合并。
author_id字段是其中内容作者指定了唯一标识内容生产商的标识符的字段。
disc_id字段是其中内容作者指定了唯一标识特殊内容生产商的光盘11的标识符的字段。这个存档是更新由disc_id标识符所指定的光盘11的数据。
版本字段是内容作者使用其来管理历史记录的字段。历史记录号码由从1到255的数字来表示,并且较新的内容对应于较大的号码。
在源字段中,描述了与manifest()相联系的文件的源URL。在这个字段中的值根据ISO/IEC 10646-1标准来编码。
在display_name字段中,用户可以很容易标识的名称被定义在此处。更具体地,诸如“Japanese caption of title XXX”的字符串(很难单独从文件名称中想象出来)被设定在display_name字段中。字符串根据ISO/IEC 10646-1标准来编码。
许可字段用于内容作者指定是将批准信息设定为可视属性还是不可视属性。许可字段可指定的值保持参考图10所讨论的值不变。
src_file_name字段用于指定将如先前参考图13所讨论一样被记录在本地存储器24上的文件的路径名称。文件/目录名称根据ISO/IEC 646标准来编码。
dst_file_name字段用于指定如先前参考图13所讨论的一样在虚拟盘(虚拟文件系统)中绑定目的地(binding destination)处的文件的路径名称。文件/目录名称根据ISO/IEC 646标准来编码。
src_file_name和dst_file_name字段可以采用相同的名称。
file_size(文件尺寸)字段用于指定在字节压缩之前的文件的文件尺寸。
file_data(文件数据)字段用于将文件数据指定为字节顺序。
下载具有所述内容分配文件格式的图15中的数据,并且再生装置1将所下载的数据和记录在所加载的光盘11上的数据进行合并,以在虚拟盘中构成虚拟文件系统。使用再生装置1来再生记录在光盘11上的内容的用户会感到,用添加到被记录在光盘11上的内容的附加内容和声音或不同语言声音的字幕来更新光盘11。
如果更新具有上述格式的内容,就要下载新数据文件,用于绑定在参考图14所讨论的虚拟文件系统中。例如,添加或更新索引文件(Index.bdmv)、影片对象文件(MovieObjects.bdmv)、播放列表文件(*****.mpls)、剪辑信息文件(*****.clpi)、和流(STREAM)文件及辅助数据(AUXDATA)文件(*****.m2ts、*****.bdmv、和*****.otf)。执行通过上述所引用的operation_type来定义的各种类型的添加,诸如MainPath和SubPath的添加,以便与记录在光盘11上的内容相联系地下载及再生上述文件。
图16是示出了在本发明一个实施例中的再生装置1中的解码器26的框图。
包括开关41和AV解码器33的解码器26在控制器21的控制下进行操作。
如图16所示,控制器21从本地存储器24或通过光盘驱动器22从光盘11(诸如Blu-ray盘或DVD的记录介质)中读取播放列表文件,以及根据播放列表文件的信息从本地存储器24或通过光盘驱动器22从光盘11(诸如Blu-ray盘或DVD的记录介质)中读取AV流或AV数据。使用操作输入单元29,用户就可以向控制器21发布指令来切换音频或字幕。通过存储单元(未示出),控制器21被提供有再生装置1的初始语言设定的信息。
除了关于主路径和副路径的信息外,播放列表文件还包括各种重放信息块。控制器21通过光盘驱动器22从光盘11、或从本地存储器24读取:主剪辑AV流文件(后文中称为主剪辑),其被包括在播放列表文件中的播放项引用;副剪辑AV流文件(后文中称为副剪辑),被副播放项引用;以及文本副题目数据及动画数据,每个均被副播放项引用。被播放项所引用的主剪辑和被副播放项所引用的副剪辑被存储在不同的记录介质上。例如,主剪辑可以被记录在记录介质上,而将对应的副剪辑在通过网络(未示出)被提供之后存储在本地存储器24上。控制器21可以选择并再生对应于其重放功能的基本流,或者选择并再生对应于关于再生装置1的初始语言设定的信息的基本流。
AV解码器33包括缓冲器51-54、PID过滤器55、PID过滤器56、开关57-59、PID过滤器60、预载缓冲器61、动画解码器62、解码对象缓冲器63、合成缓冲器64、动画调度器65、背景解码器71、第一视频解码器72-1、第二视频解码器72-2、演示图形解码器(presentation graphics decoder)73、交互式图形解码器74、第一音频解码器75-1、第二音频解码器75-2、文本副题目合成解码器76、开关77、开关78、背景平面生成器91、视频平面生成器92、演示图形平面生成器93、交互式图形平面生成器94、缓冲器95、视频数据处理器96、混合处理器97、和混合处理器98。
第一视频解码器72-1解码第一视频流,而第二视频解码器72-2解码第二视频流。第一音频解码器75-1解码音频流#1(第一音频流),而第二音频解码器75-2解码音频流#2(第二音频流)。
再生装置1包括两个视频解码器(第一视频解码器72-1和第二视频解码器72-2)来解码两个视频流,以及两个音频解码器(第一音频解码器75-1和第二音频解码器75-2)来解码两个音频流。如果不需要在第一视频解码器72-1和第二视频解码器72-2之间进行区分时,将每个视频解码器均称为视频解码器72。如果不需要在第一音频解码器75-1和第二音频解码器75-2之间进行区分时,将每个音频解码器均称为音频解码器75。
由控制器21所读取的文件数据被解码并且被误差校正码(ECC)解码器(未示出)误差校正为多路复用流(multiplexedstream)。在控制器21的控制下,开关41按照流的类型选择解码和误差校正的数据,然后,将所选择的数据提供给对应的缓冲器51-54。
主剪辑AV流是多路复用了视频、和音频、位图字幕(演示图形流)、和交互式图形中的至少一个的流(诸如传输流)。副剪辑AV流是复用了音频、位图字幕(演示图形流)、和交互式图形流中的至少一个的流。动画数据可以是以不同于与传输流相似的多路复用数据流的数据格式(诸如Java)来描述的数据。换句话说,并不需要MPEG 2传输流的知识和开发技能,就可以生成将与在再生装置1上的视频数据同步再生的动画数据。数据文本副题目数据文件(Text_ST)可以是或者也可以不是诸如传输流的多路复用流形式。
再生装置1从本地存储器24或通过光盘驱动器22从光盘11(或其他记录介质)来读取文件数据,然后再生视频、位图字幕、交互式图形、动画、和音频。
数据之中,动画数据是从光盘驱动器22(记录介质)或本地存储器24中读取的,然后,经过解码处理。当主剪辑、副剪辑、和文本副题目数据是从光盘驱动器22(记录介质)或本地存储器24中读取时,可以以时分方式来读取各个文件,或者可在从主剪辑中读取副剪辑和文本副题目数据之前,将副剪辑和文本副题目数据预载到所有缓冲器(缓冲器53和54)。
更具体地,通过控制器21来控制开关41,使得首先响应于来自用户的指令所读取的动画数据提供给预载缓冲器61。
在动画调度器65的控制下,预载缓冲器61缓冲由开关41所提供的动画数据,然后将该动画数据提供给动画解码器62。动画解码器62在动画调度器65的控制下解码所提供的动画数据,然后将经过解码的对象提供给解码对象缓冲器63。
为了使主剪辑(第一流)的视频数据的重放与动画的重放同步,动画调度器65引用被视频解码器72所引用的STC计数器(未示出),并且控制预载缓冲器61、动画解码器62、解码对象缓冲器63、和合成缓冲器64的操作。
如图17所示,所提供的动画帧包括至少一个像帧,并且并不必要在视频帧的所有时域都作出准备。如所示,在预定动画重放时间的期间显示动画帧,而在动画间隔期间不显示。然后,在下个动画重放时间的期间再次显示动画帧。
由于定时取决于每个帧的图像,所以不能预测用于主剪辑视频数据(第一视频流)的重放的解码处理的定时。动画帧经过预先缓冲和解码,然后被存储在解码对象缓冲器63上。根据主剪辑视频数据(第一视频流)的IN时间和OUT时间,动画调度器65将在解码对象缓冲器63上的解码动画数据传输给合成缓冲器64。
当动画帧的重放开始时,合成缓冲器64在动画调度器65的控制下获取刚刚已由交互式图形平面生成器94生成的图形平面,并且将图像平面作为将被混合的数据来存储以用作备份、提取由解码对象缓冲器63所提供的动画帧的目标部分的图像、α(alpha)混合所提取的图像和所存储的图形对象、以及将所混合的图像传输到交互式图形平面生成器94。
因而,动画数据由于缓冲能力而受到了格式的限制。
以下将参考图18描述动画数据的限制。
参看图18,T1表示预载时间,在这期间,每次都将所有动画帧预载到预载缓冲器61。T2表示解码时间,在这期间,在动画解码器62的处理中解码所有的动画帧。T3表示传输时间,在这期间,就在动画开始之前,将图形平面的内容从交互式图形平面生成器94传输到合成缓冲器64。T4表示用于由合成缓冲器64来alpha混合一个动画帧的时间和将混合结果传输到交互式图形平面生成器94的时间的和。T5表示在交互式图形平面生成器94中的一个动画帧的演示时间。
时间T1到T4由于再生装置1的硬件结构的不同而采用不同的参数。另外,时间T1到T4是由应用程序所指定的参数。
动画帧被预载到预载缓冲器61上,然后被复制到动画解码器62,而不是被传输给动画解码器62(动画帧的数据保持在预载缓冲器61上)。预载缓冲器61可以存储预载的动画帧,直至提供了下一个动画帧。将解码的动画帧从解码对象缓冲器63提供给合成缓冲器64作为复制操作、而不是传输操作(解码的动画帧保留在解码对象缓冲器63上)来执行。解码对象缓冲器63可以在提供了下一个解码帧之前存储解码的动画帧。此外,将经过alpha混合的帧数据从合成缓冲器64提供给交互式图形平面生成器94作为复制操作、而不是传输操作(原始混合的帧数据保留在合成缓冲器64上)来执行。
应用程序可以指定参数,诸如,将被作为动画帧显示的图像、由视频流的PTS(演示时间戳)所指示的动画开始时间、由视频流的PTS所指示的动画结束时间、以及动画的帧速率的参数。
由动画帧解码的速度来确定图17的动画间隔的最小值。
通过将数据从合成缓冲器64传输到交互式图形平面生成器94的数据传输速率(数据的复制速度)以及在合成缓冲器64中每个像素单元的alpha混合的处理速度,来确定相对于动画帧速率将被处理的动画帧的尺寸。
由解码对象缓冲器63的缓冲能力来确定动画帧的速率和相对于与该动画帧速率对应的动画帧的尺寸而可用的帧的总数。
更具体地,必须满足以下等式(1):
N(n)=f(n)xΔT(n)                                        ...(1)
其中,ΔT(n)由等式(2)来描述并且满足等式(3),N(n)是在第n个动画中所使用的图形对象的总数,以及f(n)是第n个动画中的帧速率(/s):
ΔT(n)=animation_end_time(n)-animation_start_time(n)    ...(2)
ΔT(n)>0                                                ...(3)
其中,animation_start_time(n)是第n个动画的开始时间而animation_end_time(n)是第n个动画的结束时间。
动画间隔必须满足以下等式(4):
animation_end_time(n)+T1+T2+T3+T4≤animation_start_time(n+1)                                                           ...(4)
以下等式(5),即,等式(6)也必须被满足。
(2xRd+BPPxRp)xΔT(n)≥8xS(n)以及
2xRd+BPPxRp≥8xSmax(n)xf(n)        ...(5)
2xRd+BPPxRp≥8xSmax(n)xf(n)        ...(6)
其中,Rd是再生装置1的数据传输速率(数据复制速度)(bits/s),Rp是再生装置1的每个像素的alpha混合处理速率(pixels/s),以及BPP是图形对象的色深度(bits/pixel)。S(n)是所有动画图形对象的尺寸的和,即,由SIZE(object(1))+SIZE(object(2))+...+SIZE(object(N(n))来表示,其中SIZE(gfx)是提供了图形对象gfx的字节尺寸的函数。Smax(n)由MAX{SIZE(object(1)),SIZE(object(2)),...,SIZE(object(N(n)))}来表示,其中,MAX()是提供了对象串(object train)的字节最大值的函数。
如果DEC_TIME(gfx)是提供了动画图形对象gfx以秒为单位的解码时间,以下等式(7)也必须被满足:
DEC_TIME(object(1))+DEC_TIME(object(2))+...DEC_TIME(object(N(n)))≤T2                 ...(7)
此外,以下等式(8)也必须被满足:
S(n)≤SIZE(解码对象缓冲器)             ...(8)
其中,SIZE(解码对象缓冲器)表示解码对象缓冲器63的缓冲能力。
参考图19和图20,以下描述将动画帧预载到预载缓冲器61中的定时。
在图19中示出的连续影片的重放过程中,在播放项#1的重放开始之前,预载将与播放项#1和播放项#2同步再生的动画帧的图像数据。然后,在预定的重放位置处,与播放项#1和播放项#2的第一视频流同步再生动画。如果不同的播放项#3以非无缝方式与播放项#1和播放项#2连接(concatenate),则在重放播放项#3的第一视频流之前,就预载将与播放项#3的第一视频流同步再生的动画帧的图像数据。
如果播放项#3以无缝方式与播放项#1和播放项#2连接,则在重放第一播放项之前,预载将与播放项#3的第一视频流同步再生的动画帧。
当如图20所示,在交互式影片(分支型)的重放过程中,这些播放项以非无缝方式连接时,可以在重放之前,以每个播放项为基础来预载动画帧的图像数据。然而,如果这些播放项是以无缝方式连接,则仅在重放第一播放项之前预载动画帧的图像数据。
以下参考图21A-21C来描述重新呈现(re-rendering)操作。
当以如图21A所示,仅将其左上原点固定来展开动画帧的尺寸时,不启动重新呈现操作。为了与背景图像alpha混合,在动画帧的展开过程中在覆盖区域(最大覆盖区域)中开始动画显示之前,合成缓冲器64对来自交互式图形平面生成器94的图形平面进行存储用于备份。
如图21B所示,当如图21B所示,仅将其左上原点固定来收缩动画帧的尺寸时,重新呈现处理不被启动,为了与背景图像进行alpha混合,在动画帧的展开过程中在覆盖区域(最大覆盖区域)中开始动画显示之前,合成缓冲器64对来自交互式图形平面生成器94的图形平面进行存储用于备份。
当动画帧如图21C中所示移动时,在覆盖区域上启动重新呈现处理。为了与背景图像进行alpha混合,在开始作为经过区(所有覆盖区域)的矩形区域的动画显示之前,合成缓冲器64对来自交互式图形平面生成器94的图形平面进行存储用于备份。
返回图16,由控制器21控制的开关41将背景图像数据提供给缓冲器51、将主剪辑数据提供给缓冲器52、将副剪辑数据提供给缓冲器53、以及将文本副题目数据提供给缓冲器54。缓冲器51缓冲背景图像数据,缓冲器52缓冲主剪辑数据,缓冲器53缓冲副剪辑数据,以及缓冲器54缓冲文本副题目数据。
在预定定时处,将从用于缓冲背景图像数据的缓冲器51所读取的数据提供给背景解码器71。背景解码器71解码背景图像数据,然后将经过解码的背景图像数据提供给背景平面生成器91。
在预定定时处,将从作为主剪辑AV流读取缓冲器的缓冲器52所读取的流数据输出到后序级PID(包ID)过滤器55。PID过滤器55通过PID(包ID)来将输入的主剪辑AV流分类成各种流,并且将分类的流输出到用于基本流的各个解码器。更具体地,PID过滤器55将视频流提供给充当第一视频解码器72-1和第二视频解码器72-2中的一个的供应源的PID过滤器60、将演示图形流提供给充当演示图形解码器73的供应源的开关57、将交互式图形流提供给充当交互式图形解码器74的供应源的开关58、以及将音频流提供给充当第一音频解码器75-1和第二音频解码器75-2中的一个的供应源的开关59。
从充当副剪辑AV流读取缓冲器的缓冲器53所读取的流数据被输出到后序级PID(包ID)过滤器56。PID过滤器56通过PID来分类所输入的副剪辑AV流,并且将所分类的流输出到基本流的各个解码器。更具体地,PID解码器56将视频流提供给充当第一视频解码器72-1和第二视频解码器72-2中的一个的供应源的PID过滤器60、将演示图形流提供给充当演示图形解码器73的供应源的开关57、将交互式图形流提供给充当交互式图形解码器74的供应源的开关58、以及将音频流提供给充当第一音频解码器75-1和第二音频解码器75-2中的一个的供应源的开关59。
PID过滤器60接收包括在PID过滤器55所提供的主剪辑中的视频流以及包括在PID过滤器56所提供的副剪辑中的视频流中的一个。在控制器21的控制下,PID过滤器60确定输入的是第一视频流还是第二视频流,然后,将第一视频流提供给第一视频解码器72-1以及将第二视频流提供给第二视频解码器72-2。
由PID过滤器60所分类的视频流接下来被提供给后序的第一视频解码器72-1和第二视频解码器72-2。第一视频解码器72-1和第二视频解码器72-2中的每个均解码所提供的视频流,然后将所解码的视频数据提供给视频平面生成器92。
第一视频解码器72-1是用于解码第一视频流的解码器,而第二视频解码器72-2是用于解码第二视频流的解码器。第一音频解码器75-1是用于解码音频流#1(第一音频流)的解码器,而第二音频解码器75-2是用于解码音频流#2(第二音频流)的解码器。
再生装置1包括两个视频解码器(第一视频解码器72-1和第二视频解码器72-2)来解码两个视频流,以及两个音频解码器(第一音频解码器75-1和第二音频解码器75-2)来解码两个音频流。如果不需要在第一视频解码器72-1和第二视频解码器72-2之间进行区分,则将每个视频解码器简单称为视频解码器72。如果不需要在第一音频解码器75-1和第二音频解码器75-2之间进行区分,则将每个音频解码器称为音频解码器75。
开关57从包括在PID过滤器55所提供的主剪辑中的演示图形流和包括在PID过滤器56所提供的副剪辑中的演示图形流中选择一个,然后将所选择的演示图形流提供给后面的演示图形解码器73。演示图形解码器73解码演示图形流,并将经过解码的演示图形流的数据提供给充当演示图形平面生成器93的供应源的开关77。
开关58从包括在PID过滤器55所提供的主剪辑中的交互式图形流和包括在PID过滤器56所提供的副剪辑中的交互式图形流中选择一个,然后将所选择的交互式图形流提供给后面的交互式图形解码器74。提供给交互式图形解码器74的交互式图形流是与主剪辑AV流或副剪辑AV流分开的流。
交互式图形解码器74解码交互式图形流,然后将经过解码的交互式图形流的数据提供给充当交互式图形平面生成器94的供应源的开关78。
开关59从包括在PID过滤器55所提供的主剪辑中的音频流和包括在PID过滤器56所提供的副剪辑中的音频流中选择一个,然后将所选择的音频流提供给第一音频解码器75-1和第二音频解码器75-2中的一个。第一音频解码器75-1所提供的音频流是与主剪辑和副剪辑中的一个分开的流。第二音频解码器75-2所提供的音频流也是与主剪辑和副剪辑中的一个分开的流。如果音频流#1和音频流#2均包括在主剪辑中,则PID过滤器55就根据音频流的PID来过滤音频流#1和音频流#2,然后将经过过滤的音频流提供给开关59。
例如,开关59操作以将PID过滤器55所提供的音频流#1提供给第一音频过滤器75-1以及将PID过滤器55所提供的音频流#2提供给第二音频解码器75-2。
第一音频解码器75-1解码音频流,并将经过解码的音频流的数据提供给混合处理器101。第二音频解码器75-2解码音频流,并将经过解码的音频流的经过解码的数据提供给混合处理器101。
如果以覆盖模式(overlay mode)来再生音频流#1和音频流#2(如果将两个音频流选作将被用户再生的音频流),则将由第一音频解码器75-1解码的音频流#1和由第二音频解码器75-2解码的音频流#2提供给混合处理器101。
混合处理器101混合(叠加(superimposes))来自第一音频解码器75-1的音频数据和来自第二音频解码器75-2的音频数据,然后将所混合的音频数据提供给后面的混合处理器97。在本发明的这个实施例中,混合(叠加)来自第一音频解码器75-1的音频数据和来自第二音频解码器75-2的音频数据的也被称为合成(synthesis)。因而,合成意味着混合两块音频数据。
由开关41所选择的声音数据被提供给缓冲器95。缓冲器95在预定定时处将该声音数据提供给混合处理器97。处理器97将由混合处理器101所混合的音频数据(即,通过混合从第一音频解码器75-1输出的音频数据和从第二音频解码器75-2输出的音频数据而获得的音频数据)与缓冲器95所提供的声音数据相混合(叠加或合成),然后将经过混合的音频数据作为音频信号输出。
将从作为文本副题目读取缓冲器的缓冲器54所读取的数据在预定定时处输出到后面的文本副题目合成解码器76。文本副题目合成解码器76解码Text-ST数据,并将经过解码的Text-ST数据提供给开关77。
开关77在由演示图形解码器73解码的演示图形流和由文本副题目合成解码器76解码的文本副题目数据之间进行选择,然后将所选择的数据提供给演示图形平面生成器93。提供给演示图形平面生成器93的字幕图像是演示图形解码器73的输出和文本副题目合成解码器76的输出中的一种。
开关78选择由交互式图形解码器74解码的交互式图形流的数据和由合成缓冲器64所提供的动画数据中的一个,然后将所选择的数据提供给交互式图形平面生成器94。在重放定时处,由合成缓冲器64来合成动画数据。当从合成缓冲器64接收到动画数据时,开关78就将动画数据提供给交互式图形平面生成器94。
输入到演示图形解码器73的演示图形流是与主剪辑和副剪辑(由开关57所选择)分开的流。
当基于背景解码器71所提供的背景图像数据,以缩小比例来显示视频图像时,背景平面生成器91生成充当壁纸图像的背景平面,然后将背景平面提供给视频数据处理器96。
当从第一视频解码器72-1和第二视频解码器72-2提供视频数据时,视频平面生成器92在控制器21的控制下,通过合成所提供的视频数据来生成视频平面,然后将视频平面提供给视频数据处理器95。当仅由第一视频解码器72-1提供视频数据时,视频平面生成器92基于所提供的视频数据来生成视频平面,然后将视频平面提供给视频数据处理器96。合成两块视频数据也称为叠加或混合两块视频数据。
响应于由开关77所选择和提供的数据(演示图形流和文本副题目数据中的一个),演示图形平面生成器93生成演示图形平面作为呈现图像,然后将演示图形平面提供给视频数据处理器96。
响应于由开关78所选择和提供的数据(由交互式图形解码器74提供的交互式图形流的数据和由合成缓冲器64所提供的动画帧中的一个),交互式图形平面生成器94生成交互式图形平面,然后将所生成的交互式图形平面提供给视频数据处理器96。
视频数据处理器96混合来自背景平面生成器91的背景平面、来自视频平面生成器92的视频平面、来自演示图形平面生成器93的演示图形平面、以及来自交互式图形平面生成器94的交互式图形平面,然后将混合平面作为视频信号输出。混合处理器97混合(合成或叠加)来自混合处理器101的音频数据(通过混合由第一音频解码器75-1解码的音频数据和由第二音频解码器75-2解码的音频数据所获得的音频数据)和来自缓冲器95的声音数据,然后将混合数据作为音频信号输出。
开关57-59以及开关77和78响应于用户在操作输入单元29上的选择输入或包括将被处理的数据的文件而操作。例如,如果在副剪辑AV流文件中仅包括音频流,那就将开关59设置在副端。
参考图16所讨论的解码器26在控制器21的控制下执行重放处理。
如上所述,在再生装置1中的解码器26包括预载缓冲器61、动画解码器62、解码对象缓冲器63、合成缓冲器64、和动画调度器65。因而,解码器26与音频帧同步地再生了图形动画。
在典型应用中,AV内容(诸如主路径的影片)跟有导演的评论,或者当指向在屏幕上的单独场景时导演解释该单独场景,或者用再生的主AV作为背景来执行实时游戏。
再生动画(动画帧)所需的数据预先经过缓冲、然后经过解码。当动画调度器65引用在由视频解码器使用的STC计数器上的计数时,随即存取缓冲在解码对象缓冲器63上的数据的动画帧。然而,不能执行对不同播放列表或不同播放项的跳跃式重放(jumpplayback)。
如先前所讨论的,在再生装置1中,将用于动画重放所需的动画帧在预先经过解码之后预载到预载缓冲器61上。当动画调度器65引用STC计数器(未示出)时,与特定视频帧同步显示的动画帧被传送到交互式图形平面生成器94。
在实际设计中,双缓冲或三缓冲技术可以被引入到交互式图形平面生成器94中,以防止动画显示的抖动。
在图22中示出了双缓冲技术的实例。
如图22中所示,交互式图形平面生成器94包括后图形平面151和前图形平面152。缓冲控制器153控制将数据输入到后图形平面151和前图形平面152中的每一个,以及从后图形平面151和前图形平面152中的每一个输出数据。更具体地,在前图形平面152中完成混合处理之后,从前图形平面152输出混合数据。当混合数据正从前图形平面152中输出时,将数据提供给后图形平面151用于混合处理。接下来,当完成从前图形平面152输出混合数据以及在后图形平面151中的混合处理时,在两个平面之间颠倒数据输入和数据输出。
这样构建的交互式图形平面生成器94防止了动画显示的抖动。
关于上述动画显示的处理,即,在预载缓冲器61、动画解码器62、解码对象缓冲器63、合成缓冲器64、和动画调度器65上执行的控制器21的处理由作为用于启动视频同步动画的API的animation()来启动。
API的特定句法根据再生装置1的平台的语言规定的不同而不同。因而,由再生装置1执行的应用程序或常驻程序能够通过调用以下API来控制动画显示。
API包括以下自变量:
filecount(文件计数):这个自变量指定了文件名称的总数。
Mode(模式):这个自变量指定了正常模式和副图形模式中的一个。当自变量模式指定正常模式时,一个图像文件对应于一个动画帧。当自变量模式指定副图像模式时,从单个图像文件中提取多个动画帧。
filename(文件名称):这个自变量是字符串型自变量。由文件名称所指定并且是动画所需的图像文件被预载并展开。使用filename就可以指定多个文件的名称。
PlayList_id[]:这个自变量指定了PlayList[]的串。当指定多个PlayList时,需要以重放的顺序指定PlayList。
PlayItem_id[]:这个自变量指定了PlayItem(播放项)的串。当指定多个PlayItem时,需要以重放的顺序指定PlayItem。如果指定了多个PlayList_id,则自变量PlayItem_id[]不能够指定值。
start_PTS:这个自变量指定了在动画开始点处的视频帧的PTS。start_PTS的值落在如上所讨论的视频的演示时间内。
end_PTS:这个自变量指定了在动画结束点处视频帧的PTS。与start_PTS的值一样,end_PTS的值也落在视频的演示时间的范围内。
frame_rate:这个自变量指定了动画的帧速率,并且是同步视频的视频帧速率的整数倍。
width:这个自变量指定了动画帧的宽度(原始数据的图像帧的宽度而不是显示宽度)。
height:这个自变量指定了动画帧的高度(原始数据的图像帧的高度而不是显示高度)。
X[]:这个自变量表示动画的显示位置,例如,在所生成的演示图形平面中(或者在显示屏幕中),动画左上角的X坐标(或X坐标串)。
Y[]:这个自变量表示动画的显示位置,例如,在所生成的演示图形平面中(或者在显示屏幕中)动画左上角的Y坐标(或Y坐标串)。
scaling_factor[]:这个自变量表示相对于动画帧尺寸,在所生成的演示图形平面中(或在显示屏幕中)所示的测量动画数据的尺寸的串(比例系数)。
在这种情况下,不特殊准备任何返回值。
具有了这些API自变量,通过简单调用在应用程序中的API就可以执行编辑处理(authoring process)。
具有了这个自变量,就可以与作为流数据在再生装置1上再生的视频数据同步地再生使用Java描述的动画帧。
与已知的用于与MPEG 2传输流格式的视频帧同步显示图形的HDMV图形流相比,再生装置1免除了视频格式的限制以及压缩格式的限制。灵活引入将被同步再生的图像的格式。编辑处理就像在应用程序中调用API一样简单。
因而,帧同步动画以低开发成本被开发,并且基于诸如JPEG图像的普通图形对象和控制API的定义来被提供。具有驱动动画的API,内容生产商和内容供应商可以制造和分布视频同步动画,而不需要关于MPEG 2传输流的专业知识。
在稍后的日期,可以通过诸如互联网的网络2来轻松提供动画数据,以根据已分布的内容来将其再生。例如,在稍后日期,开发将被提供的数据,无需任何关于MPEG 2传输流的专业知识。
当HDMV图形流用作将与在本发明一个实施例的再生装置1上的视频流同步再生的图像的数据格式时,可以一次或以每个源包为基础来读取所有数据。因而,灵活执行了读取过程。
以下将参考图23-30的流程图描述再生装置1的处理。
以下将参考图23的流程图描述文件添加和更新处理。
在步骤S1中,在控制器21中的操作输入获取单元32基于从操作输入单元29所提供的信号来确定,是否已从用户接收到基于文件(file-based)的添加处理的指令,即,开始添加包括在由预定的disc_id标识的目录中的文件的添加处理的指令。如果在步骤S1中确定还没有接收到开始文件添加处理的指令,则重复步骤S1,直到确定了已接收到开始文件添加处理的指令。
如果在步骤S1中确定已接收到开始文件添加处理的指令,则在步骤S2中,控制器21中的本地存储器目录管理器34控制数据获取单元33,从而通过互联网接口25和网络2来访问服务器3,以将表示当前虚拟文件系统的状态的信息(诸如manifest()段的manifest_id标识符)传输到服务器3。
在步骤S3中,数据获取单元33控制互联网接口25,从而确定是否已通过网络2从服务器3接收到对应于可下载文件的列表的信息。
如果在步骤S3中确定还没有接收到对应于可下载文件的列表的信息,则在步骤S4中,菜单屏幕显示控制器31控制错误消息的显示,错误消息会通知用户该文件添加处理是不可用的,然后结束处理。
如果在步骤S3中确定已接收到对应于可下载文件的列表的信息,则在步骤S5中,数据获取单元33向菜单屏幕显示控制器31提供关于从服务器3传输并经过互联网接口25接收到的可下载文件的列表的信息。菜单屏幕显示控制器31使显示设备显示允许用户从中选择一个的可下载文件的列表的菜单屏幕。
在步骤S6中,操作输入获取单元32确定用户是否已使用在菜单屏幕显示控制器31的控制下所显示的菜单屏幕上的按钮和图标中的一个来选择将被添加的项。如果在步骤S6中确定还没有选择用户可能想要添加的任何项,则重复步骤S6,直到确定已选择任一项。
如果在步骤S6中确定已选择了用户可能想要添加的项,则在步骤S7中,操作输入获取单元32就将表示由用户所选择的更新内容的信息提供给数据获取单元33。数据获取单元33控制互联网接口25,并将表示所请求的文件的信息传输给服务器3,以请求服务器3发送回由用户选择的文件。
在步骤S8中,数据获取单元33控制互联网接口25,从而引起服务器3来下载PlayList(播放列表)文件、ClipInformation(剪辑信息)文件、剪辑AV流文件、音频文件、字幕文本流文件、动画数据文件和字形文件(以上都作为下载文件而准备)中的一个。接下来,数据获取单元33通知本地存储器目录管理器34,这些文件已被下载。
在步骤S9中,本地存储器目录管理器34确定本地存储器24是否已存储了由包括在已下载文件的manifest()中的author_id和disc_id标识符所标识的目录。如果对应目录出现在本地存储器24上,那么就在那个目录上展开已下载的数据文件。如果没有出现任何对应的目录,则创建由author_id和disc_id标识符所指定的新目录,然后在其上展开已下载的数据文件。
在步骤S10中,执行将在稍后参考图24描述的绑定处理。
通过该处理,从服务器3下载更新文件,将其存储在本地存储器24上,并且将其作为记录在光盘11上的内容的更新文件来处理。
例如,用户购买具有内容(诸如在其上记录有影片)的光盘11。然后,用户获取显示未被记录在光盘11上的语言的字幕所需的文件,或与视频数据同步显示新的动画所需的文件,然后,将这些文件存储在本地存储器24上。因而,用于执行重放处理的应用程序可以没有任何差别地处理记录在光盘11上的数据和记录在本地存储器24上的数据。结果,生成使物理数据的存储从用户和应用程序中隐藏起来的虚拟文件系统。
可以免费或付费地下载这些更新文件。
以下将参考图24的流程图描述在图23的步骤S10中执行的绑定处理。
在步骤S21中,本地存储器目录管理器34从存储在本地存储器24上的已下载的数据组中提取对应于disc_id的目录,然后将该目录提供给文件系统合并处理器36。
在步骤S22中,文件系统合并处理器36引用在清单文件中的src_file_name和dst_file_name字段。
在步骤S23中,文件系统合并处理器36基于在步骤S22中引用的src_file_name和dst_file_name来将本地文件系统与虚拟文件系统进行绑定。
更具体地,src_file_name呈现表示路径的“路径名称”,即,唯一标识将对应文件记录在本地存储器24的文件系统中的目录结构中的何处的信息。dst_file_name字段呈现表示路径的“路径名称”,即,唯一标识将对应文件记录在存储在本地存储器24上的文件的虚拟盘中绑定目的地处的目录结构中的何处的信息。
例如,在参考图10所述的manifest()段中,作为路径名称的“/MainMovie/movie01/main.r1.jp.mp2”可能在src_file_name字段中被指定,而作为路径名称的“/STREAM/01002.m2ts”在dst_file_name字段中被指定。如先前参考图13所讨论的,根据author_id和disc_id标识符,将下载数据存储在本地存储器24上的MainMovie文件夹中的movie01文件夹中的main.r1.jp.mp2的文件名称下。在虚拟盘的虚拟文件系统中,文件系统合并处理器36执行绑定处理,使得,已下载的数据被作为在STREAM目录中具有01002.m2ts文件名称的文件。
内容作者可以在下载文件数据包的manifest()段的src_file_name字段中指定本地存储器24中的路径名称,以及在dst_file_name字段中指定虚拟盘上的虚拟文件系统的路径名称。如果适合于在虚拟盘上的虚拟文件系统(即,适合于光盘11的文件系统)的路径名称被设定在dst_file_name字段中,则内容作者可以自由设定在disc_id标识符下的文件/目录结构,并且将目录和文件新添加到在实际记录在再生装置1中的本地存储器24上的数据的disc_id标识符下的区域中。
以下参考图25-27的流程图描述由再生装置1执行的重放处理。
当用户录入指令来再生预定内容时,控制器21通过光盘驱动器22从光盘11、或从本地存储器24,来读取对应于将响应于指令而再生的内容的播放列表文件。在步骤S101中,控制器21确定是否启动用于显示动画的API。如果在步骤S101中确定还没有启动API,则处理进入步骤S103。
如果在步骤S101中确定已启动API,则在步骤S102中,执行稍后将参考图28讨论的动画显示准备处理。执行了动画显示准备处理,解码对象缓冲器63就累加经过解码的动画数据。
如果在步骤S101中确定还没有启动API,则在步骤S102之后的步骤S103中,控制器21读取主剪辑、副剪辑、和文本副题目数据(Text-ST数据)。更具体地,控制器21基于包括在播放列表中的播放项来读取主剪辑。控制器21基于由包括在播放列表中的副路径所引用的副播放项来读取副剪辑和文本副题目数据。
在步骤S104中,控制器21控制开关41,以将所读取的数据(包括主剪辑、副剪辑、和文本副题目数据)提供给各个缓冲器51-54。更具体地,控制器21控制开关41,以将背景图像数据提供给缓冲器51、将主剪辑数据提供给缓冲器52、将副剪辑数据提供给缓冲器53、以及将文本副题目数据提供给缓冲器54。
在步骤S105中,由控制器21这样来控制开关41。将背景图像数据提供给缓冲器51,将主剪辑数据提供给缓冲器52,将副剪辑数据提供给缓冲器53,以及将文本副题目数据提供给缓冲器54。
在步骤S106中,缓冲器54-54缓冲各个提供的数据。更具体地,缓冲器51缓冲所提供的背景图像数据,缓冲器52缓冲主剪辑数据、缓冲器53缓冲副剪辑数据,以及缓冲器54缓冲文本副题目数据。
在步骤S107中,缓冲器51将背景图像数据输出到背景解码器71。
在步骤S108中,缓冲器52将主剪辑的流数据输出到PID过滤器55。
在步骤S109中,PID过滤器55根据伴随形成主剪辑AV流文件的TS包的PID来分类流数据,然后将经过分类的流分布到基本流的解码器。更具体地,PID过滤器55将视频流提供给PID过滤器60,将演示图形流提供给充当演示图形解码器73的供应源的开关57,将交互式图形流提供给充当交互式图形解码器74的供应源的开关58,以及将音频流提供给充当第一音频解码器75-1的供应源的开关59。将视频流、演示图形流、交互式图形流、和音频流分配给不同的PID。PID过滤器60在控制器21的控制下将第一视频流提供给第一视频解码器72-1,并将第二视频流提供给第二视频解码器72-2。
在(图26的)步骤S110中,缓冲器53将副剪辑流数据输出到PID过滤器56。
在步骤S111中,PID过滤器56根据PID来分类流数据,并且将经过分类的数据分布给基本流的各个解码器。更具体地,PID过滤器56将视频流提供给PID过滤器60,将演示图形流提供给充当演示图形解码器73的供应源的开关57,将交互式图形流提供给充当交互式图形解码器74的供应源的开关58,以及将音频流提供给充当第一音频解码器75-1和第二音频解码器75-2中的一个的供应源的开关59。PID过滤器60在控制器21的控制下将第一视频流提供给第一视频解码器72-1以及将第二视频流提供给第二视频解码器72-2。
在步骤S112中,PID过滤器55-60在控制器21的控制下,在主剪辑和副剪辑之间进行选择。更具体地,开关57选择PID过滤器55提供的主剪辑和PID过滤器56提供的副剪辑中的一个的演示图形流,然后将该演示图形流提供给后面的演示图形解码器73。开关58选择PID过滤器55提供的主剪辑和PID过滤器56提供的副剪辑中的一个的交互式图形流,然后将所选择的交互式图形流提供给交互式图形解码器74。开关59选择PID过滤器55提供的主剪辑和PID过滤器56提供的副剪辑中的一个的音频流,然后将所选择的音频流提供给第一音频解码器75-1。如果用户发布指令来切换音频,则开关59可以将主剪辑的音频流提供给第二音频解码器75-2,或者将副剪辑的音频流提供给第一音频解码器75-1和第二音频解码器75-2中的一个。由于本文中已讨论了在音频切换之前的重放处理,所以省略对这个处理的讨论。
在步骤S113中,缓冲器54将文本副题目数据输出到文本副题目合成解码器76。
在步骤S114中,背景解码器71解码背景图像数据并将经过解码的背景图像数据输出到背景平面生成器91。
在步骤S115中,第一视频解码器72-1解码所提供的第一视频流,然后将经过解码的第一视频流输出到视频平面生成器92。
在步骤S116中,第二视频解码器72-2解码所提供的第二视频流,然后将经过解码的第二视频流输出到视频平面生成器92。
在步骤S117中,演示图形解码器73解码由开关57选择并提供的演示图形流,然后将经过解码的演示图形流输出到后面的开关77。
在步骤S118中,交互式图形解码器74解码由开关58选择和提供的交互式图形流,然后将经过解码的交互式图形流输出到后面的开关78。
在步骤S119中,第一音频解码器75-1解码由开关59选择和提供的第一音频流,然后将经过解码的第一音频流输出到后面的混合处理器101。
在步骤S120中,第二音频解码器75-2解码由开关59选择和提供的第二音频流,然后将经过解码的第二音频流输出到后面的混合处理器101。
在步骤S121中,文本副题目合成解码器76解码将被显示的第一或第二文本副题目数据,然后将经过解码的文本副题目数据输出到开关77。
在步骤S122中,合成缓冲器64在动画调度器65的控制下确定是否要显示动画。
如果在步骤S122中确定将要显示动画,则在步骤S123中执行稍后参考图29的流程图讨论的动画生成处理。
如果在步骤S122中确定不显示动画,或者在步骤S123之后,在步骤S124中,开关77选择演示图形解码器73输出的数据和文本副题目合成解码器76输出的数据中的一个。更具体地,开关77选择由演示图形解码器73解码的演示图形流和来自文本副题目合成解码器76的文本副题目数据中的一个,以用于显示,然后将所选择的数据提供给演示图形平面生成器93。
在步骤S125中,开关78选择交互式图形解码器74输出的数据和合成缓冲器64输出的数据中的一个。更具体地,开关78选择由交互式图形解码器74解码的交互式图形流和由合成缓冲器64生成的动画数据中的一个,以用于显示,然后将所选择的数据提供给交互式图形平面生成器94。动画数据被提供给合成缓冲器64的瞬间就是动画定时,并且开关78就这样将来自合成缓冲器64的动画数据提供给交互式图形平面生成器94。
在步骤S126中,背景平面生成器91基于从背景解码器71提供的背景图像数据生成背景平面。
在步骤S127中,视频平面生成器92混合来自第一视频解码器72-1的视频数据和来自第二视频解码器72-2的视频数据,以生成视频平面,然后将视频平面输出到视频数据处理器96。
在步骤S128中,演示图形平面生成器93基于来自演示图形解码器73并在步骤S124中由开关77选择和提供的数据、以及来自文本副题目合成解码器76的数据中的一个,生成演示图形平面。
在步骤S129中,交互式图形平面生成器94基于由交互式图形解码器74提供然后在步骤S125中由开关78选择的交互式图形流的数据、和由合成缓冲器64提供的动画数据中的一个,生成交互式图形平面。
在步骤S130中,缓冲器95缓冲在步骤S105中选择和提供的声音数据,然后在预定定时将经过缓冲的声音数据提供给混合处理器97。
在步骤S131中,视频数据处理器96混合然后输出各平面的数据。更具体地,视频数据处理器96混合来自背景平面生成器91、视频平面生成器92、演示图形平面生成器93、和交互式图形平面生成器94的数据,然后将混合数据作为视频数据输出。
在步骤S132中,混合处理器101混合由第一音频解码器75-1输出的第一音频数据和由第二音频解码器75-2输出的第二音频数据,然后将混合数据输出到混合处理器97。
在步骤S133中,混合处理器97混合(综合)由混合处理器101输出的混合音频数据和声音数据,然后输出混合数据。
在步骤S134中,控制器21引用读取播放列表,从而确定是否结束重放处理。如果在步骤S134中确定重放处理没有结束,则处理返回到步骤S104,重复(图25的)步骤S104和后面的步骤。如果在步骤S134中确定重放处理结束,则处理结束。
通过以上处理,解码并再生了以AV流形式记录在光盘11和本地存储器24中的一个上的音频数据和视频数据,并且根据需要,也解码并再生在文本字幕文件中的文本数据、声音效果的音频数据、以及用于显示动画(动画帧数据)的图像数据。
以下将参考图28的流程图描述在图25的步骤S102中执行的动画显示准备处理。
在步骤S161中,预载缓冲器61读取从开关41提供的所有动画帧用于进行缓冲。
在步骤S162中,动画解码器62解码在预载缓冲器61上读取和缓冲的动画帧,然后将经过解码的动画帧提供给解码对象缓冲器63。
在步骤S163中,解码对象缓冲器63保留经过解码的动画帧,处理返回到图25的步骤S102,进行到步骤S103。
通过该处理,预先缓冲并解码动画帧,然后将其存储在解码对象缓冲器63上,以与解码时间很难预测的主剪辑的视频数据同步地再生动画。
以下参考图29的流程图描述在图27的步骤S123中执行的动画生成处理。
在步骤S201中,动画调度器65引用STC计数器(未示出)来检查视频同步信号。
在步骤S202中,动画调度器65确定当前时间是否比动画开始时间早了“T3+T4”,更具体地,确定当前时间是否比参考图18讨论的从解码对象缓冲器63向合成缓冲器64传送动画帧的开始时间早了在开始动画显示之前备份图像数据所需的时间。
如果在步骤S202中确定当前时间比动画开始时间早了“T3+T4”,则在步骤S203中,合成缓冲器64在动画显示开始之前就备份来自交互式图形平面生成器94的作为动画显示的背景图像的图像数据。
如果在步骤S202中确定当前时间没有比动画开始时间早了“T3+T4”,或在步骤S203之后,动画调度器65在步骤S204中确定现在是否处于比动画显示开始时间早了“T4”的时间和动画显示结束时间之间,即,是否是与视频帧同步地输出动画帧的时间。
如果在步骤S204中,确定当前时间是在比动画显示开始时间早了“T4”的时间和动画显示结束时间之间,则动画调度器65在步骤S205中确定是否把将要显示的动画呈现在解码对象缓冲器63中。
如果在步骤S205中确定呈现动画,则在步骤S206中,解码对象缓冲器63在动画调度器65的控制下提取动画帧的目标图像。
在步骤S207中,解码对象缓冲器63在引用与视频缓冲器相同的STC计数器的动画调度器65的控制下,将动画帧的目标图像传输(或复制)到合成缓冲器64。
在步骤S208中,合成缓冲器64alpha混合在步骤S203中所备份的背景图像和在步骤S207中所传输(或复制)的动画帧的目标图像。
在步骤S209中,合成缓冲器64将混合图像提供给开关78,以将混合图像输出到交互式图形平面生成器94。处理返回到图27的步骤S123,进行到步骤S124。
如果在步骤204中确定当前时间不是处于比动画显示开始时间早了“T4”的时间和动画显示结束时间之间,或者如果在步骤S205中确定不呈现任何动画帧,则处理返回到图27的步骤S123,进行到步骤S124。
通过该处理,经过预先缓冲和解码的动画帧与视频数据同步地显示。
以下参考图30描述重复的重放处理或重放开始点指定处理。
在步骤S251中,控制器21基于来自操作输入单元29的信号,确定是否已从用户接收到启动重复的重放处理或重放开始点指定处理中的一个的指令。如果在步骤S251中确定还没有从用户接收到启动重复的重放处理或重放开始点指定处理中的一个的指令,则在确定已从用户接收到启动重复的重放处理或重放开始点指定处理中的一个的指令之前,重复步骤S251。
如果在步骤S251中确定已从用户接收到启动重复的重放处理或重放开始点指定处理中的一个的指令,则控制器21引用对应于重放部分的播放列表,以确定是否执行动画显示。
如果在步骤S252中确定将不执行任何动画显示,则控制器21在步骤S253中控制解码器26,从而执行重放处理,而不显示动画。更具体地,控制器21执行与动画无关的重放处理的一部分(参考图25-27讨论)。
如果在步骤S252中确定要执行动画显示,则在步骤S254中,控制器21确定动画显示准备处理(图28)是否已完成。
如果在步骤S254中确定还没有完成动画显示准备处理,则控制器21在步骤S255中执行将参考图28讨论的动画显示准备处理。
如果在步骤S254中确定动画显示准备处理已完成,或者在步骤S255之后,控制器21在步骤S256中基于操作输入单元29提供的信号来获取重放开始点。
在步骤S257中,控制器21使用解码动画数据来执行重放处理。更具体地,控制器21执行与步骤S103以及将参考图25-27讨论的处理的后面步骤相同的处理。
当通过该处理再生已经过动画显示准备处理的部分时,可以使用对应部分的经过解码和缓冲的动画数据。可以快速和容易地执行重复的重放处理和重放开始点指定处理。
在参考图30所讨论的重复的重放处理和重放开始点指定处理中,当再生已经过动画显示准备处理的部分时,如上所述使用对应部分的经过解码和缓冲的动画数据。如果将经过alpha混合的帧数据存储在合成缓冲器64上(即,数据不是从合成缓冲器64传送而是复制到开关78),则可以再使用存储在合成缓冲器64上的经过alpha混合的帧数据,来执行重复的重放处理和重放开始点指定处理中的一个。
例如,使用Java描述的动画帧可以与将作为流数据在再生装置1上再生的视频同步再生。
与用于与MPEG 2传输流格式的视频帧同步显示图形的已知HDMV图形流相比,本发明实施例的再生装置1免除了视频格式限制和压缩格式限制。灵活引入同步再生的图像的格式。编辑处理就像在应用程序中调用API一样简单。
在本发明实施例的再生装置1中,帧同步动画基于诸如JPEG图像的普通图形对象和控制API的定义,因而可以以低开发成本开发。具有了驱动动画的API,内容生产商和内容供应商能够在不具备关于MPEG 2传输流的专业知识的条件下就可以产生和分布视频同步动画。
在稍后的日期,可以通过诸如互联网的网络2来轻松提供动画数据,以根据已分布的内容来将其再生。例如,将在稍后日期提供的数据的开发无需任何关于MPEG 2传输流的专业知识。
以下参考图31和图32来描述存储可在再生装置1上重放的数据的记录介质的制造方法。如图所示,记录介质是光盘11。
如图31所示,准备由玻璃制成的母盘。将由光刻胶等制成的记录材料施加到母盘上。这样,记录母盘制成。
如图32中所示,在软件制造部分中,具有由视频编码器编码的可在再生装置1上重放的格式的视频数据被临时存储在缓冲器上。由音频编码器编码的音频数据被临时存储在缓冲器上。由数据编码器编码的不是流的数据(例如,索引、播放列表、播放项等)被临时存储在缓冲器上。由多路复用器与同步信号同步地多路复用存储在各个缓冲器上的视频数据、音频数据、和不是流的数据,并且误差校正码(ECC)电路向多路复用信号附加误差校正码。合成信号由调制器(MOD)电路来调制,然后根据预定格式被存储在磁带上。因而,软件程序被制造,以将其记录可在再生装置1上再生的光盘11和可移动介质28中的一个上。
根据需要,对软件程序进行编辑(母盘预制作),因而生成了将被记录到光盘上的具有格式的信号。根据记录信号来调制激光束,然后将其导向母盘上的光刻胶。因而,使母盘上的光刻胶曝光给使用记录信号来调制的激光束。
接下来形成了母盘,并且在母盘上排列了凹点(pit)。接下来,使母盘经受电铸,来制造金属母盘,玻璃母盘的凹点被转移到金属母盘内。从金属母盘制造出金属压模(metal stamper),并将其用作模子。
将诸如PMMA(压克力)或PC(聚碳酸酯)的材料注入到模子中并使其凝固。可选地,在将2P(紫外线固化树脂)施加到金属压模上之后,将紫外线光导向金属压模,以用于固化。以此方式,在金属压模上的凹点被转移到由树脂制成的复制品(replica)上。
使用沉积或溅射技术,在这样构造的复制品上形成反射膜。可选地,使用旋涂技术在该复制品上形成反射膜。
接下来使盘的内部圆周边缘和外部圆周边缘整洁地成型,并且也执行将两个盘结合在一起所需要的处理。另外,将商标粘贴在盘上并且使磁盘套(hub)连接到盘,并且将合成的盘插入盘盒中。因而,制造了具有可在再生装置1上再生的数据的光盘11或可移动介质28。
以上引用的连续的处理步骤可以使用软件来执行。可以将软件程序从可记录介质安装到内置有专门硬件的计算机上或者能够使用各种安装在其上的程序来执行各种功能的通用个人计算机上。
如图1中所示,记录介质包括分发给用户的、与计算机分开的可移动介质28,以向用户提供程序。记录介质包括可移动介质28,诸如磁盘(包括软磁盘)、光盘(诸如光盘只读存储器(CD-ROM)、或多功能数码光盘(DVD))、磁光盘(诸如小型磁盘(MD))、和半导体存储器。记录介质也包括诸如ROM或RAM的存储器23,或者诸如硬盘的本地存储器24,它们每个均存储有程序,并在装置中提供给用户。
可以如上所述的时间序列的顺序来执行描述了存储在记录介质上的程序的处理步骤。可选地,可以并行或独立执行这些处理步骤。
在此说明书中,系统指的是包括了多个单元的整个装置。
本领域的技术人员应该明白,可在不脱离本发明的权利要求或其等同物的范围的条件下,基于设计要求或其它因素,进行各种修改、组合、子组合和替换。

Claims (19)

1.一种再生装置,包括:
获取单元,用于获取包括第一信息的重放管理信息,所述第一信息包括指示包括至少一个流的主流沿着时间轴的位置的主重放路径;
读出单元,用于基于由所述获取单元获取的所述重放管理信息,来读取将被再生的所述主流以及将与所述主流同步再生的视频数据;
第一存储单元,用于存储由所述读出单元读取的所述视频数据;
解码单元,用于解码存储在所述第一存储单元上的所述视频数据;
第二存储单元,用于存储由所述解码单元解码的所述视频数据;
重放单元,用于基于由所述获取单元获取的所述重放管理信息,通过引用预定计数器来再生由所述读出单元读取的所述主流;以及
视频数据输出单元,用于与由所述重放单元重放所述主流同步地输出存储在所述第二存储单元上的所述被解码的视频数据。
2.根据权利要求1所述的再生装置,还包括:控制单元,用于通过引用由所述重放单元所引用的所述计数器,来控制所述第一存储单元、所述解码单元、所述第二存储单元、和所述视频数据输出单元的处理。
3.根据权利要求2所述的再生装置,其中,所述获取单元还获取控制信息,所述控制信息包括用于调用对应于由所述控制单元执行的处理的API的指令,以及
其中,当通过执行所述指令来调用所述API时,所述控制单元通过引用由所述重放单元引用的所述计数器,来控制所述第一存储单元、所述解码单元、所述第二存储单元、和所述视频数据输出单元的所述处理。
4.根据权利要求1所述的再生装置,其中,所述读出单元在读取所述主流之前,读取所述视频数据。
5.根据权利要求1所述的再生装置,其中,在数据格式上,所述视频数据不同于所述主流。
6.根据权利要求1所述的再生装置,其中,所述视频数据包括由多个帧构成的动画数据。
7.根据权利要求6所述的再生装置,其中,所述视频数据是JPEG数据格式的,并且包括可在Java应用程序上再生的动画数据。
8.根据权利要求1所述的再生装置,还包括:
混合视频数据生成单元,用于生成将与由所述重放单元再生的所述主流相混合的混合视频数据;以及
重放输出单元,用于响应于由所述混合视频数据生成单元混合及生成的所述混合视频数据的供应以及由所述重放单元再生的所述主流的供应,输出将被再生的所述视频数据,
其中,所述视频数据输出单元将经过解码的视频数据输出到所述混合视频数据生成单元。
9.根据权利要求8所述的再生装置,其中,所述视频数据输出单元在所述视频数据输出单元将所述经过解码的视频数据输出到所述混合视频数据生成单元之前获取所述混合视频数据,将所述经过解码的视频数据与所获取的混合视频数据相混合,然后将所述合成数据输出到所述混合视频数据生成单元。
10.根据权利要求8所述的再生装置,包括至少两个混合视频数据生成单元,
其中,当第一混合视频数据生成单元生成所述混合视频数据时,第二混合视频数据生成单元将所生成的混合视频数据提供给所述重放输出单元,以及
其中,当所述第二混合视频数据生成单元生成所述混合视频数据时,所述第一混合视频数据生成单元将所生成的混合视频数据提供给所述重放输出单元。
11.根据权利要求1所述的再生装置,还包括记录介质重放单元,用于再生及读取来自可移动记录介质的信息,
其中,所述获取单元获取由所述记录介质重放单元从所述记录介质读取的所述重放管理信息。
12.根据权利要求1所述的再生装置,还包括存储单元,用于存储多种数据单元,
其中,所述获取单元获取存储在所述存储单元上的所述重放管理信息。
13.根据权利要求1所述的再生装置,还包括记录介质重放单元,用于再生及读取来自可移动记录介质的信息,
其中,所述读出单元读取由所述记录介质重放单元从所述记录介质读取的所述主流和所述视频数据。
14.根据权利要求1所述的再生装置,还包括存储单元,被配置用于存储多种数据单元,
其中,所述读出单元读取存储在所述存储单元上的所述主流和所述视频数据。
15.根据权利要求1所述的再生装置,其中,由所述获取单元获取的所述重放管理信息包括第二信息,所述第二信息包括与所述主流的文件不同的副流文件的副重放路径。
16.一种用于再生流数据的再生装置的再生方法,包括以下步骤:
基于包括第一信息的重放管理信息,读取将被再生的主流,所述第一信息包括指示包括至少一个流的主流沿着时间轴的位置的重放路径;
基于所述重放管理信息,存储将与所述主流同步再生的视频数据;
解码所存储的视频数据;
存储所解码的视频数据;
基于所述重放管理信息,通过引用预定计数器来再生所读取的主流;以及
与所述主流的重放同步地输出所存储的经过解码的视频数据。
17.一种形成用于使计算机执行流数据的重放处理的程序的信号。
所述程序包括以下步骤:
基于包括第一信息的重放管理信息,读取将被再生的主流,其中所述第一信息包括指示包括了至少一个流的主流沿着时间轴的位置的重放路径;
基于所述重放管理信息,存储将与所述主流同步地再生的视频数据;
解码所存储的视频数据;
存储所解码的视频数据;
基于所述重放管理信息,通过引用预定计数器来再生所读取的主流;以及
与所述主流的重放同步地输出所存储的经过解码的视频数据。
18.一种用于存储权利要求17所述的信号的程序存储介质。
19.一种再生装置,包括;
用于获取包括第一信息的重放管理信息的装置,所述第一信息包括指示了包括至少一个流的主流沿着时间轴的位置的主重放路径;
用于基于由所述获取装置获取的所述重放管理信息来读取将被再生的所述主流以及将与所述主流同步再生的视频数据的装置;
用于存储由所述读取装置读取的所述视频数据的第一装置;
用于解码存储在所述第一存储装置上的所述视频数据的装置;
用于存储由所述解码装置解码的所述视频数据的第二装置;
用于在由所述第二装置完成所解码的视频数据的存储之后,基于由所述获取装置获取的所述重放管理信息,通过引用预定计数器来再生由所述读取装置读取的所述主流;以及
用于与由所述重放装置进行的所述主流的重放同步地输出存储在所述第二装置上的所述经过解码的视频数据的装置。
CNB2006101275346A 2005-09-12 2006-09-12 再生装置和再生方法 Active CN100539674C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2005263970A JP4815962B2 (ja) 2005-09-12 2005-09-12 再生装置および再生方法、プログラム、並びに、プログラム格納媒体
JP2005263970 2005-09-12

Publications (2)

Publication Number Publication Date
CN1933582A true CN1933582A (zh) 2007-03-21
CN100539674C CN100539674C (zh) 2009-09-09

Family

ID=37855200

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006101275346A Active CN100539674C (zh) 2005-09-12 2006-09-12 再生装置和再生方法

Country Status (3)

Country Link
US (1) US8208794B2 (zh)
JP (1) JP4815962B2 (zh)
CN (1) CN100539674C (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106548090A (zh) * 2016-10-31 2017-03-29 努比亚技术有限公司 一种网络文件保护方法及web服务器
CN110083319A (zh) * 2019-03-25 2019-08-02 维沃移动通信有限公司 笔记显示方法、装置、终端和存储介质
CN110248243A (zh) * 2019-07-25 2019-09-17 维沃移动通信有限公司 一种多媒体文件的显示方法及终端

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2562758B1 (en) 2004-02-16 2018-05-30 Sony Corporation Reproduction device, reproduction method, and program
JP4234724B2 (ja) * 2006-03-13 2009-03-04 株式会社東芝 コンテンツ記録装置、コンテンツ記録方法およびコンテンツ記録プログラム
TWI423041B (zh) * 2007-07-09 2014-01-11 Cyberlink Corp 可提升多媒體互動機制之影音播放方法及其相關裝置
KR20090045980A (ko) * 2007-11-05 2009-05-11 엘지전자 주식회사 광디스크 드라이브 및 이를 이용한 광고 및 서비스 시스템
KR100977159B1 (ko) * 2007-12-14 2010-08-20 한국전자통신연구원 데이터 서버 주소의 변경과 디스크 이동에 투명한 파일메타데이터 관리 방법 및 시스템
US7966288B2 (en) * 2008-01-02 2011-06-21 Sandisk Il Ltd. Device and method for integrating file systems
JP4346663B2 (ja) 2008-01-18 2009-10-21 株式会社東芝 情報処理装置、及びプログラム
KR20100121574A (ko) * 2008-02-15 2010-11-18 파나소닉 주식회사 재생장치, 기록장치, 재생방법 및 기록방법
KR101500440B1 (ko) * 2008-10-17 2015-03-09 삼성전자 주식회사 영상처리장치 및 영상처리방법
KR100989079B1 (ko) * 2008-10-28 2010-10-25 한국전자통신연구원 오케스트라 미디어 서비스 시스템 및 방법
WO2010074535A2 (en) * 2008-12-24 2010-07-01 Lg Electronics Inc. An iptv receiver and method for controlling an application in the iptv receiver
CN102365870B (zh) * 2009-01-05 2015-09-02 Lg电子株式会社 Iptv接收机和在iptv接收机中执行个人视频记录器功能的方法
US8631436B2 (en) * 2009-11-25 2014-01-14 Nokia Corporation Method and apparatus for presenting media segments
KR20110066578A (ko) * 2009-12-11 2011-06-17 삼성전자주식회사 디지털 컨텐츠와 이를 위한 재생장치 및 방법
WO2012093296A1 (en) * 2011-01-05 2012-07-12 Nds Limited Coordinated 2-dimensional and 3-dimensional graphics processing
CN102289834B (zh) * 2011-08-30 2013-06-12 北京瑞信在线系统技术有限公司 一种微动画编辑器及其编辑方法
KR102176474B1 (ko) * 2014-01-06 2020-11-09 삼성전자주식회사 영상표시장치, 영상표시장치의 구동방법 및 영상표시방법
US11381867B2 (en) 2019-01-08 2022-07-05 Qualcomm Incorporated Multiple decoder interface for streamed media data

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10257454A (ja) * 1997-03-14 1998-09-25 Hitachi Ltd グラフィクス生成装置
JP2000287110A (ja) * 1999-03-31 2000-10-13 Ricoh Co Ltd デジタルカメラ装置の制御システム
JP2000293446A (ja) * 1999-04-05 2000-10-20 Matsushita Electric Ind Co Ltd ハイブリッドメール録画再生装置及び、送受信装置、及びそれらのシステム用プログラムを記録した媒体
JP3551139B2 (ja) * 2000-09-21 2004-08-04 日本電気株式会社 動画像再生システム及び動画像再生方法
US20040101272A1 (en) * 2002-11-21 2004-05-27 International Business Machines Corporation Personal video recording with storage space providers
US7609945B2 (en) * 2004-08-17 2009-10-27 Lg Electronics Inc. Recording medium, and method and apparatus for reproducing data from the recording medium

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106548090A (zh) * 2016-10-31 2017-03-29 努比亚技术有限公司 一种网络文件保护方法及web服务器
CN110083319A (zh) * 2019-03-25 2019-08-02 维沃移动通信有限公司 笔记显示方法、装置、终端和存储介质
CN110248243A (zh) * 2019-07-25 2019-09-17 维沃移动通信有限公司 一种多媒体文件的显示方法及终端

Also Published As

Publication number Publication date
JP2007079707A (ja) 2007-03-29
CN100539674C (zh) 2009-09-09
US8208794B2 (en) 2012-06-26
JP4815962B2 (ja) 2011-11-16
US20070058933A1 (en) 2007-03-15

Similar Documents

Publication Publication Date Title
CN1933582A (zh) 再生装置、再生方法、程序、及程序存储介质
CN100348033C (zh) 信息处理方法和装置、程序和记录介质
CN1239021C (zh) 信息处理设备及方法、程序和记录介质
CN1199446C (zh) 信息处理设备和方法
CN1193607C (zh) 信息处理设备和方法
CN1278265C (zh) 视频信息再现设备和方法
CN1310508C (zh) 数据传输装置及方法
CN1229990C (zh) 数字影像内容的影像再生装置、影像再生方法
CN1957333A (zh) 再现装置、再现方法、程序、程序存储介质、数据传送系统、数据结构和记录介质的制造方法
CN1695197A (zh) 记录介质,播放设备,程序,播放方法,以及记录方法
CN1265631C (zh) 视频信号处理装置、再现装置及记录装置
CN1438645A (zh) 格式转换和信息记录的装置、方法和程序及其存储介质
CN1817032A (zh) 记录介质、记录方法、再现装置和方法以及计算机可读程序
CN1969540A (zh) 信息处理装置、信息处理方法、程序存储介质、程序、数据结构和记录介质制作方法
CN1701607A (zh) 再现装置、光盘、记录介质、程序、再现方法
CN1437750A (zh) 数据记录设备
CN1270315C (zh) 记录/再现设备和方法以及程序提供介质
CN1726549A (zh) 光盘、再现装置、程序、再现方法、以及记录方法
CN1723446A (zh) 记录介质、记录设备及使用该记录介质和设备的再现设备
CN1906694A (zh) 再现装置、再现方法、程序、记录介质和数据结构
CN1617576A (zh) 信息记录介质、方法和设备以及信息回放方法和设备
CN1934546A (zh) 记录介质、再生装置、程序、再生方法
CN1930877A (zh) 记录介质、再现设备、记录方法、程序和再现方法
CN101075467A (zh) 记录/再现设备和方法、编辑设备和方法及显示方法
CN1849820A (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