Abstract: The present invention is to realize service of data broadcasting content that can be in conjunction with show, CM, etc. [Solving Means] A controller supplies metadata in which trigger information relating to control of an application program to be executed in conjunction with content in a receiving device is stored, and size information.for burying the metadata in a user data area of an encoded audio stream. An audio encoder generates the encoded audio stream in which the metadata storing the trigger information is buried in the user data area based on the size information. A transmitter transmits the generated encoded audio stream to the receiving device. The present disclosure can be applied to the case of realizing data broadcasting in the United States and so forth for example. [Selected Drawing] FIG. 4
[Name of Document] Specification
[Title of the Invention] Transmitting Device,
Transmitting Method, Receiving Device, Receiving Method,
Program, and Broadcasting System
[Technical Field]
[0001]
The present disclosure relates to a transmitting
device, a transmitting method, a receiving device, a
receiving method, a program, and a broadcasting system,
and particularly to a transmitting device, a transmitting
method, a receiving device, a receiving method, a program,
and a broadcasting system that are suitable to be used in
the case of executing content of data broadcasting in
conjunction with the progression of show and commercial
message (CM) in e.g. digital television broadcasting.
[Background Art]
[0002]
In Japan, digitalization of television broadcasting
is being promoted and terrestrial digital broadcasting,
BS digital broadcasting, etc. are prevalent. In the
digital television broadcasting such as the terrestrial
digital broadcasting, not only broadcasting of shows of
news, drama, movie, etc. but also so-called data
broadcasting is also realized. According to content in
t^
this data broadcasting, for example information relating
to the on-air show (performer, story, etc.) can be
displayed and information having no relation to the onair
show (announcement of another show, news, weather
forecast, traffic information, etc.) can be displayed
(refer to e.g. Patent Document 1).
[0003] -
For the data broadcasting in Japan, in the
digitalization of the television broadcasting, the band
dedicated to the data broadcasting is ensured in advance
in the broadcasting, band of the digital television
broadcasting. The data broadcasting in Japan is realized
by broadcasting data broadcasting content by use of this
dedicated band,
[0004]
In contrast, in the digital television broadcasting
in the United States, the band dedicated to the data
broadcasting like that in the digital television
broadcasting in Japan is not ensured.
[0005]
Specifically, as shown in FIG. lA, the broadcasting
band of the present digital television broadcasting in
the United States is occupied by the band for video of
the show, the band for audio, and the band for control
information, and the band for broadcasting data
broadcasting content is not set. Therefore, to ensure the
band for broadcasting data^broadcasting content in the
limited broadcasting band of the digital television
broadcasting, for example the band for video and the band
for audio need to be narrowed as shown in FIG. IB.
[Prior Art Document]
[Patent Document]
[0006]
[Patent Document 1]
Japanese Patent Laid-open No. 2006-50237
[Summary of the Invention]
[Problems to be Solved by the Invention]
[0007]
However, ensuring the band for broadcasting data
broadcasting content by narrowing the band for video and
the band for audio leads to the deterioration of image,
quality and sound quality of shows and therefore is far
from practical countermeasures.
[0008]
Furthermore,, even if the band for data broadcasting
content is ensured by narrowing the band for video and
the band for audio, the amount of data that can be
transmitted is limited. Therefore, the amount of
information of the data broadcasting content will be poor.
If increasing the amount of information is attempted, it
will take a long time for the receiving side to receive
the necessary data.
[0009]
In. addition, in the United States, a retransmission
system for digital television shows by use of a cable TV
(CATV) network is prevalent, and therefore possibly the
following problem also occurs.
[0010]
FIG. 2 shows one example of the configuration of
the retransmission system for digital television shows by
use of a CATV network.
[0011]
This retransmission system is composed mainly of a
broadcasting device 1, a CATV retransmission device 2, a
CATV network 3, a digital television receiver 4, a settop
box (STB) 5, and a television receiver 6.
[0012]
The broadcasting device 1 set in e.g. a
broadcasting station broadcasts a digital television
broadcast signal by using a terrestrial wave or a
satellite wave. The CATV retransmission device 2 set in
e.g. a cable TV station receives the digital television
^
broadcasting to remove unnecessary information and add
original information of the CATV to the received
broadcasting. Subsequently, the CATV retransmission
device 2 retransmits the broadcasting to the digital
digital television receiver 4, the set-top box 5, and so
forth via the CATV network 3.
[0013]
The CATV retransmission device 2 includes a tuner
11, a PID filter 12 for filtering of a packet of a
predetermined packet ID, a CATV original signal generator
13, a multiplexer 14, and a modulator 15.
[0014]
The tuner 11 receives and demodulates digital
television broadcast signals of the respective channels,
and outputs the resulting transport stream (TS) to the
PID filter 12. The PID filter 12 removes a packet
corresponding to a predetermined packet ID (packet having
no relation to AV content as the show) from the TS and
outputs the resulting TS to the multiplexer 14. The CATV
original signal generator 13 generates a packet in which
original information of the CATV station is stored and
outputs it to the multiplexer 14. The multiplexer 14
multiplexes the output of the PID filter 12 and the
output of the CATV original signal generator 13 and
B
outputs the resulting TS to the modulator 15. The
modulator 15 modulates the output of the multiplexer 14
by a modulation system suitable for the CATV network 3
and retransmits the modulated TS to the digital
television receiver 4, the set-top box 5, and so forth
via the CATV network 3.
[0015]
The digital television receiver 4 compliant with
the CATV receives the TS of the retransmitted digital
television broadcasting via the CATV network 3 and
decodes the TS, to display the resulting video and output
audio.
[0016]
The set-top box 5 compliant with the CATV receives
the TS of the retransmitted digital television
broadcasting via the CATV network 3 and decodes the TS,
to output the resulting video signal and audio signal to
the television receiver 6 via e.g. an HDMI cable. Based
on the video signal and the audio signal input from the
set-top box 5 via e.g. the HDMI cable, the television
receiver 6 displays video and outputs audio;
[0017]
As described above, in the CATV retransmission
device 2, the packet corresponding to the predetermined
packet ID (packet having no relation to AV content as the
show) is removed from the TS of the digital broadcast
signal by the PID filter 12. Therefore, even if the band
for broadcasting data broadcasting content is ensured in
the broadcasting band as shown in FIG. IB, possibly the
packet in which the data broadcasting content is stored
is excluded by this PID filter 12.
[0018]
There is a need for a technique to allow
realization of data broadcasting content that can be in
conjunction with the progression of show and CM, of
television broadcasting without setting the band for data
broadcasting in the broadcasting band of digital
television broadcasting.
[Means for Solving the Problems]
[0019]
According to a first embodiment of the present
disclosure, there is provided a transmitting device
including an audio encoder configured to generate an
encoded audio stream in which trigger information
relating to control of an application program to be
executed in conjunction with content in a receiving
device is buried, and a transmitter configured to
transmit the generated encoded audio stream to the
7
receiving device.
[0020]
The transmitting device further includes a
controller configured to supply metadata in which the
trigger information is stored and size information for
burying the metadata in a user data area of the encoded
audio stream, and carry out control so that the metadata
may be buried in.the user data area.
[0021]
The audio encoder encodes an audio stream by an AC3
(Audio Code number 3) system to generate the encoded
audio stream, and the metadata is inserted in an area of
AUX (AUXILIARY DATA) in the frame structure of the ACS
system.
[0022]
The audio encoder encodes an audio stream by an AAC
(Advanced Audio Coding) system to generate the encoded
audio stream, and the metadata is inserted in an area of
DSE (Data Stream Element) in the frame structure of the
AAC system.
[0023]
The transmitting device further includes a video
encoder configured to encode a video stream to generate
an encoded video stream, and a multiplexer configured to
multiplex the encoded audio stream and the encoded video
stream to generate a multiplexed stream. The transmitter
transmits the generated multiplexed stream.
[0024]
Type information indicating the type of information
is added to the metadata.
[0025]
A plurality of kinds of information distinguished
by an information identifier are included in the metadata.
[0026]
A transmitting method or a program according to the
first embodiment of the present disclosure is a
transmitting method or a program corresponding to the
above-described transmitting device according to the
first embodiment of the present disclosure.
[0027]
In the first embodiment of the present disclosure,
the encoded audio stream in which the trigger information
relating to control of the application program to be
executed in conjunction with content in the receiving
device is buried is generated, and the generated encoded
audio stream is transmitted to the receiving device.
[0028]
According to a second- embodiment of the present
^^^
disclosure, there is provided a receiving'device
including a receiver configured to receive an encoded
audio stream in which trigger information relating to
control of an application program to be executed in
conjunction with content is buried. The encoded audio
stream is transmitted from a transmitting device. The
receiving device further includes an audio decoder
configured to decode the received encoded audio stream,
and a controller configured to control processing
relating to the application program executed in
conjunction with the content in response to the trigger
information obtained by decoding the encoded audio stream.
[0029]
The audio decoder acquires the trigger information
stored in metadata from an area of AUX in the frame
structure of the encoded audio stream encoded by an ACS
system.
[0030]
The audio decoder acquires the trigger information
stored in metadata from an area of DSE in the frame.
structure of the encoded audio stream encoded by an AAC
system.
[0031]
The receiving device further includes a
10
^^
demultiplexer configured to demultiplex a received
multiplexed stream, and a video decoder configured to
decode an encoded video stream demultiplexed from the
multiplexed stream. The audio decoder decodes the encoded
audio stream demultiplexed from the multiplexed stream.
[0032]
A receiving method or a program according to the
second embodiment of the present disclosure is a
receiving method or a program corresponding to the abovedescribed
receiving device according to the second
embodiment of the present disclosure.
[0033]
In the second embodiment of the present disclosure,
the encoded audio stream in which the trigger information
relating to control of the application program to be
executed in conjunction with the content is buried,
transmitted from the transmitting device, is received,
and the received encoded audio stream is decoded.
Furthermore, processing relating to the application
program executed in conjunction with the content is
controlled in response to the trigger information
obtained by decoding the encoded audio stream.
[0034]
According to a third embodiment of the present
11
^^p
disclosure, there is provided a broadcasting system
including a transmitting device configured to transmit
content, and a receiving device configured to receive •
transmitted content. The transmitting device includes an
audio encoder that generates an encoded audio stream in
which trigger information relating to control of an
application program to be executed in conjunction with
content in the receiving device is buried, and a
transmitter that transmits the generated encoded audio
stream to the receiving device. The receiving device
includes a receiver that receives the encoded audio
stream transmitted from the transmitting device, an audio
decoder that decodes the received encoded audio stream,
and a controller that controls processing relating to the
application program executed in conjunction with the
content in response to the trigger information obtained
by decoding the encoded audio stream.
[0035]
In the third embodiment of the present disclosure,
by the transmitting device, the encoded audio stream in
which the trigger information relating to control of the
application program to be executed in conjunction with
content in the receiving device is buried is generated,
and the generated encoded audio stream is transmitted to
12
•p
the receiving device. By the receiving device, the
encoded audio stream transmitted from the transmitting
device is received, and the received encoded audio stream
is decoded. Furthermore, processing relating to the
application program executed in conjunction with the
content is controlled in response to the trigger
information obtained by decoding the encoded audio stream.
[Effect of the Invention]
[0036]
According to the first embodiment of the present
disclosure, data broadcasting content can be controlled
in conjunction with the progression of show, CM, etc. of
television broadcasting without setting the band for data
broadcasting in the broadcasting band of digital
teleyision broadcasting.
[0037]
According to the second embodiment of the present
disclosure, data.broadcasting content can be controlled
in conjunction with the progression of show, CM, etc. of
television broadcasting without setting the band for data
broadcasting in the broadcasting band of digital
television broadcasting.
[0038]
According to the third embodiment of the present
1-3
^^p
disclosure, data broadcasting content can be controlled
in conjunction with the progression of show, CM, etc. of
television broadcasting without setting the band for data
broadcasting in the broadcasting band of digital
television broadcasting.
[Brief Description of Drawings]
[0039]
[FIG. 1] FIG. 1 is a diagram showing the broadcasting
band of digital television broadcasting.
[FIG. 2] FIG. 2 is a diagram showing one example of the
configuration of an existing CATV retransmission system.
[FIG. 3] FIG. 3 is a diagram showing a configuration
example of a broadcasting system according to an
embodiment of the present disclosure.
[FIG. 4] FIG. 4 is a diagram showing a configuration
example of a broadcasting device according to the
embodiment.
[FIG. 5] FIG. 5 is a block diagram showing a
configuration example of a receiving device according to
the embodiment.
[FIG. 6] FIG. 6 is a diagram showing metadata generic
syntax.
[FIG. 7] FIG. 7 is a diagram showing the metadata generic
syntax.
14
[FIG. 8] FIG. 8 is a diagram showing the metadata generic
syntax.
[FIG. 9] FIG. 9 is a diagram showing the metadata generic
syntax.
[FIG. 10] FIG. 10 is a diagram showing a concept that
trigger information is so transmitted as to be included
in a PCR.packet of a TS.
[FIG. 11] FIG. 11 is a diagram showing the specific
location of the trigger information in the PCR packet.
[FIG. 12] FIG. 12 is a diagram showing the specific
location of metadata in the PCR packet.
[FIG. 13] FIG. 13 is a diagram showing an example in
which trigger information is buried in a video signal.
[FIG. 14] FIG. 14 is a diagram showing the specific
location of trigger information inserted in an encoded
video stream.
[FIG. 15] FIG. 15 is a diagram showing the specific
location of the trigger information inserted in the
encoded video stream.
[FIG. 16] FIG. 16 is a diagram showing the configuration
of a frame of ACS.
[FIG. 17] FIG. 17 is a diagram showing the specific
location of metadata inserted in an encoded audio stream
(ACS).
15
[FIG. 18] FIG. 18 is a diagram showing the configurationof
a frame of AAC.
[FIG. 19] FIG. 19 is a diagram showing the specific
location of metadata inserted in an encoded audio stream
(AAC).
[FIG. 20] FIG. 20 is a diagram showing items included in
trigger information with a Pre_cache command in a first
embodiment of the present disclosure.
[FIG. 21] FIG. 21 is a diagram showing items included in
trigger information with an Execute command in the first
embodiment.
[FIG. 22] FIG. 22 is a diagram showing items included in
trigger information with an Inject_event command in the
first embodiment.
[FIG. 23] FIG. 23 is a diagram showing items included in
trigger information with a Suspend command in the first
embodiment.
[FIG. 24] FIG. 24 is a diagram showing items included in
trigger information with a Terminate command in the first
embodiment.
[FIG. 25] FIG. 25 is a diagram showing one example of the
syntax of trigger information compatible with the first
embodiment.
[FIG. 26] FIG. 26 is a diagram showing a display example
16
^
when an application program is executed in conjunction
with the progression of show and CM.
[FIG. 27] FIG. 27 is a flowchart for explaining trigger
information transmission processing.
[FIG. 28] FIG. 28 is a flowchart for explaining trigger
information response processing.
[FIG. 29] FIG. 29 is a diagram showing one example of the
operation scenario of an application program.
[FIG. 30] FIG. 30 is a diagram of a first state
transition of an application program in the receiving
device.
[FIG. 31] FIG. 31 is a diagram showing one example of the
scenario when plural application programs are
simultaneously controlled.
[FIG. 32] .FIG. 32 is a diagram showing items included in
trigger information with a Register command in a second
embodiment of the present disclosure.
[FIG. 33] FIG. 33 is a diagram showing items included in
trigger information with the Execute command in the
second embodiment.
[FIG. 34] FIG. 34 is a diagram showing items included in
trigger information with the Inject_event command in the
second embodiment.
[FIG. 35] FIG. 35 is a diagram showing items included in
. 17
trigger information with the Suspend command in the
second embodiment.
[FIG. 36] FIG. 36 is a diagram showing items included in
trigger information with the Terminate command in the
second embodiment.
[FIG. 37] FIG. 37 is a diagram showing one example of the
syntax of trigger information compatible with the second
embodiment.
[FIG. 38] FIG. 38 is a flowchart for explaining
application registration management processing.
[FIG. 39] FIG. 39 is a diagram of a second state
transition of an application program in the receiving
device.
[FIG. 40] FIG. 40 is a diagram showing the relationship
between commands and state transition.
[FIG. 41] FIG. 41 shows the life cycles of an application
program in the second embodiment.
[FIG. 42] FIG. 42 is a diagram showing the relationship
among multi-application programs.
[FIG. 43] FIG. 43 is a diagram showing an operation
example of multi-application programs.
[FIG. 44] FIG. 44 is a block diagram showing,a
configuration example of a computer.
[Modes for Carrying Out the Invention]
[0040]
Best modes for carrying out the invention
(hereinafter, referred to as embodiments) will be
described in detail below with reference to the drawings.
[0041]
<1. First Embodiment>
[Configuration Example of Broadcasting System]
FIG. 3 shows a broadcasting system of an embodiment.
This broadcasting system 30 realizes data broadcasting
content that can be in conjunction with AV content of
show, CM, etc. in the state in which the band for
broadcasting the data broadcasting content is not set in
the broadcasting band of digital television broadcasting
like in e.g. the present United States.
[0042]
The data broadcasting content is realized by
activation of an application program supplied to a
receiving device by the receiving device. Therefore,
hereinafter, the data broadcasting content will be
referred to also as data broadcasting application program
or data broadcasting application. The data broadcasting
application may be configured from one program data or
may be a program data group composed of plural program
data.
19
#
[0043]
This broadcasting system 30 is composed of a
broadcasting device 41 and a server 42 that are provided
on the broadcasting station side, and a reproducing
device 59 and a receiving device 60 that are provided on
the receiver side.
[0044]
The broadcasting device 41 transmits a digital
television broadcast signal. Furthermore, the
broadcasting device 41 transmits trigger information as a
command relating to the operation of data broadcasting
content linked to AV content in such a manner that the
trigger information is included in the digital television
broadcast signal. Specifically, the trigger information
is so transmitted as to be disposed in the transport
stream (TS) of the digital television broadcast signal or
buried in a video signal.
[0045]
The trigger information includes information
indicating the kind of command,- information indicating
the acquisition source of a data broadcasting application,
and so forth. Details of the trigger information will be
described later.
[0046]
20
4
The server 42 supplies a data broadcasting
application in response,to a request from the receiving
device 60 that accesses the server 42 via the Internet 50,
."[0047]
The receiving device 60 receives a digital
broadcast signal broadcast from the broadcasting device
41 and outputs video and audio of AV content to a monitor
(not shown). Furthermore, the receiving device 60
accesses the server 42 via the Internet 50 and acquires
data broadcasting content. It is to be noted that, this
receiving device 60 may exist as a single device or may
be included in e.g. a television receiver or a video
recorder.
[0048]
The reproducing device 59 reproduces video and
audio of AV content recorded in e.g.' a predetermined
recording medium and outputs them to the receiving device
60.
[0049]
[Configuration Example of Broadcasting Device]
FIG. 4 shows a configuration example of the
broadcasting device 41. The broadcasting device 41
includes a controller 51, a video encoder 52, an audio
encoder 53, a multiplexer 54, and a sender 55.
21
4
[0050]
The controller 51 generates trigger information in
association with the progression of a video stream of
show and CM input from the previous stage and outputs it
to the video encoder 52 and the, multiplexer 54.
[0051]
Furthermore, the controller 51 generates metadata
in which trigger information is stored in association
with the progression of the video stream and outputs it
to the audio encoder 53 and the multiplexer 54. In the
metadata, predetermined information having no direct
relation to audio data, such as trigger information, is
stored. Details of the metadata will be described later.
[0052]
The video encoder 52 encodes the video stream of
show and CM input from the previous stage in accordance
with a predetermined encoding system and outputs the
resulting encoded video stream to the multiplexer 54.
Examples of the encoding system in the video encoder 52
include MPEG2 system and H.264 system.
[0053]
In the encoding of the video stream, the video
encoder 52 buries the trigger information from the
controller 51 in the video stream and encodes the video
22
^
stream, to output the resulting encoded video stream to
the multiplexer 54.
[0054]
The audio encoder 53 encodes the audio stream
corresponding to the video stream input to the video
encoder 52 in accordance with a predetermined encoding
system and outputs the resulting encoded audio stream to
the multiplexer 54. Examples of the encoding system in
the audio encoder 53 include AC3 (Audio Code number 3)
system and AAC (Advanced Audio Coding) system.
[0055]
In the encoding of the audio stream, the audio
encoder 53 buries the metadata from the controller 51 in
the audio stream and encodes the audio stream, to output
the resulting encoded audio stream to the multiplexer 54,
[0056]
The multiplexer 54 multiplexes the input encoded
video stream and encoded audio stream and multiplexes
also the trigger information or the metadata to output
the resulting multiplexed stream to the sender 55.
Specifically, the multiplexer 54 multiplexes the streams
into e.g. a transport stream (TS). Alternatively, in
consideration of network delivery of digital television
broadcasting, the multiplexer 54 may multiplex the
23
w
streams into the ISO base media file format (MP4)
suitable for the network delivery.
[0057]
In the above description, the trigger information
is buried in the video stream and the metadata is buried
in the audio stream. In addition, the trigger information
or the metadata is multiplexed into the multiplexed
stream. However, only one of these steps may be carried
out. Alternatively, the combination of any of these steps
may be carried out.
[0058]
The sender 55 sends out the input multiplexed
stream as a digital television broadcast signal.
[0059]
[Configuration Example of Receiving Device]
FIG. 5 shows a configuration example of the
receiving device 60. The receiving device 60 includes a
tuner 61, a demultiplexer 62, an audio decoder 63, an
audio output part 64, a video decoder 65, a trigger
detector 66, a video output part 67, a controller 68, a
memory 69, an operation part 70, a recording part 71, a
communication I/F 72, a cache memory 73, an application
engine 74, an application memory 75, an HDMI I/F 76, a
switch 77, and a switch 78.
24
i
[0060]
The tuner 61 receives and demodulates a digital
television broadcast signal corresponding to the channel
selected by the user and outputs the resulting TS to the
demultiplexer 62. The demultiplexer 62 demultiplexes the
TS input from the tuner 61 into an encoded audio stream
(audio encoded signal), an encoded video stream (video
encoded signal), and a control signal and outputs them to
the switch 77, the video decoder 65, or the controller 68
[0061]
Furthermore, the demultiplexer 62 extracts a PCR
packet including trigger information disposed in the TS
and outputs it to the trigger detector 56.
[0062]
To the HDMI I/F 7 6, AV content sent from the
reproducing device 59 by communication compliant with the
HDMI (High Definition Multimedia Interface) is input. The
HDMI I/F 76 outputs the encoded audio stream (audio
encoded signal) of the AV content from the reproducing
device 59 to the switch 77 and outputs a video signal to
the switch 78.
[0063]
As the input from the reproducing device 59 to the
HDMI I/F 76, an audio signal is input in the decoded
25
4
state in some cases, and an audio signal is input in the
undecoded state in other cases. The present description
will deal with the case in which an encoded audio stream
is input.
[0064]
To the switch 77, the encoded audio stream from the
demultiplexer 62 and the encoded audio stream from the
HDMI I/F 76 are input. The switch 77 outputs one of the
input encoded audio streams to the audio decoder 63 based
on a preset instruction from the user.
[0065]
The audio decoder 63 decodes the input encoded
audio stream and outputs the resulting audio stream
(audio signal) to the audio output part 64 and the
trigger detectdr 66. The audio output part 64 outputs the
input audio signal to the subsequent stage (e.g. speaker)
[0066]
The video decoder 65 decodes the input encoded
video stream and outputs the resulting video stream
(video signal) to the trigger detector 66 and the switch
78.
[0067]
The trigger detector 66 detects the trigger
information stored in the metadata buried in the input
26
4
audio stream and outputs it to the controller 68.
Furthermore,. the trigger detector 66 detects the trigger
information buried in the input video stream and outputs
it to the controller 68 (if the trigger information is
disposed only in the TS, these operations of the trigger
detector 66 are unnecessary). In addition, the trigger
detector 66 extracts the trigger information or the
trigger information stored in the metadata from,the PCR
packet including the trigger information, input from the
demultiplexer 62, and outputs it to the controller 68.
[0068]
With omission of the trigger detector 66, the
trigger information may be extracted from the audio
stream in the audio decoder 63 and the trigger
information may be extracted from the video stream in the
video decoder 65. In this case, in the demultiplexer 62,
the trigger information multiplexed into the multiplexed
stream is demultiplexed to be output directly to the
controller 68.
[0069]
To the switch 78, the video signal from the HDMI
I/F 7 6 and the video signal from the video decoder 65 are
input. The switch 7 8 outputs one of the input video
signals to the video output part 67 based on a preset
27
instruction from the user.
[0070]
The video output part 67 outputs the video signal
input from the switch 7 8 to the subsequent stage (e.g.
display). Furthermore, the video output part 67 combines
the video of data broadcasting content input from the
application engine 7 4 and the video signal input from the
video decoder 65 and outputs the resulting signal to the
subsequent stage.
[0071]
The controller 68 runs a control program recorded
in the memory 69 to thereby control the whole receiving
device 60. Furthermore, the controller 68 controls
acquisition, registration^ activation, event firing,
suspension, resume, stop, and so forth of the data
broadcasting application based on the trigger information
input from'the trigger detector 66.
[0072]
In the memory 69, the control program run by the
controller 68 is recorded. This control program can be
updated based on the digital television broadcast signal
or update data supplied via the Internet 50. The
ope.ration part 70 accepts various kinds of operation from
the user and notifies the controller 68 of an operation
28
4
signal corresponding to the operation.
[0073]
If the data broadcasting application is delivered
by using the digital television broadcast signal, the
recording part 71 retains the downloaded data
broadcasting application in a recording medium such as a
built-in hard disk.
[0074]
The communication I/F 72 connects to the server 42
via the Internet 50 in accordance with control from the
application engine 74. The application engine 74 acquires
the data broadcasting application from the server 42 via
the communication I/F 72 and the Internet 50 in
accordance with control from the controller 68 and makes
the cache memory 73 retain it.
[0075]
The application engine 7 4 reads out and runs the
data broadcasting application retained in the recording
part 71 or the cache memory 73 'in accordance with control
from the controller 68.
[0076]
The application memory 75 is composed of a work
memory 75A and a save memory 75B. The application engine
74 records data relating to the running data broadcasting
29
application (specifically, including the hierarchy of
displayed information and so forth) in the work memory
7 5A. Furthermore, when suspending the running data
broadcasting application, the application engine 74 moves
the data, in the work memory 75A of the application memory
7 5 to the save memory 75B. When resuming the suspended
data broadcasting application, the application engine 74
moves the data in the save memory 75B to the work memory
75A to restore the state before the suspension.
[0077]
One and the other of two areas having the same size
in the application memory 75 may be alternately switched
to the work memory 75A and the save memory 75B. This can
omit the data movement between the work memory 75A and
the save memory 75B.
[0078]
[Transmitting Method of Trigger Information]
The transmitting method of trigger information will
be described below. As the transmitting method of trigger
information, the following four kinds of methods are
possible.
[0079]
(a) Method in which Trigger Information is Inserted in
PCR Packet
30
#
(b) Method in which Trigger Information is Buried in
Video Signal
(c) Method in which Trigger Information is Inserted in
Encoded Video Stream (Video Encoded Signal)
(d) Method in which Trigger Information is Inserted in
Encoded Audio Stream (Audio Encoded Signal)
[0080]
Among the above-described methods (a) to (d), in
the methods (b) and (c), trigger information is inserted
as it is. In the methods (a) and (d), trigger information
is inserted with a generic metadata transmission format
including information other than the trigger information.
In the method (a), trigger information may be inserted as
it is.
[0081]
[Metadata Generic Syntax]
The metadata generic syntax used in the abovedescribed
methods (a) and (d) will be described below.
FIG. 6 to FIG. 8 show one example of the metadata generic
syntax. FIG. 9 shows main data defining contents
(semantics) in the metadata generic syntax. In the
description of FIG. 6 to FIG. 8, reference to the
contents of FIG. 9 is accordingly used.
[0082]
31
FIG. 6 shows one example of the syntax of
metadata()
[0083]
sync_byte is a unique word indicating metadata
container. metadata_type indicates the type information
of the metadata. This type information makes it possible
to selectively transmit metadata of plural types. For
example, 00000011 indicates that the metadata to be
transmitted is trigger information.
[0084]
metadata_length indicates the number of subsequent
bytes. metadata_ID is information for identifying the
kind in the type of the metadata. This identifier makes
it possible to simultaneously transmit plural kinds of
information of the same type.
[0085]
metadata_counter is count information-indicating
what number divided information the information to be
transmitted is when the series of metadata is so
transmitted as to be divided. This count information is
the count value of the counter incremented every audio
frame,
[0086]
metadata_start_flag indicates whether or not the
32
information to be transmitted is the first divided
information when the series of metadata (metadata packet)
is so transmitted as to be divided. For example, 1
indicates that the information is the first divided
information, and 0 indicates that the information is not
the first divided information but the divided information
subsequent to the divided information of the previous
frame.
[0087]
sync_control_flag indicates whether or not the
metadata is synchronously managed. 1 indicates that the
metadata is synchronously managed by PTS in
PTS_management(). 0 indicates that the metadata is not
synchronously managed. When sync_control_flag is 1,
PTS_management() exists.
[0088]
FIG. 7 shows one example of the syntax of
PTS_management0, and time information indicated by 33
bits of PTS[32-0] exists.
[0089]
Referring back to FIG. 6, data_byte for the number
of bytes indicated by metadata_length configures the
whole of the metadata packet Metadata_packet() or any
piece of divided information obtained by dividing this
33
^
metadata packet Metadata_packet() into plural pieces of
information.
[0090]
FIG. 8 shows one example of the syntax of
metadata_packet().
[0091]
packet_type indicates the type information of the
metadata similarly to metadata_type of metadata() (FIG.
6) . metadata_packet_length indicates the number of
subsequent bytes. In data_byte for the number of bytes
indicated by this metadata_packet_length, the whole of
metadata_packet() is described.
[0092]
For example, if information stored in the metadata
is trigger information, metadata_Packet() of the trigger
information, i.e. Trigger_info_data() (FIG. 25, FIG. 37)
to be described later, is described in this data_byte.
[0093]
The information stored in the metadata may be
information other than the trigger information. For
example, other service access information (Metadata for
linking service) and disparity information (Metadata for
disparity shifting data) can be stored. Details of the
other service access information and the disparity
34
^
information are described in e.g. Japanese Patent
Application No. 2011-061549, which is an application by
the present assignee.
[0094] .
[(a) Method in which Trigger Information is Inserted in
PCR Packet]
Details of the respective transmitting methods of
trigger information will be described below. FIG. 10
shows the concept of the case in which trigger
information is so transmitted as to be disposed in a PCR
(Program Clock Reference) packet of the TS of a digital
television broadcast signal.
[0095]
As shown in FIG. 10, the trigger information is not
stored in all PCR packets but stored in a PCR packet only
at the proper timing for linkage to AV content (show, CM,
etc.) . In general, the PCR packet passes through the FID
filter 12 of the CATV retransmission device 2 like that
shown in FIG. 2 and thus a receiving device utilizing a
CATV network (digital television receiver 4 in FIG. 2)
can also be notified of the trigger information.
[0096]
As the trigger information, information of the same
contents is transmitted plural times successively in
35
Jt
consideration of radio interference and acquisition
imperfection (reception miss) in the receiving device 60.
[0097]
FIG. 11 shows the position at which trigger
information is stored in the PCR packet. The PCR packet
is a TS packet with adaptation_field in which PCR is
stored. The trigger information (Trigger Info_descriptor)
is stored in transport_private_data_byte following the
PCR. If the trigger information is stored,
transport_private_data_flag of Various_flags provided
before the PCR is set to 1.
[0098]
As shown in FIG. 12, trigger information may be•
stored in metadata and the metadata may be stored in
transport_private_data_byte. Also in this case,
transport_private_data_flag of Various_flags is set to 1.
[0099]
In this manner, in the method (a), in which trigger
information is inserted in a PCR packet, the trigger
information or metadata in which the trigger information
is stored is stored in transport_private_data_byte of the
PCR packet.
[0100]
[ (b) Method in which Trigger Information is Buried in
36
J^
video Signal]
FIG. 13 shows two kinds of examples in which
trigger information is buried in a video signal.
[0101]
FIG. 13A shows an example in which trigger
information is turned to a two-dimensional barcode and is
so combined as to be superimposed onto a predetermined
position (in the present case, lower right corner) of the
image of the video signal. FIG. 13B shows an example in
which trigger information is turned to a video code and
combined with several lines at the lower part of the
image of the video signal. The trigger information in FIG,
13A and FIG. 13B is detected by the trigger detector 66
of the receiving device 60.
[0102]
In either example of FIG. 13A or FIG. 13B, the
trigger information is disposed on the video of AV
content and thus e.g. a receiving device utilizing a CATV
network (e.g. television receiver 6 in FIG. 2) can also
be notified of the trigger information.
[0103]
Furthermore, in either example of FIG. 13A or FIG.
13B, possibly the trigger information (two-dimensional
barcode or video code) on the video is visually
37
recognized by the user of the receiving device 60. If
this is not preferable, it is preferable to display the
video after masking the trigger information on the video
by the same pixels as those around the trigger
information.
[0104]
In this manner, in the method (b), in which trigger
information is buried in a video signal, the trigger
information is buried in a predetermined area of the
image of the video signal.
[0105]
[(c) Method in which Trigger Information is Inserted in
Encoded Video Stream]
FIG. 14 and FIG. 15 show an example of the case in
which trigger information is inserted in an encoded video
stream (video encoded signal) of MPEG2.
[0106]
FIG. 14 shows the configuration of video_sequence()
defined in MP_EG2 video.
[0107]..
If trigger information is inserted in an encoded
video stream of MPEG2, user_data in the picture layer in
video_sequence() is utilized.
[0108]
38
t
FIG. 15 shows one example of the syntax of
user_data().
[0109]
In user_data_start_code, 0x000001B2 is described as
a fixed value. In Trigger_Info_Data_identifier,
0x54524749 ("TRGI") is described as a fixed value.
[0110]
In Trigger_info_data(), trigger information, i.e.
Trigger_info_data() (FIG. 25, FIG. 37) to be described
later, is described.
[0111]
In this manner, in the method (c), in which trigger
information is inserted in an encoded video stream, the
trigger information is inserted in an area of user_data()
of video_sequence().
[0112]
[(d) Method in which Trigger Information is Inserted in
Encoded Audio Stream]
FIG. 16 and FIG. 17 show an example of the case in
which metadata in which trigger information is stored is
inserted in an encoded audio stream (audio encoded
signal) encoded by the ACS system.
[0113]
FIG. 16 shows the structure of the frame of AC3
39
i
(ACS Synchronization Frame) . If the encoding system is ,
the AC3 system, the metadata is inserted in an area of
AUX (AUXILIARY DATA).
[0114]
FIG. 17 shows one example of the syntax of AUX.
When auxdatae is 1, aux data is enabled and data having
the size indicated by 14 bits (bit unit) of auxdatal is
defined in auxbits. The size of audbits is described in
nauxbits. The space of auxbits is defined as metadata()
and trigger information is inserted,.
[0115]
FIG. 18 and FIG. 19 show an example of the case in
which metadata in which trigger information is stored is
inserted in an encoded audio stream encoded by the AAC
system.
[0116]
FIG. 18 shows the structure of the frame in which
audio data for 1024 samples of AAC are stored
(Raw_data_block) . If the encoding system is the AAC
system, the metadata is inserted in an area of DSE (Data
Stream Element).
[0117]
FIG. 19 shows one example of the syntax of DSE.
element_instance_tag indicates the kind of data in
40
i
data_stream_element. If DSE is utilized as unified user
data, the value of element_instance_tag may be set to 0.
Data_byte_align_flag is set to 1 so that the whole of DSE
may be subjected to byte align. The value of count or
esc_count, which means the number of added bytes of count,
is accordingly decided depending on the size of the user
data. The space of data_stream_byte is defined as
metadata() and trigger information is inserted.
[0118]
In this manner, in the method (d), in which trigger
information is inserted in an encoded audio stream,
metadata in which the trigger information is stored is
inserted in an area of AUX if encoding is performed by
the AC3 system, and is inserted in an area of DSE if
encoding is performed by the AAC system. Although the
cases in which the ACS system and the AAC system are
employed as the encoding system have been described, it
is also possible to apply this method to another encoding
system.
[0119]
[Details of Trigger Information]
Details of trigger information will be described
below. The trigger information is classified into five
kinds depending on the ]<:ind of command included in the
41
%
trigger information.
[0120]
Two combinations of five kinds of commands have
been proposed. The first combination (hereinafter,
referred to as first embodiment) is composed of commands
of Pre_cache, Execute, Inject_event, and Terminate. The
second combination (hereinafter, referred to as second
embodiment) is composed of commands of Register, Execute,
Inject_event, and Terminate.
[0121]
First, five kinds of commands in the first
embodiment will be described. The second embodiment will
be described later with reference to FIG. .32 and
subsequent diagrams.
[0122]
[First Example of Five Kinds of Commands]
FIG. 20 shows items included in trigger information
as the Pre_cache command. The Pre_cache command is a
command for instructing the receiving device 60 to
acquire a data broadcasting application.
[0123]
Trigger_id is information for identification of
this trigger information. If trigger information of the
same contents is transmitted plural times, Trigger_id of
42
^
the respective pieces of trigger information is the same.
Protcol_version indicates the version of the protocol of
this trigger information. Command_code indicates the kind
of command of this trigger information. In the case of
FIG. 20, information indicating that the command is the
Pre_cache command is described in Command_code.
[0124]
Trigger_varidity is a parameter value N of server
access distribution indicating the probability that the
respective receiving devices 60 that have received this
trigger information execute processing in accordance with
this trigger information. Due to the provision of this
value, in acquisition of a data broadcasting application
by the plural receiving devices 60 from the server 42,
the access can be distributed without concentrating on
one period. For example, to distribute access from the
receiving devices 60, which possibly exist in large
numbers, to the server 42 into four times of access, the
same trigger information is transmitted four times and
the parameter N of server access distribution is set as
follows. Specifically, the parameter N in the trigger
information of the first round is set to 4, and the
parameter N in the trigger information of the second
round is set to 3. In addition, the parameter N in the
43
trigger information of the third round is set to 2, and
the parameter N in the trigger information of the fourth
round is set to 1.
[0125]
App_id is identification information of the data
broadcasting application acquired corresponding to this
trigger information. App_type is information indicating
the type (e.g. HTML5, Java) of the data broadcasting
application corresponding to this trigger information.
App_url is the URL of the acquisition source of the data
broadcasting application.
[0126]
Broadcast_App_flag, Downloaded_App_flag, and
Internet_App_flag are flags indicating where the data
broadcasting application corresponding to this trigger
information exists. Broadcast_App_flag is set to 1 if the
data broadcasting application corresponding to this
trigger information can be acquired from a digital
television broadcast signal. Downloaded_App_flag is set
to 1 if the data broadcasting application corresponding
to this trigger information has been already downloaded
and can be acquired from a local storage (e.g. recording
part 71) . Internet_App_flag is set to 1 if the data
broadcasting application corresponding to this trigger
44
information can be acquired from the server 42 via the
Internet 5Q.
[0127]
FIG. 21 shows items included in trigger information
as the Execute command. The Execute command is a command
for instructing the receiving device 60 to activate a
data broadcasting application.
[0128]
Trigger_id, Protcol_version, Command_code,
J
Trigger_varidity, App_id, App_type, App_url,
Broadcast_App_flag, Downloaded_App_flag, and
Internet_App_flag are the same as those of the trigger
information as the Pre_cache command shown in FIG. 20.
However, in Command_code, information indicating that the
command is the Execute command is described.
[0129]
App_life_scope indicates the range in which the
running state is continued without stopping the running
data broadcasting application when switching of e.g. the
channel occurs. App_expire_date indicates the time and
date when the running data broadcasting application is
stopped although the Terminate command is not received.
[0130]
FIG. 22 indicates items included in trigger
45
information as the Inject_event command. The Inject_event
command is a command for making the receiving device 60
fire an event in the running data broadcasting
application.
[0131]
Trigger_id, Protcol_version, Command_code,
Trigger_varidity, App_id, and App_type are the same as
those of the trigger information as the Pre_cache command
shown in FIG. 20. However, in Command_code, information
indicating that the command is the Inject_event command
is described.
[0132]
Event_id is identification information of the event
that should be fired in the data broadcasting application
specified by App_id. In Event Embedded Data, the data
used as reference in event firing is described.
[0133]
FIG. 23 shows items included in trigger information
as the Suspend command. The Suspend command is a command
for making the receiving device 60 suspend the running
data broadcasting application.
[0134]
Trigger_id, Protcol_version, Command_code,
Trigger_varidity, App_id, and App_type are the same as
46
those of the trigger information as the Pre_cache command
shown in FIG. 20. However, in Command_code, information
indicating that the command is the Suspend command is
described.
[0135]
FIG. 24 shows items included in trigger information
as the Terminate command. The Terminate command is a
command for making the receiving device 60 stop the
running data broadcasting application.
[0136]
Trigger_id, Protcol_version, Coirlmand_code,
Trigger_varidity, App_id, and App_type are the same as
those of the trigger information as the Pre_cache command
shown in FIG. 20. However, in Command_code, information
indicating that the command is the Terminate command is
described.
[0137]
FIG. 25 shows one example of the syntax of trigger
information compatible with the trigger information as
the above-described respective commands. However, the
syntax of trigger information may be any syntax and is
not limited to the example of FIG. 25.
[0138]
[Outline of Operation of Receiving Device 60]
47
The operation of the receiving device 60 in
accordance with trigger information will be described
below.
[0139] '
FIG. 26 shows the transition of the display screen
of the receiving device 60 when the receiving device 60
is made to run a data broadcasting application
corresponding to AV content (show, CM, etc.).
[0140]
For example, as shown in FIG. 26A, a show (in the
present case, "seven o'clock news") is broadcast. When
the contents of the show transition to economic
information, in conjunction with this transition, trigger
information of the Execute command for the data
broadcasting application corresponding to the show is
transmitted. When the trigger information is received by
the receiving device 60, the data broadcasting
application is activated, and an icon for notifying the
user that displaying of the data broadcasting application
is ready (in the present case, "stock") is displayed on
the screen on which the show is being displayed as shown"
in FIG. 26B.
[0141]
If the user selects this icon, as shown in FIG. 26C,
48
show is suspended. Thereafter, trigger information of the
Execute command for the data broadcasting application
corresponding to the CM is transmitted. When this trigger
information is received, the data broadcasting
application of the CM is activated. Thereby, as shown in
FIG. 26E, an icon for encouraging the user to display the
data broadcasting application corresponding to the CM (in
the present case, "participate in prize competition") is
displayed on the screen on which the CM is being
displayed.
[0144]
If the user selects this icon, displaying by the
data broadcasting application corresponding to the CM (in
the present case, displaying for participation in prize
competition) is carried out on the screen.
[0145]
After the end of the CM, in synchronization with
show resumption, trigger information of the Execute
command for the data broadcasting application
corresponding to the show is transmitted. When the
trigger information is received, as shown in FIG. 26F,
the displaying of the data broadcasting application
corresponding to the CM is erased and displaying of the
data broadcasting application of the show is resumed from
50
the state stopped in the previous suspension.
[0146]
When the show ends, in conjunction with this end,
trigger information of the Terminate command for the data
broadcasting application corresponding to the show is
transmitted. When this trigger information is received,
the data broadcasting application is stopped, and the
displaying of the data broadcasting application is erased
from the screen and only the video of the show is
displayed as shown in FIG. 26G.
[0147]
The method for displaying the data broadcasting
application is not limited to the method in which
displaying of the show is reduced to make the area for
displaying of the data broadcasting application as shown
in FIG. 26. For example, displaying of the data
broadcasting application may be superimposed on
displaying of the show.
[0148]
[Trigger Information Transmission Processing]
With reference to FIG. 27, a description will be
made below about trigger information transmission
processing when the broadcasting device 41 makes trigger
information be included in a digital television broadcast
51
signal and transmits this broadcast signal.
[0149]
FIG. 27 is a flowchart for explaining the trigger
information transmission processing.
[015Q1
In a step SlOl, the controller 51 generates trigger
information associated with the progression of a video
stream of show and CM input from the previous stage.
[0151]
In a step S102, the video encoder 52 encodes the
video stream of show and CM input from the previous stage
and outputs the resulting encoded video stream to the
multiplexer 54.
[0152]
In a step S103, the controller 51 determines
whether or not to insert the trigger information in an
encoded audio stream based on a preset instruction from
the user.
[0153]
If it is determined to insert the trigger
information in the encoded audio stream, the processing
is forwarded to a step S104. In the step S104, the
controller 51 generates metadata based on the trigger
information and outputs the metadata to the audio encoder
52
53 together with size information for burying this
metadata in the user data area.
[0154]
In a step S105, the audio encoder 53 encodes an
audio- stream and inserts .the metadata from the controller
51 in the audio stream based on the size information from
the controller 51, to output the resulting encoded audio
stream to the multiplexer 54.
[0155]
For example, if the encoding system is the AC3
system (FIG. 16), the controller 51 supplies information
of size S = (frmsizcod - AUXDATA) to the audio encoder 53,
frmsizcod is the size of the AC3 audio frame and a value
dependent on the bit rate and the sampling frequency is
specified as frmsizcod. For example, the value is 384*2
Bytes if the bit rate is 128 kbps and the sampling
frequency is 32 kHz. The value is 279*2 Bytes if the bit
rate is 128 kbps and the sampling frequency is 44.1 kHz.
The value is 256*2 Bytes if the bit rate is 128 kbps and
the sampling frequency is 48 kHz.
[0156]
The audio encoder 53 performs the encoding with the
aim at the size S as the target value, and encodes audio
data in such a manner that the total size of mantissa
53
data of Audblock 5, AUX, and CRC does not surpass 3/8 of
the whole. Furthermore, the audio encoder 53 inserts the
metadata in an area of AUX and makes CRC to complete the
stream. Thereby, in the area of AUX (AUXILIARY DATA) in
FIG. 17, the metadata in which the trigger information is
stored is inserted in the space of auzbits.
[0157]
If the encoding system is the AAC system (FIG. 18)
for example, the controller 51 supplies, to the audio
encoder 53, information of the size DSE_S = cnt of DSE
(Data Stream Element) in which the metadata should be
inserted. The audio encoder 53 encodes audio data and
adds DSE in which the metadata is inserted to complete
the stream. Thereby, in the area of DSE in FIG. 19, the
metadata in which the trigger information is stored is •
inserted in the space of data_stream_byte.
[0158]
It is also possible for the audio encoder 53 to
perform the encoding twice in a divided manner. In this
case, first the audio encoder 53 performs normal encoding,
i.e. encoding for the case in which DSE or AUX is absent,
and thereafter inserts the metadata in DSE or AUX with
the size reserved in advance and performs encoding again.
[0159]
54
In the above-described manner, in the audio encoder
53, processing for burying the metadata in the user data
area of the encoded audio stream (e.g. AUX in the case of
the AGS system or DSE in the case of the AAC system) is
executed, and the processing is forwarded to a step S107.
[0160]
If it is determined in the step S103 not to insert
the trigger information in the encoded audio stream, the
processing is forwarded to a step S106. In the step S106,
the audio encoder 53 encodes the audio stream and outputs
the resulting encoded audio stream to the multiplexer 54.
Thereafter, the processing is forwarded to the step S107.
[0161]
In the step S107, the multiplexer 54 multiplexes
the encoded video stream output from the video encoder 52
and the encoded audio stream output from the audio
encoder 53 and outputs the resulting multiplexed stream
to the sender 55.
[0162]
In a step S108, the sender 55 sends out (transmits)
the multiplexed stream input from the multiplexer 44 as a.
digital television broadcast "signal. Thereafter, the
processing is returned to the step SlOl, so that this and
subsequent steps are repeated. This is the end of the
55
description of the trigger information transmission
processing.
[0163]
In the above description of the trigger information
transmission processing, among the above-described
methods (a) to (d) for transmitting trigger information,
the method (d), in which trigger information is inserted
in an encoded audio stream, is explained. However,
trigger information and metadata can be buried also in
the methods (a) to (c) similarly. For example, if the
method (a) is employed, trigger information or metadata
is inserted in a PCR packet in the multiplexing by the
multiplexer 54. If the method (b) is employed, trigger
information is buried in a video signal of a video stream.
If the method (c) is employed, trigger information is
inserted in an encoded video stream in the encoding by
the video encoder 52.
[0164]
[Trigger Information Response Processing]
Trigger information response processing when the
receiving device 60 receives trigger information will be
described below with reference to FIG. 28.
[0165]
FIG. 28 is a flowchart for explaining the trigger
56
information response processing. This trigger information
response processing is repeatedly executed when the user
is watching a television show, i.e. while a digital
television broadcast signal is received.
[0166]
In a step Si, the trigger detector 66 determines
whether or not trigger information is received.
[0167]
As the condition of this determination, if the
above-described method (a) is employed, the trigger
detector 66 waits until a PCR packet including trigger
information is input from the demultiplexer 62. If the
method (b) or (c) is employed, the trigger detector 66
waits until trigger information is detected from a video
signal output from the video decoder 65. If the method
(d) is employed, the trigger detector 66 waits until
trigger information stored in metadata is detected from
an audio signal output from the audio decoder 65. If a
PCR packet including trigger information is input or
trigger information is detected, the processing is
forwarded to a step S2.
[0168]
In the step S2, the trigger detector 66 outputs the
trigger information to the controller 68. The controller
57
68 reads out Trigger_id of the trigger information and
determines whether or not the processing of a step S3 and
subsequent steps has been already executed for this
trigger information. If it is determined that the
processing of the step S3 and subsequent steps has been
already executed, the processing is returned to the step
81, so that this and subsequent steps are repeated. In
contrast, if it is determined that the processing of the
step S3 and subsequent steps has not been executed for
this trigger information, the processing is forwarded to
the step S3.
[0169]
In the step S3, the controller 68 reads out
Command_code of the trigger information and determines
which of the following the command indicated by this
trigger information is: Pre_cache, Execute, Inject_event,
Suspend, and Terminate.
[0170]
In a step S4, the controller 68 determines whether
or not the determination result of the step S3 is
Pre_cache. If it is determined that the determination
result is Pre_cache, the processing is forwarded to a
step S5.
[0171]
58
In the step S5, the controller 68 causes
acquisition of the data broadcasting application
specified by App_id of this trigger information.
Specifically, if Broadcast_App_flag of this trigger
information is 1, the data broadcasting application
specified by App_id is acquired from a television
broadcast signal and recorded in the recording part 71.
If Downloaded_App_flag of this trigger information is 1,
the data broadcasting application specified by App_id is
acquired from the recording part 71 as a local storage.
If Internet_App_flag of this trigger information is 1,
the data broadcasting application specified by App_id is
acquired from the server 42 via the Internet 50 and
recorded in the cache memory 73. If two or more flags of
Broadcast_App_flag, Downloaded_App_flag, and
Internet_App_flag are 1, the data broadcasting
application specified by App_id of this trigger
information can be acquired depending oh convenience for
the receiving device 60. Thereafter, the processing is
returned to the step SI, so that this and subsequent
steps are repeated.
[0172]
If it is determined in the step S4 that the
determination result of the step S3 is not Pre_cache, the
59
processing is forwarded to a step S6. In the step S6, the
controller 68 determines whether or not, the determination
result of the step S3 is Execute. If it is determined
that the determination result is Execute, the processing
is forwarded to a step S7.
[0173]
In the step S7,-the application engine 74
determines whether or not the data broadcasting
application specified by App_id of this trigger
information is dormant (in the suspended state) in
accordance with control from the controller 68.
Specifically, it is determined that the data broadcasting
application is dormant if data indicating the suspended
state of the data broadcasting application specified by
App_id is saved in the save memory 75B,
[0174]
If it is determined in the step S7 that the data
broadcasting application specified by App_id is not
dormant, the processing is forwarded to a step S8. In the
step S8, in accordance with control from the controller
68, the application engine 74 acquires the data
broadcasting application specified by App_id if this data
broadcasting application has not yet been acquired (does
not exist in the recording part 71 or the cache memory
60
73) .
[0175]
In a step S9, if a currently-running data
broadcasting application exists, the application engine
7 4 stops it in accordance with control from the
controller 68.
[0176]
In a step SIO, the application engine 74 activates
the data broadcasting application specified by App_id in
accordance with control from the controller 68.
Thereafter, the processing is returned to the step SI, so
that this and subsequent steps are repeated.
[0177]
If it is determined in the step S7 that the data
broadcasting application specified by App_id is dormant
(in the suspended state), the processing is forwarded to
a step Sll. In the step Sll, the application engine 74
moves data in the save memory 7 5B to the work memory 75A
and activates the data broadcasting application specified
by App_id in accordance with control from the controller
68. Thereby, the dormant data broadcasting application
specified by App_id is resumed from the suspended state.
Thereafter, the processing is returned to the step Si, so
that this and subsequent steps are repeated.
61
[0178]
If it is determined in the step S6 that the
determination result of the step S3 is not Execute, the
processing is forwarded to a step S12. In the step S12,
the controller 68 determines whether or not the
determination result of the step S3 is Inject_event. If
it is determined that the determination result is
Inject_event, the processing is forwarded to a step S13.
[0179]
In the step S13, only when App_id of this trigger
information corresponds with App_id of the running data
broadcasting application, the controller 68 controls the
application engine 74 to fire (execute) the event
corresponding to Event_id of the trigger information in
the running application. Thereafter, the processing is
returned to the step Si, so that this and subsequent
steps are repeated.
[0180]
If it is determined in the step S12 that the
determination result of the step S3 is not Inject_event,
the processing is forwarded to a step S14. In the step
S14, the controller 68 determines whether or not the
determination result of the step S3 is Suspend. If it is
determined that the determination result is Suspend, the
62
processing is forwarded to a step S15.
[0181]
In the step S15, the application engine 74 saves,
in the save memory 75B, data indicating the state of the
currently-running data broadcasting application (i.e.
data currently written to the work memory 75A, including
information indicating the hierarchy of the displayed
information if a hierarchical structure exists in the
displayed information) in accordance with control from
the controller 68. Thereafter, the processing is returned
to the step SI, so that this and subsequent steps are
repeated.
[0182]
If it is determined in the step S14 that the
determination result of the step S3 is not Suspend, the
determination result of the step S3 is Terminate and thus
the processing is forwarded to a step S16. In the step
516, if the data broadcasting application specified by
App_id is running, the application engine 74 stops it in
accordance with control from the controller 68. In a step
517, in accordance with control from the controller 68,
the application engine 74 erases data relating to the
data broadcasting application specified by App_id from
the work memory 75A and the save memory 75B and erases
63
the data broadcasting application from the recording part
71 or the cache memory 73. Thereafter, the processing is
returned to the step SI, so that this and subsequent
steps are repeated.
[0183]
This is the end of the description of the trigger
information response processing. The above-described
trigger information response processing enables
activation of a data broadcasting application, event
firing, and stop of the data broadcasting application in
conjunction with AV content (show, CM, etc.) of
television broadcasting. Furthermore, a data broadcasting
application can be suspended in such a manner that the
running state is held, and another data information
application can be executed and stopped. Thereafter, the
suspended data broadcasting application can be resumed
from the suspended state.
[0184]
[Operation Scenario]
The above-described trigger information response
processing enables operation of a data broadcasting
application like that shown in FIG. 29.
[0185]
FIG. 29 shows one example of the operation scenario
64
of a data broadcasting application.
[0186]
The broadcasting device 41 transmits trigger
information of the Pre_cache command instructing
acquisition of the data broadcasting application
corresponding to a show in conjunction with the
progression of the show. Thereupon, the data broadcasting
application is acquired in the receiving device 60 that
has received the trigger information.
[0187]
Next, the broadcasting device 41 transmits trigger
information of the Execute command for the data
broadcasting application corresponding to the show in
conjunction with the progression of the show. Thereupon,
the broadcasting application is launched in the receiving
device 60 that has received the trigger information. By
this launch, an icon indicating that displaying of the
data broadcasting application is ready is so displayed as
to be superimposed on the video of the show.
[0188]
If the user selects this icon, displaying by the
data broadcasting application is superimposed on the
video of the show on the screen.
[0189]
65
The broadcasting device 41 transmits trigger
information of the Inject_event command in conjunction
with the progression of the show. Thereupon, in the
receiving device 60 that has received the trigger
information, an event is fired in the running data
broadcasting application (e.g. displaying is changed).
[0190]
Subsequently, at a predetermined timing, the
broadcasting device 41 transmits trigger information of
the Suspend command for the data broadcasting application.
Thereupon, in the receiving device 60 that has received
the trigger information, the running data broadcasting
application is suspended (relevant data is retained in
the save memory 75B). Thereafter, the broadcasting device
41 transmits trigger information of the Execute command
for the data broadcasting application. Thereupon, in the
receiving device 60 that has received the trigger
information, the suspended data broadcasting application
is resumed.
[0191]
Furthermore, the broadcasting device 41 transmits
trigger information of the Terminate command in
conjunction with the end of the show. Thereupon, in the
receiving device 60 that has received the trigger
66
information, the running data broadcasting application is
stopped.
[0192]
[First State Transition of Data Broadcasting Application]
FIG. 30 is a state transition diagram of a data
broadcasting application that operates in the receiving
device 60 in response to the respective commands of
Pre_cache, Execute, Inject_event, Suspend, and Terminate,
which are the first example of five kinds of commands.
[0193]
As shown in FIG. 30, it is defined that the state
of the data broadcasting application has transitioned to
one of four kinds of states, i.e. Stopped state. Ready
state. Active state, and Suspended state.
[0194]
The Stopped state refers to the state in which the
data broadcasting application has not yet been acquired
into the receiving device 60. The Ready state refers to
the state in which the data broadcasting application has
been acquired into the receiving device 60 and is not
activated. The Active state refers to the state in which
the data broadcasting application is activated and
running. The Suspended state refers to the state in which
the execution of the data broadcasting application is
67
interrupted and information indicating the state of the
interruption timing is retained in the save memory 75B.
[0195]
When the data broadcasting application has
transitioned to the Stopped state (has not yet been
acquired into the receiving device 60), transition to the
Ready state occurs if trigger information of the
Pre_cache command is received and the data broadcasting
application is acquired in accordance with the Pre_cache
command.
[0196]
When the data broadcasting application is in the
Ready state, transition to the Active state occurs if
trigger information of the Execute command is received
and the data broadcasting application is activated in
accordance with the Execute command.
[0197]
When the data broadcasting application has
transitioned to the Stopped state (has not yet been
acquired into the receiving device 60), transition to the
Active state occurs if trigger information of the Execute
command is received and the data broadcasting application
is acquired and activated in accordance with the Execute
command.
68
[0198]
When the data broadcasting application has
transitioned to the Active state, transition to the
Suspended state occurs if trigger information of the
Suspend command is received and the running data
broadcasting application is interrupted in accordance
with the Suspend command.
[0199]
When the data broadcasting application has
transitioned to the Suspended state, transition to the
Active state occurs if trigger information of the Execute
command is received and the interrupted data broadcasting
application is resumed in accordance with the Execute
command.
[0200]
When the data broadcasting application has
transitioned to the Ready state, the Active state, or the
Suspended state, transition to the Stopped state occurs
if trigger information of the Terminate command is
received and the running data broadcasting application is
stopped in accordance with the Terminate command. The
transition to the Stopped state is not limited to
transition based on trigger information of the Terminate
command. The transition to the Stopped state occurs also
69
when App_expire_date of trigger information passes, when
another data_ broadcasting application is executed, and
when switching of the reception channel is beyond
App_life_scope.
[0201]
[State Transition of Plural Data Broadcasting
Applications]
The state transition of plural data broadcasting
applications that can be sequentially executed in the
receiving device 60 will be described below.
[0202]
FIG. 31 shows one example of the operation scenario
when the plural data broadcasting applications are
sequentially executed. Hereinafter, three data
broadcasting applications will be referred to as data
broadcasting applications A, B, and C.
[0203]
When a show is started, the data broadcasting
applications A, B, and C are all in the Stopped state.
When the Execute command for the data broadcasting
application A is received, the data broadcasting
application A is acquired and activated to become the
Active state. At this time, in the work memory 75A, data
relating to the data broadcasting application A is
70
written.
[0204]
Next, when the Suspend command for the data
broadcasting application A is received, the data relating
to the data broadcasting application A, written to the
work memory 75A, is moved to the save memory 75B and the
data broadcasting application A becomes the Suspended
state. Thereafter, when the Execute command for the data
broadcasting application B is received, the data
broadcasting application B is acquired and activated to
become the Active state. At this time, in the work memory
75A, data relating to the data broadcasting application B
is written.
[0205]
If the Pre_cache command for the data broadcasting
application C-is received when the data broadcasting
application B is in the Active state, the data
broadcasting application C is acquired to become the
Ready state.
[0206]
Next, when the Execute command for the data
broadcasting application A is received, because the data
broadcasting application A is in the Suspended state, the
data relating to the data broadcasting application A is
71
moved from the save memory 75B to the work memory 75A and
the data broadcasting application A is resumed. The data
broadcasting application B is stopped.
[0207]
Thereafter, when the Execute command for the data
broadcasting application C in the Ready state is received,
the data broadcasting application C is read out and
activated to become the Active state. In the work memory
75A, data relating to the data broadcasting application C
is written. The data broadcasting application A is
stopped.
[0208]
As described above, plural data broadcasting
applications can be sequentially executed in the
receiving device 60 and a suspended data broadcasting
application can also be resiimed from the suspended state.
[0209]
<2. Second Embodiment>
[Second Example of Five Kinds of Commands]
The second embodiment will be described below. As
described above, five kinds of commands in the second
embodiment are the commands of Register, Execute,
Inject_event, and Terminate.
[0210]
72
FIG. 32 shows items included in trigger information
as the Register command in the second embodiment. The
Register command is a command for instructing the
receiving device 60 to acquire and register a data
broadcasting application.
[0211]
Specifically, this Register command is the same as
the Pre_cache command in the first embodiment in that it
instructs acquisition of a data broadcasting application,
but is different in that it instructs also registration
of the data broadcasting application. The registration of
a data broadcasting application means that the priority
(Persistent_priority) and retention time limit
(Expire_date) of the acquired data broadcasting
application are stored in association with this data
broadcasting application. The stored data broadcasting
application is managed in accordance with the priority
and the retention time limit by the controller 68
(details will be described later).
[0212]
Trigger_id, Protcol_version,. Command_code,
Trigger_varidity, App_type, and App_life_scope are the
same as those of the trigger information as the Pre_cache
command shown in FIG. 20. However, in Command_code,
73
information indicating that the command is the Register
command is described.
[0213]
App_id in the second embodiment is identification
information of the data broadcasting application acquired
corresponding to this trigger information and also
indicates the URL of the acquisition source thereof (in
the present case, server 42). In other words, the
acquisition source of the data broadcasting application
is diverted also to the identification information
thereof and set as App_id. Therefore, in the trigger
information as the Register command, the item of App_url,
which exists in the trigger information as the Pre_cache
command shown in FIG. 20, is omitted. However, App_url
may be included in the trigger information as the
Register command.
[0214]
Persistent_priority indicates the priority of
acquisition and retention of the corresponding data
broadcasting application. In the present case, two bits
are allocated to Persistent_priority and thus four levels
of priority can be given. In acquisition and retention of
the corresponding data broadcasting application, if the
recording capacity to retain it is not left in the
74
recording part 71, a data broadcasting application having
priority lower than that of the corresponding data
broadcasting application is erased from the recording
part 71 to thereby ensure the recording capacity. If a
data broadcasting application having priority lower than
that of the corresponding data broadcasting application
is not retained in the recording part 71, the
corresponding data broadcasting application is not
acquired. However, if possible, it may be acquired and
temporarily retained in the cache memory 73.
[0215]
Expire_date indicates the retention time limit of
the corresponding data broadcasting application retained
in the recording part 71. If the retention time limit
passes, the corresponding data broadcasting application
is erased from the recording part 71.
[0216]
FIG. 33 shows items included in trigger information
as the Execute command in the second embodiment. The
Execute command is a command for instructing the
receiving device 60 to activate a data broadcasting
application.
[0217]
Items included in the trigger information as the
75
Execute command are the same as those included in the
trigger information as the Register command shown in FIG.
32. However, in Command_code, information indicating that
the command is the Execute command is described.
[0218]
FIG. 34 shows items included in trigger information
as the Inject_event command in the second embodiment. The
Execute command is a command for instructing the
receiving device 60 to activate a data broadcasting
application.
[0219]
Items included in the trigger information as the
Inject_event command in the second embodiment are the
same as those in the first embodiment, shown in FIG. 22.
However, the number of bits allocated to App_id is
different.
[0220]
FIG. 35 shows items included in trigger information
as the Suspend command in the second embodiment. The
Suspend command is a command for making the receiving
device 50 suspend the running data broadcasting
application.
[0221]
Items included in the trigger information as the
76
Suspend command in the second embodiment are the same as
those in the first embodiment, shown in FIG. 23. However,
as differences, the number of bits allocated to App_id is
different and App_type is omitted.
[0222]
FIG. 36 shows items included in trigger information
as the Terminate command in the second embodiment. The
Terminate command is a command for making the receiving
device 60 suspend the running data broadcasting
application.
[0223]
Items included in the trigger information as the
Terminate command in the second embodiment are the same
as those ,in the first embodiment, shown in FIG. 24.
However, as differences, the number of bits allocated to
App_id is different and App_type is omitted.
[0224]
FIG. 37 shows one example of the syntax of trigger
information compatible with the trigger information as
the second embodiment of the above-described respective
commands. However, the syntax of trigger information may
be any syntax and is not limited to the example of FIG.
37.
[0225]
77
[Explanation of Application Registration Management
Processing]
The trigger response processing in the receiving
device 60 in the second embodiment is substantially the
same as that in the above-described first embodiment. A
difference is as follows. In the trigger response
processing in the first embodiment, a data broadcasting
application is acquired and stored (step S5 in FIG. 28)
in response to reception of trigger information as the
Pre_cache command. In the second embodiment, application
registration management processing is executed in
response to reception of trigger information as the
Register command. That is, the application registration
management processing is executed instead of the step S5
in FIG. 28.
[0226]
FIG. 38 is a flowchart for explaining this
application registration management processing. The
application registration management processing is started
if it is determined that received trigger information has
the Register command.
[0227]
In a step S31, the controller 68 determines whether
or not the recording capacity to retain the data
78
broadcasting application specified by the trigger
information is left in the recording part 71. If it is
determined that the recording capacity is left, the
processing is forwarded to a step S34. In contrast, if it
is determined that the recording capacity is not left,
the processing is forwarded to a step S32.
[0228]
In the step S32, the controller 68 erases, from the
recording part 71, a data broadcasting application whose
priority is lower than that of the data broadcasting
application specified by the trigger information among
the data broadcasting applications retained in the
recording part 71 (i.e. data broadcasting applications
that have been already registered). In a step S33, the
controller 68 determines whether or not the recording
capacity to retain the data broadcasting application
specified by the trigger information could be ensured in
the recording part 71. If it is determined that the
recording capacity could be ensured, the processing is
forwarded to the step S34. In contrast, if it is
determined that the recording capacity could not be
ensured, the corresponding data broadcasting application
is not acquired and the application registration
management processing is ended.
79
*
[0229]
In the step S34, the controller 68 makes the data
broadcasting application be acquired from its acquisition
source indicated by App_id of the trigger information and
be retained in the recording part 71. In a step S35, the
controller 68 registers the acquired and retained data
broadcasting application (manages the data broadcasting
application in such a manner as to associate it with its
priority and retention time limit). Through the abovedescribed
steps, the application registration management
processing is ended.
[0230]
The registered data broadcasting application is
erased from the recording part 71 when its retention time
limit passes. Thereby, the registration of this data
broadcasting application is deleted.
[0231]
[Second State Transition of Data Broadcasting
ApplicatioriJ
FIG. 39 is a state transition diagram of a data
broadcasting application that operates in the receiving
device 60 in response to trigger information as the
respective commands of Register, Execute, Inject_event,
Suspend, and Terminate, which are five kinds of commands
80
in the second embodiment. As shown in FIG. 39, it is
defined that the state of the data broadcasting
application has transitioned to one of four kinds of
states, i.e. Released state. Ready state. Active state,
and Suspended state.
[0232]
The Released state refers to the state in which the
data broadcasting application has not yet been acquired
into the receiving device 60. The Ready state refers to
the state in which the data broadcasting application has
been registered in the receiving device 60 and is not
activated. The Active state refers to the state in which
the data broadcasting application is activated and
running. The Suspended state refers to the state in which
the execution of the data broadcasting application is
interrupted and information indicating the state of the
interruption timing is retained in the save memory 75B.
[0233]
FIG. 40 shows the relationship between the
respective commands and the state transition.
[0234]
When the data broadcasting application has
transitioned to the Released state (has not yet been
acquired into the receiving device 60), transition to the
Ready state occurs if the data broadcasting application
is acquired and retained to be registered in response to
trigger information of the Register command.
[0235]
When the data broadcasting application is in the
Ready state, transition to the Active state occurs if the
data broadcasting application is activated in response to
trigger information of the Execute command.
[0236]
When the data broadcasting application has
transitioned to the Released state (has not yet been
acquired into the receiving device 60), transition to the
Active state occurs if the data broadcasting application
is acquired and registered to be activated in response to
trigger information of the Execute command.
[0237]
When the data broadcasting application has
transitioned to the Active state, transition to the
Suspended state occurs if the running data broadcasting
application is interrupted in response to trigger
information of the Suspend command.
[0238]
When the data broadcasting application has
transitioned to the Active state, transition to the Ready
82
state occurs if the running data broadcasting application
is stopped in response to trigger information of the
Terminate command. The transition to the Ready state
occurs also when switching of video gets out of
App_life_scope or when another data broadcasting
application is activated.
[0239]
When the data broadcasting application has
transitioned to the Suspended state, transition to the
Active state occurs if the interrupted data broadcasting
application is resumed in response to trigger information
of the Execute command.
[0240]
When the data broadcasting application has
transitioned to the Suspended state, the data
broadcasting application transitions to the Ready state
in response to trigger information of the Terminate
command.
[0241]
When the data broadcasting application has
transitioned to the Ready state, the Active state, or the
Suspended state, if the retention time limit of this data
broadcasting application passes, this data broadcasting
application is erased from the recording part 71 and the
registration thereof is deleted, so that transition to
the Released state occurs.
[0242]
[Life Cycle of Data Broadcasting Application]
In the first embodiment, if a data broadcasting
application activated once is stopped, this data
broadcasting application is erased from the recording
part 71. In contrast, in the second embodiment, a
registered data broadcasting application is not erased
until its retention time limit passes, even if it is
activated and stopped. Therefore, the registered data
broadcasting application can be so operated as to be
activated and stopped plural times as shown in FIG. 41.
However, possibly a data broadcasting application having
low priority is erased irrespective of its retention time
limit when the capacity of the recording part 71 is
insufficient.
[0243]
FIG. 41 shows three kinds of life cycle of a data
broadcasting application, possible in the second
embodiment.
[0244]
FIG. 41A shows the life circle of a data
broadcasting application that is activated and stopped '
84
*
only one time. This data broadcasting application is
registered and activated in response to the Execute
command and is stopped and transitions to the Ready state
in response to the Terminate command. Thereafter, it is
erased from the recording part 71 when its retention time
limit passes.
[0245]
FIG. 41B shows the life circle of a data
broadcasting application that is registered to be
activated and stopped plural times. This data
broadcasting application is acquired and retained to be
registered in response to the Register command.
Subsequently, it is activated in response to the Execute
command and is stopped and transitions to the Ready state
in response to the Terminate command. Thereafter, it is
activated in response to the Execute command again and is
stopped and transitions to the Ready state in response to
the Terminate command. Thereafter, it is ^erased from the
recording part 71 when its retention time limit passes.
[0246]
FIG. 41C shows the life circle of a data
broadcasting application that transitions to the
Suspended state. This data broadcasting application is
acquired and retained to be registered in response to the
Register command. Subsequently, it is activated in
response to the Execute command and transitions to the
Suspended state in response to the Suspend command.
Thereafter, it is resumed in response to the Execute
command and is stopped and transitions to the Ready state
in response to the Terminate command. Thereafter, it is
erased from the recording part 71 when its retention time
limit passes.
[0247]
[Operation of Plural Data Broadcasting Applications]
In the above, only the case in which a data
broadcasting application is activated in response to
trigger information as the Execute command is described.
However, it is possible to activate a data broadcasting
application without using trigger information as the
Execute command. Specifically, as shown in FIG. 42,
inside a data broadcasting application AppO activated in
response to the Execute command, functions for activating
other data broadcasting applications Appl, App2, and so
forth are described. This can activate the data
broadcasting application Appl and so forth depending on
e.g. the progression status of the data broadcasting
application AppO and user's operation for the data
broadcasting application AppO.
86
#
[0248]
FIG. 43 shows an example of operation in which
three data broadcasting applications appO, appl, and app2
are activated in linkage with each other.
[0249]
First, the following pieces of trigger information
are broadcast: trigger information as the Execute command
for the data broadcasting application appO, trigger
information as the Register command for the data
broadcasting application appl, and trigger information as
the Register command for the data broadcasting
application app2. In the receiving device 60 that has
received them, the data broadcasting application appO is
acquired and registered to be activated. On the screen of
the executed data broadcasting application appO, icons
corresponding to the data broadcasting applications appl
and app2, respectively, are displayed. Simultaneously,
the data broadcasting applications appl and app2 are
acquired and registered.
[0250]
If the user selects the icon corresponding to the
data broadcasting application appl displayed on the
screen of the data broadcasting application appO, the
running data broadcasting application appO is stopped and
87
the data broadcasting application appl is activated.
Thereafter, event firing, suspension, resume, and stop of
the data broadcasting application appl are carried out in
response to the Inject_event command. Suspend command,
the Execute command, and the Terminate command,
respectively, for the running data broadcasting
application appl.
[0251]
If the user selects the icon corresponding to the
data broadcasting application app2 displayed on the
screen.of the data broadcasting application appO, the
running data broadcasting application appO is stopped and
the data broadcasting application app2 is activated.
Thereafter, event firing and stop of the data
broadcasting application app2 are carried out in response
to the Inject_event command and the Terminate command,
respectively, for the running data broadcasting
application app2.
[0252]
According to the above-described operation, it is
possible to activate plural data broadcasting
applications in linkage with each other without using
trigger information as the Execute command.
[0253]
As described above, in both the first and second
embodiments, processing relating to the data broadcasting
application can be executed in conjunction with AV
content of show, CM, etc.
[0254]
Also when a digital television show is
retransmitted via e.g. a CATV network or a satellite
communication network, service of data broadcasting
content that can be in conjunction with the television
show can be realized.
[0255]
The above-described series of processing can be
executed by hardware and can be executed also by software,
If the series of processing is executed by software, the
program configuring the software is installed from a
program recording medium into a computer incorporated
into dedicated hardware or e.g. a general-purpose
personal computer that can execute various kinds of
functions through installation of various kinds of
programs.
[0256]
FIG. 44 is a block diagram showing a configuration •
example of the hardware of a computer that executes the
above-described series of processing by a program.
89
[0257]
In this computer 100, a CPU (central processing
unit) 101, a ROM (read only memory) 102, and a RAM .
(random access memory) 103 are connected to each other by
a bus 104.
[0258]
To the bus 104, an input/output interface 105 is
further connected. To the input/output interface 105, the
following units are connected: an input unit 106 composed
of a keyboard, a mouse, a microphone, etc., an output
unit 107 composed of a display, a speaker, etc., a
storage unit 108 composed of a hard disk, a non-volatile
memory, etc., a communication unit 109 composed of a
network interface, etc., and a drive 110 that drives a
removable medium 111 such as a magnetic disk, an optical
disk, a magnetooptical disk, or a semiconductor memory.
[0259]
In the computer having the above-described
configuration, the CPU 101 loads a program stored in the
storage unit 108 into the RAM 103 via the input/output
interface 105 and the bus 104 and executes the program
for example, and thereby the above-described series of
processing is executed.
[0260]
90
The program executed by the computer may be a
program processed in a time-series manner along the order
described in the present specification, or may be a
program processed in parallel or at the necessary timing
such as when a call is made.
[0261]
The program may be one processed by one computer,
or may be one subjected to distributed processing by
plural computers. Furthermore, the program may be one
transferred to a distant computer and executed by the
computer.
[0262]
In the present specification, the system refers to
the whole device composed of plural devices.
[0263]
Embodiments in the present disclosure are not
limited to the above-described embodiments and various
changes can be made without departing from the gist of
the present disclosure.
[Description of Reference Symbols]
[0264]
30 Broadcasting system, 41 Broadcasting device,
51 Controller, 52 Video encoder, 53 Audio encoder, 54
Multiplexer, 55 Sender, 42 Server, 59 Reproducing
91
device, 60 Receiving device, 61 Tuner, 62 Demultiplexer,
63 Audio decoder, 64 Audio output part, 65 Video
decoder, 66 Trigger detector, 67 Video output part, 68
Controller, 69 Memory, 70 Operation part, 71 Recording
part, 72 Communication I/F, 73 Cache memory, 74
Application engine, 75 Memory, 75A Work memory, 75B
Save memory
92
[Name of Document] Claims
[Claim 1]
A transmitting device comprising:
an audio encoder configured to generate an encoded
audio stream in which trigger information relating to
control of an application program to be executed in
conjunction with content in a receiving device is buried;
and
a transmitter configured to transmit the generated
encoded audio stream to the receiving device.
[Claim 2]
The transmitting device according to claim 1,
further comprising:
a controller configured to supply metadata in which
the trigger information is stored and size information
for burying the metadata in a user data area of the
encoded audio stream, and carry out control so that the
metadata be buried in the user data area.
[Claim 3]
The transmitting device according to claim 2,
wherein
the audio encoder encodes an audio stream by an AC3
(Audio Code number 3) system to generate the encoded
audio stream, and
93
the metadata is inserted in an area of AUX
(AUXILIARY DATA) in a frame structure of the AC3 system.
[Claim-4]
The transmitting device according to claim 2,
wherein
the audio encoder encodes an audio stream by an AAC
(Advanced Audio Coding) system to generate the encoded
audio stream, and
the metadata is inserted in an area of DSE (Data
Stream Element) in a frame structure of the AAC system.
[Claim 5]
The transmitting device according to claim 1,
further comprising:
a video encoder configured to encode a video stream
to generate an encoded video stream; and
a multiplexer configured to multiplex the encoded
audio stream and the encoded video stream to generate a
multiplexed stream,
wherein the transmitter transmits the generated
multiplexed stream.
[Claim 6]
The transmitting device according to claim 1,
wherein
type information indicating a type of information
94
is added to the metadata.
[Claim 7]
The transmitting device according to claim 1,
wherein
a plurality of kinds of information distinguished
by an information identifier are included in the metadata,
[Claim 8]
A transmitting method of a transmitting device that
transmits content, the method comprising the steps of:
generating an encoded audio stream in which trigger
information relating to control of an application program
to be executed in conjunction with content in a receiving
device is buried; and
transmitting the generated encoded audio stream to
the receiving device.
[Claim 9]
A program for controlling a transmitting device
that transmits content, the program causing a computer of
the transmitting device to execute processing comprising
the steps of:
generating an encoded audio stream in which trigger
information relating to control of an application program
to be executed in conjunction with content in a receiving
device is buried; and
95
transmitting the generated encoded audio stream to
the receiving device.
[Claim 10]
A receiving device comprising:
a receiver configured to receive an encoded audio
stream in which trigger information relating to control
of an application program to be executed in conjunction
with content is buried, the encoded audio stream being
transmitted from a transmitting device;
an audio decoder configured to decode the received
encoded audio stream; and
a controller configured to control processing
relating to the application program executed in
conjunction with the content in response to the trigger
information obtained by decoding the encoded audio stream,
[Claim 11]
The receiving device according to claim 10, wherein
the audio decoder acquires the trigger information
stored in metadata from an area of AUX in a frame
structure of the encoded audio stream encoded by an AC3
system.
[Claim 12]
The receiving device according to claim 10, wherein
the audio decoder acquires the trigger information
96
stored in metadata from an area of DSE in a frame
structure of the encoded audio stream encoded by an AAC
system.
[Claim 13]
The receiving device according to claim 10, further
comprising:
a demultiplexer configured to demultiplex a
received multiplexed stream; and
a video decoder configured to decode an encoded
video stream demultiplexed from the multiplexed stream,
wherein the audio decoder decodes the encoded audio
stream demultiplexed from the multiplexed stream.
[Claim 14]
A receiving method of a receiving device that
receives content, the method comprising the steps of:
receiving an encoded audio stream in which trigger
information relating to control of an application program
to be executed in conjunction with content is buried, the
encoded audio stream being transmitted from a
transmitting device;
decoding the received encoded audio stream; and
controlling processing relating to the application
program executed in conjunction with the content in
response to the trigger information obtained by decoding
97
the encoded audio stream.
[Claim 15]
A program for controlling a receiving device that
receives content, the program causing a computer of the
receiving device to execute processing comprising the
steps of:
receiving an encoded audio stream in which trigger
information relating to control of an application program
to be executed in conjunction with content is buried, the
encoded audio stream being transmitted from a
transmitting device;
decoding the received encoded audio stream; and
controlling processing relating to the application
program executed in conjunction with the content in
response to the trigger information obtained by decoding
the encoded audio stream.
[Claim 16]
A broadcasting system comprising":
a transmitting device configured to transmit
content; and
a receiving- device configured to receive
transmitted content,
wherein the transmitting device includes
an audio encoder that generates an encoded
-98
audio stream in which trigger information relating to
control of an application program to be executed in
conjunction with content in the receiving device i's
buried,.and
a transmitter that transmits the generated
encoded audio stream to the receiving device, and
the receiving device includes
a receiver that receives the encoded audio
stream transmitted from the transmitting device,
an audio decoder that decodes the received
encoded audio stream, and
a controller that controls processing
relating to the application program executed in
conjunction with the content in response to the trigger
information obtained by decoding the encoded audio stream.
| # | Name | Date |
|---|---|---|
| 1 | 8350-DELNP-2013.pdf | 2013-10-04 |
| 2 | 8350-delnp-2013-Form-3-(31-01-2014).pdf | 2014-01-31 |
| 3 | 8350-delnp-2013-Correspondence-Others-(31-01-2014).pdf | 2014-01-31 |
| 4 | 8350-delnp-2013-GPA.pdf | 2014-03-11 |
| 5 | 8350-delnp-2013-Form-5.pdf | 2014-03-11 |
| 6 | 8350-delnp-2013-Form-3.pdf | 2014-03-11 |
| 7 | 8350-delnp-2013-Form-2.pdf | 2014-03-11 |
| 8 | 8350-delnp-2013-Form-1.pdf | 2014-03-11 |
| 9 | 8350-delnp-2013-Drawings.pdf | 2014-03-11 |
| 10 | 8350-delnp-2013-Description (Complete).pdf | 2014-03-11 |
| 11 | 8350-delnp-2013-Correspondence-others.pdf | 2014-03-11 |
| 12 | 8350-delnp-2013-Claims.pdf | 2014-03-11 |
| 13 | 8350-delnp-2013-Abstract.pdf | 2014-03-11 |
| 14 | 8350-delnp-2013-From-3-(01-04-2015).pdf | 2015-04-01 |
| 15 | 8350-delnp-2013-Correspondence Others-(01-04-2015).pdf | 2015-04-01 |
| 16 | 8350-DELNP-2013-FER.pdf | 2019-01-16 |
| 17 | 8350-DELNP-2013-FORM 4(ii) [15-07-2019(online)].pdf | 2019-07-15 |
| 18 | 8350-DELNP-2013-PETITION UNDER RULE 137 [31-07-2019(online)].pdf | 2019-07-31 |
| 19 | 8350-DELNP-2013-OTHERS [01-08-2019(online)].pdf | 2019-08-01 |
| 20 | 8350-DELNP-2013-FER_SER_REPLY [01-08-2019(online)].pdf | 2019-08-01 |
| 21 | 8350-DELNP-2013-CORRESPONDENCE [01-08-2019(online)].pdf | 2019-08-01 |
| 22 | 8350-DELNP-2013-CLAIMS [01-08-2019(online)].pdf | 2019-08-01 |
| 23 | 8350-DELNP-2013-Power of Attorney-070819.pdf | 2019-08-13 |
| 24 | 8350-DELNP-2013-Correspondence-070819.pdf | 2019-08-13 |
| 25 | 8350-DELNP-2013-SER.pdf | 2019-09-17 |
| 26 | 8350-DELNP-2013-Correspondence to notify the Controller (Mandatory) [24-09-2019(online)].pdf | 2019-09-24 |
| 27 | 8350-DELNP-2013-FER_SER_REPLY [14-10-2019(online)].pdf | 2019-10-14 |
| 28 | 8350-DELNP-2013-CORRESPONDENCE [14-10-2019(online)].pdf | 2019-10-14 |
| 29 | 8350-DELNP-2013-CLAIMS [14-10-2019(online)].pdf | 2019-10-14 |
| 1 | SearchPattern-_20-07-2018.pdf |