throbber
United States Patent [19J
`Fujii et al.
`
`111111
`
`1111111111111111111111111111111111111111111111111111111111111
`US005898695A
`[11] Patent Number:
`[45] Date of Patent:
`
`5,898,695
`Apr. 27, 1999
`
`[54] DECODER FOR COMPRESSED AND
`MULTIPLEXED VIDEO AND AUDIO DATA
`
`[75]
`
`Inventors: Yukio Fujii, Yokohama; Masuo Oku,
`Kamakura, both of Japan
`
`[73] Assignee: Hitachi, Ltd., Tokyo, Japan
`
`........................... 348/423
`9/1997 Okada et a!.
`5,668,601
`5,677,980 10/1997 Naoe ....................................... 348/384
`2/1998 Kikuchi et a!. ......................... 348/466
`5,719,646
`
`FOREIGN PATENT DOCUMENTS
`
`0679028A2 10/1995 European Pat. Off .......... H04N 7/64
`0679035A2 10/1995 European Pat. Off .......... H04N 7/64
`
`[21] Appl. No.: 08/622,622
`
`[22] Filed:
`
`Mar. 27, 1996
`
`[30]
`
`Foreign Application Priority Data
`
`Mar. 29, 1995
`Mar. 29, 1995
`
`[JP]
`[JP]
`
`Japan .................................... 7-071131
`Japan .................................... 7-071132
`
`Int. Cl.6
`....................................................... H04N 7/12
`[51]
`[52] U.S. Cl. ............................. 370/464; 348/423; 348/10
`[58] Field of Search ..................................... 348/423, 467,
`348/385, 382, 7, 10, 714; 370/389, 464,
`522,503,428,457,509,535,536,537
`
`[56]
`
`References Cited
`
`OTHER PUBLICATIONS
`
`P. Stamminitz, et al, "Hardware Implementation of the
`Transport Stream Demultiplexer for the HDTV r Demonstra(cid:173)
`tor", Signal Processing of HDTV, VI., Proceedings of the
`Int'l Workshop on HDTV, 1995, pp. 435-441.
`van den Hurk, et al, "A Concept for Source Decoding in
`Digital Video Broadcast Applications", Int' l Conference on
`Consumer Electronics-Digest of Techni Papers, Jun. 7-9,
`1995, Conf. No. 14, IEEE, pp. 260-261.
`
`Primary Examiner-Benedict V. Safourek
`Assistant Examiner-Ken Vanderpuye
`Attorney, Agent, or Firm--Antonelli, Terry, Stout & Kraus,
`LLP
`
`U.S. PATENT DOCUMENTS
`
`[57]
`
`ABSTRACT
`
`5,475,688
`5,475,754
`5,521,918
`5,521,979
`5,559,999
`5,613,003
`5,635,979
`5,649,029
`5,666,293
`
`12/1995 Bridgewater et a!. .. ... ... .... ... .. 370/94.1
`12/1995 Bridgewater et a!. .. ... ... .... ... ... .. 380/20
`5/1996 Kim ........................................ 348/423
`5/1996 Deiss .. ... ... ... ... .... ... ... ... ... ... .... ... . 380/20
`9/1996 Maturi eta!. ........................... 370/389
`3/1997 Bridgewater et a!. .................... 380/20
`....................... 455/4.2
`6/1997 Kostreski et a!.
`7/1997 Galbi ....................................... 382/233
`9/1997 Metz eta!. ................................ 348/10
`
`An apparatus for filtering TS packets multiplexed with a
`plurality of programs and sending the filtered packets to
`decoders. A packet landing buffer is provided in a RAM used
`for a microprocessor for system control. After a channel is
`selected, the microprocessor filters video and audio data and
`performs a value added service process.
`
`38 Claims, 23 Drawing Sheets
`
`r
`
`1
`)
`
`I
`
`2
`)
`
`14
`
`TUNER ~ LA TOR
`
`DEMODU- ~ INTERFACE
`
`UNIT
`
`~
`
`-
`
`VIDEO
`DECODE
`BUFFER
`
`r---9
`
`t ~8
`
`VIDEO _.....
`DECODER
`
`c
`
`AUDIO
`DECODER
`
`r---10
`~
`
`12
`(
`
`MICRO-
`PROCESSOR
`
`0
`
`~ ~
`ClJ
`c
`(/)
`
`CLOCK
`4--------- GENERATOR 1--
`
`13
`(
`USER
`------z__-j INTERFACE
`UNIT
`
`RAM
`
`LANDING r 1
`
`PACKET
`
`..__-7
`7
`BUFFER ~
`SYSTEM CONTROL f-- ..__-7
`2
`PROGRAM+ DATA
`
`SYSTEM
`DECODE
`BUFFER
`
`3
`f.--- ..__-]
`
`AUDIO DECODE
`f.---
`+ DELAY BUFFER
`
`..__-7
`4
`
`SONY EX. 1004
`Page 1
`
`

`
`Ul
`\C
`0\
`....
`00
`\C
`00
`....
`Ul
`
`~
`N
`
`"""" 0 ......,
`~ .....
`'JJ. =(cid:173)~
`
`'0
`'0
`""""
`'0
`~-..J
`N
`
`~ :-;
`
`~ = ......
`~ ......
`~
`•
`\Jl
`d •
`
`4
`
`,__.
`
`+ DELAY BUFFER
`AUDIO DECODE l---
`
`3
`
`,__.
`
`I.-
`
`BUFFER
`DECODE
`SYSTEM
`
`2
`
`,__.
`
`7
`1
`
`...---...._
`
`,_
`
`PROGRAM+ DATA
`SYSTEM CONTROL .--
`
`BUFFER
`LANDING
`PACKET
`
`RAM
`
`--
`
`~
`
`en
`c
`OJ
`
`---------10
`
`DECODER
`
`AUDIO
`
`I
`
`r--
`
`-z___. INTERFACE
`
`UNIT
`
`USER
`(
`13
`
`4-----
`
`4~ GENERATOR
`
`CLOCK
`
`PROCESSOR
`
`MICRO-
`
`~ ,
`
`12
`
`~
`
`r-...--8
`
`DECODER
`
`VIDEO
`
`..
`
`~
`
`--
`
`INTERFACE
`
`UNIT
`
`......
`
`LA TOR
`DEMODU-
`
`......
`
`TUNER
`
`r-...--9
`
`BUFFER
`DECODE
`VIDEO
`
`FIG.1
`
`SONY EX. 1004
`Page 2
`
`

`
`Ul
`\C
`0\
`....
`00
`\C
`00
`....
`Ul
`
`~
`N
`0 ......,
`N
`~ .....
`'JJ. =(cid:173)~
`
`'0
`'0
`""""
`'0
`~-..J
`N
`
`~ :-;
`
`~ = ......
`~ ......
`~
`•
`\Jl
`d •
`
`~7
`
`1--+---73
`
`r----.-11
`
`BUFFER
`DECODE
`AUDIO
`
`~10
`
`J
`
`DECODER
`
`AUDIO
`
`....
`
`1-------B
`
`DECODER
`
`VIDEO
`
`BUFFER
`DECODE 1------.-9
`VIDEO
`
`1
`
`PROGRAM+ OAT A
`SYSTEM CONTROL 1-+---72
`
`•I
`
`~INTERFACE I•
`
`USER
`
`13
`)
`UNIT
`
`BUFFER
`DECODE
`SYSTEM
`
`RAM
`
`•I
`
`en I•
`CD c
`~
`
`0
`
`--..-
`
`6
`~
`BUFFER
`::0
`f:i ~
`LANDING
`"'0 r m
`PACKET
`Ci
`c
`~ ~
`0
`
`BUFFER
`LANDING
`PACKET
`~
`5
`
`r_.-4
`
`CLOCK
`
`GENERATOR
`
`FIG.2
`
`I
`
`•
`
`PROCESSOR 1 4
`
`MICRO-
`
`~ 12
`
`3~
`
`LA TOR
`DEMODU-r-.
`
`~
`2
`
`TUNER
`~
`1
`
`y
`
`SONY EX. 1004
`Page 3
`
`

`
`U.S. Patent
`
`Apr. 27, 1999
`
`Sheet 3 of 23
`
`5,898,695
`
`FIG.3A
`
`TS PACKET
`
`1 188 1 188
`
`188 1 188 1 188
`
`188
`
`__ _..TIME
`
`PAYLOAD
`
`PACKET I D (PI D)
`
`PES PACKET I
`
`PES PACKET
`
`' ' ' '
`
`' '
`
`..
`. PES
`HEADER ...
`
`PROGRAM ELEMENT
`
`VIDEO,AUDIO,TEXT DATA OR THE LIKE
`
`TS PACKET
`
`188 1 188
`
`FIG.3B
`
`188 1 188 1 188
`'
`
`188
`
`--~TIME
`
`PAYLOAD
`
`PACKET ID (PID)
`
`SECTION
`
`SECTION
`
`SECTION
`
`SECTION
`HI:ADE:R
`
`PROGRAM/SERVICE INFOMATION
`
`PROGRAM MAP TABLE OR THE LIKE
`
`SONY EX. 1004
`Page 4
`
`

`
`U.S. Patent
`
`Apr. 27, 1999
`
`Sheet 4 of 23
`
`5,898,695
`
`PID
`TSHEADER
`
`FIG.4
`
`PACKET LANDING TIME
`
`Video#1
`
`Video#2
`
`Video#1
`
`Audio#1
`
`PSI
`
`Video#2
`
`0
`
`1
`
`2
`
`3
`
`4
`
`5
`
`TS LANDING
`BUFFER ROW
`ADDRESS
`
`PACKET
`LANDING
`BUFFER
`
`I
`'.<'
`
`:.,::
`
`PSI
`
`Video#1
`
`188 BYTES
`
`~
`~
`~
`r-.
`
`N-2
`
`N-1
`
`SONY EX. 1004
`Page 5
`
`

`
`U.S. Patent
`
`Apr. 27, 1999
`
`Sheet 5 of 23
`
`5,898,695
`
`FIG.5
`
`INTERFACE
`UNIT
`
`TS PACKET
`
`TSCLOCK
`
`TS HEADER
`DETECTOR
`
`t
`
`14
`f
`140
`
`;141
`
`TRANSFER
`BUFFER
`
`BUSCLOCK
`
`MICRO-
`PROCESSOR
`
`INTERRUPT
`SIGNAL
`
`DREQ
`
`DACK
`
`CJ)
`::J
`c::l
`<(
`
`'-
`12~
`
`TRIGGER f123
`4
`1
`)
`I TIMER I
`ONE LINE
`I
`ADDITION
`..__
`CLOCK
`WRITE
`GENERATOR
`ADDRESS
`COUNTER ~122
`
`1
`
`DMA
`CONTROLLER
`
`~~ ~ 121 ~
`
`REGISTER
`5
`124
`
`WRITE ADDRESS
`RAM
`7~
`
`PACKET LANDING
`BUFFER
`
`71
`
`PACKET
`LANDING
`TIME
`
`;ACKET,DATA
`
`Video#1
`Video#2
`
`'
`
`SONY EX. 1004
`Page 6
`
`

`
`U.S. Patent
`
`Apr. 27, 1999
`
`Sheet 6 of 23
`
`5,898,695
`
`TS LANDING BUFFER
`ROW ADDRESS (_
`N-2
`
`FIG.6
`
`N-1
`
`0
`
`1
`
`PACKET READ
`
`2 &READADDRESS
`
`::::5!';: 3\
`
`PACKET NOT
`READ YET
`
`. 6\J
`/ VWRITE ADDRESS
`
`SONY EX. 1004
`Page 7
`
`

`
`U.S. Patent
`
`Apr. 27, 1999
`
`Sheet 7 of 23
`
`5,898,695
`
`FIG.?
`
`PACKET FILTERING
`PROCESS (PROGRAM/
`ELEMENT FILTER)
`
`S1
`
`PI D#program#k
`
`CHECK
`PROGRAM
`#k
`
`PROGRAM
`REFERENCE MAP TABLE
`
`- - - - - - - - 1--t---n
`
`PID=program#k
`
`83 REFERENCE
`
`I
`CLOCK ~
`• '
`
`S4
`
`YES
`
`CLOCK
`RECOVERY
`PROCESS
`
`REFERENCE?
`(PCR_PID)
`
`NO
`
`REFERENCE
`
`S5
`
`PI D=Video#k
`
`ELEMENT/
`PSI FILTERING
`
`PID=PSI
`
`S6
`
`S7
`
`SB
`
`VIDEO PACKET
`TRANSFER
`PROCESS
`
`AUDIO PACKET
`TRANSFER
`PROCESS
`
`PSI PACKET
`PROCESS
`
`ROW ADDRESS++
`
`S9
`
`'
`'
`'
`'
`'
`'
`'
`'
`'
`'
`'
`'
`'
`'
`:uPDATE
`'
`'
`'
`' I
`'
`'
`' I
`
`I
`I
`
`'
`' I
`'
`'
`'
`'
`
`-~_I
`
`SONY EX. 1004
`Page 8
`
`

`
`U.S. Patent
`
`Apr. 27, 1999
`
`Sheet 8 of 23
`
`5,898,695
`
`FIG.8
`
`PICTURE DATA
`
`DECODE INPUT 6 i
`
`Video
`
`DECODESTART~, ----~

`DISPLAY START 1 - l - - - . -___ ___ J
`
`r - ' ____.;__ _
`
`__ ,
`
`vbv BUFFER DELAY Tvbv o------.
`
`DISPLAY TIMING DELAY
`
`EXTERNAL DEVICE DELAY
`
`Tdisp i - - - -.. ...::
`
`I
`I
`I
`
`Text:-----:
`
`I
`I
`
`I
`I
`I
`
`I VIDEO
`............_ __ __, OUTPUT
`
`I
`I
`I
`I
`
`VIDEO SYSTEM Tvid !-----~ioo!,
`DELAY
`
`I
`
`DELAY FOR A-V
`'Tadj 1
`. . I SYNC COMPENSATION
`
`•
`
`AUDIO SYSTEM T d t - - - . - !
`DELAY
`au
`
`DECODE STARTOb---fAUDIO FRAME DATA
`
`I
`I
`
`Audio
`
`I
`I
`
`DISPLAY START
`
`DISPLAY TIMING DELAY
`
`EXTERNAL DEVICE DELAY
`
`I
`I
`I
`I
`
`•
`
`TdiSp :-----'
`
`I
`I
`I
`
`'
`
`I
`I
`I
`
`•Text...-..:
`
`!-----~AUDIO OUTPUT
`
`I
`I
`I
`I
`I
`
`- - -.. TIMEt
`
`t=PTS(v)=PTS(a)
`
`SONY EX. 1004
`Page 9
`
`

`
`U.S. Patent
`
`Apr. 27, 1999
`
`Sheet 9 of 23
`
`5,898,695
`
`FIG.9
`
`CLOCK
`RECOVERY
`PROCESS
`
`DIFcur<-PCR VALUE(cid:173)
`ARRIVAL TIME
`
`DIFFERENCE
`<-DIFcur-DIF re
`
`S4
`
`S11
`
`S12
`
`S13
`
`ERR>
`THRESHOLD
`
`YES
`>-------------~
`
`S14
`
`POSITIVE
`
`S15
`
`ACCELERATE
`CLOCK
`FREQUENCY
`
`ERR
`
`0
`
`NEGATIVE
`
`S16
`
`DECELERATE
`CLOCK
`FREQUENCY
`
`DIFpre<-DIFcur
`
`S17
`
`S18
`
`SONY EX. 1004
`Page 10
`
`

`
`U.S. Patent
`
`Apr. 27, 1999
`
`Sheet 10 of 23
`
`5,898,695
`
`FIG.1 0
`
`PCR VALUE
`TIMER COUNTER VALUE
`
`,
`
`,
`
`_
`
`___,.,~ Tl ME
`
`SONY EX. 1004
`Page 11
`
`

`
`Ul
`\C
`0\
`....
`00
`\C
`00
`....
`Ul
`
`~
`N
`
`'"""' 0 ......,
`'"""'
`~ .....
`'JJ. =(cid:173)~
`
`~ :-:
`
`'0
`'0
`'"""'
`'0
`~-..J
`N
`
`~ = ......
`~ ......
`~
`•
`\Jl
`d •
`
`+ DELAY BUFFER
`AUDIO DECODE H--.--7 4
`
`1---i---73
`
`BUFFER
`DECODE
`SYSTEM
`
`PROGRAM+ DATA
`SYSTEM CONTROL H---72
`
`PACKET lt1
`
`BUFFER
`LANDING
`
`RAM
`
`7
`
`Ill
`
`CD c
`• I)>
`~
`0
`
`(J)
`
`13
`~
`
`~INTERFACE I•
`
`UNIT
`
`USER
`
`I •
`
`PROCESSOR
`
`MICRO(cid:173)
`
`12~
`
`DEMODU-~
`
`2
`)
`LA TOR
`
`GENERATOR
`
`CLOCK
`
`~1
`
`TUNER
`
`T
`
`~10
`
`DECODER
`
`AUDIO
`
`~DECODER
`
`~a
`
`VIDEO
`
`.......-
`,...1 __. __
`
`~ INTERFACE
`
`UNIT
`~
`14
`
`BUFFER
`DECODE ~9
`VIDEO
`
`~4
`
`FIG.11
`
`FILTER
`PACKET
`PROGRAM
`
`15
`1
`
`t
`
`SONY EX. 1004
`Page 12
`
`

`
`U.S. Patent
`
`Apr. 27, 1999
`
`Sheet 12 of 23
`
`5,898,695
`
`FIG.12A
`
`188
`
`188
`
`188
`
`188
`
`188
`
`---- I V-#j I V-#k I A-#i I V-#k I PSI
`
`188
`
`V-#j
`
`188
`
`188
`
`188
`
`V-#i 1----
`I V-#i I A-#k I
`
`FIG.12B
`
`188
`
`I V-#k I
`
`188
`
`188
`
`I V-#k I PSI I
`
`TIME
`
`TIME
`
`188
`
`I A-#k I
`
`FIG.13
`
`PID
`
`TS~HEADER
`
`'
`
`Video#k
`
`Video#k
`
`Video#k
`
`Audio#k
`
`PSI
`
`Video#k
`
`PSI
`
`Video#k
`
`188 BYTES
`
`0
`
`1
`
`2
`
`3
`
`4
`
`5
`
`N-2
`
`N-1
`
`PACKET
`LANDING
`BUFFER
`
`PROGRAM
`#k
`SELECTED
`
`TS LANDING
`BUFFER
`ROW
`ADDRESS
`
`SONY EX. 1004
`Page 13
`
`

`
`U.S. Patent
`
`Apr. 27, 1999
`
`Sheet 13 of 23
`
`5,898,695
`
`FIG.14
`
`ERR
`
`_) 4
`CLOCK
`GENERATOR
`PROGRAM
`PACKET FIL TEA I
`•
`15~ '--1 PCR
`153
`
`TSP ACKET
`
`TS CLOCK
`
`t ~
`
`.__./ 154
`COMPA- ~
`COUNTER
`RATOR
`INTERFACE
`151_'\ TRIGGER 152'\. PCR
`UNIT
`PID
`TS HEADER
`FILTER ~ ~
`DETECTOR
`TRANSFER
`BUFFER
`
`14
`
`BUSCLOCK
`
`'""
`
`141
`
`(j)
`::J
`co
`<(
`I-
`<(
`0
`
`INERRUPT SIGNAL
`MICRO-
`PROCESSOR..--
`
`_/
`
`PID
`
`DREQ
`
`DACK
`
`DMA
`-1
`CONTROLLER
`
`123\
`121
`ONE
`REGISTER l
`12~ LINE
`ADDITION
`WRITE
`ADDRESS
`COUNTER
`
`~122
`
`ADDRESS
`RAM
`7~
`
`PROGRAM
`MAP TABLE
`
`PACKET LANDING BUFFER
`71
`Video#1 V
`
`.
`
`-..
`
`Video#2
`
`SONY EX. 1004
`Page 14
`
`

`
`U.S. Patent
`
`Apr. 27, 1999
`
`Sheet 14 of 23
`
`5,898,695
`
`FIG.15
`
`ELEMENT
`FILTERING
`PROCESS
`
`S1
`--(cid:173)
`
`.. -...
`
`REFERENCE·-
`
`PID=Video#k
`
`ELEMENT/
`PSI FILTERING
`
`PID=PSI
`
`S6
`
`PI D=Audio#k
`
`S7
`
`sa
`
`VIDEO PACKET
`TRANSFER
`PROCESS
`
`AUDIO PACKET
`TRANSFER
`PROCESS
`
`PSI PACKET
`PROCESS
`
`ROW ADDRESS++
`
`S9
`
`!
`I
`'
`I
`I
`
`' I
`:UPDATE
`
`I
`I
`I
`I
`I
`I
`I
`
`-- _,
`
`SONY EX. 1004
`Page 15
`
`

`
`Ul
`\C
`0\
`....
`00
`\C
`00
`....
`Ul
`
`~
`N
`0 ......,
`"""" Ul
`~ .....
`'JJ. =(cid:173)~
`
`~ :-:
`
`'0
`'0
`""""
`'0
`~-..J
`N
`
`~ = ......
`~ ......
`~
`•
`\Jl
`d •
`
`73
`
`,.....-
`
`BUFFER
`DECODE
`SYSTEM
`
`-
`
`r-
`
`2
`
`7
`1
`
`PROGRAM+DAT A
`SYSTEM CONTROL I-
`
`I--I'
`
`BUFFER
`LANDING
`PACKET
`
`RAM
`
`r-.---16
`
`--
`
`INTERFACE
`
`DISPLAY
`
`UNIT
`
`-
`
`--
`
`OJ c
`)>
`~
`0
`
`(fJ
`
`~
`
`.---
`
`-
`
`__.,
`
`"
`
`13
`
`[
`
`--
`
`-
`
`-
`
`--
`
`-----z__.. INTERFACE
`
`USER
`
`UNIT
`
`PROCESSOR -
`
`-
`
`-
`
`12~ MICRO-
`t
`
`~4
`
`FIG.16
`
`CLOCK
`
`GENERATOR
`
`INTERFACE
`
`~
`
`t
`
`15
`~
`FILTER
`PACKET ~ UNIT
`PROGRAM
`~
`14
`
`,....._.
`
`2
`~
`LATOR
`DEMODU-
`
`A
`
`r---1
`
`TUNER
`
`SONY EX. 1004
`Page 16
`
`

`
`Ul
`\C
`0\
`....
`00
`\C
`00
`....
`Ul
`
`~
`N
`0 ......,
`'"""' 0'1
`~ .....
`'Jl =-~
`
`'0
`'0
`'"""'
`'0
`~-..J
`N
`:-:
`'t:l
`>
`
`~ = ......
`~ ......
`~
`•
`\Jl
`d •
`
`208
`
`207
`
`206
`
`I h
`
`DECODER
`
`VIDEO
`
`bus
`
`elk
`
`FIG.17
`
`DECODER
`
`AUDIO
`
`205
`I
`
`204
`
`203
`
`MEMORY
`PROGRA
`
`CESSOR
`PRO-
`I RAM I I MICRO-
`
`INT
`
`201
`
`200
`
`PLEXER
`I DEMODU-a CORRECTION c DEMULTI-
`CHANNEL
`
`LA TOR
`DEMODU-
`
`ERROR
`. -_/-__, b
`
`202
`
`I
`2
`
`LA TOR
`
`-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`I
`
`FROM TUNER
`
`SONY EX. 1004
`Page 17
`
`

`
`U.S. Patent
`
`Apr. 27, 1999
`
`Sheet 17 of 23
`
`5,898,695
`
`~
`T'""
`f
`i
`
`CIJ
`::l
`..0
`
`C\1
`0
`C\1
`
`)
`
`Q)
`
`en
`I
`I
`;=:=::=:::::;1~1 (
`r-----L..L...I _ ____,
`1
`I
`w
`I <((.)
`J-<(
`<(u_
`I Oa:
`0~
`I a..:z
`I
`
`T"""
`
`0
`
`C\1 I a:
`
`~~ (.)<(
`oa::
`-IW oz
`w
`CJ
`
`I
`L __ _
`
`j
`-
`-
`-1-
`-
`- - - -1 - - - -
`
`-
`
`- -
`
`- - - - t - -
`
`.
`CJ
`LL
`
`ERROR FLAG
`~ ADDER
`~ L---,.-;;;,._-----1
`T'""
`
`C\1 .----1.....-------,
`,./
`MIXER
`cD'-r------.----r
`T"""
`C\1
`
`a:
`w
`~
`u..
`0
`a... I
`(/) 5 a...
`
`0
`T"""
`C\1
`
`a:
`w
`~
`u..
`a:
`(.)
`a...
`
`>-
`:5 w
`0
`(.) z
`>(cid:173)(/)
`
`I
`I
`I_
`
`\
`1.0
`
`..c
`
`-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`-
`
`· - -
`
`-
`
`-
`
`-
`
`-
`
`-
`
`--
`
`SONY EX. 1004
`Page 18
`
`

`
`U.S. Patent
`
`Apr. 27, 1999
`
`Sheet 18 of 23
`
`5,898,695
`
`('I')
`I
`(.)
`
`......
`I
`(.)
`
`C\1
`I
`(.)
`
`·.·,•,·,•.•.•:-:-·:·:·.·.·!·:- ..... •.·
`..-
`I
`(.)
`
`:-:-:~-.· ·!·!·.·· ..... :·
`
`C\1
`I
`(.)
`
`......
`I
`(.)
`
`.
`CJ
`LL
`
`('I')
`I
`(.)
`
`......
`I
`(.)
`
`C\1
`I
`(.)
`
`......
`I
`(.)
`
`~
`~
`~ttS.···v~.~~ .... ·>:·~·······
`
`......
`I
`(.)
`
`.....
`I
`(.)
`
`., ..
`
`~-.· • •,•'•,-:• •,•.•,.•!•
`
`rr:
`L1J
`(/')
`ll..
`~l L1J
`l-2zzz:z.z:zl
`I
`
`0 -
`
`0
`N
`CJ
`LL
`
`C\1
`
`[]]
`
`0
`
`-
`
`-""0
`-
`
`SONY EX. 1004
`Page 19
`
`

`
`U.S. Patent
`
`Apr. 27, 1999
`
`Sheet 19 of 23
`
`5,898,695
`
`FIG.21
`
`~
`
`FETCH DATA FROM CHANNEL
`DEMULTIPLEXER (DMAC)
`
`.....J
`0
`a:
`I-
`z
`0
`()
`~
`CJ)
`
`~
`
`-
`
`-
`
`SELECT AND SEND VIDEO
`AND AUDIO DATA
`
`1-
`w
`:::.::::
`Oa:::
`~w
`ANALYZE PSI DATA AND SEND PID
`0 ~
`W<(
`INFORMATION TO BE SELECTED
`Nw
`~I
`<( z
`
`<(
`
`t---
`
`ANALYZE Sl DATA AND
`GENERATE OSD DATA
`
`SONY EX. 1004
`Page 20
`
`

`
`U.S. Patent
`
`Apr. 27, 1999
`
`Sheet 20 of 23
`
`5,898,695
`
`CIJ
`::I
`.0
`
`a:
`<(W
`~u..
`0~
`co
`
`-
`
`CX>
`,.....
`C\1
`\,..,
`
`,.....
`C\1
`C\1
`
`I'-,.....
`C\1
`
`<0
`,.....
`C\1
`
`C\1
`C\1 .
`(!J
`LL
`
`C\1 I
`SELECTOR
`w w
`I ---~1-----1--~-------~<t: ~ <( ~u.. I-
`1- a: 0
`t------+---+-+-----+-1(§ 0 ~ ffi ~ 1---4-c..-
`~ ~
`ERROR FLAG
`ADDER
`
`C\1
`
`C"
`- 1-44--=-
`
`MIXER
`
`._1 u
`
`a:
`w
`~
`u:::
`Cl
`a..
`en
`) a..
`.----
`0
`,.....
`C\1
`
`I
`
`)
`,.....
`,.....
`C\1
`
`a:
`w
`~
`u..
`0
`a..
`I
`Cf)
`
`.----
`
`oa:
`a:
`ow
`w
`---
`~~ ~
`u..
`au..
`a:
`wo
`o-
`()
`a..
`-C..
`) >
`5
`.----
`C\1
`('t)
`,.....
`,.....
`C\1
`C\1
`
`.0
`
`u
`
`"0
`
`~
`
`C\1
`0
`C\1
`
`SONY EX. 1004
`Page 21
`
`

`
`Ul
`\C
`0\
`....
`00
`\C
`00
`....
`Ul
`
`~
`N
`
`'"""' 0 ......,
`
`N
`~ .....
`'JJ. =(cid:173)~
`
`~ :-:
`
`'0
`'0
`'"""'
`'0
`~-..J
`N
`
`~ = ......
`~ ......
`~
`•
`\Jl
`d •
`
`FIG.23
`
`;218
`
`221
`
`217
`
`216
`
`21 0 '-"
`
`202 _____..._
`
`f.-+ m __..
`
`:D
`0
`~
`()
`r
`en m
`
`1..--..--
`G)
`:II~
`:0
`m"Tl
`m
`>< __., O:D
`oo
`s::
`:>JJ
`:D
`m
`
`:0
`m
`><
`s::
`
`PSI-PID FILTER I
`
`223 "-----
`
`VIDEO/AUDIO ~
`
`PID FILTER
`
`-
`
`224"'
`
`ERROR FLAG
`
`DELAY
`
`215"'
`
`SYNC DELAY
`
`PCR FILTER ~
`
`214"'
`
`213"'
`
`-
`
`.......
`
`PID FILTER
`VIDEO/AUDIO
`
`212""
`
`SI-PID FILTER I.-
`PSI-PID FIL TEA ~
`
`211 "'
`
`d
`
`c
`
`b
`
`q
`
`p
`
`226
`
`225
`
`INTERFACE
`STORAGE -----222
`
`UNIT
`__.. MEDIA
`DATA
`
`G)
`:II~
`m"Tl
`__.. O::II
`oo
`)>:D
`JJ
`m
`
`-
`
`e
`elk
`
`GENERATOR~220
`
`CLOCK
`
`-----219
`
`INTERFACE
`PID DATA -
`
`-..--
`
`bus
`
`BUFFER f--
`
`DMA
`
`SONY EX. 1004
`Page 22
`
`

`
`Ul
`\C
`0\
`....
`00
`\C
`00
`....
`Ul
`
`~
`N
`0 ......,
`N
`N
`~ .....
`'JJ. =(cid:173)~
`
`'0
`'0
`'"""'
`'0
`~-..J
`N
`:-'l
`~
`
`~ = ......
`~ ......
`~
`•
`\Jl
`d •
`
`~-----OPCR
`
`L.....-----SPLICE COUNT-DOWN
`
`....____ __ PRIVATE DATA
`L_=-._ AF EXTENSION
`j_
`
`OPTION DATA* I STUFFING*
`
`PCR
`
`SOME CASES
`*ABSENT IN
`
`4 BYTES
`
`PRIORITY-------~
`
`RANDOM ACCESS_j
`I
`
`LENGTH TINUITY.
`
`IDISCON(cid:173)
`
`AF
`
`PAYLOAD
`
`AF*
`
`CONTROL COUNTER
`I CYCLIC
`
`AF
`
`PID
`
`ITY
`SYNC I ERROR I UNIT SCRAM-PRIOR-
`
`START
`
`BLE
`
`TS PACKET
`
`TS PACKET
`
`TS PACKET
`
`(188 BYTES)
`TS PACKET
`
`FIG.24
`
`SONY EX. 1004
`Page 23
`
`

`
`Ul
`\C
`0\
`....
`00
`\C
`00
`....
`Ul
`
`~
`N
`0 ......,
`~
`N
`~ .....
`'JJ. =(cid:173)~
`
`'0
`'0
`'"""'
`'0
`~-..J
`N
`;"l
`~
`
`~ = ......
`~ ......
`~
`•
`\Jl
`d •
`
`MAP TABLE
`PROGRAM
`PID= "Mk"
`
`MAP TABLE
`PROGRAM
`PID= "Mi"
`
`PMT·
`
`FIG.25
`
`TABLE 1\
`PID= "0" v PID= "Mj"
`
`MAP TABLE
`PROGRAM
`
`~
`
`ASSOCIATION
`
`PROGRAM
`
`SONY EX. 1004
`Page 24
`
`

`
`5,898,695
`
`1
`DECODER FOR COMPRESSED AND
`MULTIPLEXED VIDEO AND AUDIO DATA
`
`BACKGROUND OF THE INVENTION
`
`The present invention relates to decoding video and audio
`data which are multiplexed after compression coding, and
`more particularly to a receiver/decoder for receiving video
`and audio data compression encoded by high efficiency
`coding means and decoding the received encoded data.
`In order to reduce a transmission/record cost of a large
`amount of video data, the video data is compression encoded
`by high efficiency coding means which removes redundancy
`and thereafter the data is transmitted or recorded. An
`example of high efficiency coding means is the well known
`MPEG method standardized by ISO/SC29/WG11. In the
`MPEG method, an encoded data multiplexing method as
`well as the video and audio data encoding method are
`standardized as MPEG/Systems.
`In the fields of broadcasting and communications, in
`recent years, redundancy of moving picture video data is
`removed to compress the video data which is then transmit(cid:173)
`ted in the form of digital signals. For video data
`compression, discrete cosine transformation (DCT) and
`motion compensation prediction coding such as one stipu(cid:173)
`lated in MPEG specifications are generally performed. With
`high compression ratio of video data, a plurality of broadcast
`programs can be transmitted in a multiplex manner over a
`single transmission channel. A program means a set of video
`data and its associated audio and/or text data.
`Multiplexing of a plurality of programs according to the
`MPEG specifications is stipulated in ITU-T Rec. H.222.0,
`ISO!IEC13818-1, 1994 (E), "Information Technology(cid:173)
`Generic Coding of Moving Pictures and Associated Audio(cid:173)
`Part 1: Systems", pp. 9-21, wherein it is described that a
`transport stream (hereinafter abbreviated as TS) packet is
`used for such multiplexing which has a fixed length of 188
`bytes. The structure of an apparatus called a set top box is
`shown in the block diagram of FIG. 2. This apparatus
`separates TS packets formed in accordance with the MPEG
`specifications and supplied from a broadcast station or the
`like, and supplies them to a video decoder and an audio
`decoder to output decoded video and audio signals. Con(cid:173)
`ventional techniques will be described with reference to
`FIG. 2.
`A tuner 1 selects data of one channel transmitted from a
`communications medium such as a CATV and a communi(cid:173)
`cations satellite, and supplies the selected channel data to a
`demodulator 2. The demodulator 2 demodulates the channel
`data which was channel encoded by QAM, QPSK, or the
`like, performs an error correction process by using redun(cid:173)
`dancy codes, and supplies the processed data to a demulti(cid:173)
`plexer 3. The processed data is a bit stream data of the TS
`packet format which is shown in FIGS. 3A and 3B. The
`formats are classified into two types shown in FIGS. 3A and
`3B according to the contents of a TS packet. The format
`shown in FIG. 3Ais used for transmitting program elements,
`including video data, audio data, text data such as teletext,
`and other data. Each TS packet of 188 bytes is constituted by
`a transport stream header (abbreviated as TS header) and a 60
`payload containing elements described above. The TS
`header always contains a packet ID (abbreviated as PID)
`representative of the attribute of the TS packet, and some(cid:173)
`times contains a program clock reference (abbreviated as
`PCR) which is time information used for a decoder to 65
`recover a system clock used as a time reference when each
`element was encoded. The payload is part of a packetized
`
`2
`elementary stream (PES). The PES packet is a variable
`length packet constituting an element unit determined by
`each element, the type of data storage media, and the like.
`The PES packet is constituted by data of each element and
`5 a PES header. The PES header includes a stream ID for
`describing the element contents, time stamp information
`(PTS) for describing a PES packet length and a time when
`the element is displayed, and other pieces of information.
`The element unit designated by PTS is called an access unit.
`10 rr~:neex~~h~\~~t f~~c~:~i~s ~~~~~ef~~:~~0s~;~~ ~~dF~~~
`3B is used for program specific information (abbreviated as
`PSI) which is additional information used for the system
`control. The payload of the TS packet is part of PSI
`described in units of sections. Each section is constituted by
`15 a section header, PSI, and cyclic redundancy check (CRC)
`used for error correction. The section header indicates the
`attribute of the succeeding PSI and a section length. PSI is
`structured hierarchically and contains information necessary
`for the system control, such as program association table
`20 (PAT) describing program information (specifically, PID of
`PMT to be described later) contained in bit stream data
`transmitted as TS, and a program map table (PMT) describ(cid:173)
`ing a correspondence between the element and PID in each
`program. The demultiplexer 3 shown in FIG. 2 receives a TS
`25 packet, and supplies PSI data via a data bus to a system
`decode buffer allocated in a RAM 7, and video and audio
`data which are elements constituting a program selected by
`a user, respectively to a video decoder 8 and an audio
`decoder 10. The demultiplexer 3 samples time information
`30 from the header of the TS packet containing PCR, and
`supplies control signals to a clock generator 4 to recover the
`system clock. A microprocessor 12 decodes the contents of
`PSI data sent to the system decode buffer in RAM 7 and
`stores the results in a system decode buffer 73 in RAM 7 in
`35 the data format usable by system control software programs.
`Software programs are generally stored in the same RAM or
`in a dedicated ROM. The work area of software programs is
`generally developed in RAM 72. In response to an instruc(cid:173)
`tion entered by a user via a user interface unit 13, the
`40 microprocessor 12 supplies PID which is used for deriving
`the TS packet of a program, to the demultiplexer 3, by using
`the decoded PSI data, and also supplies a control signal
`which is used for selecting the program, to the tuner 1. The
`video decoder 8 and audio decoder 10 decode the video and
`45 audio data in cooperation with a video decode buffer 9 and
`an audio decode buffer 11. Data transmission speed on a
`transport channel is different from the bit rate used when
`each element was encoded, because of multiplexing of
`programs. Therefore, if data is supplied at the data trans-
`50 mission speed directly to the video decoder 8 and audio
`decoder 10, the video decode buffer 9 and audio decode
`buffer 11 may locally overflow or underflow and video and
`audio outputs are disturbed. It is therefore necessary to insert
`packet transport buffers 5 and 6 between the demultiplexer
`55 and decoders to convert the bit rates in accordance with the
`capacities of the decoder buffers, and thereafter to supply
`element data to the video decoder 8 and audio decoder 10.
`Multiplexing according to the MPEG specifications assume
`that a packet transport buffer having a capacity of 512 bytes
`per each element is provided.
`The present inventors have found out problems of an
`increased number of system components and an increased
`cost to be caused by the provision of the packet transport
`buffers 5 and 6 independently from the system memory.
`Even if the packet transport buffers are implemented in the
`demultiplexer 3, the increased circuit scale and an increased
`cost thereof are inevitable.
`
`SONY EX. 1004
`Page 25
`
`

`
`5,898,695
`
`3
`The MPEG specifications standardize not only a video
`and audio encoding method but also a coded data multi(cid:173)
`plexing method, as the MPEG/Systems.
`FIG. 24 shows the structure of a transport packet
`(hereinafter called a TS packet) adopted by the transport
`system which represents one multiplexing method of the
`MPEG/Systems.
`Each TS packet is a fixed length packet of 188 bytes
`including a 4-byte header and a 184-byte payload. The
`4-byte header is constituted by a sync byte, an error flag, a
`unit start flag, a scramble control flag, a priority flag, a set
`of PID data, an adaptation field control flag, and a cyclic
`counter. The contents of PID data identify the payload of the
`TS packet.
`The payload is constituted by an adaptation field
`(hereinafter abbreviated as AF) designated by the adaptation
`field control flag and a payload having video and audio
`encoded data and multiplexing information data. AF is
`constituted by AF length data, a discontinuity flag, a random
`access flag, a priority flag, a PCR flag indicating a presence/
`absence of AF optional data, an OPCR flag, a splice point
`flag, a private data flag, and optional data designated by
`these flags. Of the optional data, PCR data is used for clock
`synchronization between the transmission and reception
`sides, and the reception side generates a reference clock of
`27 MHz by using a phase locked loop.
`FIG. 25 illustrates selection of a particular channel of
`encoded video and audio data from a bit stream (TS packets)
`with a plurality of programs (hereinafter called channels)
`multiplexed. A program association table (hereinafter abbre(cid:173)
`viated as PAT) is always transmitted by a TS packet having
`PID="O". PAT contains multiplexing information of a plu(cid:173)
`rality of channels and supplies information on whether each
`channel program map table (hereinafter abbreviated as
`PMT) is transmitted by a TS packet having what PID value.
`FIG. 25 shows an example of multiplexing of three
`channels. In order to select a j -th channel and obtain its PMT,
`the TS packet with PID=Mj is captured. This PMT has
`information that the video data is transmitted by the TS
`packet with PID=Aj and the audio data is transmitted by the
`TS packet with PID= Vj. Therefore, encoded video data can
`be received by capturing the TS packet with PID= Vj and
`encoded audio data can be received by capturing the TS
`packet with PID=Aj.
`The MPEG/Systems described above, however, define
`only syntax of TS packets and the like and does not
`determine how a reception apparatus is actually configured.
`In addition, it does not provide particular definition of
`multiplexing of value added services such as program
`guidance, which definition is relied upon arbitrary decision
`on the side of broadcasting companies or program vendors.
`In conventional technique disclosed in JP-A-4-229464
`(corresponding to EP-0460751A2), each packet has time
`information which is used on the decode side as a reference 55
`of various timings including a decode timing.
`
`SUMMARY OF THE INVENTION
`
`It is an object of the present invention to provide a 60
`decoder for compressed and multiplexed video and audio
`data, wherein packet landing buffers are allocated in a RAM
`used by a CPU for the system control to thereby reduce the
`number of components and lower the cost of components.
`According to one aspect of the present invention, there is
`provided a decoder for compressed and multiplexed video
`and audio data for receiving a group of packets having a
`
`10
`
`20
`
`30
`
`4
`plurality of multiplexed packet sets each containing video
`data and associated audio data compressed by compression
`codes and packetized and outputting a set of video and audio
`signals, comprising: a video decoder for decoding the corn-
`s pressed video data; an audio decoder for decoding the
`compressed audio data; a first memory for sequentially
`storing the group of packets; a processor for executing a
`process in accordance with a stored program, the process
`including sequentially reading a packet from the first
`memory, filtering packets containing a set of particular video
`and audio data and a control packet containing attribute
`information of the group of packets, and supplying the
`particular video and audio data to the video and audio
`decoders; a second memory having a work area for at least
`the stored program; a third memory for storing the attribute
`15 information contained in the control packet; and an interface
`unit for transferring an external control signal to the
`processor, the external control signal being used for filtering
`a set of video and audio data, wherein the first to third
`memories are provided in the same memory element.
`A storage device of RAM used by a processor (CPU) as
`a main memory stores operating system software and is
`required to have a capacity of several mega bits. It is
`therefore easy to allocate the memory of which capacity is
`required 512 bytes for a packet landing buffer for each data
`25 element in the RAM. Therefore, the number of components
`is not increased.
`It is another object of the present invention to provide a
`receiver for compressed video and audio data capable of
`receiving a bit stream with a plurality of multiplexed
`channels, decoding the video and audio data, and also
`receiving value added service data flexibly.
`According to another aspect of the invention achieving
`the above object, there is provided an apparatus comprising:
`35 data selecting means for selecting an encoded stream of one
`channel (a group of packets), multiplexing information data,
`and additional information data, from a multiplexed stream
`(packets); bus access means for supplying the selected
`encoded stream and the like to a bus; a microprocessor
`40 connected to the bus; a random access memory; a program
`memory; means for processing the additional information
`data; means for decoding the video data; and means for
`decoding the audio data.
`The apparatus may further comprises: means for gener-
`45 ating a clock signal in accordance with clock information in
`the encoded stream; packet sync supply means for supplying
`a packet sync signal of the encoded stream to the micro(cid:173)
`processor; means for adding an error flag indicative of
`failure in correcting transmission errors to the encoded
`50 stream, and data storage media interface means.
`The encoded stream of one channel and other data
`selected by the data selecting means are stored via the bus
`access means and the bus into the random access memory,
`data read from the random access memory is analyzed and
`discriminated, and via the bus the video data is supplied to
`the video data decoding means, the audio data is supplied to
`the audio data decoding means, the additional information
`data or processed additional information data is supplied to
`the additional information data processing means.
`The video data decoding means expands and decodes the
`encoded video data and the audio data decoding means
`expands and decodes the encoded audio data to reproduce
`video and audio signals. The additional information data
`processing means allows, for example, a program guide, to
`65 be displayed on video data in an overlay manner.
`The clock signal generating means supplies a clock signal
`to the video data decoding means, audio data decoding
`
`SONY EX. 1004
`Page 26
`
`

`
`5,898,695
`
`6
`FIG.1 is a block diagram showing the structure of the first
`embodiment of the invention. A tuner 1 selects data of one
`channel transmitted from a communications medium such as
`a CATV and a communications satellite, and supplies the
`5 selected channel data to a demodulator 2. The demodulator
`2 demodulates the channel data which was channel encoded
`by QAM, QPSK, or the like, performs an error correction
`process by using redundancy codes, and supplies the pro(cid:173)
`cessed data to an interface unit 14. The processed data is a
`10 bit stream data of the TS packet format. In response to a
`control signal from a microprocessor 12, the interface unit
`14 transfers all TS packet data to a packet landing buffer 71
`in a main memory RAM 7. The internal structure of the
`packet landing buffer 71 is shown in FIG. 4. The packet
`15 landing buffer 71 is a first-in-first-out (FIFO). Only one
`packet is written in each line in the landing order, and read
`in the same order. Video#1 in FIG. 4 represents a packet
`containing video data of a program #1. The buffer is
`assigned with row addresses which are updated by one each
`20 time a packet is written, and after N packets are received, the
`address returns to 0. The line number N is set so as to satisfy:
`
`1

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket