CN101406058A - 数据输出装置、设备控制装置以及多媒体通信*** - Google Patents

数据输出装置、设备控制装置以及多媒体通信*** Download PDF

Info

Publication number
CN101406058A
CN101406058A CNA2006800474317A CN200680047431A CN101406058A CN 101406058 A CN101406058 A CN 101406058A CN A2006800474317 A CNA2006800474317 A CN A2006800474317A CN 200680047431 A CN200680047431 A CN 200680047431A CN 101406058 A CN101406058 A CN 101406058A
Authority
CN
China
Prior art keywords
data
output
once
unit
medium data
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.)
Pending
Application number
CNA2006800474317A
Other languages
English (en)
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Publication of CN101406058A publication Critical patent/CN101406058A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

提供一种技术,在包括与网络连接的多媒体内容服务器和多个终端的多媒体通信***中,可以将在某个终端上被中断了的内容的再生,确切地在其它的终端上再次开始再生。输出包含影像以及声音的至少一方的多媒体数据的数据输出装置,其中包括控制部,在由从外部的装置接收信号的接收部接收了,请求中断由第一或第二输出部进行的输出的中断请求时,生成再次开始位置信息,并使记忆部记忆,在通过接收部接收了再次开始请求和接受输出方的识别信息时,从记忆部中读出再次开始位置信息,并使读出部从蓄积多媒体数据的蓄积部中读出从再次开始位置信息所表示的再次开始位置开始的多媒体数据,并使第一或第二输出部将被读出的多媒体数据输出到接受输出方。

Description

数据输出装置、设备控制装置以及多媒体通信***
技术领域
本发明涉及向网络等的多媒体数字内容的输出及其控制。
背景技术
近些年,开始了BS数字广播、CS110度数字广播以及地面数字广播等数字广播。并且,HDD记录器、DVD(Digital Versatile Disc)记录器等日趋普及。据此,可以在家庭内利用的被数字化的多媒体内容便增加了。
并且,另一方面,由于保持了宽频环境,因此从家庭向互联网的访问也得以普及。随着这些发展,以IP网络连接家庭中各个房间,也就是所谓的家庭网络也逐渐普及起来。
在这种状况下,可以利用家庭网络,在其它的房间视听以家庭内数字广播接收机接收的数字广播,或记录器中所蓄积的数字内容。此时,在家庭网络上的服务器(例如,接收数字广播的机顶盒或HDD记录器)和客户端(例如,个人电脑或数字播放器)之间,在设备间的识别或可以利用的内容信息的交换之中大多使用的是UPnP(Universal Plag and Play:通用即插即用)中规定的方法。并且,在多媒体数据的通信中利用RTP(Real Time TrasnportProtocol:实时传输协议)等,在其控制中利用RTSP(Real TimeStreaming Protocol:实时流播协议)等。RTSP由IETF(InternetEngineering Task Force:因特网工程任务组)来被标准化。(例如,参照非专利文献1)。
在再生、视听如电影这种长时间的数字内容的情况下,经常会出现的是在短时间中断视听之后,再继续视听的情况。在经由利用RTSP的视听中,或利用RTSP的RESUME功能,或预先记忆客户端所中断的位置,在再次开始时,就可以重新向服务器请求发送从中断位置以后的数据。在此,通过家庭网络可以使在多个房间中的视听成为可能,例如出现的需求是,在客厅视听的内容可以在卧室继续视听。
非专利文献1 RFC2326 Real Time Streaming Protocol(RTSP)
然而,在RTSP以服务器和客户端的一对一通信为对象,没有考虑到向其它的客户的数据传送,因此不能实现上述的改变房间后再继续开始视听。并且,由于客户端发生了变化,因此不能利用记忆客户端中断位置的方法。
发明内容
本发明为了解决上述的问题,目的在于提供一种不仅是相同的客户端,即使是不同的客户端也可以从内容的中断位置开始视听的数据输出装置、设备控制装置以及多媒体通信***。
为了解决以往的课题,本发明的数据输出装置输出含有影像以及声音的至少一方的多媒体数据,包括:接收单元,从外部装置接收信号;蓄积单元,蓄积多媒体数据;读出单元,从所述蓄积单元读出数据;输出单元,将所述多媒体数据输出到被指定的接受输出方;记忆单元,记忆被中断了的由所述输出单元输出的多媒体数据和再次开始位置信息,该再次开始位置信息表示再次开始该多媒体数据的输出的位置;以及控制单元,进行以下控制:在由所述接收单元接收了请求中断由所述输出单元的输出的中断请求的情况下,生成所述再次开始位置信息,并使所述记忆单元记忆生成的所述再次开始位置信息,在由所述接收单元接收了请求再次开始由所述输出单元的输出的再次开始请求和接受输出方的识别信息的情况下,从所述记忆单元中读出所述再次开始位置信息,并使所述读出单元从所述蓄积单元中将从该再次开始位置信息所表示的再次开始位置开始的多媒体数据读出,并使所述输出单元将被读出的所述多媒体数据输出到所述接受输出方。
这样,本发明的数据输出装置可以记忆再次开始位置信息。据此,即使多媒体数据的接受输出方发生了变化,也可以确实地从被中断的多媒体数据的输出的中断位置开始再次开始再生。
并且,最好是,所述数据输出装置通过网络与多个终端相连接;所述输出单元将由用户指定的所述多个终端中的任一个作为接受输出方来进行输出。
这样,输出单元可以通过网络向被连接的多个终端进行输出。为此,在这些终端中的任一个被指定的情况下,可以再次开始向被指定的终端的输出。因此,可以将被中断的数据输出到不同的接受输出方。
并且,最好是,所述输出单元将所述多媒体数据输出到多个接受输出方中的任一个;所述控制单元在由所述接收单元接收了所述再次开始请求和所述多个接受输出方的识别信息中的任一个的情况下,从所述记忆单元中读出所述再次开始位置信息,并使所述读出单元从所述蓄积单元中读出从该再次开始位置信息所表示的再次开始位置开始的多媒体数据,并使所述输出单元将被读出的所述多媒体数据输出到由所述接收单元接收的识别信息所表示的接受输出方。
这样,输出单元可以向多个终端中的任一个进行数据。为此,在这些终端中的任一个被指定的情况下,可以再次开始向被指定的终端的输出。因此,可以将被中断的数据输出到不同的接受输出方。
并且,最好是,所述控制单元在由所述接收单元接收了所述中断请求的情况下,生成所述再次开始位置信息和识别所述中断请求的中断标识符,并使所述记忆单元记忆生成的所述再次开始位置信息和所述中断标识符,在由所述接收单元接收了所述再次开始请求、所述接受输出方的识别信息、以及所述中断标识符的情况下,从所述记忆单元中读出所述中断标识符所对应的所述再次开始位置信息,并使所述读出单元从所述蓄积单元中读出从该再次开始位置信息所表示的再次开始位置开始的多媒体数据,并使所述输出单元将被读出的所述多媒体数据输出到所述接受输出方。
这样,记忆单元可以记忆再次开始位置信息和中断标识符。据此,用户可以通过中断标识符发出再次开始请求的指示,提高了便利性。
并且,最好是,所述控制单元进一步进行以下控制:在由所述接收单元接收了所述中断请求、再次开始输出时的接受输出方的识别信息的情况下,生成所述再次开始位置信息,并使所述记忆单元记忆所述生成的所述再次开始位置信息和所述接受输出方的识别信息;在由所述接收单元接收了所述再次开始请求的情况下,从所述记忆单元中读出所述再次开始位置信息和所述接受输出方的识别信息,并使所述读出单元从所述蓄积单元中读出从该再次开始位置信息所表示的再次开始位置开始的多媒体数据,并使所述输出单元将被读出的所述多媒体数据输出到由所述记忆单元读出的识别信息所表示的所述接受输出方。
这样,记忆单元可以记忆再次开始位置信息和接受输出方的识别信息。这样,可以只有从记忆的识别信息所表示的接受输出方接受了再次开始输出请求时,才再次开始输出。据此,例如,通过记忆多个再次开始位置信息和接受输出方的识别信息的组合,从而按照接受了再次开始请求的接受输出方,从适当的再次开始位置输出适当的内容。
并且,最好是,进一步包括:数据接收单元,从外部装置接收多媒体数据;以及写入单元,将所述数据接收单元所接收的多媒体数据写入到所述蓄积单元;所述控制单元进一步进行以下控制:在所述数据接收单元进行接收的同时,输出单元输出多媒体数据时,接收了所述中断请求的情况下,使所述数据接收单元接收从所述多媒体数据的中断位置开始的多媒体数据,并使所述写入单元将接收的从所述多媒体数据的中断位置开始的多媒体数据写入到所述蓄积单元;在由所述接收单元接收了所述再次开始请求和所述接受输出方的识别信息的情况下,使所述读出单元将由所述写入单元写入到所述蓄积单元的、从所述多媒体数据的中断位置开始的多媒体数据读出,并使所述输出单元将被读出的、从所述多媒体数据的中断位置开始的多媒体数据输出到所述接受输出方。
这样,在接收多媒体数据的同时进行输出的情况下,在接受了中断请求时,可以事先蓄积接收的多媒体数据的中断位置以后的多媒体数据。据此,在数字广播中或以VoD(Video On Demand)进行接收时等,即使在输出中断时全部都是没有接收的数据,也可以输出在接受再次开始请求时蓄积的多媒体数据。为此,可以确切地再次开始在接受再次开始请求时的多媒体数据的输出。
并且,最好是,所述数据输出装置进一步包括再生单元,再生多媒体数据;所述输出单元将所述多媒体数据输出到多个接受输出方以及所述再生单元中的任一个;所述控制单元进一步进行以下控制:在所述输出单元向所述再生单元进行输出时,在由所述接收单元接收了所述中断信号的情况下,生成所述再次开始位置信息,并使所述记忆单元记忆生成的所述再次开始位置信息。
这样,数据输出装置本身包括再生多媒体数据的再生单元,从而可以将再生单元作为接受输出方来指定。为此,数据输出装置本身也可以作为接受输出方。
并且,最好是,进一步包括数据接收单元,从外部装置接收多媒体数据;以及写入单元,将所述数据接收单元所接收的多媒体数据写入到所述蓄积单元;所述控制单元进一步进行以下控制:在所述数据接收单元进行接收的同时,多媒体数据由输出单元输出到所述再生单元时,在接收了所述中断请求的情况下,使所述数据接收单元接收从所述多媒体数据的中断位置开始的多媒体数据,并使所述写入单元将接收的从所述多媒体数据的中断位置开始的多媒体数据写入到所述蓄积单元;在由所述接收单元接收了所述再次开始请求的情况下,使所述读出单元将由所述写入单元写入到所述蓄积单元的、从所述多媒体数据的中断位置开始的多媒体数据读出,并使所述输出单元将被读出的从所述多媒体数据的中断位置开始的多媒体数据输出到所述接受输出方。
这样,数据输出装置可以从外部的装置接收多媒体数据,并将接收的多媒体数据记忆到记忆单元。据此,即使在由数字广播或VoD分发的多媒体数据的输出被中断,并接受了再次开始请求时,也可以确切地再次开始该多媒体数据的输出。
并且,最好是,所述数据输出装置进一步包括Java(注册商标)执行单元,执行Java应用程序;所述控制单元由Java应用程序启动。
这样,数据输出装置具备了Java执行单元。据此,可以执行由Java所描述的应用程序(以下称为“Java应用程序”)。因此,控制部可以通过执行Java应用程序来发挥功能,从而可以控制数据输出装置所具备的各个单元。
并且,第19的发明的设备控制装置向数据输出装置发行请求,所述数据输出装置输出包含影像以及声音的至少一方的多媒体数据,其特征在于,包括:发送单元,向所述数据输出装置发送请求;以及控制单元,在向所述数据输出装置发送中断请求时,使所述数据输出装置确定再次开始数据输出时的接受输出方,并使所述发送单元发送被确定的所述接受输出方的识别信息,所述中断请求是指请求中断由所述数据输出装置对多媒体数据的输出。
这样,设备控制装置在向数据输出装置发送中断请求的同时还可以发送确定的接受输出方的识别信息。据此,可以将数据输出再次开始时的接受输出方的十倍信息登记到数据输出装置,从而可以使数据输出装置将从适当的再生位置开始的多媒体数据输出到适当的接受输出方。
并且,最好是,所述设备控制装置包括执行Java应用程序的Java执行单元;在从Java应用程序接受所述中断请求的情况下,在将所述中断请求发送给所述数据输出装置时,确定所述数据输出装置再次开始数据输出时的接受输出方,并使所述发送单元发送被确定的所述接受输出方的识别信息。
这样,设备控制装置进一步包括Java执行单元。这样,可以执行由Java描述的应用程序。因此,控制部可以通过执行Java应用程序来发挥功能,从而可以控制数据输出装置所具备的各个单元。
并且,第22个发明的设备控制装置通过网络与数据输出装置相连接,并通过用户的操作而工作,所述数据输出装置提供含有影像以及声音的至少一方的多媒体数据,所述设备控制装置,其特征在于,包括:属性接收单元,接收由所述数据输出装置所提供的多媒体数据中所包含的内容的属性;发送单元,向所述数据输出装置发送请求;以及控制单元,按照用户的操作,在接受了请求再次开始内容数据输出的再次开始请求时,根据所述属性接收单元所接收的该内容的属性,来判断该内容的输出是否处于被中断的状态,在判断为该内容的输出处于被中断的状态时,使所述发送单元将所述再次开始请求发送给所述数据输出装置。
这样,设备控制装置可以通过网络控制数据输出装置,并且,作为多媒体数据中所包含的内容的属性,对该内容的输出是否被中断进行判断,在判断为输出被中断的情况下,发送再次开始该内容所包含的多媒体数据的输出的请求。据此,在输出被中断的情况下,可以从被中断的位置开始继续输出,从而可以使数据输出装置将从适当的位置开始的多媒体数据输出到适当的接受输出方。
并且,最好是,所述属性接收单元接收包含标识符的所述内容的属性,所述标识符按每个内容来表示输出中断;所述控制单元在判断为输出处于中断状态的情况下,使所述发送单元将所述再次开始请求和所述标识符发送给所述多媒体服务器。
这样,表示输出中断的标识符被包含在内容的属性之中。据此,可以由该标识符确定多媒体数据,并可以使输出再次开始。
所述设备控制装置进一步包括执行Java应用程序的Java执行单元;所述控制单元在从所述Java应用程序接受了所述再次开始请求时,根据所述属性接收单元所接收的该内容的属性,来判断该内容的输出是否处于中断状态,在判断为输出处于中断状态时,使所述发送单元将所述再次开始请求发送给所述多媒体服务器。
这样,设备控制装置进一步包括Java执行单元。这样,可以执行由Java描述的应用程序。因此,控制部可以通过执行Java应用程序来发挥功能,从而可以控制数据输出装置所具备的各个单元。
并且,第26个发明的设备控制装置被连接在网络上,控制数据输出装置,该数据输出装置输出包含影像以及声音的至少一方的多媒体数据,其特征在于,包括:记忆单元,在向所述数据输出装置发出输出中断请求时,记忆表示再次开始输出的位置的再次开始位置信息,该再次开始位置信息是根据输出被中断了的多媒体数据和中断该多媒体数据的输出时的位置而得到的;通信单元,与所述数据输出装置进行通信;以及控制单元,从所述数据输出装置接收所述再次开始位置信息,并使所述记忆单元记忆,在向所述数据输出装置发出再次开始输出请求时,将所述记忆单元所记忆的所述再次开始位置信息以及接受输出方的识别信息发送给所述数据输出装置。
这样,设备控制装置可以通过网络控制数据输出装置,并且可以记忆再次开始位置信息。据此,可以通过网络在向数据输出装置发送再次开始请求的同时,发送再次开始输出的位置。因此,可以通过数据输出装置来确切地控制多媒体数据的输出的再次开始。
并且,最好是,所述设备控制装置进一步包括执行Java应用程序的Java执行单元;所述控制单元进行以下控制:所述控制单元在从所述Java应用程序接受了向所述数据输出装置的中断请求时,使所述通信单元向所述数据输出装置发送中断请求,并由通信单元从所述数据输出装置接收再次开始位置信息,并使所述记忆单元记忆,所述再次开始位置信息是通过输出被中断了的多媒体数据以及输出中断位置而得到的;所述控制单元在从Java应用程序接受了向所述数据输出装置的再次开始请求时,读出所述记忆单元中记忆的所述再次开始位置信息,并使所述通信单元将再次开始输出请求以及接受输出方的识别信息和所述再次开始位置信息发送给所述数据输出装置。
这样,设备控制装置进一步包括Java执行单元。这样,可以执行由Java描述的应用程序。因此,控制部可以通过执行Java应用程序来发挥功能,从而可以控制数据输出装置所具备的各个单元。
并且,本发明不仅可以作为具有这种特征的单元的数据输出装置以及设备控制装置来实现,并且可以作为将数据输出装置以及设备控制装置的所分别包含的特征性的单元作为步骤的方法来实现,还可以将数据输出装置以及设备控制装置所分别包含的特征性单元作为使计算机能够发挥功能的程序来实现。并且,这些程序可以通过CD-ROM(Compact Disc-Read Only Memory)等的记录媒体和互联网等的通信网络使之流通。并且,本发明还可以作为具备包括这种特征性单元的数据输出装置以及设备控制装置的多媒体通信***来实现。
如以上所述,根据本发明的数据输出装置、设备控制装置、多媒体通信***,在多媒体内容的视听或再生被中断后再次开始的情况下,即使以网络上的其它的终端再次开始的情况下,也可以准确地再次开始。
附图说明
图1是本发明的实施例1中的多媒体通信***的构成图。
图2是本发明的实施例1中的数据输出装置的一个构成例子的方框图。
图3是本发明的实施例1中的终端以及终端的一个构成例子的方框图。
图4是本发明的实施例1中的蓄积部所蓄积的数据的一个构成示例图。
图5是本发明的实施例1中多媒体数据的属性信息的一个示例图。
图6是本发明的实施例1中的URI表的一个示例图。
图7是本发明的实施例1中的再次开始位置信息的一个示例图。
图8是本发明的实施例1中的第1变形例中的再次开始位置信息的一个示例图。
图9是本发明的实施例1中的第2变形例中的再次开始位置信息的一个示例图。
图10是本发明的实施例1中的第3变形例中的数据输出装置的一个构成方框图。
图11是本发明的实施例1中的第4变形例中的数据输出装置的一个构成方框图。
图12是本发明的实施例1中的第5变形例中的多媒体通信***的一个构成示例图。
图13是本发明的实施例2中的多媒体通信***的一个构成示例图。
图14是本发明的实施例2中的数据输出装置的一个构成例子的方框图。
图15是以前面板构成实施例2所涉及的输入部的情况下的一个外观示例图。
图16是本发明的实施例2中的数据输出装置所保持并执行的程序的一个构成示例图。
图17是本发明的实施例2所涉及的显示器所表示的节目表的示例图。
图18是本发明的实施例2所涉及的第二存储器中所记忆的节目信息的一个示例图。
图19是本发明的实施例2所涉及的第二存储器中所存储的信道信息的一个示例图。
图20是本发明的实施例2所涉及的第二存储器所存储的信道的标识符的示例图。
图21在模式上示出了收集的PAT的信息的一个例子。
图22在模式上示出了收集的PMT的信息的一个例子。
图23在模式上示出了收集的AIT的信息的一个例子。
图24示出了下载的文件***的一个例子。
图25是数据输出装置将多媒体数据蓄积到第二存储器的存储形态的一个示例图。
图26是本发明的实施例2中的属性信息的一个示例图。
图27是本发明的实施例2中的属性信息表的一个示例图。
图28是网络库的内部构成的一个示例图。
图29是网络库的内部构成中所包含的控制的所提供的Java API的一个示例图。
图30是网络库所使用的NetDevice类的一个构成示例图。
图31是网络库所使用的ServHandler接口的一个构成示例图。
图32是本发明的实施例2中的URI表的一个构成示例图。
图33是网络库所使用的ReopenContentInfo类的一个构成示例图。
图34是本发明的实施例2中的再次开始位置信息表的一个构成示例图。
图35是网络库的内部构成中所包含的信息接收部所提供的、网络库所具备的Java API的一个示例图。
图36是网络库所使用的RequestInfo类的一个构成的示例图。
图37是网络库的内部构成中所包含的数据输出部所提供的、网络库所具备的Java API的一个示例图。
图38是网络库所使用的ResponseInfo类的一个构成示例图。
图39是网络库的内部构成中所包含的信息接收部所提供的、网络库所具备的Java API的一个示例图。
图40是网络库1605e的内部构成中所包含的数据接收部所提供的Java API的一个示例图。
图41是本发明的实施例2中的终端的一个构成例子的方框图。
图42是本发明的实施例2所涉及的终端所分别保持并执行的程序的构成的一个示例图。
图43是网络库的内部一个构成例子的方框图。
图44是网络库的内部构成中包含的控制部所提供的Java API的一个示例图。
图45是网络库所使用的ContentInfo类的构成的一个示例图。
图46是网络库所使用的ClientHanlder接口的一个构成示例图。
图47是网络库的内部构成中所包含的信息发送部所提供的JavaAPI的一个示例图。
图48是网络库的内部构成中所包含的信息接收部所提供的JavaAPI的一个示例图。
图49是网络库的内部构成中所包含的判断部所提供的Java API的一个示例图。
图50是网络库的内部构成中所包含的数据接收部所提供的JavaAPI的一个示例图。
图51是网络库3004d所使用的RemoteProgram类的一个构成示例图。
图52是本发明的实施例2的第6变形例中的多媒体通信***的构成示意图。
符号说明
101、1301数据输出装置
102、103、1203、1204、1302、1303、5203、5204终端
104、1205、1304、5205网络
105、1206、1305、5206多媒体通信***
201控制部
202、1404接收部
203蓄积部
204读出部
205第一输出部
206第二输出部
207记忆部
208写入部
209网络接口
301设备控制部
302控制部
303接收部
304发送部
305判断部
306数据接收部
307数据解码部
308网络接口
309表示部
401多媒体数据
402多媒体数据
411多媒体数据401的属性信息
412多媒体数据402的属性信息
421多媒体数据的URI表
701再次开始位置信息
801再次开始位置信息
802再次开始位置信息
803再次开始位置信息
901再次开始位置信息
902再次开始位置信息
1001数据接收部
1002数据接收接口
1101数据解码部
1102表示部
1201、5201数据输出装置
1202、5202控制装置
1401、4101输入部
1402、4102第一存储器
1403、4103第二存储器
1405、4104多路复用分离部
1406解扰部
1407、4105传输流解码器
1408、4106影像输出部
1409、4107声音输出部
1410传输流多路复用器
1411、4108网络部
1412、4109CPU
具体实施方式
(实施例1)
以下参照附图对本发明的实施例进行说明。
图1是本发明实施例1中多媒体通信***的构成图。
图1所示的多媒体通信***105包括:数据输出装置101、第一终端102、第二终端102、以及网络104。数据输出装置101、终端102以及终端103被连接于网络104,并可以通过网络104互相通信。
在本实施例中数据输出装置101接收通过网络104被发送的、来自终端102以及终端103的请求。并且,按照请求将蓄积的各个内容的信息、属性或多媒体数据通过网络104发送给终端102以及终端103。
数据输出装置101在接收到由接收方终端对正在执行中的数据输出,发出中断请求的情况下,将最后发送的数据位置的下一个位置,也就是再次开始输出的数据位置,与该数据的文件名或URI(UniformResource Identifier:统一资源标识符)组合在一起,作为再次开始位置信息记忆到装置内部,同时将“输出正处于中断状态”这一属性附加给该数据。并且,在接收到来自终端的再次开始数据发送的请求时,参照事先记忆的再次开始位置信息,从未发送的数据的开头开始,向被指定的终端再次开始数据的发送。
终端102以及终端103按照用户的要求,通过网络104向数据输出装置101发送多媒体数据或内容的属性的发送请求。并且,在终端102以及终端103接收到内容的属性的情况下,则按照需要向用户出示,在接收到多媒体数据的情况下,则再生这些数据并表示出来。
终端102以及终端103根据内容的属性来判断该内容是否为“输出正处于中断状态”,并按照用户的要求发行再次开始数据发送的请求。
网络104是家庭内设置的家庭网络,是由以太网(注册商标)、无线LAN等构成的IP网络。
如以上所述,在本发明的数据输出装置101、终端102、终端103、以及多媒体通信***105,例如即使中断由终端102正在接收的数据的发送,也可以在其它的终端103确实地再次开始数据通信。
以下对构成本发明的多媒体通信***105的数据输出装置101、终端102、以及终端103进行更详细的说明。在此,虽然以以下的情况为例进行说明,但在其它的情况也同样,在此所说明的情况是:在与终端102进行数据通信过程中中断数据发送,并在终端103再次开始被中断的数据的发送。
首先,对数据输出装置101进行说明。
图2是本发明实施例1中的数据输出装置101的一个构成示例方框图。
如图2所示,数据输出装置101包括:控制部201;接收部202,接收来自外部的控制装置的信号;蓄积部203,蓄积数据;读出部204,按照来自控制部201的指示,从蓄积部203读出数据;第一输出部205;第二输出部206;记忆部207,在数据输出被中断时,记忆该数据和根据数据输出中断位置而得到的再次开始位置信息;写入部208,将数据写入到蓄积部203;以及网络接口209,与网络104相连接。
以下进一步详细说明控制部201。控制部201由微型处理器、ROM、RAM等构成。在ROM、RAM以及图中未示出的信息记忆部中保存有以微型处理器运行的OS、Java(注册商标)VM(Java VirtualMachine)程序、Java程序库、以及Java应用程序。微型处理器在启动时读取OS并执行。接着,在Java应用程序启动时,读取Java VM并执行,并按照需要在读取Java程序库的同时执行Java应用程序。
控制部201接受来自接收部202的信号,并按照Java应用程序对读出部204、第一输出部205、第二输出部206、记忆部207以及写入部208进行控制,并且在这些部之间进行数据的收发。
接收部202与网络接口209相连接,接收被送到网络接口209的、给数据输出装置101的信息,并传递给控制部201。关于接收部202,具有代表性的是OS或Java库所提供的Socket Interface(套接字接口)或利用Socket Interface的程序。
另外,并不仅限于由这样的软件构成,也可以由硬件构成。并且,除网络接口209以外,也可以同时连接例如进行红外线通信的通信部等其它的通信部。
蓄积部203由以硬盘驱动器为代表的具有大容量的数字数据蓄积装置和该驱动器软件构成。
读出部204接受来自控制部201的指示,依次读出来自蓄积部203所蓄积的数据文件中的、被指定的文件的指定位置的数据,并传送到第一输出部205以及第二输出部206。
第一输出部205以及第二输出部206与网络接口209相连接,接受控制部201的指示并执行,将从控制部201或读出部204送出的数据转换为给控制部201所指示的接收方的包,并通过网络接口209输出。第一输出部205以及第二输出部206主要是OS或Java库所提供的Socket Interface或利用Socket Interface的程序。另外,并不仅限于由这样的软件构成,也可以由硬件构成。
记忆部207是由闪存或HDD等记忆装置或由这些记忆装置的一部分构成,接受来自控制部201的指示,并记忆从控制部201接受的数据。
写入部208接受来自控制部201的指示,并将数据写入到蓄积部203。数据的写入包括写入新建数据和覆盖已有数据这两种情况。
网络接口209由按照Ether电缆或无线LAN等网络上的物理媒体来提供接口的硬件和该硬件的驱动软件构成。
以下参照附图对数据输出装置101的工作进行详细说明。在此,为了便于说明,以第一输出部205向终端102输出,第二输出部206向终端103输出为例,但并非受此构成所限。
图4是本发明实施例1中的蓄积部203所蓄积的数据的一个构成示例图。
在图4中,蓄积部203所蓄积的数据群大致分为三种,即:多媒体数据、多媒体数据的属性信息、以及多媒体数据的URI表,且在图4中作为例子示出了包含有多媒体数据401、多媒体数据402、属性信息411、属性信息412、以及多媒体数据的URI表421。在本实施例中,属性信息411表示多媒体数据401的属性信息,属性信息412表示多媒体数据402的属性信息。蓄积部203所蓄积的多媒体数据和属性信息并非受两个所限。
多媒体数据401、402是被数字化的多媒体内容数据,具有代表性的是由MPEG2编码的数据。各个多媒体数据401、402在蓄积部203中分别作为一个文件被蓄积,并被附加了文件名。
属性信息411、412将附加信息附加到多媒体数据401、402,所述附加信息例如是指:内容的标题、类别、播放日期时间、录制日期时间、输出的次数、以及最后输出的日期时间等。图5示出了属性信息的一个例子。
图5是本发明的实施例1中的多媒体数据的属性信息411的一个示例图。图5所示的属性信息是由XML(Extensible MarkupLanguage)定义的文本信息。
URI表421记忆各个多媒体数据和这些多媒体数据的URI的对应关系,图6示出了其中的一个例子。
图6是本发明的实施例1所涉及的URI表421的一个示例图。在图6中表示出,文件名为0001.m2ts的多媒体数据的URI为rtsp://192.168.0.3/AVData/0001.m2ts。
另外,URI表并非是必需的,控制部201可以按照需要根据数据输出装置101的IP地址或主机名和多媒体数据的文件名来作成,也可以将URI作为附加信息来描述到属性信息中。并且,URI表不仅限于文件名和URI的对应关系,也可以是标题或各多媒体数据中所附加的标识符或编号等和URI的对应关系。
首先,对到给终端102的数据发送中断为止的过程中的数据输出装置101的工作进行说明。
控制部201从接收部202接受的终端102的请求为获得内容一览的情况下,通过控制读取部204并读出信息,从而作成蓄积部203中蓄积的多媒体数据的一览表,并从第一输出部205发送到终端102。
内容一览是指,对于各个内容而言,至少包括内容的标题和用于向内容进行存取的URI。并且,在中断了多媒体数据的输出的情况下,也包含该多媒体数据的输出被中断的属性。另外,还按照需要读出各个多媒体数据中的属性信息,附加其内容并发送。
获得内容一览的请求和针对该请求的应答的协议以及内容一览的数据格式由于可以利用URnP AV所规定的方法,因此省略详细说明。但是,多媒体数据输出中断的属性利用独自地扩展该格式后的格式。内容一览的格式由于由XML来定义,因此通过利用XMLNamespace,可以在不发生矛盾的情况下扩展格式。例如,将使用独自的名称空格Na的要素PAUSE追加到各个内容信息,在该PAUSE要素的内容为“Yes”的情况下,表示输出正处于中断状态。
并且,控制部201在从接收部202接受的终端102的请求为数据发送请求的情况下,向读出部204发出指示,指示读出部204从蓄积部203中读出被请求的多媒体数据,并指示第一输出部205,使其将读出的数据发送。例如,利用发送请求的RTSP,从开头发送URI为rtsp://192.168.0.3/AVData/0001.m2ts的数据的请求的情况下,将以下的消息从终端102发送给数据输出装置101。
PLAY rtsp://192.168.0.3/AVData/0001.m2ts RTSP/1.0
CSeq:2
Session:12345
Range:smtpe=0:00:00
控制部201在接受了上述消息的情况下,参照由读出部204读出的URI表421,并检索URI为rtsp://192.168.0.3/AVData/0001.m2ts的多媒体数据。在本实施例的情况下,多媒体数据401相当于以上所述。若对应的多媒体数据存在,则控制部201作成由RTSP规定的以下的应答消息,并指示第一输出部205,使其向终端102发送。
RTSP/1.0200OK
CSeq:2
Session:12345
Range:smtpe=0:00:00-0:55:00
RTP-Info:url=rtsp://192.168.0.3/AVData/0001.m2ts;seq=123123532;rtptime=53265
之后,指示读出部204,使其依次从多媒体数据401的开头开始读出数据,并指示第一输出部205使其将读出的数据发送到终端102。由于数据发送是由RTP规定的方法进行的,因此省略详细说明。
控制部201在从接收部202接受的终端102的请求为中断数据发送的情况下,指示第一输出部205使其停止数据发送,同时发送完毕的数据数由第一输出部205来接受。并且,指示读出部204,使其停止从蓄积部203读出数据。在利用RTSP的情况下,数据发送中断可以使用PAUSE指令来执行。以下的消息由终端102来发送。
PAUSE rtsp://192.168.0.3/AVData/0001.m2ts RTSP/1.0
CSeq:3
Session:12345
控制部201在接收了上述的PAUSE指令的情况下,使数据的发送停止,作成以下的应答消息,并发送给第一输出部205。
RTSP/1.0200OK
CSeq:3
Session:12345
并且,指示读出部204,使其读出属性信息411,并追加正处于输出中断的属性。在本实施例中,在图5所示的属性信息中,以“PAUSE”这个要素来表示。即,在有PAUSE要素,且仅在其内容为“Yes”的情况下,表示数据发送正处于被中断的状态。
控制部201更新属性信息411后,指示写入部208,使其覆盖蓄积部203上的属性信息411。
控制部201还根据从第一输出部205接受的发送完毕数据数,来求出再次开始数据发送时的开头的再次开始发送位置。例如,在从开头开始发送了50119字节的情况下,则再次开始发送位置为第50120字节。
控制部201将此再次发送位置和识别多媒体数据401的信息组成组,以作成再次开始位置信息,并记忆到记忆部207,所述识别多媒体数据401的信息例如是文件名。图7示出了此再次开始位置信息的一个例子。
图7示出了本发明的实施例1中的再次开始位置信息的一个例子。图7示出了上述的数据发送中断时的再次开始位置信息701。并且,在本实施例中,虽然是根据从第一输出部205接受的发送完毕数据数来求出再次开始发送位置的,但也可以根据从读出部204接受的例如读出完毕数据数来求出再次开始发送位置。
之后,在RTSP就会收发切断对话期间的TEARDOWN这一指令,然而在本实施例中,即使执行TEARDOWN,上述的再次开始位置信息701以及属性信息411也不会被更新。
并且,也可以是为了更明确地表示中断后还会再次开始,而扩展PAUSE或TEARDOWN,并请求再次开始位置信息701的作成及保持以及属性信息411的更新及保持。例如,利用作为独自扩展报头的X-Keep-Pause-Status,只有在该值为“Yes”的情况下,才作成及保持再次开始位置信息701并且更新及保持属性信息411,则上述的PAUSE消息成为以下所示。
PAUSE rtsp://192.168.0.3/AVData/0001.m2ts RTSP/1.0
CSeq:3
Session:12345
X-Keep-Pause-Status:Yes
这时,由于接收的PAUSE消息中存在X-Keep-Pause-Status报头,且该值为“Yes”,因此控制部201作成及保持再次开始位置信息701,并更新及保持属性信息411。在不存在X-Keep-Pause-Status报头或值为“Yes”以外的情况下,控制部201不作成再次开始位置信息701,并且也不更新属性信息411。
以下,对在与终端103进行通信时,再次开始上述的被中断的数据发送的过程中数据输出装置101的工作进行说明。
首先,关于获得内容一览,由于与上述相同故省略说明。
以下,对在从接收部202接受的终端103的请求被中断后再次开始数据发送的情况下,控制部201的处理进行说明。在本实施例中,该请求是在RTSP的PLAY使用作为独自扩展报头的X-Restart,且以值为“Yes”的情况下进行的。这种情况下,从终端103发送以下的消息。
PLAY rtsp://192.168.0.3/AVData/0001.m2ts RTSP/1.0
CSeq:2
Session:54321
X-Restart:Yes
首先,控制部201在参照URI表421的同时,还从记忆部207所记忆的再次开始位置信息中检索以PLAY消息发送来的URI的多媒体数据(在此为多媒体数据401)。在此,相当于再次开始位置信息701。
控制部201从再次开始位置信息701中读取再次开始位置,即从开头开始第50120字节,并向读出部204发出指示,指示读出部204从多媒体数据401的开头开始的第50120字节开始读出。读出部204接受指示并开始读出数据。
之后,控制部201作成以下的应答消息,并指示第二输出部206,使其向终端103发送。并且,第50120字节处于从多媒体数据401的开头开始第八成的位置。
RTSP/1.0200OK
CSeq:2
Session:54321
Range:smtpe=0:08:00-0:55:00
RTP-Info:url=rtsp://192.168.0.3/AVData/0001.m2ts;seq=123073412;rtptime=52865
之后,由于PLAY消息是由终端103发送出来的,据此,控制部201判断数据的接收方为终端103,并指示第二输出部206,使其将读出部204读出的数据发送到终端103。并且,控制部201在从记忆部中删除再次开始位置信息701的同时,还从属性信息411中删除“输出正处于中断状态”的属性,并更新属性信息411。
并且,在本实施例中,由于控制部201将发送RTSP消息的终端判断为接收方终端,因此省略了明确指出终端103就是接受输出方,即接收方终端。这种情况下,可以根据接收包或Socket Interface而得知接受输出方。并且,也可以通过UPnP AV所规定的方法或对PLAY消息进行独自扩展,来指定接收方。
以下,对终端102以及终端103进行说明。
图3是本发明的实施例1中终端102以及终端103的一个构成示例的方框图。
如图3所示,终端102以及终端103包括:设备控制部301;控制部302;接收部303,以接收从数据输出装置101发送出来的信息;发送部304,向数据输出装置101发送请求信息;判断部305,在接收部303所接收的消息中,解析多媒体数据的属性,判断输出是否正处于中断状态;接收部306,接收从数据输出装置101发送出来的多媒体数据;数据解码部307,解码接收了的多媒体数据;网络接口308,与网络104相连接;以及表示部309,表示解码后的多媒体数据。
设备控制部301具体而言包括控制部302、接收部303、发送部304、以及判断部305。
以下将更详细地说明控制部302。控制部302由微型处理器、ROM、RAM等构成。在ROM、RAM以及图中未示出的信息记忆部中保存有以微型处理器运行的OS、Java VM程序、Java程序库、Java应用程序。
微型处理器在启动时读取OS并执行。接着,Java应用程序在启动时读取Java VM并执行,并按照需要在读取Java程序库的同时执行Java应用程序。控制部302从图中未示出的用户接口部接受用户的请求,并按照Java应用程序来控制接收部303、发送部304、判断部305、数据接收部306、数据解码部307、以及表示部309,并在这些部之间进行数据的收发。
接收部303与网络接口308相连接,接收被发送到网络接口308的给终端的信息,并传递给控制部302。关于接收部303,具有代表性的是OS或Java库所提供的Socket Interface或利用SocketInterface的程序。不过,并不限于以这样的软件构成,也可以以硬件构成。
发送部304与网络接口308相连接,接受控制部302的指示并执行,将控制部302发送来的数据变更为向控制部302所指示的接收方的包,并通过网络接口308进行发送。关于发送部304,具有代表性的是OS或Java库所提供的Socket Interface或利用SocketInterface的程序。另外,并不仅限于由这样的软件构成,也可以由硬件构成。
判断部305按照控制部302的指示,解释接收部303所接收的消息,并检索其中所包含的多媒体数据的属性,判断该多媒体数据是否为“输出正处于中断状态”,并将结果返送给控制部302。关于判断部305,具有代表性的是被包含在Java库或Java应用程序中的辅程序。另外,并不仅限于由这样的软件构成,也可以由硬件构成。
数据接收部306与网络接口308相连接,按照控制部302的指示,接收从数据输出装置101发送来的多媒体数据,并传递到数据解码部307。关于数据接收部306,具有代表性的是OS或Java库所提供的Socket Interface或利用Socket Interface的程序。另外,并不仅限于由这样的软件构成,也可以由硬件构成。
数据解码部307按照控制部302的指示,对被发送来的多媒体数据进行解码。如以上所述,多媒体数据由以MPEG2为代表的编码方式编码。数据解码部307解码该数据,并将解码后的数据发送到表示部309。关于数据解码部307的构成,具有代表性的是以硬件解码器和该硬件解码器的驱动软件构成。
网络接口308的构成与上述的网络接口209相同。
表示部309由监视器或扬声器构成,或向外部的监视器、扬声器送出影像或声音信号。
以下,将像上述一样,对终端102以及终端103的工作进行说明,并且以在向终端102进行数据通信过程中中断数据发送,以及向终端103再次开始被中断的数据的发送为例进行说明。并且,对于终端102以及终端103而言,至少数据输出装置101与网络104相连接,并且已经识别到该所述数据输出装置101是提供多媒体内容数据的服务器。像这样的网络上的设备的发现以及能力的检知,由于是以UPnPDA(Device Architecture)所定义的方法来进行的,因此省略详细说明。
首先,对在终端102到影像再生中断为止的过程中的工作进行说明。
控制部302根据来自用户的请求,作成内容一览发送请求消息,并指示发送部304向数据输出装置101发送。并且,由接收部303接收从数据输出装置101发送来的内容一览消息,并将内容的标题等信息出示给用户。向用户的出示可以通过利用表示部309来进行,并且也可以通过图中未被示出的其它的出示部来进行。
之后,控制部302在接受再生请求的情况下,作成数据发送请求消息,并指示发送部304使其向数据输出装置101发送,所述再生请求指的是,请求再生从用户指出的多个内容中选择出来的一个内容。作为数据发送请求信息的一个例子可以举出上述的RTSP中的PLAY消息。接着,接收部303从数据输出装置101接收应答消息。作为应答消息的一个例子,可以举出对上述的PLAY消息的应答。
应答消息所表示的是:在开始发送时,控制部302指示数据接收部306,使其接收从数据输出装置101发送来的多媒体数据,并且指示数据解码部307,使其解码接收的多媒体数据,并且指示表示部309,使其表示解码后的多媒体数据。
并且,控制部302在应答消息为不可发送的情况下,将该消息出示给用户。
之后,控制部302从用户接受了中断再生的请求的情况下,作成数据发送中断请求消息,并指示发送部304使其向数据输出装置101发送。作为数据发送中断请求消息的一个例子可以是上述的RTSP中的PAUSE消息。
接着,控制部302在接收部303接收来自数据输出装置101的应答消息的同时,分别指示数据接收部306、数据解码部307、以及表示部309,从而分别使多媒体数据的接收工作停止、使数据的解码停止、以及使数据的表示停止。
以下,对在终端103使在终端102中断的再生再次开始的工作进行说明。
首先,控制部302根据用户的请求,采用与上述相同的方法,通过数据输出装置101获得内容一览消息。
之后,控制部302与上述同样,根据接收的内容一览消息,将内容的标题等信息出示给用户。此时,控制部302指示判断部305,使其判断是哪个内容的数据输出正处于中断状态,并将该信息一起出示。数据输出正处于中断状态时的出示方法例如可以利用:在内容的标题处标上标记、将内容的标题以其它的颜色表示、或者另外作出正在处于中断状态的一览并出示等方法。
接着,控制部302在接受来自用户的再次开始输出处于中断状态的内容的再生的请求时,作成再次开始该内容的数据发送请求消息,并指示发送部304使其向数据输出装置101发送。作为再次开始数据发送请求信息的一个例子可以是,在上述的PLAY消息上追加扩展报头X-Restart。
接着,由接收部303从数据输出装置101接收应答消息。作为应答消息的一个例子可以是对带有上述的X-Restart报头的PLAY消息的应答。
应答消息所表示的是:在开始发送时,控制部302指示数据接收部306,使其接收从数据输出装置101发送来的多媒体数据,并且指示数据解码部307,使其解码接收的多媒体数据,并且指示表示部309,使其表示解码后的多媒体数据。
并且,控制部302在应答消息为不可发送的情况下,将该消息出示给用户。
并且,在本实施例中,由于发送RTSP的指令消息的终端是数据输出装置101中的接受数据输出的一方,因此可以省略明确地指定终端103就是接收方终端即接受输出方,但是在本实施例中也可以通过UPnP AV所规定的方法或向PLAY消息追加独自的扩展的方法等来指定接收方。
如以上说明,实施例所涉及的构成多媒体通信***105的数据输出装置101,在数据输出过程中从终端接受了数据输出中断请求的情况下,将根据输出被中断的多媒体数据以及输出中断位置得到的再次开始位置信息记忆到装置内部,在接受了来自终端的再次开始数据输出请求和接受输出方的终端的识别信息时,读出记忆的再次开始位置信息,并再次开始数据输出。
并且,本实施例所涉及的终端102以及终端103包括设备控制部301,在某多媒体数据在数据输出装置101中被判断为正处于输出中断状态的情况下,通过发送再次开始数据输出请求和接受输出方的终端的识别信息,而使数据输出在数据输出装置101上再次开始。根据此构成,例如在终端102,即使某多媒体内容的视听被中断,也能够在终端103从中断的位置开始再次视听该多媒体内容。
(实施例1的变形例)
以上对本发明的实施例1进行了说明,但本发明并非受上述实施例1所限。以下的情况也包含在本发明内。
(1)数据输出装置101也可以是这样的构成,即在数据输出被中断时,发行用于识别该中断的标识符,并与再次开始位置信息一起记忆到记忆部207,并将该标识符包含在内容一览中发送到终端,在接收再次开始数据输出请求的同时接收该标识符时,再次开始数据输出。图8示出了这种情况下的记忆部207中所记忆的数据的一个例子。
图8示出了本发明的实施例1的变形例1中的再次开始位置信息的一个示例图。如图8所示,记忆部207中记忆的再次开始位置信息801、再次开始位置信息802、以及再次开始位置信息803的例子。例如,再次开始位置信息801与标识符ID1的中断有关,表示从第50120字节开始再次开始文件名为0001.m2ts的多媒体数据。
并且,终端102以及终端103的设备控制部301的构成也可以是在获得了上述标识符时,在发送再次开始数据输出请求的同时发送上述标识符。
并且,也可以将上述标识符作为输出正处于中断状态的属性值来利用。即,也可以是在图5中,将PAUSE要素的内容设定到该标识符,在存在PAUSE要素且其内容被描述的情况下,为处于输出中断状态,在不存在PAUSE要素或即使存在PAUSE要素而没有内容即空要素的情况下,则为不处于输出中断状态。
并且,也可以是在数据输出装置101所输出的内容一览,利用上述标识符来作为表示输出中断的属性的值。
并且,数据输出装置101的构成也可以是,在对数据做出应答时,将上述标识符回信给终端,且在内容一览中不含有上述标识符。在此情况下,由于只有知道该标识符的用户才能够再次开始输出,因此可以得到提高安全性等效果。
并且,上述标识符也可以由终端提供给数据输出装置101。而且,数据输出装置101的构成也可以是在内容一览中不包含上述标识符。在此情况下也是只有知道该标识符的用户才能够再次开始输出,因此可以得到提高安全性等效果。
(2)终端102以及终端103的构成也可以是,在发送数据输出中断请求时,再次开始数据输出时的接受输出方的识别信息也被发送,数据输出装置101将再次开始位置信息与所述接受输出方的识别信息保存到记忆部207,在接受该数据的再次开始数据输出请求时,将该数据输出给所述接受输出方。作为这种情况的数据输出中断请求的一个例子,将扩展报头X-Reopen-Terminal追加到上述的实施例中的PAUSE指令消息,作为值来描述特定的终端。作为接受输出方的标识符,可以是终端的IP地址,也可以是各终端的主机名,还可以是给各终端起的别名。这些信息可以由UPnP DA所定义的方法来获得。图9示出了在这种情况下的记忆部207中所记忆的数据的一个例子。
图9示出了本发明实施例1的变形例2中的再次开始位置信息的一个例子。如图9所示,记忆部207中记忆有再次开始位置信息901和再次开始位置信息902。例如,再次开始位置信息901表示,从第50120字节开始再次开始文件名为0001.m2ts的多媒体数据的输出,且接受此输出方为终端T1。
并且,数据输出装置101的构成也可以是,在接收数据输出中断请求的同时还接收再次开始数据输出时的接受输出方的识别信息的情况下,只根据来自作为该接受输出方的终端的请求,再次开始数据的输出。
并且,数据输出装置101的构成也可以是,在接收数据输出中断请求的同时还接收再次开始数据输出时的接受输出方的识别信息的情况下,对照所记忆的接受输出方,仅在一致的情况下才再次开始数据的输出。
而且,数据输出装置101也可以在接收数据输出中断请求的同时还接收再次开始数据输出时的接受输出方的情况下,再次开始数据输出时的接受输出方不仅可以选择特定的接受输出方,而且可以选择作为候补的接受输出方的一部分或全部。
在这种情况下,例如数据输出装置101在接收数据输出中断请求的同时接收作为再次开始输出时的接受输出方的特定的接受输出方的识别信息的情况下,仅根据作为该接受输出方的终端的请求来再次开始数据的输出。并且,数据输出装置101在接收数据输出中断请求的同时接收作为再次开始输出时的接受输出方的、成为候补的接受输出方的一部分或全部的识别信息的情况下,仅根据来自作为接收的接受输出方的某一个的终端的请求,来再次开始数据的输出,以作为再次开始输出时的接受输出方。
(3)数据输出装置101的构成也可以是,进一步具有数据接收部,以接收来自外部的数据,且数据输出装置101可以发送蓄积部203中蓄积的数据以及接收部所接收的数据。图10示出了这种情况下的代表构成图。
图10是本发明的实施例1的变形例3所涉及的数据输出装置的一个构成示例方框图。
如图10所示,数据输出装置包括:数据接收部1001、接收接口1002、控制单元201、接收单元202、蓄积单元203、读出单元204、第一输出单元205、第二输出单元206、记忆单元207、写入单元208、以及网络接口209。
数据接收部1001从接收接口1002所接收的信号中抽出多媒体数据,具有代表性的是数字广播的调谐器等。在这种情况下,接收接口1002为天线。
并且,在图10中,控制单元201、接收单元202、蓄积单元203、读出单元204、第一输出单元205、第二输出单元206、记忆单元207、写入单元208、以及网络接口209与图2所示相同,不过在此,控制部201还可以控制数据接收部1001,第一输出部205以及第二输出部206还可以输出作为数据接收部1001的输出的多媒体数据,写入部208可以将数据接收部1001所接收的多媒体数据写入到蓄积部203。
在输出来自数据接收部1001的多媒体数据的过程中,接受了数据输出中断请求的情况下,控制部201使正在进行输出的第一输出部205或第二输出部206停止输出,同时向写入部208发出指示,以使从数据接收部1001输出的多媒体数据依次被写入到蓄积部203。
进一步,作成该多媒体数据的属性信息并写入,同时作成该多媒体数据的URI,并更新URI表421。并且,根据写入该多媒体数据的文件名和作为再次开始位置的该文件的开头来作成再次开始位置信息,并记忆到记忆部207。
据此,在接受了该多媒体数据的再次开始输出请求的情况下,控制部201可以以与上述实施例所说明的相同的方法,来再次开始数据的输出。
并且,在以上的说明中,在接受了数据输出中断请求时,接着将数据写入到蓄积部203,但也可以是不等待数据输出中断请求,而事先从该多媒体数据的开头开始将数据写入到蓄积部203。在这种情况下,再次开始输出位置信息可以以与上述相同的方法来作成。
并且,数据输出装置101可以时常将作为数据接收部1001的输出的多媒体数据中的、一定时间内或一定容量内的数据,事先放到图中未示出的缓存区域,在接受了数据输出中断请求时,也将该缓存区域中的数据写入到蓄积部203。并且,在算出再次开始输出数据的位置时可以在考虑该缓存区域中的数据的情况下算出,也可以不考虑该缓存区域中的数据。
(4)数据输出装置101的构成也可以是,进一步具有解码多媒体数据的数据解码部和表示被解码的多媒体数据的表示部。图11是这种情况下的一个代表构成图。
图11是本发明的实施例1的变形例4中数据输出装置构成的方框图。如图11所示,数据输出装置包括:控制单元201、接收单元202、蓄积单元203、读出单元204、第一输出单元205、第二输出单元206、记忆单元207、写入单元208、网络接口209、数据解码部1101、以及表示部1102。
控制单元201、接收单元202、蓄积单元203、读出单元204、第一输出单元205、第二输出单元206、记忆单元207、写入单元208、以及网络接口209与图2所示相同,不过在此,控制部201进一步控制数据解码部1101和表示部1102,这一点与上述图2不同。数据解码部1101与终端102以及终端103中的数据解码部307相同,表示部1102与表示部309相同。
并且,在图11中,第一输出部205与数据解码部1101相连接。在此构成中,通过与上述的实施例采用同样的处理,可以中断作为向数据解码部1101的数据输出的、来自第一输出部205的输出,并作为来自其它的第二输出部206的输出来进行该数据的输出,以及,可以中断向第二输出部206的数据输出,并作为来自第一输出部205的输出再次开始等,所述来自第一输出部205的输出是指向数据解码部1101的输出。
并且,也可以是,上述的实施例中已有记载,接收部202可以同时以红外线通信来接收,控制部201也可以按照除网络104以外发送来的请求来控制各个部并工作。在这种情况下,例如内容一览或应答消息等不由第一输出部205输出,而被变换为适当的消息,例如由表示部1102表示等方式来出示给用户。
(5)在上述实施例中,是以数据输出装置101记忆再次开始位置信息的,不过也可以使网络上的第三个设备来记忆。图12示出了这种情况下的多媒体通信***的构成图。
图12示出了本发明的实施例1的变形例5中的多媒体通信***的一个构成示例图。
如图12所示,多媒体通信***1206包括:数据输出装置1201、通过网络来控制数据输出装置以及中断装置的控制装置1202、第一终端1203、第二终端1204、以及网络1205。数据输出装置1201、控制装置1202、终端1203、以及终端1204分别与网络1205相连接,并可以通过网络1205彼此互相通信。
数据输出装置1201接收通过网络1205而被发送来的、来自控制装置1202、终端1203、以及终端1204的请求。并且,按照请求将蓄积的每个内容的信息或属性通过网络1205发送给控制装置1202,并且,按照请求将蓄积的内容的多媒体数据通过网络1205发送给终端1203以及终端1204。并且,多媒体数据的发送可以按照请求从任意的地方被送出。
并且,对于正在执行的数据输出而言,数据输出装置1201在从控制装置1202或接收方终端接收中断请求的情况下,将数据位置和该多媒体数据的文件名或URI,通过网络1205发送给控制装置1202,所述数据位置是指再次开始输出最后发送的数据位置之后的位置。
而且,如后述那样,并非必需要发送该多媒体数据的文件名或URI。
控制装置1202按照用户的请求来工作。
控制装置1202通过网络1205来控制终端1203以及终端1204,从而使终端1203以及终端1204从数据输出装置1201接收多媒体数据并再生。由于上述的控制可以通过UPnP AV所定义的方法来进行,因此省略详细说明。
并且,控制装置1202通过向数据输出装置1201发出请求,来接收内容的标题等信息或属性,并由终端1203、终端1204或控制装置1202自身的表示部来出示给用户。并且,在接受了来自用户的再生中断请求时,控制装置1202控制正在执行该再生的终端1203或终端1204,在向数据输出装置1201发送数据输出中断请求的同时使再生中断。
而且,控制装置1202与数据输出装置1201进行通信,接收能够确定该数据的信息,并作为再次开始位置信息记忆到控制装置1202内,所述能够确定该数据的信息是指使输出再次开始的数据位置和该多媒体数据的文件名或URI。
再次开始位置信息可以是与上述的实施例1以及变形例中所涉及的再次开始位置信息中的某一个相同的信息。
并且,由于该多媒体数据的URI被用在控制装置1202发行再生请求之时,因此在再生中断时是已知的,这样就不必在再生中断时从数据输出装置来接收。
在由用户发出再次开始再生请求和指定进行再生的终端时,控制装置1202进一步读出所述再次开始位置信息,使该终端从数据输出装置1201接收再次开始位置的数据,并再生。
终端1203以及终端1204按照通过网络1205从控制装置1202发送来的请求,从指定的服务器接收指定的多媒体数据的、指定的范围的数据,并且再生、表示。
网络1205与上述实施例1中的网络104相同。
如以上的说明,在这样构成的多媒体通信***1206中,通过控制装置1202管理再次开始位置信息,从而例如可以中断在终端1203进行的多媒体内容的再生,并且可以在终端1204上再次开始再生。
另外,虽然在此,控制装置1202是从数据输出装置1201至少接收使输出再次开始的数据位置,并作成再次开始位置信息的,但也可以是数据输出装置1201作成再次开始位置信息,由控制装置1202来接收并保存。
并且,虽然在此,控制装置1202是从数据输出装置1201至少接收使输出再次开始的数据位置,并作成再次开始位置信息的,但也可以从正在执行再生的终端1203或终端1204至少接收最后再生的数据位置,以作成再次开始位置信息。
并且,虽然在此,控制装置1202是向终端1203或终端1204发行请求,再由终端向数据输出装置1201发送数据发送请求的,但也可以是控制装置1202向数据输出装置1201发行向终端1203或终端1204发行的数据发送请求,并且,向该终端发行来自数据输出装置1201的数据接收请求。像这样的数据传送控制可以由FTP(FileTransfer Protocol:文件传送协议)来进行。
并且,虽然在此是以网络上的独立的控制装置1202来保存再次开始位置信息的,但也可以由网络上的具有任意的记忆部的设备来保存再次开始位置信息,并由数据输出装置、设备控制装置、终端中的某一个来获得并解析所述的再次开始位置信息。
(6)在上述的实施例1中,虽然利用了作为数据传送协议的RTP/RTSP,但也可以利用HTTP(HyperText Transport Protocol)等其它的协议。利用HTTP的情况下的数据输出中断请求可以通过切断HTTP-GET的对话期间来进行,也可以以其它的对话期间的通信来进行。并且,利用HTTP的情况下的再次开始数据输出请求可以在HTTP-GET上利用诸如上述的X-Restart这样的独自的扩展报头来进行。
(7)在上述的实施例1中,是以最后发送完毕的数据之后的数据位置作为再次开始发送位置的,但也可以返回特定数量的数据,并以此返回的位置作为再次开始发送位置。
并且,作为再次开始发送位置,可以参照数据中所包含的内容,诸如内容的场面的切换等,以此来作成再次开始位置信息。例如,可以举出的具体例子是,可以将刚被中断之前的内容的场面的切换位置作为再次开始位置信息。
而且,多媒体数据是MPEG2编码数据的情况下,I帧、MPEG2-TS中的PAT等是在解码中不可缺少的,可以作为发送完毕的数据中的最后一个的开头等。并且,多媒体数据即使是其它的编码数据也一样。
(8)构成上述各装置的构成要素的一部分或全部可以由一个***LSI(Large Scale Integration:大规模集成电路)来构成。***LSI是将多个构成部集成到一个芯片上而被制造出来的超多功能LSI,具体而言,是包括微型处理器、ROM、RAM等的计算机***。所述RAM中记忆有计算机程序。所述微型处理器按照所述计算机程序来工作,因此***LSI可以达成上述的功能。
(9)构成上述各装置的构成要素的一部分或全部也可以由可拆装于各装置的IC卡或单体模块来构成。所述IC卡或所述模块是由微型处理器、ROM、RAM等构成的计算机***。上述IC卡或上述模块也可以包括上述的超多功能LSI。微型处理器按照计算机程序来工作,因此上述IC卡或上述模块可以达成上述的功能。所述IC卡或所述模块可以具有防篡改功能。
(10)本发明的数据输出装置、设备控制装置可以是上述的方法。并且,这些方法可以作为由计算机来实现的计算机程序,也可以作为由所述计算机程序组成的数字信号。
并且,本发明的数据输出装置、设备控制装置,可以将所述计算机程序或所述数字信号记录到计算机可读取的记录介质中,这些记录介质例如是软盘、硬盘、CD-ROM、MO、DVD、DVD-ROM、DVD-RAM,BD(Blu-ray(注册商标)Disc)、半导体存储器等。并且,也可以作为这些记录介质中所记录的所述计算机程序或所述数字信号。
并且,本发明的数据输出装置、设备控制装置可以将所述计算机程序或所述数字信号,通过以电气通信线路、无线或有线通信线路、互联网为代表的网络、数据播放等来传送。
并且,本发明的数据输出装置、设备控制装置可以是具备微型处理器和存储器的计算机***,所述存储器记忆上述计算机程序,所述微型处理器按照所述计算机程序来工作。
并且,可以将所述程序或所述数字信号记录到所述记录介质并传送,或者可以将所述程序或所述数字信号通过所述网络等来传送,从而可以由独立的其它的计算机***来执行。
(11)上述的实施例以及上述的变形例可以分别自由组合。
(实施例2)
图13是本发明实施例2中的多媒体通信***的一个构成例子。
如图13所示,多媒体通信***1305包括:数据输出装置1301、第一终端1302、第二终端1303、以及网络1304。数据输出装置1301、终端1302以及终端1303与网络1304相连接,并通过网络1304互相通信。
在本实施例中的数据输出装置1301包括网络接口和蓄积多媒体数据的蓄积部,且是接收数据广播的CATVSTB(Set Top Box)。
数据输出装置1301将接收的数据广播内容的多媒体数据蓄积到蓄积部。并且,通过网络接口与网络1304连接。并且,接收通过网络1304发送的、来自终端1302以及终端1303的请求。并且,按照请求将接收的数字广播的内容,或各个蓄积的内容的信息、属性,或多媒体数据,通过网络1304发送到终端1302以及终端1303。
数据输出装置1301对于正在执行的蓄积的内容的数据输出,在从接收方终端接收中断请求的情况下,将最后发送的数据位置的下一个位置作为再次开始输出的数据位置,并与该数据的文件名或URI(Uniform Resource Identifier)组合起来作为再次开始位置信息,记忆到装置内部,与此同时将“输出正处于中断状态”这一属性附加给该数据。
并且,对于正在执行的接收的数字广播内容的数据输出,在从接收方终端接收中断请求的情况下,将中断后的数据蓄积到蓄积部。
并且,作成该多媒体数据的属性和URI。该属性中包含了“输出正处于中断状态”这一信息。并且,将该文件名或URI以及蓄积的文件的开头位置作为再次开始位置信息记忆到装置内部。
而且,数据输出装置1301在从终端接收了再次开始数据发送请求时,参照记忆的再次开始位置信息,从未发送的数据的开头开始,向被指定的终端再次开始数据发送。
终端1302以及终端1303按照用户的请求,通过网络1304将多媒体数据或内容的属性发送给数据输出装置1301。并且,在接收了内容的属性的情况下,按照需要向用户出示,在接收了多媒体数据的情况下,再生该数据并表示。终端1302以及终端1303根据内容的属性来判断该内容是否为“输出正处于中断状态”,并按照用户的请求发行再次开始数据发送的请求。
网络1304是家庭内设置的家庭网络,是由以太网、无线LAN等构成的IP网络。
以下,对数据输出装置1301和终端1302以及终端1303之间的通信以及各自的工作进行说明。
多媒体数据发送的控制信息的通信利用RTSP来进行。首先,以数据输出装置101和终端102之间的通信,来说明从多媒体数据的发送到中断,接着,以数据输出装置1301和终端1303之间的通信,并以在向终端1302发送过程中,中断多媒体数据的发送,并再次开始该被中断的多媒体数据的发送为例进行说明。
首先,对在中断向终端1302的数据发送的过程中的通信以及各自的工作进行说明。
数据输出装置1301以及终端1302分别检索与网络1304相连接的装置,并获得各个装置所具有的功能。由于上述的通信是以UPnPDA(Device Architecture)所定义的方法进行,因此省略详细说明。
据此,由于终端1302与网络1304相连接,因此数据输出装置1301通过网络1304来接收多媒体数据,并能够识别进行再生的播放器。并且,终端1302能够识别到数据输出装置1301是连接在网络1304上的多媒体服务器。
首先,终端1302向数据输出装置1301发行蓄积的内容一览或EPG的获得请求。数据输出装置1301依照上述发行,作成蓄积的内容一览或将接收的EPG数据转换为通信形式,发送到终端1302。
内容一览是指,对于各个内容而言,至少包括内容的标题和用于存取内容的URI。并且,在多媒体的输出被中断的情况下,还包括表示输出被中断的属性。另外,按照需要读出各个多媒体数据中所具有的属性信息,并将读出的内容附加到内容一览后发送。
并且,EPG数据至少包括各个节目的标题和用于存取各个节目或播放该各个节目的频道的URI。由于内容一览或EPG的获得请求和对于该内容一览或该EPG的获得请求的应答的协议,以及内容一览和EPG的数据格式,可以利用UPnP AV所规定的方法,因此省略详细说明。但是,多媒体数据输出中断的属性利用独自地扩展所述格式后的格式。
由于内容一览的格式是由XML来定义的,因此通过利用XMLNamespace,从而可以不矛盾地扩展格式。例如,将利用独自的名称空格的要素PAUSE追加到各个内容的信息中,在该PAUSE要素的内容为“Yes”的情况下,则表示输出正处于中断状态。
之后,终端1302根据接受的内容一览或EPG数据,将内容的标题等信息出示给用户。并且,在接受了用户所选择的其中之一的再生请求的情况下,则终端1302发行多媒体数据的发送请求。例如,在发行将内容的URI为rtsp://192.168.0.3/AVData/0001.m2ts的数据,从该多媒体数据的开头开始发送的请求的情况下,接在RTSP的SETUP消息之后,以下的PLAY消息从终端1302被发送到数据输出装置1301。
PLAY rtsp://192.168.0.3/AVData/0001.m2ts RTSP/1.0
CSeq:2
Session:12345
Range:smtpe=0:00:00
在URI表示的多媒体数据为被蓄积到蓄积部的内容的情况下,接受了上述PLAY消息的数据输出装置1301就从蓄积部读出该多媒体数据。并且,在URI表示频道的情况下,则由调谐器来对该频道进行调谐。并且,作成以下的应答消息,并发送给终端1302。
RTSP/1.0200OK
CSeq:2
Session:12345
Range:smtpe=0:00:00-0:55:00
RTP-Info:url=rtsp://192.168.0.3/AVData/0001.m2ts;seq=123123532;rtptime=53265
接着,数据输出装置1301将从蓄积部读出的多媒体数据或由调谐器进行调谐后获得的多媒体数据,依次发送给终端1302。由于数据发送是以RTP所规定的方法进行的,因此省略详细说明。
之后,终端1302按照用户的指示,在接受了再生中断请求时,向数据输出装置1301发行数据发送中断请求。数据发送中断可以使用PAUSE指令来执行。以下的消息从终端1302被发送到数据输出装置1301。
PAUSE rtsp://192.168.0.3/AVData/0001.m2ts RTSP/1.0
CSeq:3
Session:12345
数据输出装置1301在接收了上述的PAUSE指令的情况下,使数据发送停止,作成以下的应答消息,并发送给终端1302。
RTSP/1.0200OK
CSeq:3
Session:12345
并且,数据输出装置1301在发送的内容是被蓄积在蓄积部的内容的情况下,将输出正处于中断状态这一属性追加到该内容的属性信息中。数据输出装置1301进一步根据发送完毕数据数来求出在再次开始数据发送时成为开头的再次开始发送位置。例如,发送从开头开始的第50119字节的数据的情况下,再次开始发送位置则为从开头开始的第50120字节处开始。
数据输出装置1301将识别此再次开始发送位置和多媒体数据的信息组成组,以作成再次开始位置信息,并记忆,所述识别多媒体数据的信息例如是内容的标识符。
并且,在本实施例中,虽然是根据发送完毕数据数来求出再次开始发送位置的,但也可以是例如根据来自蓄积部的、读出完毕的数据数来求出。
并且,在发送了的内容是从调谐器获得的多媒体数据的情况下,数据输出装置1301则会接着将多媒体数据依次写入到蓄积部。而且,在作成该多媒体数据的属性信息并写入到蓄积部的同时,还作成该多媒体数据的URI,并可以从终端存取。并且,将标识符发行到该多媒体数据,并根据该标识符和作为再次开始位置的该文件的开头来作成再次开始位置信息,并记忆。
终端1302在接受了来自用户的结束请求时,则发送被称为TEARDOWN的指令消息,该TEARDOWN切断对话期间,数据输出装置1301接受这一指令消息并发送应答消息,结束通信。在本实施例中,即使进行TEARDOWN,上述的再次开始位置信息以及属性信息也不会被更新。
并且,也可以是为了更明确地表示中断后还会再次开始,而扩展PAUSE或TEARDOWN,并请求再次开始位置信息的作成及保持以及属性信息的更新及保持。例如,利用作为独自扩展报头的X-Keep-Pause-Status,只有在该值为“Yes”的情况下,作成及保持再次开始位置信息并且更新及保持属性信息,则从上述的终端1302发送给数据输出装置1301的PAUSE消息成为以下所示。
PAUSE rtsp://192.168.0.3/AVData/0001.m2ts RTSP/1.0
CSeq:3
Session:12345
X-Keep-Pause-Status:Yes
这时,由于接收的PAUSE消息中存在X-Keep-Pause-Status报头,且该值为“Yes”,因此控制部201作成及保持再次开始位置信息,并更新及保持属性信息。在不存在X-Keep-Pause-Status报头或即使存在而值为“Yes”以外的情况下,数据输出装置1301不作成再次开始位置信息,并且也不更新属性信息。
以下,对在与终端1303的通信中,再次开始上述中断的数据发送的过程中的通信以及数据输出装置1301和终端1303的工作进行说明。
首先,由于有关数据输出装置1301和终端1303中,连接于网络的装置的检索以及由终端1303进行的内容一览或EPG的获得与上述说明相同,因此在此省略说明。
终端1303将从数据输出装置1301接受的内容一览或EPG出示给用户。在出示内容一览时,终端1303判断是哪个内容的数据输出正处于中断状态,并将判断后的信息一起出示。数据输出正处于中断状态时的出示方法例如可以利用:在内容的标题处标上标记、将内容的标题以其它的颜色表示、或者另外作出正在处于中断状态的一览并出示等方法。
终端1303在接受了来自用户的再次开始“数据输出正处于中断状态”的内容再生的请求的情况下,向数据输出装置1301发行再次开始被中断了的数据的发送的请求。该请求是在RTSP的PLAY消息使用作为独自扩展报头的X-Restart,且以值为“Yes”的情况下进行的。这种情况下,从终端1303向数据输出装置1301发送以下的消息。
PLAY rtsp://192.168.0.3/AVData/0001.m2ts RTSP/1.0
CSeq:2
Session:54321
X-Restart:Yes
数据输出装置1301,首先,从记忆的再次开始位置信息中,检索以PLAY消息被送来的URI多媒体数据的再次开始位置信息。数据输出装置从再次开始位置信息中读取再次开始发送的数据位置,并从蓄积部将该多媒体数据读入。
数据输出装置1301接着作成以下的应答消息,并发送给终端1303。并且,再次开始位置为从多媒体数据的开头开始第八成的位置。
RTSP/1.0200OK
CSeq:2
Session:54321
Range:smtpe=0:08:00-0:55:00
RTP-Info:url=rtsp://192.168.0.3/AVData/0001.m2ts;seq=123073412;rtptime=52865
之后,由于PLAY消息是由终端1303发送出来的,据此,数据输出装置1301判断数据的接收方为终端1303,并将读出的数据按顺序发送给终端1303。并且,数据输出装置1301在从装置内部删除相符的再次开始位置信息的同时,从该多媒体数据的属性信息中删除“输出正处于中断状态”这一属性,以更新属性信息。
并且,在本实施例中,由于数据输出装置1301将发送RTSP消息的终端判断为接收方终端,因此省略了明确指出终端1303就是接受输出方,即接收方终端。这种情况下,可以根据接收包或SocketInterface而得知接受输出方。并且,也可以通过UPnP AV所规定的方法或对PLAY消息进行独自扩展,来指定接收方。
如以上所述,在本发明的数据输出装置1301、终端1302、终端1303、以及多媒体通信***1305,例如即使中断由终端1302正在接收的数据的发送,也可以在其它的终端1303确实地再次开始数据通信。
以下对构成本发明的多媒体通信***1305的数据输出装置1301、终端1302、以及终端1303进行更详细的说明。在此,虽然以以下的情况为例进行说明,但在其它的情况也同样,在此所说明的情况是:在与终端1302进行数据通信过程中中断数据发送,并在终端1303再次开始被中断的数据的发送。
并且,RTSP服务器以决定的端口编码来等待。所述端口编号,可以利用以IANA(Internet Assigned Numbers Authority:因特网赋号管理局)决定的554号,也可以利用用户在数据输出装置1301、终端1302以及终端1303上设定的编号。并且,在后述的方法中也可以追加指定端口编号的变量。
首先,对数据输出装置1301进行说明。
图14是本发明的实施例2中的数据输出装置1301的一个构成示例方框图。
该图中所示出的数据输出装置1301包括:输入部1401、第一存储器1402、第二存储器1403、接收部1404、多路复用分离部1405、解扰部1406、TS解码器1407、影像输出部1408、声音输出部1409、TS多路复用器1410、网络部1411、以及CPU1412。
输入部201由前面板或遥控器受光器等构成,接受来自用户的频道选择等指示。
图15是以前面板构成实施例2所涉及得输入部1401时得一个外观示例图。
该图中所示的前面板1500有8个按钮,上游标按钮1501、下游标按钮1502、左游标按钮1503、右游标按钮1504、OK按钮1505、取消按钮1506、EPG按钮1507以及菜单按钮1508。用户若按下按钮,则将按下的按钮的识别符通知给CPU1412。
第一存储器1402由RAM等构成,在CPU142暂时保存数据时使用。
第二存储器1403由即使在闪存、硬盘等发生停电时也可以保持信息的器件构成,保存CPU1412所执行的程序。第二存储器也可以使用SD存储卡等可拆卸的记忆器件。
接收部1404通过连接的电缆接收来自CATV电台的播放波,调谐由CPU1412所指定的频率,抽出MPEG传输流,并传递到多路复用分离部1405。
多路复用分离部1405从接收部1404接受MPEG传输流,抽出CPU1412所指定的信息,并传递到CPU1412。并且MPEG传输流被原封不动地传递到解扰部1406。
解扰部1406对从多路复用分离部1405发来的被加扰的MPEG传输流进行解扰(=解码),并传递到TS解码器1407。解扰部1406既可以以数据输出装置1301中内藏的模块来执行,也可以以北美电缆接收器所导入的CableCARD(TM)来执行。CableCARD的规格在美国CableLabs所制定的CableCARD Interface Specification中有记载,在此省略说明。
TS解码器1407接受来自CPU1412的声音数据、影像数据、PSI/SI信息等频段数据的标识符。并且,从解扰部1406接受的被解扰的流中抽出接受的声音数据、影像数据、PSI/SI信息等频段数据的标识符所对应的数据,并将抽出的影像数据传递到影像输出部1408,将抽出的声音数据传递到声音数据部1409。并且,上述的影像数据和声音数据与频段数据一起被传递到TS多路复用器1410。
影像输出部1408具有影像输出端子,将接受的影像数据转换为端子所对应的影像数据,并输出。端子例如可以是复合电缆端子等。
声音输出部1409具有声音输出端子,将接受的声音数据转换为端子所对应的声音数据,并输出。端子例如可以是耳机端子或复合电缆端子等。
TS多路复用器1410根据接受的影像数据、声音数据、频段数据(section data)构成MPEG2传输流,该MPEG2传输流被传递到网络部1411。PSI/SI信息按照需要被改写。
网络部1411具有网络接口,将从CPU1412接受的数据转换为与网络接口所连接的网络上的物理媒体相对应的信号,并输出。并且,从网络接口接收信号,转换为IP网络所规定的包,并传递给CPU1412。
CPU1412通过执行第二存储器1403所记忆的程序,从而控制接收部1404、多路复用分离部1405、解扰部1406、TS解码器1407、TS多路复用器1410以及网络部1411。
图16是本发明的实施例中的数据输出装置1301所保持并执行的程序的一个构成示例图。即该图示出了数据输出装置1301的第二存储器1403中所记忆的、CPU1412所执行的程序的一个例子。
程序1600由多个子程序构成,具体而言由0S1601、EPG1602,Java VM1603、服务管理器1604、以及Java库1605构成。
OS1601是若接通数据输出装置1301的电源,则CPU1412启动的子程序。OS是操作***的简称,Linux是其中一个例子。
OS1601是由并行执行其它子程序的内核程序1601a和程序库1601b构成的公知技术的总称,省略其详细说明。
在本实施方式中OS1601的内核程序1601a,将EPG1602和Java VM1603作为子程序来执行。并且,程序库1601b向这些子程序提供用于控制数据输出装置1301所具备的各个部的多种功能。
本实施例中的程序库1601b在功能上例如具有:调谐器1601b1、限制解除1601b2、AV再生1601b3、以及NET1601b4。
调谐器1601b1从其它的子程序或Java库1605的Tuner1605c接受包括频率的调谐信息,并传递给接收部1404。
接收部1404根据被提供来的调谐信息,执行解调处理,将解调处理后的数据传递给多路复用分离部1405。结果是,其它的子程序以及Java库1605的Tuner1605c可以通过程序库1601b来控制接收部1404。
限制解除1601b2从其它的子程序或Java库1605的CA1605d接受信息,并传递给解扰部1406。
AV再生1601b3从其它的子程序或Java库1605的JMF1605a接受声音的包ID和影像的包ID。将接受的声音的包ID和影像的包ID分配给TS解码器1407。
结果是,TS解码器1407根据被分配来的包ID进行滤波,从而实现影像和声音的再生。
NET1601b4将从其它的子程序或Java库1605的网络库1605e接受的数据,制作成以IP网络规定的应用层以下的协议的包。应用层以下的协议是指,例如TCP包、UDP包、IP包等。
通过将这些包传递到网络部1411,从而通过网络1304向其它的设备发送消息和数据。并且,在通过网络1304从其它的设备接收消息时,转换为应用层的协议的包,并传递给其它的子程序或Java库1605的网络库1605e。应用层的协议是指,例如HTTP(Hypertext TransferProtocol)或RTP等。
EPG1602包括节目表示部1602a和再生部1602b,节目表示部1602a向用户表示节目一览,并接受来自用户的输入,再生部1602b进行频道的选择。
在此,EPG是Electric Program Guide的简称。EPG1602若数据输出装置1301的电源接通,则由内核程序1601a来启动。在被启动的EPG1602的内部,节目表示部1602a和再生部1602b同时被启动。
在节目表示部1602a被启动时,通过数据输出装置1301的输入部1401来等待来自用户的输入。
在此,输入部1401如图15所示,在由前面板构成的情况下,若用户按下输入部1401的EPG按钮1507,则EPG按钮的识别符被通知给CPU1412。作为在CPU1412上运行的子程序的EPG402的节目表示部402a接受该标识符,作成节目信息表示数据,由未做图示的显示器输出部输出到监视器。显示器可以具有数据输出装置1301,也可以是与输出装置1301和复合电缆或HDMI电缆等相连接的电视机。显示器表示接受的节目信息表示数据。
图17(a)以及(b)分别是本发明的实施例2所涉及的显示器所表示的节目表的示例图。
参照图17(a),在显示器上显示的节目表1710中表示出排为格子状的节目信息。在列1701中表示时间信息。在列1702中显示,频道名称“频道1”,和与列1701的时间相对应的时间带所播放的节目。
在“频道1”示出的是,在9:00~10:30播放的节目是“新闻9,在10:30~12:00播放的是“电影AAA”。列1703和列1702相同,表示了频道名称“频道2”,和与列1701的时间相对应的时间带所播放的节目。在9:00~11:00播放的节目是“电影BBB”,在11:00~12:00播放的是“新闻11”。
若按下前面板300的左游标303和右游标304,则游标503移动。在图17(a)所示的状态下,若按下右游标304,则游标530向右移动,成为图17(b)所示那样。并且,在图17(b)所示的状态下,若按下左游标303,则游标530向左移动,成为图17(a)所示那样。
在图17(a)所示的状态下,若按下前面板1500的OK按钮1505,则节目表示部1602a将“频道1”的标识符通知给再生部1602b。在图17(b)所示的状态下,若按下前面板1500的OK按钮1505,则节目表示部1602a将“频道2”的标识符通知给再生部1602b。
并且,节目表示部1602a通过多路复用分离部1405,定期地将表示的节目信息记忆到第二存储器1403。一般而言,获得来自广播电台的节目信息要花费一些时间。前面板1500的EPG按钮1507被按下时,通过表示第二存储器1403中预先保存的节目信息,从而可以尽早地表示出节目表。
图18是本发明的实施例2所涉及的第二存储器1403中所记忆的节目信息的一个例子。节目信息以表的形式被存储。
列1801是频道的标识符。列1802是频道名称。列1803是节目的播放开始时间,列1804是播放结束时间。列1805表示节目的声音类别,分别将单声道声音、双声道声音、5.1声道声音表示为“单声道”、“双声道”、“5.1”。列1806表示节目的分类。通常,节目为空栏,“电影”表示电影节目,“体育”表示体育节目。
行1811-1814中的各行分别表示一个节目信息。在此例中,一个节目信息是指频道的标识符、节目名、广播开始时间、广播结束时间、以及节目的声音类别的组合。
例如,行1811是包括以下各个要素的组,这些要素是指:频道标识符为“1”,节目名称为“新闻9”,广播开始时间为“9:00”,广播结束时间为“10:30”,声音类别为“单声道”,以及节目类别为“通常”。
再生部1602b使用接受的频道的标识符来再生频道。即,再生构成频道的影像和声音。频道的标识符和频道的关系被预先存储在第二存储器1403中,以作为频道信息。
图19是本发明的实施例2所涉及的第二存储器1403中所存储的频道信息的一个例子。
以表的形式来存储频道信息。列1901是频道的标识符。列1902是频道名称。列1903是调谐信息。在此,调谐信息包含频率或传输速率、编码率等,是提供给接收部1404的值。列1904是程序号。
所谓程序号是用于识别按MPEG2标准规定的PMT(ProgramMap Table)的序号。关于PMT待后述。
行1911-1914的各行成为各频道的标识符、频道名称以及调谐信息的组。行1911这一组包括:标识符“1”、频道名称“频道1”、调谐信息中的频率“150MHz”以及程序号“101”。再生部1602b为了进行频道的再生,将接受的频道的标识符原样传递到服务管理器。
并且,若在再生中用户按下前面板1500的上游标1501与下游标1502,则再生部1602b从输入部1401、通过CPU1412接受按下的通知,变更再生的频道。
在上游标1501被按下时,再生具有比现在正在再生中的的频道小1的频道标识符的频道,并且在下游标1502被按下时,再生具有比现在正在再生中的频道大1的频道标识符的频道。
首先,再生部1602b将当前再生中的频道的标识符存储在第二存储器203中。
图20(a)、(b)以及(c)分别是本发明的实施例2所涉及的第二存储器1403中所存储的频道的标识符的一个例子。
图20(a)表示被记忆的标识符为“3”,参照图19,频道名称为“TV3”的频道正被再生。
在图20(a)所示的状态下,若用户按下上游标301,则再生部402b参照图19所示的频道信息,为了将再生切换到具有比表中现在正在被再生中的频道小一个的标识符的频道的频道名称为“频道2”的频道,将频道名称为“频道2”的标识符“2”传递到服务管理器1604。并且,改写为在第二存储器1403中所记忆的频道标识符“2”。
图20(b)表示改写频道标识符的状态。并且,在图20(a)的状态下,若用户按下下游标1502,则再生部1602b参照图19的频道信息,为了将再生切换到具有比表中现在正在被再生中的频道大一个的标识符的频道的频道名称为“TV Japan”的频道,将频道名称为“TV Japan”的标识符“4”传递到服务管理器1604。并且,改写为在第二存储器1403中所记忆的频道标识符“4”。
图20(c)表示改写频道标识符的状态。频道标识符由于被记忆在第二存储器1403中,因此即使在数据输出装置1301的电源被切断时也仍被保存。
而且,在数据输出装置1301的电源被接通时,再生部1602b被启动,并读出第二存储器1403中所记忆的频道标识符。并且,该频道标识符被传递到服务管理器。据此,数据输出装置1301在电源被接通时,可以开始上次启动时再生的最后的频道的再生。
Java VM1603是依次解析并执行以Java(TM)语言记述的程序的Java虚拟机器。将以Java语言记述的程序编译成,被称为字节代码的、不依赖于硬件的中间代码。Java虚拟机器,是执行该字节代码的翻译机。
并且,一部分Java虚拟机器也可将字节代码翻译成CPU1412可理解的执行形式后,传递给CPU1412并执行。
Java VM1603将被执行的Java程序指定给内核程序1601a并启动Java程序。在本实施例中,内核程序1601a指定服务管理器1604作为执行的Java程序。
Java语言的细节,在书籍《Java Language Specification(ISBN0-201-63451-1)》等众多书籍中均有解说。在此,省略其详细说明。
并且,Java VM自身的详细动作等在《Java Virtual MachineSpecification(ISBN 0-201-63451-X)》等众多书籍有解说。《90%》在此,省略其详细说明。
服务管理器1604是Java语言所描述的Java程序,由JavaVM1603依次执行。服务管理器1604,通过JNI(Java NativeInterface),调用没有以Java语言描述的其它的子程序,同时也有被调用的可能性。
有关JNI,在《Java Native Interface》等的众多书籍中有解说。在此,省略其详细说明。
首先,对接收数字广播,并再生接收的多媒体数据的情况进行说明。
服务管理器1604通过JNI,从再生部1602b接受频道的标识符。
服务管理器1604首先将频道的标识符传递给处于Java库1605中的Tuner1605c,委托调谐。Tuner1605c参照在第二存储器1403所记忆的频道信息,获得调谐信息。
现在,若服务管理器1604将频道的标识符“2”传递给Tuner1605c,则Tuner1605c参照图19的行1912,获得对应的调谐信息“156MHz,”。Tuner1605c通过OS1601的程序库1601b的调谐器1601b1,将调谐信息传递给接收部1404。
接收部1404按照被分配来的调谐信息,对从广播电台发送来的信号进行解调,并传递给多路复用分离部1405。
其次,服务管理器1604向位于Java库1605中的CA(ConditionalAccess)1605d委托解扰。CA1605d通过OS1601的程序库1601b的限制解除1601b2,将解码时所需要的信息传递给解扰部1406。
解扰部1406基于传递来的信息,对接收部1404提供的信号进行解码,并传递给TS解码器1407。
其次,服务管理器1604向位于Java库1605中的JMF(JavaMedia Framework)1605a提供频道的标识符,委托再生图像、声音。
首先,JMF1605a从PAT(Program Association Table)、PMT获得用于确定应再生的图像与声音的包ID。PAT和PMT是按MPEG2标准规定的、表现MPEG2传输流内的节目构成的表格,被埋入MPEG2传输流中所包含的数据包的有效负载中,与声音或图像一起发送。细节请参照标准书。在此仅说明梗概。
PAT是Program Association Table的省略,被存储在包ID“0”的包内并被发送。JMF1605a为了获得PAT,通过OS1601的程序库1601b,将包ID“0”指定给多路复用分离部1405。多路复用分离部1405利用包ID“0”来执行过滤,通过传递给CPU1412,从而JMF1605a收集PAT的包。
图21是对收集的PAT的信息进行模式表示的一个例子。
列2101是程序号。列2102是包ID。列2102的包ID用于获得PMT。
行2111-1213,是与频道的程序号对应的包ID的组。在此定义三个频道。行2111定义程序号“101”与包ID“501”的组。
现在,若将提供给JMF1605a的频道的标识符设为“2”,则JMF1605a参照图21的行2112,获得对应的程序号“102”,接着,参照图21的PAT行2112,获得对应于程序号“102”的包ID“502”。
PMT是Program Map Table的省略,被存储在PAT所规定的包ID的包内,并被发送。JMF1605a为了获得PMT,通过OS1601的程序库1601b,将包ID指定给多路复用分离部1405。在此指定的包ID为“502”。多路复用分离部1405利用包ID“502”来执行过滤,通过传递给CPU1412,从而JMF1605a收集PMT的包。
图22是对收集的PMT的信息进行模式表示的一个例子。
列2201是流类别。列2202是包ID。在列2202所指定的包ID的包中,流类别所指定的信息被存储在有效负载中,并被发送。列2203是补充信息。
行2211-2214是被称为基本流的包ID和被发送的信息的类别的组。
行2211是流类别“声音”和包ID“5011”的组,表示包ID“5011”的有效负载中存储有声音。JMF1605a从PMT获得再生的影像和声音的包ID。参照图22,JMF1605a从行2211获得声音的包ID“5011”,从行2212获得影像的包ID“5012”。
之后,JMF1605a将获得的声音的包ID和影像的包ID传递到OS1601的程序库1601b的AV再生1601b3。AV再生1601b3将接受的声音的包ID和影像的包ID交给TS解码器1407。TS解码器1407用提供来的包ID来执行过滤。
在此,将包ID“5011”的包传递给声音输出部1409,将包ID“5012”的包传递给影像输出部1408。
声音输出部1409对被提供来的包进行适当地转换(例如数字-模拟转换)并输出。
影像输出部1408对被提供来的包进行适当地转换(例如数字-模拟转换)并输出。
最后,服务管理器1604向存在Java库1605中的AM1605b提供频道的标识符,委托数据广播的再生。
在此,数据广播的再生是指,抽出MPEG2传输流中所包含的Java程序,并使JavaVM1603执行。在MPEG2传输流中埋入Java程序的方法利用MPEG标准书ISO/IEC13818-6中所记载的DSMCC方式。在此省略DSMCC的详细的说明。DSMCC方式中所规定的方法是:在MPEG2传输流的包中,对由计算机所使用的目录或文件构成的文件***进行编码。
并且,执行的Java程序的信息以被称为AIT的形式被埋入到MPEG2传输流的包中,并被发送。AIT在DVB-MHP标准(正式为,ETSI TS 101 812 DVB-MHP规格V1.0.2)的10章被定义,是Application Information Table的省略。
AM1605b首先为了获得AIT,与JMF1605a一样,获得PAT、PMT,并获得存储AIT的包的包ID。
若现在提供的频道标识符为“2”,发送图21的PAT、图22的PMT,则按与JMF1605a一样的顺序,获得图22的PMT。AM1605b从PMT中抽出,流种类为“数据”、且具有补充信息为“AIT”的基本流的包ID。参照图22,相当于行1013的基本流,获得包ID“5013”。
AM1605b通过OS1601的程序库1601b,将AIT的包ID提供给多路复用分离部1405。多路复用分离部1405用提供来的包ID来执行过滤,并传递给CPU1412。结果,AM1605b可收集AIT的包。
图23是对收集的AIT的信息进行模式上表示的一个例子。
列2301是Java程序的标识符。
列2302是Java程序的控制信息。在控制信息中有“autostart”“present”“kill”等,“autostart”意味着数据输出装置101马上自动执行该程序,“present”意味着不自动执行,“kill”意味着停止程序。
列2303是按DSMCC方式抽出包含Java程序的包ID的DSMCC标识符。
列2304是Java程序的程序名称。
行2311和2312是Java程序的信息的组。由行2311定义的Java程序是,标识符“301”、控制信息“autostart”、DSMCC标识符“1”,程序名称“a/TopXlet”的组。由行2312定义的Java程序是,标识符“302”、控制信息“autostart”、DSMCC标识符“1”,程序名称「b/GameXlet」的组。
在此两个Java程序具有相同的DSMCC标识符,这表示在按一个DSMCC方式编码的文件***内包含两个Java程序。在此,对Java程序仅规定了四个信息,但实际上定义了更多的信息。细节请参照DVB-MHP标准。
AM1605b从AIT中找出“autostart”的Java程序,抽出对应的DSMCC标识符以及Java程序名称。参照图23,AM1605b抽出行2311的Java程序,获得DSMCC标识符“1”以及Java程序名称“a/TopXlet”。
接着,AM1605b使用从AIT获得的DSMCC标识符,从PMT获得按DSMCC方式存储的Java程序的包的包ID。具体而言,获得PMT中流种类为“数据”、补充信息的DSMCC识别符吻合的基本流的数据包ID。
若现在DSMCC标识符为“1”,PMT为图22所示,则与行2214的基本流相符,取出包ID“5014”。
AM1605b通过OS1601的程序库1601b,将按DSMCC方式埋入数据的包的包ID指定给多路复用分离部1405。
在此,提供包ID“5014”。多路复用分离部1405用提供的包ID来执行过滤,并传递给CPU1412。结果,AM1605b可收集必需的数据包。AM1605b根据收集到的数据包,按照DSMCC方式,恢复文件***,并保存到第一存储器1402或第二存储器1403中。将取出文件***等数据,并保存到第一存储器1402或第二存储器1403中,以后称为下载。
图24是下载的文件***的一个例子。
图中,圆圈表示目录,方框表示文件,2401为根目录,2402为目录“a”,2403为目录“b”,2404为文件“TopXlet.class”,2405为文件“GameXlet.class”。
在此,以从MPEG2传输流中下载文件***为例进行描述,但在OCAP规格中也规定了利用IP网络来下载等。并且,还规定的这样的方法,即不是利用AIT,而是利用被称为XAIT的信息来确定文件***的存在位置,并下载文件***。
之后,AM1605b从下载到第一存储器1402或第二存储器1403的文件***中,将执行的Java程序传递到JavaVM1603。若现在设执行的Java程序名称为“a/TopXlet”,则Java程序名称的最后附加了“.class”的文件名称“a/TopXlet.class”为应该执行的文件。「/」是目录和文件名的分隔符,参照图24,文件2404是应该执行的Java程序。之后,AM1605b将文件2404传递给JavaVM1603。
JavaVM1603,执行被传递来的Java程序。
服务管理器1604若接收到其它频道的标识符,则通过Java库1605中包含的各个程序库,来停止通过相同的Java库1605中包含的各个程序库所再生的图像、声音和Java程序的执行,并根据新接收到的频道的标识符,进行图像、声音的再生以及Java程序的执行。
并且,服务管理器1604还具有不仅从再生部1602b而且从JavaVM1603上执行的Java程序中接受频道的标识符的功能。
具体而言,提供了用于接受频道的标识符的Java语言的类别以及方法。服务管理器1604若接收到频道的标识符,则通过Java库1605中包含的各个程序库,来停止通过相同的Java库1605中包含的各个程序库所再生的图像、声音和Java程序的执行,并根据新接收到的频道的标识符,进行图像、声音的再生以及Java程序的执行。
以下,对在数据输出装置1301接收数字广播,并将其中的多媒体数据存储到第二存储器1403的处理进行说明。
图25是数据输出装置1301将多媒体数据存储到第二存储器1403时的一个示例图。
数据输出装置1301将多媒体数据和该多媒体数据的属性信息、属性信息表、URI表、以及再次开始位置信息表记忆到第二存储器1403。如图25所示,第二存储器中所记忆的信息包括:多媒体数据2501、多媒体数据2502、多媒体数据的属性信息2511、多媒体数据的属性信息2512、属性信息表2521、URI表2531、以及再次开始位置信息表2532。
多媒体数据2501和多媒体数据2502是指以MPEG传输流的形式被编码的多媒体数据。属性信息2511和属性信息2512是指各个多媒体数据的标题等附加信息。在本实施例中,属性信息2511表示多媒体数据2501的属性信息,属性信息2512表示多媒体数据2502的属性信息。
图26是本发明的实施例2中的属性信息的一个示例图。在本实施例中,属性信息是以XML(Extensible MarkupLanguage)定义的文本来表示的。
在图26中,以ContentID要素表示该内容的标识符,以FileName要素表示该多媒体数据的文件名,以ChannelID元素表示图18的列1801所示出的该节目在被广播时的频道标识符,以ProgramNo要素表示检索图19的列1904所示出的PMT的程序号,以Title要素表示图18的列1802所示出的节目名称,以Gunre要素表示图18的列1806所示出的节目的类别,以Date要素表示该节目被广播的日期和时间,以RecordDate要素表示该节目被录制的日期和时间,以PlaybackTime要素表示该多媒体数据被再生或被输入到网络104的次数,以LastPlaybackDate要素表示该多媒体数据最后被再生或被输入到网络的日期和时间。
并且,属性信息不仅限于这样的XML构成,也可以以其它的形式来记录,例如可以以二进制数据来记录。属性信息表是内容的标识符和记录以该标识符表示的内容的属性信息的文件的对应表。图27是其中的一个例子。
图27是本发明的实施例2中的属性信息表的一个示例图。
在图27,列2701表示内容的标识符,列2702表示属性信息的文件名。行2711-2713是内容的标识符和所对应的属性信息的文件名的组。可以从行2711读取标识符1的内容属性信息中所记录的文件0001.attr。关于URI表2531和再次开始位置信息表待后述。
以下将对蓄积处理进行说明。首先,到解扰为止的工作与上述的再生时的情况相同。其次,服务管理器1604委托Java库1605中的Rec1605j蓄积该多媒体数据。Rec1605j首先,与上述的JMF1605a以及AM1605b相同,获得PAT、RMT,并获得与蓄积的节目相关的影像数据、声音数据、以及各个频段数据的包ID。若现在提供的频道标识符为“2”,发送图21的PAT、图22的PMT,则按与JMF1605a一样的顺序,获得图22的PMT。蓄积的数据是图22的PMT中所记载的所有的数据。
Rec1605j通过OS1601程序库1601b将这些包ID提供到TS解码器1407,并输出到TS多路复用器1410。TS解码器1407用提供的包ID来执行过滤,并传递给TS多路复用器1410。
并且,关于频段数据的构成,可以是分别带有版本号,TS解码器1407对各个版本号的相同种类的数据仅输出一次,之后再进行滤波处理。
并且,Rec1605j通过OS1601的程序库1601b,向TS多路复用器1410提供被送来的数据有几种,并由TS解码器1407所传递的数据来构成MPEG2传输流。TS多路复用器1410将构成的MPEG传输流传递到CPU1412。
并且,Rec1605j委托Java库1605中的IO1605g,CPU1412将从TS多路复用接受的MPEG传输流写入到第二存储器。并且,Rec1605j委托服务管理器1604,接受该节目的频道标识符,并委托IO1605g,读取第二存储器1403中所记忆的图18所示的节目信息中的、蓄积的多媒体数据所对应的节目信息。
并且,向该蓄积的多媒体数据发行标识符,根据获得的节目信息和蓄积多媒体数据的文件名来制作属性信息,并委托IO1603将该属性信息写入到第二存储器1403。而且,Rec1605j委托IO1605g读出属性信息表,更新内容,并通过委托IO1605g写入到第二存储器1403,从而更新属性信息表。
以下,对从网络部1411输出接收的数字广播的多媒体数据的情况的处理进行说明。
首先,Java库1605中的网络库1605e接受来自网络1304所连接的终端的请求,并将被请求的频道的标识符提供到服务管理器1604。在服务管理器1604将接受的频道的标识符提供到Tuner1605c并委托调谐,而且委托CA1605d解扰。接着,服务管理器1604将处理返回到网络库1605e。
在网络库1605e与上述的Rec1605j相同,控制TS解码器1407、TS多路复用器1410,并由该节目的影像数据、声音数据、频段数据作成MPEG传输流。
并且,网络库1605e将接收方的地址提供给OS1601的程序库1601b的NET1601b4。接着,网络库1605将从TS多路复用器1410接受的MPEG2传输流,转换为与发送的应用程序层的协议相应的形式,并依次传递到NET1601b4。
应用程序层的协议例如是HTTP或RTP。据此,NET1601b4参照接收方地址,将传递来的地址转换为IP网络的包,并传递到网络部1411。在网络部1411将被传递来的数据转换为与连接的网络的物理媒体相应的信号,并输出。
以下,对再生第二存储器1403中所蓄积的多媒体数据的情况的处理进行说明。
服务管理器1604在接受内容的标识符的情况下,委托Java库1605中的IO1605g,从第二存储器1403中读出属性信息表2521,并检索记录该标识符的内容的属性信息的文件。在图27的属性信息表中,在内容的标识符为“1”时,该文件为0001.attr。
接着,服务管理器1604委托IO1605g,从第二存储器1403中读出记录该属性信息的文件。从读出的属性信息中,获得记录该内容的多媒体数据的文件名。在图26的属性信息的情况下,该文件名与0001.m2ts相对应。
接着,服务管理器1604委托IO1605g,从该多媒体数据的文件中读出MPEG传输流。IO1605g通过OS1601的程序库1601b读出数据,并传递到CPU1412。
服务管理器1604通过OS1601的程序库1601b,将读出的MPEG传输流传递到多路复用分离部1405。
接着,服务管理器1604委托Java库中的CA1605d,以使解扰部解扰数据并通过。
CA1605d通过OS1601的程序库1601b的限制解除1601b2,将信息提供给解扰部1406。据此,解扰部1406将从多路复用分离部1405传递来的数据,原封不动地传递给TS解码器1407。
之后,服务管理器1604从读出的属性信息中读出频道的标识符或程序号,并提供到Java库1605中的JMF1605a,并委托再生。以下,通过进行与从上述的广播中接收的内容相同的情况的处理,从而再生影像数据和声音数据。
并且,服务管理器1604将频道的标识符或程序号提供给Java库中的AM1605b,并委托数据广播的再生。以下,通过进行与从上述的广播中接收的内容相同的情况的处理,从而进行数据广播的再生。
Java库1605是存储在第二存储器1403中的多个Java库的集合。在本实施例中,Java库1605包括:JMF1605a、AM1605b、Tuner1605c、CA1605d、网络库1605e、再生Lib1605f、IO1605g、AWT1605h、SI1605i、以及Rec1605j等。
由于JMF1605a、AM1605b、Tuner1605c、CA1605d、Rec405j的功能已经说明了,在此省略说明。
再生Lib1605f提供用于将第二存储器1403所记忆的、现在正在再生的频道的标识符传递给Java程序的Java语言的类以及方法(以下记作Java API)。通过利用该Java API,从而Java程序可以知道现在正在再生的频道。
IO1605g将以下的Java API提供到Java程序,所述Java API是指用于使Java程序将数据写入到第二存储器1403的Java API,和用于从第二存储器1403读入写入的数据的Java API。通过利用该API,从而Java程序可以将任意的数据保存到第二存储器1403。由于被保存的数据即使在数据输出装置1301的电源切断时也不会消失,因此在数据输出装置1301的电源被接通后,可以在此读入所述数据。
AWT1605h提供Java API,该Java API用于使Java程序进行描述或用于接受来自输入部1401的键输入通知。具体而言,相当于“The  Java  class Libraries  Second  Edition,Volume2”(ISBN0-201-31003-1)所规定的java.awt包、java.awt.event包、以及其它的java.awt的辅助包。在此省略详细说明。
SI1605i提供Java API,该Java API用于使Java程序获得频道信息或电子节目表信息。具体而言,存在有Java TV规格。并且,由于从广播纯粹的二进制数据的MPEG2传输流获得的MPEG频段滤波器API已在OCAP规格中定义,因此被发送来的独自的电子节目数据可以由Java应用程序理解并处理。
网络库1605e通过OS1601的程序库1601b的NET1601b4,与连接在网络1304上的终端1302以及终端1303通信。在此,通信指的是:内容一览或EPG的发送、来自终端的多媒体数据的发送、发送中断、再次开始发送、发送结束请求的接收、以及多媒体数据的发送。
图28是网络库1605e的内部构成的一个示例方框图。网络库1605e包括:控制部2801、信息接收部2802、数据输出部2803、属性管理部2804、以及数据接收部2805。并且,网络库1605e也可以具有与IP网络相关联的其它的功能。
控制部2801向下载下来的Java应用程序提供网络库1605e所实现的功能。即,控制部2801向Java应用程序提供Java API,并通过Java应用程序调用该API,从而可以实现利用网络的功能。
控制部2801Java API被调用的情况下,适当地利用信息通信部2802、数据输出部2803、属性管理部2804、数据接收部2805、其它的Java库1605以及OS1601的程序库1601b。
并且,控制部2801按照需要利用Java应用程序的回叫信号函数,向Java应用程序进行通知。
图29是网络库1605e的内部构成中所包含的控制部2801所提供的Java API的一个示例图。
图29(1)collectDevice()方法收集与网络1304连接的外部装置的信息,并作为信息返回NETDevice对象的阵列。失败时返回null。通过本方法可以获得网络1304上连接的设备的信息。
图30是网络库1605e所使用的NETDevice类的一个构成示例图。
在图30,addr表示该装置的网络地址,friendlyName表示该装置所具有的两各别名,dType表示该装置的类别,0表示可以接收数字广播的数据输出装置,1表示不具有数字广播接收不的数据输出装置,2表示终端。由于这样的信息获得是可以由UPnP DA所定义的方法进行的,因此省略详细说明。
图29(2)由于registerHandler()方法将处理器注册到***中,因此在成功的情况下返回true,在失败的情况下返回false,所述处理器被分配有变量,并安装有ServHandler接口。Java应用程序通过注册该处理器,从而可以从网络库1605e接受回叫信号。
图31是网络库1605e所使用的ServHandler接口的一个构成示例图。
在图31中,ServHandler接口的notifyChannelID()方法将请求从终端发送多媒体数据的频道的标识符,通知给Java应用程序。
Java应用程序将该标识符提供给服务管理器1604,并委托频道的调谐和解扰,通过在成功的情况下返回true,在失败的情况下返回false,从而返回对网络库1605e的控制。
并且,上述频道标识符的构成也可以是,网络库1605e直接将标识符传递给服务管理器1604,并委托调谐和解扰。
并且,notifyRecording()方法将频道的标识符通知给Java应用程序,并委托蓄积该数据,作为返回值接受蓄积的内容的标识符。Java应用程序将该频道标识符提供给服务管理器1604,并委托蓄积该多媒体数据,并接受内容的标识符。
服务管理器1604如以上所述,利用Rec1605j来蓄积该多媒体数据。并且,上述的频道标识符的构成可以是,网络库1605e直接将标识符传递到服务管理器1604,并委托蓄积。
图29(3)actMultimediaServer()方法从Java应用程序向网络库1605e委托多媒体数据服务器功能的启动以及动作,在处理正常结束的情况下返回true,在异常的情况下返回false。在本方法被调用时,网络库1605e的控制部2801按照需要,利用信息通信部2802、数据输出部2803、属性管理部2804、数据接收部2805、其它的Java库1605以及OS1601的程序库1601b,并通过向Java应用程序或服务管理器1604通知,从而可以作为提供多媒体数据的多媒体服务器来进行处理。关于详细情况待后述。
图29(4)doMultimediaServer()方法,由Java应用程序委托网络库1605e,以使网络库1605e作为针对以变量dev决定的RemoteDevice对象所表示的网络1304上连接的装置的多媒体服务器来工作,在处理正常结束的情况下返回true,异常的情况下返回false。
图30是RemoteDevice类的一个示例图。
在图30,RemoteDevice类作为NetDevice类的扩展类被定义。
构件变量s表示Socket对象,该Socket对象与由NetDevice类的构件变量来表示的装置通信。本方法被调用时,网络库1605e的控制部2801按照需要,利用信息通信部2802、数据输出部2803、属性管理部2804、数据接收部2805、其它的Java库1605以及OS1601的库1601b,并且通过向Java应用程序或服务管理器1604进行通知,从而作为向被提供装置提供多媒体数据的多媒体服务器来进行处理。详细待后述。
图29(5)stopMultimediaServer()方法从Java应用程序委托网络库1605e,以使由actMultimediaServer()方法或doMultimediaServer()方法启动的多媒体服务器结束。网络库1605e在本方法被调用的情况下,使正在启动的多媒体服务器的工作结束。
图29(6)sendContentList()方法将第二存储器1403所蓄积的多媒体数据的一览,发送到以变量dev决定的网络1304所连接的装置。由于该通信是以UPnPAV所定义的方法来实现的,因此省略详细说明。
在本方法被调用的情况下,网络库1605e利用IO1605g,读出属性信息表2521,并且从读出的属性信息表2521中顺序读出获得的各个内容的属性信息。并且,网络库1605e利用IO1605g读出URI表2531。
网络库1605e通过检索URI表2531,从而获得用于存取各个内容的URI,与属性一起,作成以UPnP AV决定的格式的内容一览。并且,通过OS1601的程序库1601b中的NET1601b4来控制网络部1411,并发送作成的内容一览。发送也可以利用后述的数据输出部的sendData()方法。
图32是本发明的实施例2中的URI表2531的一个构成示例图。
在图32中,列3201表示各个内容的标识符,列3201表示存取各个内容的URI。各行3211-3213表示内容的标识符和URI的组。例如,行3211表示,标识符1的内容的URI为rtsp://192.168.0.3/AVData/0001.m2ts。
图29(7)sendEPGData()方法将EPG信息发送到以变量dev决定的网络1304所连接的装置。该通信与sendContentList()方法同样,由于是UPnP AV所定义的方法所实现的,因此省略详细说明。
在本方法被调用时,网络库1605e利用IO1605g,读出第二存储器1403中所记忆的、图18所示的EPG信息,并转换为UPnP AV所定义的格式。并且,通过OS1601的程序库1601b中的NET1601b4来控制网络部1411,并发送转换后的EPG信息。
并且,URI被分配到各个频道,以与URI表2531相同的形式被蓄积到第二存储器1403,并通过读出该表从而可以获得。发送也可以利用后述的数据输出部的sendData()方法。并且,也可以是将第二存储器1403中记忆的、图18所示出的EPG信息的数据原封不动地发送。
图29(8)removePauseStatus()方法将以变量rInfo决定的再次开始位置信息从第二存储器1403中删除,在原本就不存在或删除成功的情况下返回true,在删除失败的情况下返回false。变量rInfo是ReopenContentInfo类的实例。
图33是网络库1605e所使用的ReopenContentInfo类的一个构成示例图。
在图33中,构件变量cid表示图26以及图27所示的被蓄积的内容的标识符;构件变量pid表示确定由本ReopenContentInfo对象表示的多媒体数据发送的中断的标识符;构件变量rp将再次开始多媒体数据的输出的数据位置,以该多媒体数据所写入的文件的开头开始的字节位置来表示;构件变量rterm表示在再次开始该多媒体数据的输出时的接收方的终端被指定的情况下,表示该终端的NETDevice对象。removePauseStatus()方法删除变量rInfo和内容标识符以及中断的标识符都一致的再次开始位置信息。再次开始位置信息如图25所示,作为再次开始位置信息表2532被记忆到第二存储器1403。
图34是本发明实施例2中的再次开始位置信息表2532的一个构成示例图。
在图34中,列3401表示内容的标识符,列3402表示数据输出中断的标识符,列3403表示再次开始多媒体数据的输出的数据位置,列3404表示再次开始该多媒体数据的输出时的接收方的终端。再次开始位置信息作为这些组被表示,相当于行3411-3413。
并且,在行3411的再次开始位置信息,由于再次开始数据输出的终端被指定,因此在列3404表示了终端,在行3412以及行3413的再次开始位置信息,由于再次开始数据输出时的终端没有被指定,因此列3404中不做任何示出。
并且,网络库1605e也可以被分配有中断的标识符。此时,本方法也可以删除与内容标识符一致的再次开始位置信息。
在本方法被调用时,网络库1605e首先利用IO1605g读出再次开始位置信息表2532。接着,检索再次开始位置信息表2532,检索列3401中所描述的内容标识符和列3402所示的中断的标识符与变量rInfo的标识符一致的行。
若找到该行,就从再次开始位置信息表2532中删除该行。接着,利用IO1605g将更新的再次开始位置信息表2532写入到第二存储器1403。并且,通过将该内容的标识符和再次开始位置信息表2532提供到后述的属性管理部的updateAttribute()方法并调用,从而更新该内容的属性,并返回该返回值,结束处理。
图29(9)setPauseStatus()方法通过IO1605g,将以变量rInfo决定的再次开始位置信息写入到第二存储器1403,在成功的情况下返回true,在失败的情况下返回false。
在本方法被调用时,网络库1605e向以变量rInfo决定的再次开始位置信息的中断发行标识符,并设定为rInfo的构件变量pid。接着,利用IO1605g读出再次开始位置信息表2532。将表示rInfo的内容的行追加到读出的再次开始位置信息表2532,并更新。接着,利用IO1605g,将更新的再次开始位置信息表2532写入到第二存储器1403。
接着,通过将该内容的标识符和再次开始位置信息表2532的细节提供到后述的属性管理部的updateAttribute()方法并调用,从而更新该内容的属性,并返回该返回值,结束处理。
图29(10)getPauseStatus()方法从第二存储器1403中读出再次开始位置信息表2532,并将其内容作为ReopenContentInfo对象的阵列来返回,在成功的情况下返回该阵列,失败的情况下返回null。
在本方法被调用时,网络库1605e首先利用IO1605g,从第二存储器1403读出再次开始位置信息表2532。接着,按照再次开始位置信息表2532的各个行,作成装入有其细节的ReopenContentInfo对象,并作成阵列。在作完包含所有的行的细节的阵列时,返回该阵列。并且,在再次开始位置信息表2532不存在或在处理过程中出现异常时返回null。并且,在再次开始位置信息表2532中没有所有的行的情况下,返回要素数为0的阵列。
图29(11)setServerStatus()方法从Java应用程序向网络库1605e设定是否支援被中断的数据的再次开始。在变量为0时,作为不支援被中断的数据的再次开始的多媒体服务来工作,在变量为非0时,作为支援被中断的数据的再次开始的多媒体服务器来工作。
信息接收部2802通过OS1601的程序库1601中的NET1601b4来控制网络部1411,在接受了来自被指定的网络1304所连接的外部装置的连接请求时,进行消息的接收。
信息接收部2802向控制部2801以及下载的Java应用程序提供Java API。
图35是网络库1605e的内部构成中所包含的信息接收部2802所提供的Java API的一个示例图。
图35(1)acceptConnection()方法,通过以变量s决定的Socket对象来等待外部装置,确立与具有连接请求的装置的连接,返回包括该装置的信息和与该装置通信的Socket对象的RemoteDevice对象,在成功的情况下返回该RemoteDevice对象,在失败的情况下返回null。
例如,从终端接受RTSP对话期间的连接请求时,可以从用于收发RTSP消息的Socket对象和具有该请求的终端的IP地址,生成RemoteDevice对象。
并且,本方法的构成也可以是,还给出NetDevice对象的阵列以作为变量,并仅对来自以该阵列的各要素所示的外部装置的连接请求做出答复。并且,本方法的构成也可以是,同样给出NetDevice对象的阵列以作为变量,在有来自该阵列的各要素所示的外部装置的连接请求的情况下,从与对应的NetDevice对象进行通信的Socket对象,生成RemoteDevice对象。
图35(2)receiveRequestMessage()方法,利用以变量dev决定的Socket对象,来接收来自以变量dev决定的外部装置的消息,并作为字节数据的阵列来返回,在成功的情况下返回消息的字节列,在失败的情况下返回null。
图35(3)receiveRequest()方法,利用以变量dev决定的Socket对象,来接收来自以变量dev决定的外部装置的RTSP的请求消息,并解释其中的内容,并作为RequestInfo对象返回,在成功的情况下返回表示该请求消息的RequestInfo对象,在失败的情况下返回null。
图36是网络库1605e所使用的RequestInfo类的一个构成示例图。在图36中,构件变量requestType表示请求的种类,0表示SETUP,1表示PLAY,2表示PAUSE,3表示TEARDOWN。
并且,构件变量seq是RTSP请求的Seq报头的值,表示序列号。构件变量session表示RTSP请求的Session报头的值,表示对话期间号。构件变量contentURI是表示被请求的内容的URI的字符串。构件变量range是作为RTSP请求的Range报头的值的字符串。构件变量extentHeader,是存储RTSP请求的扩展报头的String对象的阵列,一个扩展报头存储一个String对象。
数据输出部2803通过OS1601的程序库1601中的NET1601b4,来控制网络部1411,并将被指定的数据输出到被指定的网络1304所连接的外部装置。
数据输出部2803将Java API提供给控制部2801以及下载的Java应用程序。
图37是网络库1605e的内部构成所包含的数据输出部2803所提供的JavaAPI的一个示例图。
图37(1)sendData()方法,利用以变量dev决定的Socket对象,将以变量mes决定的数据发送给以变量dev决定的外部装置,在成功的情况下返回true,在失败的情况下返回false。
图37(2)sendMessage()方法,利用以变量dev决定的Socket对象,生成以变量res决定的RTSP消息,并发送给以变量dev决定的外部装置,在成功的情况下返回true,在失败的情况下返回false。变量res是ResponseInfo类的实例。
图38是网络库1605e所使用的ResponseInfo类的一个构成示例图。在图38中,构件变量responseCode表示应答代码,例如,在应答为200OK的应答的情况下,responseCode则为200。关于应答代码请参照RTSP的RFC。
构件变量seq是成为RTSP应答的Seq报头的值的序列号。构件变量session表示作为RTSP应答的Session报头的值的对话期间号。构件变量range是作为RTSP应答的Range报头的值的字符串。构件变量Headers是存储RTSP应答其它的报头的String对象的阵列,一个报头存储一个String对象。
图37(3)sendMultimediaData()方法,从以变量is决定的InputStream读出多媒体数据,并利用以变量dev所决定的Socket对象,将读出的多媒体数据发送到以变量dev所决定的外部装置,在成功的情况下返回true,在失败的情况下返回false。本方法进行从is到读出EOF的处理。变量dev是以RemoteDeviceUDP类的对象被决定的。
图30是RemoteDeviceUDP类的一个构成示例图。该类以NetDevice类的扩展类来定义。构件变量ds表示由NetDevice类的构件变量所表示的装置和以UDP基数通信的DatagramSocket对象。
图37(4)terminateTransfer()方法,使向以变量dev所决定的装置的多媒体数据的发送停止,直到停止为止返回发送的数据的字节数。
属性管理部2804对第二存储器1403中所记忆的内容的属性信息中的、表示数据输出中断的属性进行更新。
属性管理部2804将Java API提供给控制部2801以及下载的Java应用程序。
图39是网络库1605e的内部构成中所包含的信息接收部2802所提供的Java API的一个示例图。
图39(1)setAttributeValue(),以变量isPause所决定的值,来设定以变量cid所决定的标识符的内容的属性信息的“数据输出正处于中断”的值。即,变量isPause若是true,则将“数据输出正处于中断”这一属性提供给以变量cid所决定的标识符的内容的属性信息,在变量isPause是false的情况下,若在以变量cid所决定的标识符的内容的属性信息中存在“数据输出正处于中断”这一属性的情况下则删除。在成功的情况下返回true,在失败的情况下返回false。
在本方法被调用的情况下,网络库1605e利用IO1605g,读出属性信息表2521,并检索具有该内容的标识符的属性信息。接着,利用IO1605g,从描述该内容的属性信息的文件中读出属性信息。接着,删除并更新“数据输出正处于中断”这一属性,利用IO1605g,将更新的属性信息写入到第二存储器1403,返回true并结束处理。
图39(2)updateAttribute()方法,关于以变量cid所决定的标识符的内容,基于以变量rInfo所决定的再次开始位置信息表2532的内容,进行该内容的属性信息中所存在的“数据输出正处于中断”这一属性的更新,在成功的情况下返回true,在失败的情况下返回false。
在本方法被调用的情况下,网络库1605e在以变量rInfo所决定的再次开始位置信息表2532的内容中,调查是否有与以变量cid所决定的标识符的内容相关的信息。这是通过调查图34所示的再次开始位置信息表2532的列3401来进行的。
在再次开始位置信息表2532中存在有关该内容的信息的情况下,网络库1605e作为变量给出cid的值和true,并调用setAttributeValue()方法,更新属性信息。并且,在再次开始位置信息表2532中不存在有关该内容的信息的情况下,网络库1605e作为变量给出cid的值和false,并调用setAttributeValue()方法,更新属性信息。不论是在哪种情况,setAttributeValue()的返回值原封不动地被返回。
数据接收部2805通过OS1601的程序库1601b对数据输出装置1301的TS解码器1407和TS多路复用器1410进行控制,并由TS多路复用器1410将由TS解码器1407滤波的影像、声音、频段数据构成到MPEG2传输流,并读出。
数据接收部2805将Java API提供给控制部2801以及下载的Java应用程序。
图40是网络库1605e的内部构成中所包含的数据接收部2805所提供的Java API的一个示例图。
图40(1)openProgram()方法,控制TS解码器1407以及TS多路复用器1410,TS多路复用器1410读出构成的MPEG2传输流,并返回InputStream的对象。
并且,在失败时返回null。在本方法被调用的情况下,网络库1605e从以变量cid所指定的信道的标识符而得到的PAT、PMT中获得该信道所对应的影像数据、声音数据、频段数据的PID,并通过OS1601的程序库1601b提供到TS解码器1407并使其滤波,且该影像数据、声音数据、频段数据被传递到TS多路复用器1410。
此时,频段数据可以是每个版本号只输出一次。而且,网络库1605e通过OS1601的程序库1601b,以TS来控制TS多路复用器1710,由TS解码器1407传递的数据来构成MPEG2传输流,并传递到CPU1412。
在此,对控制部2801的actMultimediaServer()方法和doMultimediaServer()方法的处理进行详细说明。
首先,对actMultimediaServer()方法进行说明。在本方法被调用的情况下,网络库1605e首先调用collectDevice(),对网络上所连接的装置进行识别。并且,生成Socket对象,并等待UPnP DA以及UPnP AV所定义的通信。
上述这些动作生成其它的线程(thread)或处理并执行。据此,随时进行UPnP DA所规定的通信,并更新被连接的装置的一览。并且,从网络上连接的终端接受了UPnP AV所定义的内容一览获得请求时,调用sendContentList(),并按照UPnP AV的定义将内容一览发送给发行该请求的终端。
并且,同样,从网络上所连接的终端接受了EPG数据发送请求时,调用sendEPGData()方法,并按照UPnP AV的定义将EPG数据发送给发行该请求的终端。并且,生成Socket对象s,并将s作为变量,调用信息接收部2802的acceptConnection()方法,并等待来自网络1304所连接的终端1302以及终端1303的RTSP对话期间的连接请求。acceptConnetion()方法接受连接请求,在返回RemoteDevice对象时,将该RemoteDevice对象作为变量,通过调用doMultimediaServer()方法,从而可以作为针对具有连接请求的终端的多媒体服务器来执行功能。
并且,本方法的构成也可以是,在方法被调用时,重新生成线程或处理,并在其上工作。并且,也可以是,在由acceptConnection()方法接受了连接请求时,重新生成线程或处理,之后再调用doMultimediaServer()方法。
以下,对doMultimediaServer()方法的工作进行说明。再本方法被调用时,网络库1605e调用信息接收部2802的receiveRequest()方法,接收RTSP请求消息并解释。并且,按照请求的内容进行处理,并作成RTSP应答消息,调用信息接收部2802的sendMessage()方法,并发送给终端。以下,对与RTSP请求相对应的处理分别进行说明。
首先,RTSP请求为SETUP的情况下,利用Java库1605中的IO1605g,读出URI表2531,并检索该请求中所包含的URI所对应的内容。该内容为被蓄积在第二存储器1403中的内容时,利用IO1605g,并生成读出该内容的文件的InputStream对象。并且,在该请求表示正处于广播中的频道的情况下,调用安装有以registarHandler()方法而被注册的ServHandler的处理器的notifyChannelID()方法,并提供频道的标识符,委托调谐。
并且,调用数据接收部2805的openProgram()方法,并作成读出该内容的InputStream。无论哪种情况,若得到InputStream,则作成表示RTSP应答消息的ResponseInfo对象,在构件变量responseCode中设定200,在构件变量seq中设定与RTSP请求相同的值。
并且,发行该RTSP对话期间的对话期间号,并设定到构件变量session。并且,作成描述对多媒体数据进行通信的RTP的端口号的报头,并设定为构件变量headers。并且,调用数据输出部2803的sendMessage()方法,并将应答消息发送到终端。而且,根据接收的RTSP请求的报头的Transport的值,获得终端在数据发送时所使用的端口号,并且数据输出装置1301发行发送以该SETUP设定的内容的RTP的端口号。根据这些端口号和本方法的变量的RemoteDevice对象,首先生成RTP通信中所使用的DatagramSocket对象。并且,根据生成的DatagramSocket对象和变量的RemoteDevice对象,来作成RemoteDeviceUDP对象。若得到了InputStream,则作成设定对应的错误代码的ResponseInfo对象,调用数据输出部2803的sendMessage方法()并发送给终端。
之后,在RTSP请求针对SETUP完毕的URI为PLAY的情况下,若这是针对广播中的频道时,首先生成设定200OK的应答消息的ResponseInfo对象,并调用数据输出部2803的sendMessage()方法,并发送到终端。接着,将以上所获得的InputStream对象和在上述所生成的RTP通信使用的RemoteDevice对象作为变量,调用数据输出部2803的sendMultimediaData()方法,并使数据发送开始。
并且,若PLAY是针对第二存储器1403中所蓄积的内容的情况下,调查receiveRequest()方法所返回的RequestInfo对象的构件变量extentHeader,并检索是否存在X-Restart。在没有X-Restart的情况下,或即使有而值不是“Yes”的情况下,使用Seek功能来控制在SETUP时所获得的InputStream,以便接下来不读出构件变量range的值所对应的数据。并对没有读出而跳过的数据的字节数进行记忆。
并且,生成设定了200OK的应答消息的ResponseInfo对象,并调用数据输出部2803的sendMessage()方法并发送给终端。接着,InputStream对象和在SETUP时所生成的RTP通信使用的RemoteDevice对象作为变量,调用数据输出部2803的sendMultimediaData()方法,并使数据发送开始。
并且,在存在X-Restart,且其值为“Yes”的情况下,网络库1605e调用getPauseStatus()方法,并读出再次开始位置信息表2532。检索获得的ReopenContentInfo对象阵列,并检索该内容的再次开始位置信息。在没有该内容的再次开始位置信息的情况下,进行与上述的没有X-Restart的情况同样的处理。
若存在该内容的再次开始位置信息,则读取其中的ReopenContentInfo对象的构件变量rp的值,使用Seek功能来控制在SETUP时获得的InputStream,以便不读出以该值表示的字节数的数据。并对没有读出而跳过的数据的字节数进行记忆。
并且,生成设定了200OK的应答消息的ResponseInfo对象,并调用数据输出部2803的sendMessage()方法并发送给终端。接着,InputStream对象和在SETUP时所生成的RTP通信使用的RemoteDevice对象作为变量,调用数据输出部2803的sendMultimediaData()方法,并使数据发送开始。
并且,调用removePauseStatus()方法,并从再次开始位置信息表2532中删除有关再次开始的数据输出的再次开始位置信息,并且更新内容的属性。并且,所述的删除也可以按照来自用户的指示来进行。
并且,也可以是在通过网络库1605e的处理而蓄积了内容的情况下,再次开始后述的正广播中的内容,并在全部发送后,从第二存储器1403中删除该内容。并且,所述的多媒体数据删除也可以按照来自用户的指示来进行。并且,也可以是,X-Restart的值为数据输出中断的标识符,根据该内容的标识符和数据输出中断的标识符,检索再次开始位置信息表25332。并且,对于来自在再次开始位置信息上设定的再次开始时的接收方终端的再次开始请求,再次开始数据输出,在有来自除此以外的终端的再次开始请求的情况下,不进行数据发送,或者进行从以开头或Range报头所指定的位置开始的数据发送。
以下,对RTSP请求对于数据发送为PAUSE的情况进行说明。首先,对于第二存储器1403中蓄积的内容的发送为PAUSE的情况,网络库1605e调用数据输出部2803的terminateTransfer()方法,并使数据发送停止,获得发送完毕的数据数。之后,通过计算预先记忆的、在发送前没有调用而跳过的数据数和发送完毕的数据数的和,从而求出再次开始时的开始点。
接着,发行用于识别该中断的标识符,根据上述的再次开始的开始点和该内容的标识符,来生成ReopenContentInfo对象。并且,调用setPauseStatus()方法,在将该再次开始位置信息追加到再次开始位置表2532的同时,更新该内容的属性信息。并且,生成设定了200OK的应答消息的ResponseInfo对象,并调用数据输出部2803的sendMessage()方法并发送给终端。
并且,对于正广播中的频道为PAUSE的情况,网络库1605e首先调用数据输出部2803的terminateTransfer()方法,并使数据发送停止。接着,调用安装了以registarHandler()方法注册的ServHandler的处理器的notifyRecording()方法,并提供频道的标识符,委托蓄积该内容,接受内容的标识符。
接着,发行用于识别该中断的标识符,根据接受的内容的标识符,来生成ReopenContentInfo对象。并且,由于再次开始位置是文件的开头,因此构件变量rp被设定为0。
并且,调用setPauseStatus()方法,在将该再次开始位置信息追加到再次开始位置表2532的同时,更新该内容的属性信息。并且,生成设定了200OK的应答消息的ResponseInfo对象,并调用数据输出部2803的sendMessage()方法并发送给终端。
并且,在本实施例也可以是这样的构成,即虽然是利用ServHandler的notifyHanlder()方法,来委托Java应用程序蓄积的,不过,网络库1605e也可以利用IO1605g,向第二存储器1403写入,并委托服务管理器1604来作成该内容的标识符和属性信息。并且,PAUSE请求中包含X-Keep-Pause-Status报头,仅在其值为“Yes”的情况下,才作成上述这样的再次开始位置信息。并且,在PAUSE请求作为扩展报头,输出被再次开始时的接收方终端被指定,并设定到RestartContentInfo对象的构件变量rterm。
之后,在RTSP请求为TEARDOWN的情况下,若多媒体数据正被发送,则调用数据输出部2803的terminateTransfer()方法,并使数据发送停止。并且,结束(close)读出在SETUP时获得的多媒体数据的InputStream对象。并且,生成设定了200OK的应答消息的ResponseInfo对象,并调用数据输出部2803的sendMessage()方法并发送给终端。并且,返回true,结束处理。
并且,在接受了上述以外的RTSP请求或不正当的请求的情况下,按照请求的内容生成设定了错误应答消息的ResponseInfo对象,并调用数据输出部2803的sendMessage()方法并发送给终端。
以下,对终端1302以及终端1303进行说明。
图41是本发明的实施例2中的终端1302以及终端1303的一个构成示例方框图。终端1302以及终端1303分别包括:输入部4101、第一存储器4102、第二存储器4103、多路复用分离部4104、TS解码器4105、影像输出部4106、声音输出部4107、网络部4108、以及CPU4109。
输入部4101、第一存储器4102、第二存储器4103与上述的实施例中的数据输出装置1301的输入部1401、第一存储器1402、第二存储器1403相同。并且,终端1302以及终端1303将从数据输出装置1301接收的内容一览或EPG数据等多媒体数据的标识符、标题、广播日期时间、广播频道等节目信息蓄积到第二存储器4103。
多路复用分离部4104从CPU4109接受MPEG传输流,抽出CPU4109所指定的信息,并传递到CPU4109。并且MPEG传输流被原封不动地传递到TS解码器4105。
TS解码器4105从CPU4109接受声音数据、影像数据的标识符。并且,从由多路复用分离部4104接受的流中抽出接受的声音数据、影像数据的标识符所对应的数据。将抽出的影像数据传递到影像输出部4106,将抽出的声音数据传递到声音输出部4107。
影像输出部4106、声音输出部4107分别与上述的本实施中的数据输出装置1301的影像输出部1408、声音输出部1409相同。
网络部1411具有网络接口,将从CPU4109接受的数据转换为与网络接口所连接的网络上的物理媒体相对应的信号,并输出。并且,从网络接口接收信号,转换为IP网络所规定的包,并传送给CPU4109。
CPU4109通过执行第二存储器4103所记忆的程序,从而控制多路复用分离部4104、TS解码器4105、以及网络部4109。
图42是本发明的实施例2所涉及的终端1302以及终端1303所分别保持的并执行的程序的一个构成示例图。在该图中示出了第二存储器4103中所记忆的CPU4109所执行的程序的一个构成例子。
程序4200由多个子程序构成,具体而言包括:OS4201,JavaVM4202、服务管理器4203、以及Java库4204。
OS4201是若接通终端1302和1303的电源,则CPU4109启动的子程序。OS是操作***的简称,Linux等是其中一个例子。OS4201是由并行执行其它子程序的内核程序4201a和程序库4201b构成的公知技术的总称,省略其详细说明。
在本实施例中,OS4201的内核程序4201a,将JavaVM4203作为子程序来执行。并且,程序库4201b向这些子程序提供控制终端1302和终端1303所保持的构成要素用的多种功能。
在本实施例中,作为一个例子,程序库4201b在功能上包括限制解除4201b1、AV再生4202b2、以及NET4201b3。
限制解除4202b1从其它的子程序或Java库4204的CA4204c中接受信息,并解密从网络接收的加密数据,使AV再生4201b2有效,并允许再生从网络接收的多媒体数据。
AV再生4202b2从其它的子程序或Java库4204的JMF4204a接受声音的包ID和影像的包ID。将接受的声音的包ID和影像的包ID交给TS解码器4105。结果是,TS解码器4105根据被分配来的包ID进行滤波,从而实现影像和声音的再生。
NET4201b3将从其它的子程序或Java库4204的网络库4204d接受的数据,制作成以IP网络规定的应用层以下的协议的包。
应用层以下的协议是指,例如TCP包、UDP包、IP包等。通过将这些包传递到网络部4108,从而通过网络1304向其它的设备发送消息和数据。
并且,在通过网络1304从其它的设备接收消息时,转换为应用层的协议的包,并传送给其它的子程序或Java库4204的网络库4204d。应用层的协议例如是HTTP、RTSP或RTP。
JavaVM4202与上述的本实施例中的数据输出装置1301的JavaVM1603相同。
服务管理器4203除以下几点以外,与上述的本实施例中的数据输出装置1301的服务管理器1604相同。
服务管理器1404通过EPG1602的再生部1602b接受信道标识符,并将该标识符传递到Tuner1605e并调谐,并且委托CA1605d进行解扰,将信道的标识符交给JMF1605a,并委托再生影像或声音,服务管理器4203从Java库4204中的List4204中接受内容的标识符,并将内容的标识符以及蓄积了该内容的标识符的装置等信息传递给网络库4204d,从该装置接收流,接着,通过将内容的标识符交给Java库4204中的JMF4204a,来委托再生影像或声音。关于List4204i待后述。
服务管理器4203将内容的标识符和数据输出装置1301的IP地址等信息以及用于存取该内容的URI等信息交给Java库4204中的网络库4204d,并委托向数据输出装置1301的多媒体数据的发送请求的发行以及该多媒体数据的接收,并且,委托网络库4204d接收从数据输出装置1301发送来的多媒体数据。在网络库4204d接受了委托时,与数据输出装置1301连接,并发行多媒体数据的发送请求。并且,网络库4204d将从数据输出装置1301发送来的数据传递给CPU4109。据此,可以将接收的多媒体数据传递到多路复用分离部4104,并可以进行该多媒体数据的再生。
Java库4204是存储在第二存储器4103中的多个Java库的集合。在本实施例中,Java库4204包括:JMF4204a、AM4204b、CA4204c、网络库4204d、再生Lib4204e、以及List4204i。
JMF4204a、AM4204b、再生Lib4204e、IO4204f、AWT4204g、以及SI4204h,分别与上述实施例中的数据输出装置1301的Java库1605中的JMF1605a、AM1605b、再生Lib1605f、IO1605g、AWT1605h、以及SI1605i相同。
CA4204c管理经由网络1304被发送来的多媒体数据的权利处理,该权利处理是指,该多媒体数据的复制控制以及收费等。复制控制参照被发送来的传输流的频段信息中所包含的复制控制信息,必要时进行改写。并且,收费等是通过网络库4204d,与数据输出装置1301进行通信而实现的。
List4204i表示输出输出装置1301中的EPG或数据输出装置1301所蓄积的多媒体数据的内容的一览,通过输入部4101所接受的用户的操作,从一览中选择一个多媒体内容,并委托服务管理器4203再生。此时,数据输出装置1301的信息也被传递给服务管理器4203。并且,数据输出装置1301中的EPG以及数据输出装置中所蓄积的内容的一览可以通过网络库4204获得。这些信息由于是通过UPnP PAV所定义的方法来实现的,因此在此省略详细说明。
网络库4204通过OS4201b的NET4201b3,与连接在网络1304上的数据输出装置1301通信。与数据输出装置1301的通信是指,多媒体数据的一览的收发,以及多媒体数据的发送请求的发行和多媒体数据的接收。
图43是网络库4204d的内部构成的一个示例方框图。
网络库4204d包括:控制部4301、信息发送部4302、信息接收部4303、判断部4304、以及数据接收部4305。并且,网络库4205d也可以具有与IP网络相关联的其它的功能。
控制部4301向下载下来的Java应用程序提供网络库4204d所实现的功能。即,控制部4301向下载下来的Java应用程序提供JavaAPI,并通过Java应用程序呼出该API,从而可以实现利用网络的功能。
控制部4301在Java API被调用时,适当地利用信息发送部4302、信息接收部4303、判断部4304、数据接收部4305、其它的Java库4204以及OS4201的程序库4201b,并进行处理。
图44是网络库4204d的内部构成中所包含的控制部4301所提供的JavaAPI的一个示例图。
图44(1)collectNetDevice()方法,收集网络1304所连接的外部装置的信息,作为外部装置的信息返回NetDevice对象的阵列,失败时返回null。根据本方法,可以得到网络1304所连接的设备的信息。NetDevice类与图30所示相同。由于这些方法的处理是通过UPnPPAV所定义的方法来实现的,因此在此省略详细说明。图44(2)getMultimediaData()方法,从以变量offset决定的时间位置接收以变量cont所决定的多媒体数据,并输出到以变量os所决定的OutputStream对象。
变量os的作用是将接收的多媒体数据传递到CPU4109。变量offset以秒为单位提供开头为0的时间位置。并且,在没有指定开始点的情况下,使变量offset值为负。作为处理,与将0提供给offset的情况相同。
并且,在本实施例中,虽然以仅向开始点提供变量为例,但也可以追加变量,或向结束点的时间位置提供变量。在这种情况下,在没有指定结束点时,可以通过将负值提供给该变量来实现。并且,以用于控制使用RTSP数据通信的开始点和结束点作为时间位置,但在其它的协议例如HTTP的情况下,开始点和结束点也可以是字节位置。
变量cont是作为ContentInfo类的对象而被决定的。
图45是网络库4204d所使用的ContentInfo类的一个构成示例图。
在图45中,构件变量dev将发送该多媒体数据的装置作为NetDevice对象来存储。
并且,构件变量cid表示该多媒体数据的内容的标识符。并且,构件变量contentURI以字符串来存储用于存取该多媒体数据的URI。并且,构件变量title以字符串来存储该内容的标题。并且,构件变量gunre以字符串来存储诸如电影等该内容的类别。
并且,构件变量broadDate以字符串来存储该内容被广播的日期时间。并且,构件变量recDate以字符串来存储该内容被录制及蓄积的日期时间。并且,构件变量lastPlayDate以字符串来表示到现在为止再生该内容的最后的日期时间或从数据输出装置1301发送的最后的日期时间。
并且,构件变量isPaused在该多媒体数据的发送或再生在中途被中断的情况下,为表示true的boolean型的变量,在不是上述的情况下,为表示false的boolean型的变量。这些信息被包含在从数据输出装置1301接收的内容一览或EPG数据中,可以通过后述的getContentList()方法和getEPGData()方法来获得。
本方法,为了以后对有关数据的接收进行控制,而预先将以变量cont决定的信息,以及由本方法所开启的RTSP对话期间的对话期间号和消息的序列号在网络库4204d的内部记忆并管理。
并且,在本方法,对该多媒体数据的输出是否处于中断状态进行判断,在输出处于中断状态的情况下,若在本方法之前,由后述的setTransferMode()来设定,则可以根据该设定来决定是否再次开始。并且,若没有设定,则利用安装了由后述的registerHandler()方法而注册的ClientHandler接口的处理器对象,向Java应用程序通知判断结果。
Java应用程序执行向用户的出示或接受用户输入等,决定是否再次开始被中断了的数据输出,利用后述的setTransferMode()方法来通知给网络库4204d。关于本方法的详细待后述。图44(3)pausePlayback()方法从Java应用程序向网络库4204d委托,从而使多媒体数据的接收中断,在成功的情况下返回true,在失败的情况下返回false。在本方法被调用时,网络库4204d调用后述的信息发送部4302的notifyPause()方法或notifyPauseForReopen()方法,并发送PAUSE请求消息。
在这种情况下,将对上述RTSP对话期间号和序列号仅增加了1的值作为变量。序列号被更新。并且返回notify PauseForReopen()方法的返回值。
并且,图44(4)pauseForReopen()方法,调用后述的信息发送部4302的notifyPauseForReopen()方法并发送,在成功的情况下返回true,在失败的情况下返回false。在这种情况下也是同样,将对上述RTSP对话期间号和序列号仅增加了1的值作为变量。序列号被更新。
如图44(5)所示pauseForReopen()方法的构成也可以是,使NetDevice对象作为变量,将以变量决定的装置作为再次开始输出时的接收方,作成在扩展报头所描述的PAUSE请求并发送。关于pausePlayback()方法和pauseForReopen()方法的详细处理待后述。
图44(6)registerHandler()方法将以变量handler决定的、安装了ClientHandler接口的对象注册到***,在成功的情况下返回true,在失败的情况下返回false。Java应用程序通过将该对象作为处理器来注册,从而可以从网络库4204接受回叫信号。
图46是网络库4204d所使用的ClientHanlder接口的一个构成示例图。
在图46,ClientHandler接口的norifyPause()方法,将以变量cid决定的标识符的内容正处于输出中断状态之事宜通知给Java应用程序。
Java应用程序利用,后述的setTransferMode()方法,可以进行是将上述的中断再次开始还是从开头或用户指定的位置获得该内容的设定。Java应用程序可以将该内容的输出正处于中断状态出示给用户,并可以向用户询问是是否再次开始输出。Java应用程序在执行了这样的处理之后,按照处理的成功与否来返回返回值,并委托网络库4204d进行控制。
并且,notifyPauseAction()方法,将中断了以变量cid所表示的内容的发送之事宜通知给Java应用程序。
Java应用程序可以向用户出示并询问在中断后是否再次开始,并利用后述的setReopenStatus()方法,将出示并询问的内容通知给网络库4204d。Java应用程序在执行了这样的处理之后,按照成功与否来返回返回值,并将控制返回到网络库4204。
并且,askReopenDevice()方法,将询问内容通知给Java应用程序,所述询问内容是指是否注册再次开始被中断的数据发送的接受输出方。
Java应用程序将网络1304所连接的终端等能够再次开始再生的装置一览出示给用户,并可以询问用户的选择。并且,Java应用程序可以根据后述的setReopenTerminal()方法,将用户选择的装置通知各网络库4204d。Java应用程序在执行了这样的处理之后,按照成功与否来返回返回值,并将控制返回到网络库4204。
图44(7)setTransferMode()方法,从Java应用程序向网络库4204d返回返回值,对于以变量cid决定的标识符的内容,在输出处于中断的情况下,根据以变量flag决定的值来设定是从中断的位置开始再次开始发送,还是从开头开始或用户所指定的位置开始发送,在成功的情况下返回true,在失败的情况下返回false。在变量flag为0时,判断为再次开始输出,为正的值时,判断为不再次开始输出,而是从开头或用户所指定的位置获得数据。
并且,在值为负时,则取消此时的设定,并返回未设定状态。本方法除作为由上述的ClientHandler的notify PauseContent()方法发出的回叫信号的应答,从Java应用程序中被调用的情况之外,还可以用于设定***。该设定被保存到第一存储器4102或第二存储器4103中。getMultimediaData()方法将按照本方法的设定来工作。
图44(8)setReopenStatus()方法,在以变量cid决定的标识符的内容的数据发送被中断之时,设定在此之后是否再次开始发送的状态,在变量flag为0时表示再次开始,为正的值时表示不再次开始。
并且,在值为负时,则取消此时的设定,并返回未设定状态。在处理成功时返回true,在失败时返回false。本方法除作为由上述的ClientHandler的notifyPauseAction()方法发出的回叫信号的应答,从Java应用程序中被调用的情况之外,还可以用于设定***。该设定被保存到第一存储器4102或第二存储器4103中。
图44(9)setReopenTerminal()方法,在以变量cid决定的标识符的内容的数据发送被中断之时,将以变量dev决定的装置作为再次开始时的接收方来注册,在成功时返回true,在失败时返回false。
在以变量dev决定为null时,返回未设定的状态。本方法除作为由上述的ClientHandler的askReopenDevice()方法发出的回叫信号的应答,从Java应用程序中被调用的情况之外,还可以用于作为向***的发送来注册。该设定被保存到第一存储器4102或第二存储器4103中。
图44(10)getContentList()方法,从以变量dev决定的装置获得内容一览,并作为ContentInfo对象的阵列返回,在成功时返回该阵列,在失败时返回null。并且,在能够通过网络104向以变量dev决定的装置提供的内容不存在的情况下,返回要素数为0的ContentInfo对象的阵列。这种处理中的通信由于是通过UPnP AV所定义的方法来实现的,因此在此省略详细说明。
图44(11)getEPGData()方法,从以变量dev决定的装置获得EPG,并作为ContentInfo对象的阵列来返回,在成功时返回该阵列,在失败时返回null。这种处理中的通信由于是通过UPnP AV所定义的方法来实现的,因此在此省略详细说明。
信息发送部4302通过OS4201的程序库4201的NET4201b3来控制网络部4108,并向被指定的网络1304所连接的外部设备发送RTSP的请求消息。
信息发送部4302向网络库4204以及下载下来的Java应用程序提供Java API。
图47是网络库4204d的内部构成中所包含的信息发送部4302所提供的Java API的一个示例图。
图47(1)connectToServer()方法,生成Socket对象s,利用Socket对象s来确立以变量dev决定的装置和TCP对话期间,并Socket对象s和变量dev的内容来生成RemoteDevice对象,并返回,在成功时返回该RemoteDevice对象,在失败时返回null。RemoteDevice类的构成与图30所示相同。在该TCP对话期间上执行RTSP对话期间的通信。
图47(2)sendData()方法,利用以变量dev决定的Socket对象,将以变量mes决定的数据发送给以变量dev决定的外部装置,在成功时返回true,在失败时返回false。
图47(3)sendRequestMessage()方法,利用以变量dev决定的Socket对象,生成以变量req决定的RTSP请求消息,并发送给以变量dev决定的外部装置,在成功时返回true,在失败时返回false。变量req以RequestInfo类的对象被决定。RequestInfo类与图36所示相同。
图47(4)notifyPlay()方法,根据以变量cont、seq、session、offset、restart决定信息来生成RTSP的PLAY请求消息,并向以变量dev决定的装置发送,在成功时返回true,在失败时返回false。
本方法首先生成RequestInfo对象req。并且,将表示PLAY的1设定到req的构件变量requestType。接着,将以变量seq和变量session决定的值,分别设定到req的构件变量seq、session。并且,从以变量cont决定的ContentInfo对象读出其中的构件变量contentURI,并设定到req的构件变量contentURI。并且,在变量offset为0以上的值时,根据该值以String对象来生成Range报头,并设定到req的构件变量range。
并且,在变量restart为true的情况下,将值作为“Yes”来作成X-Restart报头,作成String对象,并存储。并且,按照需要将扩展报头等其它的报头作为String对象来生成,并设定到req的构件变量extendHeader。并且,将req和以变量dev决定的RemoteDevice对象作为变量,通过调用sendRequestMessage()方法,来发送PLAY请求消息。
图47(5)notifyPause()方法,根据以变量cont、seq、session决定的信息生成RTSP的PAUSE请求消息,并发送到以变量决定的装置,在成功时返回true,在失败时返回false。
本方法首先生成RequestInfo对象req。并且,将表示PAUSE的2设定到req的构件变量requestType。接着,将以变量seq和变量session决定的值,分别设定到req的构件变量seq、session。并且,从以变量cont决定的ContentInfo对象读出其中的构件变量contentURI,并设定到req的构件变量contentURI。并且,req的构件变量range设定为null。并且,按照需要将扩展报头等其它的报头作为String对象来生成,并设定为req的构件变量extendHeader。并且,通过将req和变量dev决定的RemoteDevice对象作为变量,并调用sendRequestMessage()方法,从而发送PAUSE请求消息。
图47(6)notifyPauseForReopen()方法,根据以变量cont、seq、session决定的信息,来生成带有X-Keep-Pause-Status报头的RTSP的PAUSE请求消息,并发送给以变量dev决定的装置,在成功时返回true,在失败时返回false。X-Keep-Pause-Status报头的使用目的在于更加明确地示出被中断的发送以后还会再次开始。
本方法首先生成RequestInfo对象req。并且,将表示PAUSE的2设定到req的构件变量requestType。接着,将以变量seq和变量session决定的值,分别设定到req的构件变量seq、session。并且,从以变量cont决定的ContentInfo对象读出其中的构件变量contentURI,并设定到req的构件变量contentURI。并且,req的构件变量range设定为null。并且,将X-Keep-Pause-Status扩展报头的值作为“Yes”,利用String对象来生成。并且,按照需要将其它的扩展报头等其它的报头作为String对象来生成,并将这些作为String对象的阵列设定到req的构件变量extendHeader。并且,通过将req和变量dev决定的RemoteDevice对象作为变量,并调用sendRequestMessage()方法,从而发送PAUSE请求消息。
图47(7)notifyPauseForReopen()方法,根据以变量cont、seq、session、rterm决定的信息,生成扩展报头中包含的RTSP的PAUSE请求消息,并发送到以变量dev决定的装置,在成功时返回true,在失败时返回false。可以将X-Reopen-Terminal用作表示再次开始发送时的接收方装置的扩展报头。
本方法首先生成RequestInfo对象req。并且,将表示PAUSE的2设定到req的构件变量requestType。接着,将以变量seq和变量session决定的值,分别设定到req的构件变量seq、session。并且,从以变量cont决定的ContentInfo对象读出其中的构件变量contentURI,并设定到req的构件变量contentURI。并且,req的构件变量range设定为null。并且,利用扩展报头X-Reopen-Terminnal,以String对象来生成描述再次开始发送时的接收方终端的报头。扩展报头X-Reopen-Terminal的值可以通过变量rterm来获得,可以是该终端的IP地址,也可以是该终端的主机名,还可以是给该终端取的别名。别名可以通过NetDevice对象rterm的构件变量friendlyName来获得。并且,按照需要将其它的扩展报头等其它的报头作为String对象来生成,并将这些作为String对象的阵列设定到req的构件变量extendHeader。并且,通过将req和变量dev决定的RemoteDevice对象作为变量,并调用sendRequestMessage()方法,从而发送PAUSE请求消息。本消息的构成可以是包含X-Keep-Pause-Status扩展报头。信息接收部4303,通过OS4201程序库4201的NET4201b3来控制网络部4108,并接收来自被被指定的网络1304所连接的外部设备的RTSP的应答消息。
信息接收部4303将Java API提供给网络库4204d以及下载的Java应用程序。
图48是网络库4204d的内部构成中所包含的信息接收部4303所提供的JavaAPI的一个示例图。
图48(1)receiveData()方法,利用以变量dev决定的Socket对象从以变量dev决定的外部装置接收消息,并以字节串返回该消息,在成功时返回该字节串,在失败时返回null。
图48(2)receiveResponseMessage()方法,利用以变量dev决定的Socket对象从以变量dev决定的外部装置接收RTSP的应答消息,进行解析后生成ResponseInfo对象,并返回,在成功时返回该ResponseInfo对象,在失败时返回null。ResponseInfo类与图38所示相同。
在本方法被调用时,首先,调用receiveData(),并接收应答消息。接着,生成ResponseInfo对象res。并且,解析接收的应答消息,设定res的构件变量responseCode、seq、session。并且,若应答消息中包含有Range报头,则将该报头作为String对象,设定给res的构件变量range。若存在Seq报头、Session报头、Range报头以外的报头,则每个报头生成一个String对象,并作为阵列,设定给res的构件变量headers。若不存在Seq报头、Session报头、Range报头以外的报头,res的构件变量headers设定为null。并且,返回res。并且,在不正当的应答消息的情况下和应答消息的接收失败了的情况下,返回null。
判断部4304根据内容的属性信息来判断该内容是否具有输出正处于中断的属性。
判断部4304将Java API提供给网络库4204d以及下载的Java应用程序。
图49是网络库4204d的内部构成中所包含的判断部4304所提供的Java API的一个示例图。
图49(1)isContentPause()方法,判断具有以变量cid决定的标识符的内容是否处于输出中断状态,在判断为输出处于中断状态时返回true,在判断为输出没有处于中断状态时或处理失败时返回false。
在本方法被调用时,网络库4204d利用IO4204f,读出第二存储器4103中所记忆的内容一览。并从读出的内容一览中检索具有以变量cid决定的标识符的内容。调查检索到的内容的属性信息,若有输出处于中断状态的属性,则返回true并结束,若没有输出处于中断状态的属性,则返回false并结束。并且,在从第二存储器4103中没有读出内容一览,或读出的内容一览中没有具有以变量cid决定的标识符的内容时,返回false并结束。
图49(2)isContentPause()方法的变量中具有ContentInfo对象。本方法判断以变量决定的ConentInfo对象的内容是否处于输出中断状态,在判断为输出处于中断状态时,返回true,在判断为输出没有处于中断状态时返回false。本方法返回以变量决定的ContentInfo对象的构件变量isPause的值。
数据接收部4305,通过OS4201的程序库4201的NET4201b3来控制网络部4108,并从被被指定的网络1304所连接的外部设备接收多媒体数据。
数据接收部4305将Java API提供给控制部4301以及下载的Java应用程序。
图50是网络库4204d的内部构成中所包含的数据接收部4305所提供的Java API的一个示例图。
图50(1)openRemoteProgram()方法,在以变量dev决定的装置中确保通信路径,该通信路径是接收以变量cont决定的内容的多媒体数据的通信路径,并以RemoteProgram对象返回,在成功时返回该对象,在失败时返回null。
图51是网络库4204d所使用的RemoteProgram类的构成的一个示例图。
在图51中构件变量session表示控制该多媒体数据通信的RTSP通话期间的通话期间号。并且,构件变量s表示接收多媒体数据的RTP的DatagramSocket对象。并且,getData()方法通过RTP接收数据,并从RTP包中抽出多媒体数据并返回。
getData()方法在被调用一次时,并非只返回相当于一个RTP包的数据,在集中了多个RTP包返回时,必定返回连续的包编号的区间数据。openRemoteProgram()方法被调用时,网络库4204d针对以变量cont决定的内容,将RTSP的SETUP数据发送给以变量dev决定的装置。并且,接受应答消息并解析,在SETUP成功时作成RemoteProgram对象并返回,在失败时返回null。
并且,由于TCP对话期间被切断的情况等,发生SETUP消息不能发送或应答消息不能接收的异常时,也返回null。
以下对本方法的处理进行详细说明。首先,本方法被调用时,生成RequestInfo对象req。并且,将req的构件变量requestType设定为表示SETUP的0。构件变量seq设定为1。
并且,由于在SETUP请求还没有被分配对话期间号,因此构件变量session可以取任意值。并且,从以变量cont决定的ContentInfo对象读出构件变量的contentURI的值,并作为String对象设定到req的构件变量contentURI。由于在SETUP,Range报头还没有发送,因此,req的构件变量range为null。
并且,发行接收多媒体数据的UDP的端口号,通过描述该值来生成Transport报头,生成String对象并设定Transport报头的字符串。并且,要素数生成String对象的阵列,并将生成的String对象的阵列设定到req的构件变量extentHeader,且该String对象的阵列是仅包含Transport报头的一个要素数。
并且,将req和以变量dev决定的RemoteDevice对象作为变量,调用信息发送部4302的sendRequestMessage()方法,并发送给SETUP消息。并且,将以变量dev决定的RemoteDevice对象作为变量,调用信息接收部4303的receiveResponseMessage()方法,接收应答消息从而得到ResponseInfo对象。
若该ResponseInfo对象为res,则先调查res的构件变量responseCode,调查是否为OK即200。若不是200则表示SETUP失败,返回null并结束。接着,生成RemoteProgram对象rp。
在rp的构件变量session设定res的构件变量session的值。并且,检索res的构件变量headers,并查找Transport报头。若没有Transport报头,返回null并结束。若有Transport报头,则从中获得以server_port来表示的、服务器输出多媒体数据的端口号。
根据上述的端口号、上述的网络库4204d接收数据的端口号、以及以变量dev决定的服务器的信息,来生成DatagramSocket对象,与服务器连接,并设定为rp的构件变量s。并且,返回rp,结束处理。
在此,对控制部4301的getMultimediaData()方法的工作进行更加详细的说明。在本方法被调用时,首先在网络库4204d记忆并管理以变量cont决定的内容信息。
接着,网络库4204d将变量cont的构件变量dev作为变量,从而调用信息接收部4302的connectToSever()方法,并确立进行数据输出装置1301和RTSP消息通信的TCP对话期间,作为返回值接受RemoteDevice对象。并将该RemoteDevice对象作为rdev。rdev由网络程序库4304d记忆、管理。
并且,rdev方法的构成也可以是,利用由registerHandler()注册的处理器对象进行回叫,并提供给Java应用程序,使Java应用程序进行管理。具体而言,将public boolean notifyRemote(RemoteDevicedev)这个方法追加到图46所示的ClientHandler接口,并通过使rdev为变量来调用,从而可以提供给Java应用程序。
接着,将rdev和cont作为变量,调用数据接收部4305的openRemoteProgram()方法,在开始RTSP对话期间的同时,接受接收多媒体数据的RemoteProgram对象。并将该RemoteProgram对象作为rp。
接着,将cont作为变量,通过调用判断部4304的isContentPause()方法,来判断该多媒体数据的输出是否处于中断状态。在判断为不是输出中断状态时,通过调用信息发送部4302的notifyPlay()方法,从而将PLAY请求消息发送给数据输出装置1301。
这种情况下的变量为,第一变量利用rdev,第二变量利用cont,第三变量利用2,第四变量利用rp的构件变量session,第五变量利用以变量offset决定的值,第六变量利用false。
第三变量为RTSP对话期间的序列号,1被用于数据接收部4305的openRemoteProgram()方法中的SETUP。网络库4204d记忆并管理该对话期间号,在调用notify Play()方法后,记忆的对话期间号为2。
在判断为该内容的输出处于中断状态时,网络库4204d首先利用IO4204f,检索第一存储器4102或第二存储器4103,在检索是否对该内容进行了是否再次开始输出的设定。
在设定为不再次开始输出时,进行与上述相同的处理,调用信息发送部4302的notifyPlay()方法。在设定为再次开始输出时,与上述同样,改变第五变量以及第六变量来调用信息发送部4302的notifyPlay()方法。此时,第五变量取任意的负值,第六变量取true。
并且,在没有对有关再次开始输出进行设定时,调用以registerHandler()方法设定的处理器h的notify ContentPause()方法,并向Java应用程序通知为输出处于中断状态的内容。此时,变量取cont的构件变量cid。
Java应用程序在由setTransferMode()方法进行设定之后,使网络库4204d进行控制。网络库4204按照由Java应用程序进行的设定,与上述同样,调用信息发送部4302的notify Play()方法。此时,在由Java应用程序未进行设定的情况下,则视为不再次开始输出。
在调用notify Play()方法之后,进一步通过使rdev作为变量来调用信息接收部4303的receiveResponse()方法,从而接收针对PLAY请求的应答消息,并接受ResponseInfo对象。并将接受的ResponseInfo对象设为ri。
调查ri的构件变量responseCode,若是表示OK的200,则调用rp的getData()方法,并从数据输出装置1301接收被发送来的数据。若从rp的getData()方法接受了数据,则将该数据输出到以变量os决定的OutputStream,之后,直到调用发行PAUSE消息的控制部4301的方法为止,重复进行rp的getData()方法的调用和向接收的数据的os的输出。
发行PAUSE消息的控制部4301的方法是指pausePlayback()和pauseForReopen是(),当被调用时,就将在反复重复的循环中所参照的标志组成组等,使数据的接收和向os的输出的循环停止。或者,也可以是这样的构成,即本方法生成另外的线程或处理,在该线程或处理上工作,或者仅使上述循环在另外的线程或处理上工作,例如,准备线程notify Terminate()的方法,并通过该方法进行通知或利用处理间通信来通知。若ri的构件变量responseCode不为200,则返回false,并结束处理。
并且,在将OutputStream提供给getMultimediaData()方法的变量os时,可以通过本方法将多媒体数据蓄积到第二存储器4103上,所述OutputStream是向从IO4204f接受的第二存储器4103的文件的输出。
以下,对pausePlayback()方法和pauseForReopen()方法的处理进行详细说明。
在pausePlayback()方法被调用时,网络库4204d首先利用IO4204f检索第一存储器4102或第二存储器4103,再检索针对该内容的数据发送中断是否再次开始输出的设定。
在设定为不再次开始输出的情况下,信息发送部4302的notifyPause()方法被调用。在这种情况下,分别将网络库4204d所管理的、服务器的RemoteDevice对象、进行数据接收的内容所对应的ContentInfo对象、RTSP的序列号和对话期间号用作变量。
并且,在设定为再次开始输出的情况下,利用IO4204f来检索第一存储器4102或第二存储器4103,并检索再次开始输出时的接收方终端是否被设定。
在接收方终端被设定的情况下,调用图47(7)的notify PauseForReopen()方法。在这种情况下的变量分别为:网络库4204d所管理的、服务器的RemoteDevice对象、进行数据接收的内容所对应的ContentInfo对象、RTSP的序列号和对话期间号、以及被设定的装置的NetDevice对象。
在接收方终端没有被设定的情况下,调用图47(6)的notifyPauseForReopen()方法。在这种情况下的变量分别为:网络库4204d所管理的、服务器的RemoteDevice对象、进行数据接收的内容所对应的ContentInfo对象、RTSP的序列号和对话期间号。
并且,在没有对有关再次开始输出进行设定时,调用以registerHandler()方法设定的处理器h的notifyPauseAction()方法,并向Java应用程序通知停止进行发送处理。此时利用的变量为网络程序库4204d管理的ContentInfo对象的构件变量cid。
在Java应用程序利用setReopenStatus()方法,并通知是否进行再次开始输出的设定请求,并使程序库4204d进行控制。网络库4204d根据设定的内容,与上述同样,调用信息发送部4302的notify PauseForReopen()方法。此时,在没有由Java应用程序设定的情况下,视为不再次开始输出。
在进行以上处理之后,进一步进行使上述的getMultimediaData()方法的接收工作停止的处理,返回调用的信息发送部4302的notifyPause()方法或notifyPauseForReopen()方法的返回值,并结束处理。
并且,在再次开始输出的终端没有被设定的情况下,也可以是这样的构成,即调用处理器h的notifyReopenDevice()方法,并通知给Java应用程序,Java应用程序利用setReopenTerminal()方法,设定接受输出方的终端。此时,在由Java应用程序没有设定接受输出方的终端的情况下,不进行接受输出方的终端的指定。
图47(6)notifyPauseForReopen()方法,与在上述的pausePlayback在()方法中,进行再次开始输出时的设定处理相同。
并且,图47(7)notify PauseForReopen()方法被设定为,在上述的pausePlayback()方法中执行再次开始输出,且在接受输出方的终端被设定时,进行除以下几点以外的处理。
不同之处是:在上述的pausePlayback()中,在图47(7)的notify PauseForReopen()方法被调用时,是利用被设定的接受输出方的终端的NetDevice对象作为第五变量的,而在本方法则是利用以变量dev所决定的NetDevice对象。
如以上说明,实施例所涉及的构成多媒体通信***1305的数据输出装置1301,在数据输出过程中从终端接受了数据输出中断请求的情况下,将根据输出被中断的多媒体数据以及输出中断位置得到的再次开始位置信息记忆到装置内部,在接受了来自终端的再次开始数据输出请求和接受输出方的终端的识别信息时,读出记忆的再次开始位置信息,并再次开始数据输出。
并且,本实施例所涉及的终端1302以及终端1303包括设备控制部1501,在某多媒体数据在数据输出装置1301中被判断为输出处于中断状态的情况下,通过发送再次开始数据输出的请求和接受输出方的终端的标识符,使数据输出装置1301再次开始数据输出。根据此构成,例如在终端1302某多媒体内容的视听被中断,也可以在终端1303从被中断的位置开始继续进行该多媒体内容的视听。
(实施例2的变形例)
以上,对本发明的实施例2进行了说明,但本发明并非受上述的实施例2所限。以下的情况也包含在本发明的范畴之内。
(1)数据输出装置1301的构成也可以是,通过使在数据输出中断时发行的用于识别该中断的标识符包含在内容一览中,或者作为扩展报头包含在SETUP请求的应答中等方法来向终端发送,在接收再次开始数据输出请求和该标识符时,再次开始数据输出。该标识符的通信可以是将扩展报头设定到PLAY请求消息中,也可以是作为X-Restart报头的值来使用。在这种情况下,数据输出装置1301在存在扩展报头X-Restart时,判断为再次开始输出,并以其中的中断的标识符和内容的标识符来检索再次开始位置信息。
并且,终端1302以及终端1303的设备控制部1501的构成也可以是,在获得上述的标识符时,在发送再次开始数据输出请求的同时发送上述的标识符。
并且,上述标识符也可以作为输出正处于中断中的属性值来使用。即,在图26中,将PAUSE要素的内容设定到该标识符,在存在PAUSE要素,且其内容被描述的情况下,为输出中断状态,在不存在PAUSE要素,且即使存在PAUSE要素但没有内容为空要素的情况下,则不是输出中断状态。
并且,也可以是在数据输出装置1301所输出的内容一览,利用上述标识符来作为表示输出中断的属性的值。
并且,数据输出装置1301的构成也可以是,在对数据输出中断请求做出应答时,将上述标识符回信给终端,且在内容一览中不含有上述标识符。在此情况下,由于只有知道该标识符的用户才能够再次开始输出,因此可以得到提高安全性等效果。
并且,上述标识符也可以由终端提供给数据输出装置1301。而且,数据输出装置1301的构成也可以是在内容一览中不包含上述标识符。在此情况下也是只有知道该标识符的用户才能够再次开始输出,因此可以得到提高安全性等效果。
并且,数据输出装置1301的构成也可以是,将上述的标识符与中断时的日期时间或中断了的终端组成组来管理。
(2)终端1302以及终端1303的构成也可以是,在发送数据输出中断请求时,再次开始数据输出时的接受输出方的识别信息也被发送,数据输出装置1301将再次开始位置信息与所述接受输出方的识别信息保存到记忆部1407,在接受该数据的再次开始数据输出请求时,将该数据输出给所述接受输出方。
作为这种情况的数据输出中断请求的一个例子,将扩展报头X-Reopen-Terminal追加到上述的实施例中的PAUSE请求消息,作为值来描述特定的终端。作为接受输出方的标识符,可以是终端的IP地址,也可以是各终端的主机名,还可以是给各终端起的别名。这些信息可以由UPnP DA所定义的方法来获得。
并且,数据输出装置1301的构成也可以是,在接收数据输出中断请求的同时还接收再次开始数据输出时的接受输出方的识别信息的情况下,只根据来自作为该接受输出方的终端的请求,再次开始数据的输出。
并且,数据输出装置1301的构成也可以是,在接收数据输出中断请求的同时还接收再次开始数据输出时的接受输出方的识别信息的情况下,对照所记忆的接受输出方,仅在一致的情况下才再次开始数据的输出。
(3)在上述的实施例中,数据输出装置1301为接收数字广播的STB,但并非受此所限。也可以不具有调谐器,从网络接收内容并蓄积。这种情况的构成与图41相同。并且,也可以是通过网络以外的部位来蓄积数据。
(4)并且,也可以是,在以上所述中,在接受了数据输出中断请求时,接着将数据写入到了第二存储器1403中,但也可以是不等待数据输出中断请求,而事先从该多媒体数据的开头开始写入到第二存储器1403。
在这种情况下,再次开始输出位置信息可以通过与上述实施例中第二存储器1403中蓄积的内容同样的方法来作成。
并且,数据输出装置1301可以时常将作为TS多路复用器1410的输出的多媒体数据中的、一定时间内或一定容量内的数据,事先放到第一存储器1402或图中未示出的缓存区域,在接受了数据输出中断请求时,也将该缓存区域中的数据一同写入。并且,在算出再次开始输出数据的位置时可以在考虑该缓存区域中的数据的情况下算出,也可以不考虑该缓存区域中的数据。
(5)数据输出装置1301的构成也可以是,对于在数据输出装置1301上的再生中被中断的多媒体数据,生成并记录再次开始位置信息。
在此构成中也采用与上述的实施例同样的处理,从而可以使以下的工作成为可能,即:中断数据输出装置1301的再生,再次开始向终端1302或终端1303的该数据的输出,以及中断向终端1302或终端1303的输出,作为数据输出装置1301上的再生来再次开始等。
(6)在上述实施例中,是以数据输出装置1301记忆再次开始位置信息的,不过也可以使网络上的第三个设备来记忆。
图52是本发明的实施例2的变形例6中的多媒体通信***的构成示例图。
如图52所示的多媒体通信***5206包括:数据输出装置5201、通过网络对数据输出装置以及终端进行控制的控制装置5202、第一终端5203、第二终端5304、以及网络5205。数据输出装置5201、控制装置5202、终端5203、以及终端5204分别与网络5205相连接,并可以通过网络5205彼此互相通信。
数据输出装置5201接收通过网络5205而被发送来的、来自控制装置5202、终端5203、以及终端5204的请求。并且,按照请求将蓄积的每个内容的信息或属性通过网络5205发送给控制装置5202,并且,按照请求将蓄积的内容的多媒体数据通过网络5205发送给终端5203以及终端5204。
并且,多媒体数据的发送可以按照请求从任意的地方被送出。
并且,对于正在执行的数据输出而言,数据输出装置5201在从控制装置5202或接收方终端接收中断请求的情况下,将数据位置和该多媒体数据的文件名或URI,通过网络5205发送给控制装置5202,所述数据位置是指再次开始输出最后发送的数据位置之后的位置。而且,如后述那样,并非必需要发送该多媒体数据的文件名或URI。
控制装置5202按照用户的请求来工作。控制装置5202通过网络5205来控制终端5203以及终端5204,从而使终端5203以及终端5204从数据输出装置5201接收多媒体数据并再生。这些控制由于是通过UPnP PAV所定义的方法来实现的,因此在此省略详细说明。
并且,通过向数据输出装置5201发出请求,来接收内容的标题等信息或属性,并由终端5203、终端5204或控制装置5202自身的表示部来出示给用户。
并且,在接受了来自用户的再生中断请求时,控制装置5202控制正在执行该再生的终端5203或终端5204,在向数据输出装置5201发送数据输出中断请求的同时使再生中断。而且,控制装置5202与数据输出装置5201进行通信,接收能够确定该数据的信息,并作为再次开始位置信息记忆到控制装置5202内,所述能够确定该数据的信息是指使输出再次开始的数据位置和该多媒体数据的文件名或URI。
再次开始位置信息可以与上述的实施例2所示相同。
并且,由于该多媒体数据的URI用于控制装置5202发行再生请求之时,因此在再生中断时是已知的,不必在再生中断时从数据输出装置接收。控制装置5202还在用户发出再次开始再生请求和指定进行再生的装置时,读出所述再次开始位置信息,并使该终端从数据输出装置5201接收从再次开始位置开始的数据,并再生。
终端5203以及终端5204按照通过网络5205从控制装置5202发送来的请求,从指定的服务器接收指定的多媒体数据的、指定的范围的数据,并且再生、表示。
网络5205与上述实施例中的网络1304相同。
如以上的说明,在这样构成的多媒体通信***5206中,通过控制装置5202管理再次开始位置信息,从而例如可以中断在终端5203进行的多媒体内容的再生,并且可以在终端5204上再次开始再生。
另外,虽然在此,控制装置5202是从数据输出装置5201至少接收使输出再次开始的数据位置,并作成再次开始位置信息的,但也可以是数据输出装置5201作成再次开始位置信息,由控制装置5202来接收并保存。
并且,虽然在此,控制装置5202是从数据输出装置5201至少接收使输出再次开始的数据位置,并作成再次开始位置信息的,但也可以从正在执行再生的终端5203或终端5204至少接收最后再生的数据位置,以作成再次开始位置信息。
并且,虽然在此,控制装置5202是向终端5203或终端5204发行请求,再由终端向数据输出装置5201发送数据发送请求的,但也可以是控制装置5202向数据输出装置5201发行向终端5203或终端5204发行的数据发送请求,并且,向该终端发行来自数据输出装置5201的数据接收请求。像这样的数据传送控制可以由FTP(FileTransfer Protocol:文件传送协议)来进行。
并且,虽然在此是以网络上的独立的控制装置5202来保存再次开始位置信息的,但也可以由网络上的具有任意的记忆部的设备来保存再次开始位置信息,并由数据输出装置、设备控制装置、终端中的某一个来获得并解析所述的再次开始位置信息。
(7)在上述的实施例2中,虽然利用了作为数据传送协议的RTP/RTSP,但也可以利用HTTP等其它的协议。利用HTTP的情况下的数据输出中断请求可以通过切断HTTP-GET的对话期间来进行,也可以以其它的对话期间的通信来进行。并且,利用HTTP的情况下的再次开始数据输出请求可以在HTTP-GET上利用诸如上述的X-Restart这样的独自的扩展报头来进行。
(8)在上述的实施例2中,是以最后发送完毕的数据之后的数据位置作为再次开始发送位置的,但也可以返回特定数量的数据,并以此返回的位置作为再次开始发送位置。而且,多媒体数据是MPEG2编码数据的情况下,I帧、MPEG2-TS中的PAT等是在解码中不可缺少的,可以作为发送完毕的数据中的最后一个的开头等。并且,多媒体数据即使是其它的编码数据也一样。
(9)构成上述各装置的构成要素的一部分或全部可以由一个***LSI(Large Scale Integration:大规模集成电路)来构成。***LSI是将多个构成部集成到一个芯片上而被制造出来的超多功能LSI,具体而言,是包括微型处理器、ROM、RAM等的计算机***。所述RAM中记忆有计算机程序。所述微型处理器按照所述计算机程序来工作,因此***LSI可以达成上述的功能。
(10)构成上述各装置的构成要素的一部分或全部也可以由可拆装于各装置的IC卡或单体模块来构成。所述IC卡或所述模块是由微型处理器、ROM、RAM等构成的计算机***。上述IC卡或上述模块也可以包括上述的超多功能LSI。微型处理器按照计算机程序来工作,因此上述IC卡或上述模块可以达成上述的功能。所述IC卡或所述模块可以具有防篡改功能。
(11)本发明的数据输出装置、设备控制装置可以是上述的方法。并且,这些方法可以作为由计算机来实现的计算机程序,也可以作为由所述计算机程序组成的数字信号。
并且,本发明的数据输出装置、设备控制装置,可以将所述计算机程序或所述数字信号记录到计算机可读取的记录介质中,这些记录介质例如是软盘、硬盘、CD-ROM、MO、DVD、DVD-ROM、DVD-RAM,BD(Blu-ray Disc)、半导体存储器等。并且,也可以作为这些记录介质中所记录的所述计算机程序或所述数字信号。
并且,本发明的数据输出装置、设备控制装置可以通过电气通信电路、无线或有线通信电路、以因特网为代表的网络、以及数据广播等来传递所述计算机程序或所述数字信号。
并且,本发明的数据输出装置、设备控制装置可以是具备微型处理器和存储器的计算机***,所述存储器记忆上述计算机程序,所述微型处理器按照所述计算机程序来工作。
并且,可以将所述程序或所述数字信号记录到所述记录介质并传送,或者可以将所述程序或所述数字信号通过所述网络等来传送,从而可以由独立的其它的计算机***来执行。
(12)上述的实施例2以及上述的变形例可以分别自由组合。
本发明所涉及的数据输出装置、设备控制装置以及多媒体通信***,在通过网络进行的与多媒体内容的再生等有关的数据的通信中,即使进行接收的终端或设备发生变更,也可以确实地使被中断的数据通信再次开始,由于具有这样的优点,因此可以用于家庭网络等网络环境中的多媒体内容的服务器装置、接收终端、设备控制装置、数据输出方法、设备控制方法等。

Claims (28)

1.一种数据输出装置,输出含有影像以及声音的至少一方的多媒体数据,其特征在于,包括:
接收单元,从外部装置接收信号;
蓄积单元,蓄积多媒体数据;
读出单元,从所述蓄积单元读出数据;
输出单元,将所述多媒体数据输出到被指定的接受输出方;
记忆单元,记忆被中断了的由所述输出单元输出的多媒体数据和再次开始位置信息,该再次开始位置信息表示再次开始该多媒体数据的输出的位置;以及
控制单元,进行以下控制:
在由所述接收单元接收了请求中断由所述输出单元的输出的中断请求的情况下,生成所述再次开始位置信息,并使所述记忆单元记忆生成的所述再次开始位置信息,
在由所述接收单元接收了请求再次开始由所述输出单元的输出的再次开始请求和接受输出方的识别信息的情况下,从所述记忆单元中读出所述再次开始位置信息,并使所述读出单元从所述蓄积单元中将从该再次开始位置信息所表示的再次开始位置开始的多媒体数据读出,并使所述输出单元将被读出的所述多媒体数据输出到所述接受输出方。
2.如权利要求1所述的数据输出装置,其特征在于,
所述数据输出装置通过网络与多个终端相连接;
所述输出单元将被指定的所述多个终端中的任一个作为接受输出方来进行输出。
3.如权利要求1所述的数据输出装置,其特征在于,
所述输出单元将所述多媒体数据输出到多个接受输出方中的任一个;
所述控制单元在由所述接收单元接收了所述再次开始请求和所述多个接受输出方的识别信息中的任一个的情况下,从所述记忆单元中读出所述再次开始位置信息,并使所述读出单元从所述蓄积单元中读出从该再次开始位置信息所表示的再次开始位置开始的多媒体数据,并使所述输出单元将被读出的所述多媒体数据输出到由所述接收单元接收的识别信息所表示的接受输出方。
4.如权利要求1所述的数据输出装置,其特征在于,
所述控制单元进行以下控制:
在由所述接收单元接收了所述中断请求的情况下,生成所述再次开始位置信息和识别所述中断请求的中断标识符,并使所述记忆单元记忆生成的所述再次开始位置信息和所述中断标识符,
在由所述接收单元接收了所述再次开始请求、所述接受输出方的识别信息、以及所述中断标识符的情况下,从所述记忆单元中读出所述中断标识符所对应的所述再次开始位置信息,并使所述读出单元从所述蓄积单元中读出从该再次开始位置信息所表示的再次开始位置开始的多媒体数据,并使所述输出单元将被读出的所述多媒体数据输出到所述接受输出方。
5.如权利要求1所述的数据输出装置,其特征在于,
所述输出单元将所述多媒体数据输出到多个接受输出方中的任一个;
所述控制单元在所述再次开始请求和第二接受输出方的识别信息被接收的情况下,从所述记忆单元中读出所述再次开始位置信息,并使所述读出单元从所述蓄积单元中读出从该再次开始位置信息所表示的再次开始位置开始的多媒体数据,并使所述输出单元将被读出的多媒体数据输出到所述第二接受输出方,该第二接受输出方是与在接收中断信号时的接受输出方不同的一方。
6.如权利要求1所述的数据输出装置,其特征在于,
所述数据输出装置进一步包括:
数据接收单元,从外部装置接收多媒体数据;以及
写入单元,将所述数据接收单元所接收的多媒体数据写入到所述蓄积单元;
所述控制单元进一步进行以下控制:
在所述数据接收单元进行接收的同时,输出单元输出多媒体数据时,接收了所述中断请求的情况下,使所述数据接收单元接收从所述多媒体数据的中断位置开始的多媒体数据,并使所述写入单元将接收的从所述多媒体数据的中断位置开始的多媒体数据写入到所述蓄积单元,
在由所述接收单元接收了所述再次开始请求和所述接受输出方的识别信息的情况下,使所述读出单元将由所述写入单元写入到所述蓄积单元的、从所述多媒体数据的中断位置开始的多媒体数据读出,并使所述输出单元将被读出的、从所述多媒体数据的中断位置开始的多媒体数据输出到所述接受输出方。
7.如权利要求1所述的数据输出装置,其特征在于,
所述数据输出装置进一步包括再生单元,再生多媒体数据;
所述输出单元将所述多媒体数据输出到多个接受输出方以及所述再生单元中的任一个;
所述控制单元进一步进行以下控制:
在所述输出单元向所述再生单元进行输出时,在由所述接收单元接收了所述中断信号的情况下,生成所述再次开始位置信息,并使所述记忆单元记忆生成的所述再次开始位置信息。
8.如权利要求7所述的数据输出装置,其特征在于,
所述数据输出装置进一步包括:
数据接收单元,从外部装置接收多媒体数据;以及
写入单元,将所述数据接收单元所接收的多媒体数据写入到所述蓄积单元;
所述控制单元进一步进行以下控制:
在所述数据接收单元进行接收的同时,多媒体数据由输出单元输出到所述再生单元时,在接收了所述中断请求的情况下,使所述数据接收单元接收从所述多媒体数据的中断位置开始的多媒体数据,并使所述写入单元将接收的、从所述多媒体数据的中断位置开始的多媒体数据写入到所述蓄积单元,
在由所述接收单元接收了所述再次开始请求的情况下,使所述读出单元将由所述写入单元写入到所述蓄积单元的、从所述多媒体数据的中断位置开始的多媒体数据读出,并使所述输出单元将被读出的、从所述多媒体数据的中断位置开始的多媒体数据输出到所述接受输出方。
9.一种数据输出方法,在具有蓄积多媒体数据的蓄积单元的装置上被执行,并输出含有影像以及声音的至少一方的多媒体数据,其特征在于,包括:
接收步骤,接收来自外部的控制装置的信号;
读出步骤,从所述蓄积单元读出数据;
输出步骤,将所述多媒体数据输出到被指定的接受输出方;以及
控制步骤,进行以下控制:
在所述接收步骤接收了请求中断在所述输出步骤的输出的中断请求的情况下,生成表示再次开始输出的位置的再次开始位置信息,并使记忆单元记忆生成的所述再次开始位置信息,所述再次开始位置信息是根据在所述输出步骤中被中断输出的多媒体数据和被中断输出时的位置而得到的,
在所述接收步骤接收了请求再次开始在所述输出步骤的输出的再次开始请求和接受输出方的识别信息的情况下,从所述记忆单元中读出所述再次开始位置信息,并使在所述读出步骤从所述蓄积单元中读出从该再次开始位置信息所表示的再次开始位置开始的多媒体数据,并在所述输出步骤使被读出的所述多媒体数据被输出到所述接受输出方。
10.如权利要求1所述的数据输出装置,其特征在于,
所述数据输出装置进一步包括Java(注册商标)执行单元,执行Java应用程序;
所述控制单元由Java应用程序启动。
11.如权利要求10所述的数据输出装置,其特征在于,
所述输出单元将所述多媒体数据输出到多个接受输出方的任一个;
所述控制单元在接收了所述再次开始请求和第二接受输出方的识别信息的情况下,从所述记忆单元中读出所述再次开始位置信息,并使所述读出单元从所述蓄积单元中读出从该再次开始位置信息所表示的再次开始位置开始的多媒体数据,并使所述输出单元将被读出的多媒体数据输出到与所述接受输出方不同的接受输出方,所述第二接受输出方是与在接受所述中断信号时的接受输出方不同的一方。
12.如权利要求10所述的数据输出装置,其特征在于,
所述数据输出装置通过网络与多个终端相连接;
所述输出单元通过所述网络向用户所指定的所述多个终端的任一个进行输出。
13.如权利要求10所述的数据输出装置,其特征在于,
所述控制单元进行以下控制:
在由所述接收单元接收了所述中断请求的情况下,生成所述再次开始位置信息和识别所述中断请求的中断标识符,并使所述记忆单元记忆生成的所述再次开始位置信息和所述中断标识符,
在由所述接收单元接收了所述再次开始请求、所述接受输出方的识别信息、以及所述中断标识符的情况下,从所述记忆单元中读出所述中断标识符所对应的所述再次开始位置信息,并使所述读出单元从所述蓄积单元中读出从该再次开始位置信息所表示的再次开始位置开始的多媒体数据,并使所述输出单元将被读出的所述多媒体数据输出到所述接受输出方。
14.如权利要求10所述的数据输出装置,其特征在于,
所述控制单元进一步进行以下控制:
在由所述接收单元接收了所述中断请求、再次开始输出时的接受输出方的识别信息的情况下,生成所述再次开始位置信息,并使所述记忆单元记忆所述生成的所述再次开始位置信息和所述接受输出方的识别信息;
在由所述接收单元接收了所述再次开始请求的情况下,从所述记忆单元中读出所述再次开始位置信息和所述接受输出方的识别信息,并使所述读出单元从所述蓄积单元中读出从该再次开始位置信息所表示的再次开始位置开始的多媒体数据,并使所述输出单元将被读出的所述多媒体数据输出到由所述记忆单元读出的识别信息所表示的所述接受输出方。
15.如权利要求10所述的数据输出装置,其特征在于,进一步包括:
数据接收单元,从外部装置接收多媒体数据;以及
写入单元,将所述数据接收单元所接收的多媒体数据写入到所述蓄积单元;
所述控制单元进一步进行以下控制:
在所述数据接收单元进行接收的同时,由输出单元输出多媒体数据时,接收了所述中断请求的情况下,使所述数据接收单元接收从所述多媒体数据的中断位置开始的多媒体数据,并使所述写入单元将接收的、从所述多媒体数据的中断位置开始的多媒体数据写入到所述蓄积单元,
在由所述接收单元接收了所述再次开始请求和所述接受输出方的识别信息的情况下,使所述读出单元将由所述写入单元写入到所述蓄积单元的、从所述多媒体数据的中断位置开始的多媒体数据读出,并使所述输出单元将被读出的、从所述多媒体数据的中断位置开始的多媒体数据输出到所述接受输出方。
16.如权利要求10所述的数据输出装置,其特征在于,
所述数据输出装置进一步包括再生单元,再生多媒体数据;
所述输出单元将所述多媒体数据输出到多个接受输出方以及所述再生单元的任一个;
所述控制单元进一步进行以下的控制:
在由所述输出单元向所述再生单元进行输出时,在由所述接收单元接收了所述中断信号的情况下,由Java应用程序接受在从所述输出单元向所述再生单元输出时被中断了的多媒体数据的再次开始位置信息,并使所述记忆单元记忆,
从Java应用程序接受多媒体数据的标识符,并将所述记忆单元所记忆的多媒体数据的再次开始位置信息传递给所述Java应用程序。
17.如权利要求16所述的数据输出装置,其特征在于,
所述数据输出装置进一步包括:
数据接收单元,从外部装置接收多媒体数据;以及
写入单元,将所述数据接收单元所接收的多媒体数据写入到所述蓄积单元;
所述控制单元进一步进行以下控制:
在所述数据接收单元进行接收的同时,多媒体数据由输出单元输出到所述再生单元时,接收了所述中断请求的情况下,根据来自Java应用程序的指示,使所述数据接收单元接收从所述多媒体数据的中断位置开始的多媒体数据,并使所述写入单元将接收的从所述多媒体数据的中断位置开始的多媒体数据,写入到所述蓄积单元,
生成被写入的数据的再生位置信息,并使所述记忆单元记忆,
在由所述接收单元接收了所述再次开始请求的情况下,使所述读出单元将由所述写入单元写入到所述蓄积单元的、从所述多媒体数据的中断位置开始的多媒体数据读出,并使所述输出单元将被读出的从所述多媒体数据的中断位置开始的多媒体数据,输出到所述接受输出方。
18.一种数据输出方法,在网络上所连接的装置上被执行,并输出包含影像以及声音的至少一方的多媒体数据,所述网络上所连接的装置包括:
蓄积单元,蓄积多媒体数据;
记忆单元,记忆再次开始位置信息;
Java执行单元,执行Java应用程序;以及
由Java应用程序启动的控制单元,
所述数据输出方法,其特征在于,包括:
接收步骤,从所述网络所连接的外部的控制装置接收消息;
读出步骤,从所述蓄积单元读出多媒体数据;
输出步骤,通过所述网络,将所述多媒体数据输出到被指定的接受输出方;以及
控制步骤,进行以下控制:
在所述接收步骤接收了请求中断在所述输出步骤的输出的中断请求的情况下,生成表示再次开始输出的位置的再次开始位置信息,并使记忆单元记忆生成的所述再次开始位置信息,所述再次开始位置信息是根据在所述输出步骤中被中断输出的多媒体数据和中断输出时的位置而得到的,
在所述接收步骤接收了请求再次开始在所述输出步骤的输出的再次开始请求和接受输出方的识别信息的情况下,从所述记忆单元中读出所述再次开始位置信息,并使在所述读出步骤从所述蓄积单元中读出从该再次开始位置信息所表示的再次开始位置开始的多媒体数据,并在所述输出步骤使被读出的所述多媒体数据被输出到所述接受输出方。
19.一种设备控制装置,向数据输出装置发出请求,所述数据输出装置输出包含影像以及声音的至少一方的多媒体数据,其特征在于,包括:
发送单元,向所述数据输出装置发送请求;以及
控制单元,在向所述数据输出装置发送中断请求时,使所述数据输出装置确定再次开始数据输出时的接受输出方,并使所述发送单元发送被确定的所述接受输出方的识别信息,所述中断请求是指请求中断由所述数据输出装置对多媒体数据的输出。
20.如权利要求19所述的设备控制装置,其特征在于,
所述设备控制装置进一步包括执行Java应用程序的Java执行单元;
在从Java应用程序接受所述中断请求的情况下,在将所述中断请求发送给所述数据输出装置时,确定所述数据输出装置再次开始数据输出时的接受输出方,并使所述发送单元发送被确定的所述接受输出方的识别信息。
21.如权利要求19所述的设备控制装置,其特征在于,
所述设备控制装置包括执行Java应用程序的Java执行单元;
所述控制单元在从Java应用程序接受所述中断请求和再次开始输出时的接受输出方的识别信息的情况下,在将所述中断请求发送给所述数据输出装置时,使所述发送单元发送所述接收方的识别信息。
22.一种设备控制装置,通过网络与数据输出装置相连接,并通过用户的操作而工作,所述数据输出装置提供包含影像以及声音的至少一方的多媒体数据,所述设备控制装置,其特征在于,包括:
属性接收单元,接收由所述数据输出装置所提供的内容的属性;
发送单元,向所述数据输出装置发送请求;以及
控制单元,按照用户的操作,在接受了请求再次开始内容数据输出的再次开始请求时,根据所述属性接收单元所接收的该内容的属性,来判断该内容的输出是否处于被中断的状态,在判断为该内容的输出处于被中断的状态时,使所述发送单元将所述再次开始请求发送给所述数据输出装置。
23.如权利要求22所述的设备控制装置,其特征在于,
所述属性接收单元接收包含标识符的所述内容的属性,所述标识符按每个内容来表示输出中断;
所述控制单元在判断为输出处于中断状态的情况下,使所述发送单元将所述再次开始请求和所述标识符发送给所述数据输出装置。
24.如权利要求22所述的设备控制装置,其特征在于,
所述设备控制装置进一步包括执行Java应用程序的Java执行单元;
所述控制单元在从Java应用程序接受了所述再次开始请求时,根据所述属性接收单元所接收的该内容的属性,来判断该内容的输出是否处于中断状态,在判断为输出处于中断状态时,使所述发送单元将所述再次开始请求发送给所述数据输出装置。
25.如权利要求24所述的设备控制装置,其特征在于,
所述控制单元在判断为输出处于中断状态的情况下,进一步向Java应用程序询问是否再次开始被中断的输出,在接受由Java应用程序发出的再次开始的指示的情况下,使所述发送单元将所述再次开始请求发送到多媒体服务器。
26.一种设备控制装置,被连接在网络上,控制数据输出装置,该数据输出装置输出包含影像以及声音的至少一方的多媒体数据,其特征在于,包括:
记忆单元,在向所述数据输出装置发出输出中断请求时,记忆表示再次开始输出的位置的再次开始位置信息,该再次开始位置信息是根据输出被中断了的多媒体数据和中断该多媒体数据的输出时的位置而得到的;
通信单元,与所述数据输出装置进行通信;以及
控制单元,从所述数据输出装置接收所述再次开始位置信息,并使所述记忆单元记忆,在向所述数据输出装置发出再次开始输出请求时,将所述记忆单元所记忆的所述再次开始位置信息以及接受输出方的识别信息发送给所述数据输出装置。
27.如权利要求26所述的设备控制装置,其特征在于,
所述设备控制装置进一步包括执行Java应用程序的Java执行单元;
所述控制单元在从Java应用程序接受了向所述数据输出装置的中断请求时,使所述通信单元向所述数据输出装置发送中断请求,并由通信单元从所述数据输出装置接收再次开始位置信息,并使所述记忆单元记忆,所述再次开始位置信息是通过输出被中断了的多媒体数据以及输出中断位置而得到的;
所述控制单元在从Java应用程序接受了向所述数据输出装置的再次开始请求时,读出所述记忆单元中记忆的所述再次开始位置信息,并使所述通信单元将再次开始输出请求以及接受输出方的识别信息和所述再次开始位置信息发送给所述数据输出装置。
28.一种多媒体通信***,通过网络与数据输出装置和多个终端相连接,所述数据输出装置输出包含影像以及声音的至少一方的多媒体数据,所述多个终端接收被输出的所述多媒体数据,所述多媒体通信***,其特征在于,
所述数据输出装置包括:
接收单元,从所述设备控制装置接收信号;
蓄积单元,蓄积多媒体数据;
读出单元,从所述蓄积单元读出数据;
输出单元,将所述多媒体数据输出到被指定的所述终端;
记忆单元,记忆表示再次开始输出的位置的再次开始位置信息,该再次开始位置信息是通过由所述输出单元中断输出的多媒体数据和该多媒体数据的输出被中断的位置而得到的;以及
控制单元,进行以下控制:
在由所述接收单元接收了请求中断由所述输出单元的输出的中断请求的情况下,生成所述再次开始位置信息,并使所述记忆单元记忆被生成的所述再次开始位置信息,在由所述接收单元接收了请求再次开始由所述输出单元进行的输出的再次开始请求和接受输出方的识别信息的情况下,从所述记忆单元读出所述再次开始位置信息,并使所述读出单元从所述蓄积单元中读出从该再次开始位置信息所表示的再次开始位置开始的多媒体数据,并使所述输出单元将被读出的所述多媒体数据输出到所述接受输出方;
所述终端包括:
发送单元,向所述数据输出装置发送请求;以及
控制单元,在向所述数据输出装置发送中断请求时,使所述数据输出装置确定再次开始数据输出时的接受输出方,并使所述发送单元发送被确定的所述接受输出方的识别信息,所述中断请求是请求所述数据输出装置中断输出多媒体数据的请求。
CNA2006800474317A 2005-12-20 2006-12-06 数据输出装置、设备控制装置以及多媒体通信*** Pending CN101406058A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2005367003 2005-12-20
JP367003/2005 2005-12-20
JP376596/2005 2005-12-27

Publications (1)

Publication Number Publication Date
CN101406058A true CN101406058A (zh) 2009-04-08

Family

ID=40538855

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2006800474317A Pending CN101406058A (zh) 2005-12-20 2006-12-06 数据输出装置、设备控制装置以及多媒体通信***

Country Status (1)

Country Link
CN (1) CN101406058A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102006274A (zh) * 2009-09-02 2011-04-06 联想(新加坡)私人有限公司 设备间的无缝应用会话重构
CN102447959A (zh) * 2010-10-01 2012-05-09 日立民用电子株式会社 接收机
CN105007332A (zh) * 2015-08-04 2015-10-28 广东欧珀移动通信有限公司 网络媒体文件的播放方法和***
CN106326394A (zh) * 2016-08-18 2017-01-11 乐视控股(北京)有限公司 一种文件名获取方法及装置
CN106973316A (zh) * 2015-09-22 2017-07-21 Lg电子株式会社 显示设备

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102006274A (zh) * 2009-09-02 2011-04-06 联想(新加坡)私人有限公司 设备间的无缝应用会话重构
CN102006274B (zh) * 2009-09-02 2015-07-29 联想(新加坡)私人有限公司 设备间的无缝应用会话重构
US9537957B2 (en) 2009-09-02 2017-01-03 Lenovo (Singapore) Pte. Ltd. Seamless application session reconstruction between devices
CN102447959A (zh) * 2010-10-01 2012-05-09 日立民用电子株式会社 接收机
CN105007332A (zh) * 2015-08-04 2015-10-28 广东欧珀移动通信有限公司 网络媒体文件的播放方法和***
CN105007332B (zh) * 2015-08-04 2019-02-22 Oppo广东移动通信有限公司 网络媒体文件的播放方法和***
CN106973316A (zh) * 2015-09-22 2017-07-21 Lg电子株式会社 显示设备
CN106973316B (zh) * 2015-09-22 2020-01-21 Lg电子株式会社 显示设备
US10616634B2 (en) 2015-09-22 2020-04-07 Lg Electronics Inc. Display device and operating method of a display device
CN106326394A (zh) * 2016-08-18 2017-01-11 乐视控股(北京)有限公司 一种文件名获取方法及装置

Similar Documents

Publication Publication Date Title
US8244829B2 (en) Data transmitting apparatus, data receiving apparatus, data transmitting method and data receiving method
US20090300231A1 (en) Data output device, equipment control device, and multimedia delivery system
US8330862B2 (en) Device linkage apparatus and device linkage method
US7584356B2 (en) Broadcast receiving apparatus
US20080172712A1 (en) Multimedia data transmitting apparatus, multimedia data receiving apparatus, multimedia data transmitting method, and multimedia data receiving method
US20080250101A1 (en) Multimedia data transmitting apparatus and multimedia data receiving apparatus
US20090193101A1 (en) Multimedia data transmitting apparatus and multimedia data management method
JP5586770B2 (ja) 受信機
US7523214B2 (en) Content providing server, information processing device and method, and computer program
US20090106801A1 (en) Content processing device and content processing method
US20080141323A1 (en) Content information outputting apparatus, content information receiving apparatus, content information outputting method, content information receiving method
US20090222867A1 (en) Broadcast receiving apparatus, video storing apparatus, and multimedia delivering system
US20080250461A1 (en) Multimedia data transmitting apparatus and multimedia data receiving apparatus
US20070157263A1 (en) Content management system
WO2006022304A1 (ja) コンテンツ起動制御装置
JP6271066B2 (ja) 受信機
US20050044201A1 (en) Information processing apparatus
JP2013066159A (ja) 受信機
CN101406058A (zh) 数据输出装置、设备控制装置以及多媒体通信***
US20070280271A1 (en) Communication apparatus and communication method
JP5953111B2 (ja) 受信機
JP2000032423A (ja) データ伝達制御方法
JP4378778B2 (ja) 受信装置および受信方法
CN101296310A (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
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20090408