JP4376321B2 - How to extract a data section from a transmitted data stream - Google Patents

How to extract a data section from a transmitted data stream Download PDF

Info

Publication number
JP4376321B2
JP4376321B2 JP54206498A JP54206498A JP4376321B2 JP 4376321 B2 JP4376321 B2 JP 4376321B2 JP 54206498 A JP54206498 A JP 54206498A JP 54206498 A JP54206498 A JP 54206498A JP 4376321 B2 JP4376321 B2 JP 4376321B2
Authority
JP
Japan
Prior art keywords
section
sections
application
data stream
stored
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP54206498A
Other languages
Japanese (ja)
Other versions
JP2001518256A5 (en
JP2001518256A (en
Inventor
サルファティ,ジャン−クロード
メリク,ジェローメ
デクラーク,クリストフ
Original Assignee
カナル プラス ソシエテ アノニム
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by カナル プラス ソシエテ アノニム filed Critical カナル プラス ソシエテ アノニム
Publication of JP2001518256A publication Critical patent/JP2001518256A/en
Publication of JP2001518256A5 publication Critical patent/JP2001518256A5/ja
Application granted granted Critical
Publication of JP4376321B2 publication Critical patent/JP4376321B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/341Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/409Device specific authentication in transaction processing
    • G06Q20/4097Device specific authentication in transaction processing using mutual authentication between devices and transaction partners
    • G06Q20/40975Device specific authentication in transaction processing using mutual authentication between devices and transaction partners using encryption therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/007Transform coding, e.g. discrete cosine transform
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F17/00Coin-freed apparatus for hiring articles; Coin-freed facilities or services
    • G07F17/0014Coin-freed apparatus for hiring articles; Coin-freed facilities or services for vending, access and use of specific services not covered anywhere else in G07F17/00
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
    • G11C16/105Circuits or methods for updating contents of nonvolatile memory, especially with 'security' features to ensure reliable replacement, i.e. preventing that old data is lost before new data is reliably written
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N17/00Diagnosis, testing or measuring for television systems or their details
    • H04N17/004Diagnosis, testing or measuring for television systems or their details for digital television systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4345Extraction or processing of SI, e.g. extracting service information from an MPEG stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4348Demultiplexing of additional data and video streams
    • H04N21/4349Demultiplexing of additional data and video streams by extracting from data carousels, e.g. extraction of software modules from a DVB carousel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • H04N21/4435Memory management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/454Content or additional data filtering, e.g. blocking advertisements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4622Retrieving content or additional data from different sources, e.g. from a broadcast channel and the Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/482End-user interface for program selection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8166Monomedia components thereof involving executable data, e.g. software
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/162Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing
    • H04N7/163Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing by receiver means only
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/167Systems rendering the television signal unintelligible and subsequently intelligible
    • H04N7/1675Providing digital key or authorisation information for generation or regeneration of the scrambling sequence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17318Direct or substantially direct transmission and handling of requests
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1435Saving, restoring, recovering or retrying at system level using file system or storage system metadata
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • H04N21/42676Internal components of the client ; Characteristics thereof for modulating an analogue carrier signal to encode digital information or demodulating it to decode digital information, e.g. ADSL or cable modem
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • H04N21/42684Client identification by a unique number or address, e.g. serial number, MAC address, socket ID
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • H04N21/4437Implementing a Virtual Machine [VM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47211End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting pay-per-view content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/47805Electronic banking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/47815Electronic shopping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4782Web browsing, e.g. WebTV

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • Accounting & Taxation (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Databases & Information Systems (AREA)
  • Quality & Reliability (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Finance (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Discrete Mathematics (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Circuits Of Receivers In General (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Television Systems (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Stored Programmes (AREA)

Description

【技術分野】
【0001】
本発明は、データのセクションの他にビデオおよびオーディオ・テレビ・データを含むMPEGビットストリームのような伝送データ・ストリームの一つまたはそれ以上のセクションを記憶する装置および方法に関する。
【背景技術】
【0002】
テレビ信号を放送することを主として意図されたデジタル送信システム、これに限定するものではないが特衛星テレビ・システムの出現は、他の目的とするこの種のシステムを使用する可能性を開いた。その一つがエンド・ユーザとの相互活動を提供することである。
【0003】
これを実行する一つの方法は、テレビ信号が受信されるレシーバ/デコーダ上アプリケーションを実行することである。アプリケーションのためのコードは、レシーバ/デコーダに永久的に記憶される。しかし、これはかなり限定されることになる。好ましくは、レシーバ/デコーダは必要とされるアプリケーションのためにコードをダウンロードできなければならない。このようにして、より幅広い範囲の方法が提供でき、また、アプリケーションが、必要に応じて、ユーザ側で何の操作も必要としないでアップデートできる。
【発明の開示】
【発明が解決しようとする課題】
【0004】
ンピュータ・システムにおいて、特にコンピュータ・システムがデジタル・テレビのためのレシーバ/デコーダのような特定の大型システムに組みまれているシステムにおいて、メモリ量がしばしば制限される。これはシステムによって必要とされる種々の機能によるメモリ・スペースの使用が最小にされるようにメモリを編成しなければならないことを意味している。さらに、メモリの少なくともある一定部分にアクセスするのに必要とする時間を最短にすることも必要である。
【課題を解決するための手段】
【0005】
従って、本発明は特にこれに限定するものではないが、特アプリケーションによって必要とされるデータのみをレシーバ/デコーダのメモリダウンロードすることに関する。
【0006】
第1の態様において、本発明は伝送データ・ストリームの複数のセクションの少なくとも一つを記憶する方法を提供し、前記一つセクションが少なくとも一つのセクション特性を有しており、前記方法が、
データ・ストリームを受信する工程と;
少なくとも前記一つのセクション特性に従って前記データ・ストリームから前記一つのセクションをフィルタする工程と;
前記一つのセクションを記憶する工程と;
からなる。
【0007】
このフィルタ工程はレシーバ/デコーダのメモリへロードされるべきアプリケーションによって必要とされるセクションのみに実行される。
【0008】
この好ましい実施態様において、フィルタ工程が、各特性がフィルタ基準とそのフィルタ基準のための値とからなる少なくとも一つのフィルタ特性を特定する工程と;
各セクション特性を各フィルタ特性と比較する工程と;
各セクション特性がそれぞれのフィルタ特性に対応したときに、前記一つのセクションを前記データ・ストリームからフィルタする工程と;
を含んでいる。
【0009】
本発明の第2の態様は、上述の方法を使用する伝送データ・ストリームの複数のセクションを記憶する方法を提供し、各セクションはそれぞれのメモリ・ロケーションに記憶される。
【0010】
この方法がさらに、各データ・フィルタ特性がデータ操作基準とそのデータ・フィルタ基準のための値とからなる少なくとも一つのデータ・フィルタ特性を特定する工程と;
各記憶されたセクション中に記憶されたデータをそれぞれのデータ・フィルタ特性と比較する工程と;
その記憶されたセクション中に記憶された前記データがそれぞれのデータ・フィルタ特性に対応していないときは、前記記憶されたセクションを前記メモリに置換できるようにする工程と;
をさらに含んでいることが好ましい。
【0011】
前記記憶されたセクションに記憶されたデータが各々のデータ・フィルタ特性に対応している時、セクション識別信号をアプリケーションに供給する工程をさらに含んでいることが好ましい。
【0012】
セクション識別信号は前記一つのセクションの記憶アドレスからなるのが好ましい。
【0013】
第3の態様において、本発明は上述の方向によるセクションのグループを記憶する方法を提供し、前記セクションが周期的に前記データ・ストリームに伝送され、各グループが第1セクションと最終セクションを含んでおり、前記方法が、
第1セクションを記憶する工程と;
前記第1セクションの直後に連続して伝送されたセクションを後でダウンロードし、前記最終セクションがダウンロードされるか、または所定数のセクションが記憶されるまで各セクションがそれぞれのメモリ・ロケーションに連続して記憶される工程と;
を含んでいる。
【0014】
第4の態様において、本発明は上述の方法によりセクションのグループを記憶する方法を提供し、前記セクションが周期的に前記データ・ストリームに伝送され、前記グループが第1セクションと最終セクションを含み、前記方法が、
第1セクションをダウンロードする工程と;
前記第1セクションの直後に連続して伝送されたセクションを続いてダウンロードし、前記最終セクションがダウンロードされるか、またはメモリ・ロケーション中に記憶されたセクションが、前記最終セクションがダウンロードされるまで続いてダウンロードされることによって連続して上書きされて所定数のセクションが記憶されるまで各セクションがそれぞれのメモリ・ロケーションに連続して記憶される工程と;
前記最終セクションを前記メモリに記憶する工程と;
を含んでいる。
【0015】
第5の態様において、本発明はデータ・ストリーム中に周期的に伝送されたセクショングループを記憶する方法を提供し、前記グループは第1セクションと最終セクションを含んでおり、前記方法が、
第1セクションをダウンロードし、これをメモリに記憶する工程と;
前記第1セクションの直後に連続して伝送されたセクションを続いてダウンロードし、前記最終セクションがダウンロードされるか、または所定数のセクションが前記メモリに記憶されるまで各セクションがそれぞれのメモリ・ロケーションに連続して記憶される工程と;
を含んでいる。
【0016】
第6の態様において、本発明は前記データ・ストリーム中に周期的に伝送されたセクションのグループを記憶する方法を提供し、前記各グループが第1セクションと最終セクションを含んでおり、前記方法が、
データ・ストリームを受信する工程と;
第1セクションをダウンロードする工程と;
前記第1セクションの直後に連続して伝送されたセクションを続いてダウンロードし、前記最終セクションがダウンロードされるか、またはメモリ・ロケーション中に記憶されたセクションが、前記最終セクションがダウンロードされるまで続いてダウンロードされることによって連続して上書きされて所定数のセクションが記憶されるまで各セクションがそれぞれのメモリ・ロケーションに連続して記憶される工程と;
前記最終セクションを前記メモリに記憶する工程と;
を含んでいる。
【0017】
本発明の上述の第3から第6の態様により、セクションのグループから必要とされるこれらのセクションのみがレシーバ/デコーダのメモリに記憶される。例えば、仮に特定時間に放送するためにスケジュールの組まれた三つのテレビ・プログラムのリストを第3および第5の態様で見たときに、グループの最初の四つのセクションのみがデータ・ストリームからダウンロードされ、エンド・ユーザがリストを迅速にスクロール・ダウンでき、その時刻に示された最終プログラムから開始できる。第4および第6の態様により、グループの最後の四つのセクションのみがデータ・ストリームからダウンロードされ、エンド・ユーザがリストを迅速にスクロール・ダウンでき、その時刻に示された第1プログラムから開始でき、レシーバ/デコーダのメモリを最小にすることができる。
【0018】
第7の態様において、本発明は伝送データ・ストリームの複数のセクションの少なくとも一つを記憶する装置を提供し、前記一つのセクションが少なくとも一つのセクション特性を有しており、前記装置が、
データ・ストリームを受信する手段と;
少なくとも前記一つのセクション特性に従って前記データ・ストリームから前記一つのセクションをフィルタする手段と;
前記一つのセクションを記憶する手段と;
を含んでいる。
【0019】
前記フィルタ手段が、各特性がフィルタ基準とそのフィルタ基準のための値とからなる少なくとも一つのフィルタ特性を特定する手段と;
各セクション特性を各フィルタ特性と比較する手段と;
各セクション特性がそれぞれのフィルタ特性に対応したときに、前記一つのセクションを前記データ・ストリームからフィルタする手段と;
を含んでいるのが好ましい。
【0020】
第8の態様において、本発明はそのような複数のセクションをダウンロードする装置を提供し、前記記憶手段は各セクションを記憶する複数のメモリ・セクションからなる。
【0021】
本装置はさらに、各データ・フィルタ特性がデータ操作基準とそのデータ・フィルタ基準のための値とからなる少なくとも一つのデータ・フィルタ特性を特定する手段と;
各記憶されたセクション中に記憶されたデータをそれぞれのデータ・フィルタ特性と比較する手段と;
その記憶されたセクション中に記憶された前記データがそれぞれのデータ・フィルタ特性に対応していないときは、前記記憶されたセクションを前記メモリに置換できるようにする手段と;
をさらに含んでいるのが好ましい。
【0022】
本装置はまた前記記憶されたセクション中に記憶された前記データが前記各フィルタ特性に対応しているとき、セクション識別信号をアプリケーションに供給する手段をさらに含んでいる。
【0023】
上述の方法および装置は、前記セクションの他にビデオおよびオーディオ・テレビ・データを含むMPEGビットストリームの形態中のこの種のデータ・ストリームを使用することができる。
【発明を実施するための最良の形態】
【0024】
本発明の好ましい特徴は、添付図面を参照して例としてのみここに説明する。
【実施例】
【0025】
図1はデジタルテレビ1000の全体を示している。本発明は、圧縮したデジタル信号を送信するために従来のMPEG-2圧縮システムを利用する、ほぼ従来のデジタルテレビシステム2000を備えている。さらに詳細には、ブロードキャストセンター内のMPEG-2圧縮2002がデジタル信号ストリーム(一般にはビデオ信号のストリーム)を受信する。圧縮2002は、リンケージ2006によってマルチプレクサ、スクランブラ2004と接続している。マルチプレクサ2004は、複数の入力信号をさらに受信し、1つ以上のトランスポートストリームをアセンブルし、圧縮したデジタル信号を、リンケージ2010を介してブロードキャストセンターのトランスミッタ2008に送信する。もちろん、テレコムリンクを含む幅広い様々な形態をとることができる。トランスミッタ2008は、アップリンク2012を介して、電磁気信号をサテライトトランスポンダ2014へと送信し、ここで、地上レシーバ2018通常、エンドユーザが所有またはレンタルしている受信アンテナの形態である概念上のダウンリンク2016を介して、電磁気信号が電子的に処理およびブロードキャストされる。レシーバ2018が受信した信は、エンドユーザが所有またはレンタルし、エンドユーザのテレビセット2022に接続された内レシーバ/デコーダ2020に送信される。レシーバ/デコーダ2020は、圧縮されたMPEG-2信号をテレビセット2022のテレビ信号に復号する。
【0026】
条件付きアクセスシステム3000はマルチプレクサ2004、レシーバ/デコーダ2020と接続しており、一部がブロードキャストセンター内に、別の一部がデコータ内に配置されている。これによりエンド・ユーザは、1つ以上のブロードキャストサプライヤからデジタルテレビブロードキャストへアクセスすることが可能である。レシーバ/デコーダ2020内に、コマーシャルオファー(すなわち、そのブロードキャストサプライヤが販売した1つまたは複数のテレビプログラム)に関連したメッセージを解読できるスマートカードを挿入することができる。デコーダ2020とスマートカードを使用して、エンドユーザは、購読モードまたは有料視聴モードで、コマーシャルオファーを購入できる。
【0027】
相互作用システム4000もまた、マルチプレクサ2004、レシーバ/デコーダ2020と接続しており、やはり一部がブロードキャストセンター内に、別の一部がデコーダ内に配置されているので、エンドユーザは、モデムに繋がれたバックチャネル4002を介して多くのアプリケーションと対話することができる。
【0028】
図2は、本発明によるデジタルテレビシステム1000の相互作用テレビシステム4000の一般的な構成を示すものである。
【0029】
例えば、相互作用システム4000によって、エンドユーザは、持っているテレビセットを介して画面上のカタログからの商品の購入や、必要に応じてローカルニュースや天気予報を観ることや、ゲームで遊ぶことが可能になる。
【0030】
相互作用システム4000は、全体で以下の4つの主な要素を備えている。
【0031】
オーサリングツール4004であり、ブロードキャストセンター(または他の場所)にあり、ブロードキャストサプライヤはこれを使用してアプリケーションの作成、開発、デバッグ、テストを行える;
アプリケーションおよびデータサーバ4006であって、ブロードキャストセンターにあり、オーサリングツール4004と接続しており、エンドユーザに向けて同報通信を行うために、ブロードキャストサプライヤはこれを使用して、アプリケーションとデータをMPEG-2伝送ストリーム(一般にはその専用セクション)に挿入するべくマルチプレクサおよびスクランブラ2004へ伝達するために、準備し、認証し、フォーマットすることができる;
実行時エンジン(RTE)4008を備えたバーチャルマシであって、これは、エンドユーザが所有またはレンタルしているレシーバ/デコーダ2020内にインストールされた実行可能なコードであり、エンドユーザはレシーバ/デコーダ2020の稼動メモリ2024内に実行のためにアプリケーションを受信し、認証し、圧縮を解除し、ロードすることができる。エンジン4008はまた、常駐の、汎用アプリケーションを実行する。エンジン4008はハードウェアおよびオペレーティングシステムから独立している;
レシーバ/デコーダ2020と、アプリケーションおよびデータサーバ4006との間においてモデムで繋がれたバックチャネル4002であり、これにより、エンドユーザの要求に応じて、信号に、サーバ4006にデータとアプリケーションをMPEG-2伝送ストリームに挿入するように指示することが可能になる。
【0032】
相互作用テレビシステムは、システムに内蔵されたレシーバ/デコーダおよび様々な装置の機能を制御する「アプリケーション」を使用して動作する。アプリケーションはエンジン4008内で「リソースファイル」として表されている。「モジュール」は、リソースファイルとデータのセットである。1つのアプリケーションを構成するためには数個のモジュールが必要である。レシーバ/デコーダの「メモリボリューム」とはモジュールのための記憶スペースである。「インターフェス」は、モジュールをダウンロードするために使用される。モジュールは、MPEG-2伝送ストリームからレシーバ/デコーダ2020内にダウンロードすることもできる。
【0033】
次に、前述の文章で挙げたこれらの要素についてより詳細に説明する。
【0034】
本明細書の目的のために、アプリケーションは、好ましくはレシーバ/デコーダ2020の高レベル機能を制御する1つのコンピュータコードであるとする。例えば、エンドユーザが、遠隔コントローラの焦点をテレビセット2022の画面上のボタンオブジェク上に配置し、検証キーを押す際に、そのボタンに関連した指示シーケンスが実行される。
【0035】
相互作用アプリケーションはメニューを提示し、エンドユーザの要求に応じてコマンドを実行し、アプリケーションの目的に関連したデータを提供する。アプリケーションは、レシーバ/コーダ2020のROM(またはFLASH、あるいはその他の非揮発性メモリ)内に記憶されているか、もしくはレシーバ/デコーダ2020のRAMまたはFLASHメモリにブロードキャストおよびダウンロードされた常駐アプリケーションであってよい。
【0036】
アプリケーションの例を以下に示す。
● 開始アプリケーション。レシーバ/デコーダ2020が、モジュールの適応可能なコレクション(この用語については後に詳細に説明する)である常駐開始アプリケーションを備えている。モジュールの適応可能なコレクションは、レシーバ/デコーダ2020をMPEG−2環境で即時動作可能にする。アプリケーションは、所望であればブロードキャストサプライヤによって変更が可能なコア特性を備えている。また、コア特性は常駐アプリケーションとダウンロードしたアプリケーションの間のインターフェスを提供する。
● スタートアップアプリケーション。スタートアップアプリケーションは、ダウンロードしたまたは常駐のいずれであってもよいアプリケーションをレシーバ/デコーダ2020上で実行する。このアプリケーションは、アプリケーションを開始するために、サービスが到着すると実行されるブートストラップとして働く。スタートアップはRAM内にダウンロードされるため、アップデートが容易に行える。またスタートアップを、ダウンロードの直後、またはプリロードの後のいずれかに、各チャネルで使用可能な相互作用アプリケーションの選択および実行が可能であるように構成することも可能である。プリロードの場合には、アプリケーションはメモリ2024内にロードされ、必要に応じてスタートアップによって起動することが可能である。
● プログラムガイド。プログラムガイドは、プログラミングについての完全な情報を提供する相互作用アプリケーションである。例えば、プログラムガイドは、デジタルTVブーケの各チャネルに割当てられた1週間のTVプログラムについての情報を提供する。遠隔コントローラ2026上のキーを押すと、エンドユーザは、テレビセット2022の画面上にある事象の上にオーバレイされたアッドオン画面にアクセスできる。このアッドオン画面は、デジタルテレビブーケの各チャネルの現在および次の事象についての情報を提供するブラウザである。遠隔コントローラ2026上の別のキーを押すと、エンドユーザは、1週間にわたる事象についての情報のリストを表示するアプリケーションにアクセスできる。さらにエンドユーザは、単純でカストマイズされた基準で事象の検索およびソートが行える。また、選択したチャネルに直接アクセスすることができる。
● 番組有料視聴制アプリケーション。番組有料視聴制アプリケーションは、条件付きアクセスシステム3000と速結したデジタルテレビブーケの各PPVチャネル上で利用可能な相互作用サービスである。エンドユーザは、TVガイドまたはチャネルブラウザを使ってこのアプリケーションにアクセスすることができる。さらに、このアプリケーションはPPVチャネル上でPPV事象が検出され次第、自動的に開始する。エンドユーザは、ドータースマートカード3020または通信サーバ3022(モデム、電話、DTMFコード、MINITEL等を使用)を介して現行の事象を購入することができる。アプリケーションは、レシーバ/デコーダ2020のROM内に常駐するもの、またはコーダ2020のRAM内にダウンロード可能なもののいずれかであってよい。
● PCダウンロードアプリケーション。要求すれば、エンドユーザはPCダウンロードアプリケーションを使ってコンピュータソフトウェアをダウンロードすることができる。
● マガジンブラウザアプリケーション。マガジンブラウザアプリケーションは、オンスクリーンボタンを介したエンドユーザナビゲーションを備えた画像の巡回ビデオブロードキャストを有する。
● クイズアプリケーション。クイズアプリケーションはブロードキャストクイズプログラムと同期することが好ましい。1例として、テレビ2022の画面上に多項式選択の質問が表示されるので、ユーザは遠隔コントローラ2026を使って答えを選択できる。クイズアプリケーションは、その答えが正解であるかどうかをユーザに知らせることができ、また、ユーザの点数をカウントすることができる。
● テレショッピングアプリケーション。テレショッピングの1例において、販売される商品のオファーがレシーバ/デコーダ2020に転送され、テレビ2022上に表示される。遠隔コントローラを使って、ユーザは購入する特定のアイテムを選択できる。そのアイテムの注文が、モデムで繋がれたバックチャネル4002を介してアプリケーションおよびデータサーバ4006へと送信されるか、あるいは、個別の販売システムへと送信される。この販売システムの電話番号は、レシーバ/デコーダ2020のカードリーダ4036の1つに挿入されたクレジットカードに勘定を付ける旨の命令と共にレシーバ/デコーダにダウンロードされている。
● テレバンキングアプリケーション。テレバンキングの1例において、ユーザは、レシーバ/デコーダ2020のカードリーダ4036の1つに銀行カードを挿入する。するとレシーバ/デコーダ2020が、銀行カードに、またはレシーバ/デコーダに記憶された電話番号を使ってユーザの銀行を呼出し、アプリケーションが複数の機能を提供するので遠隔コントローラ2026を使って選択を行う。この機能には、例えば、電話回線を介した預金口座収支報告のダウンロード、預金口座の間での資金の送金、小切手帳の要求等がある。
● インターネットブラウザアプリケーション。インターネットブラウザアプリケーションの1例において、特定のURLのウェブページを見たいというようなユーザからの指示が、遠隔コントローラ2026を使って入力され、これらの指示が、モデムで繋がったバックチャネル4002によってアプリケーションおよびデータサーバ4006へ送信される。すると、ブロードキャストセンターからの送信に適切なウェブページが含まれ、この送信がアップリンク2012、トランスポンダ2014、ダウンリンク2016を介してレシーバ/デコーダ2020によって受信され、テレビ2022上に表示される。
【0037】
アプリケーションは、受信機/デコーダ2020のメモリ位置に記憶され、資源ファイルとして示される。資源ファイルは、グラフィックオブジェクト記述ユニットファイルと、可変ブロックユニットファイルと、命令シーケンスファイルと、アプリケーションファイルと、データファイルとを備えている。
【0038】
グラフィックオブジェクト記述ユニットファイルは、アプリケーションのスクリーン、すなわちアプリケーションのマンマシンインタフェースを記述する。可変ブロックユニットファイルはアプリケーションによって処理されるデータ構造を記述する。命令シーケンスファイルはアプリケーションの処理動作を記述する。このアプリケーションはアプリケーションに対するエントリポイントを備えている。
【0039】
このように構成されたアプリケーションは、アイコンライブラリファイル、イメージファイル、文字フォントファイル、カラーテーブルファイルおよびASCIIテキストファイルのようなデータファイルを使用できる。相互作用アプリケーションは、入力および/または出力を行うことによってオンラインデータも得ることができる。
【0040】
エンジン4008は、所与の時間で必要とするこれらの資源ファイルをそのメモリにロードするだけである。これらの資源ファイルは、グラフィックオブジェクト記述ユニットファイル、命令シーケンスファイルおよびアプリケーションファイルから読み取られる。可変ブロックユニットファイルは、モジュールをロードする手順に対する呼び出しに続いてメモリに記憶され、モジュールをロード解除する手順に対する特定の呼び出しが行われるまで、そこにロックされたままである。
【0041】
図3を参照すると、電話ショッピングのようなモジュール4010は、下記のことを含む資源ファイルおよびデータのセットである。
【0042】
単一アプリケーションファイル4012
未決定数のグラフィックブロックユニットファイル4014
未決定数の可変ブロックユニットファイル4016
未決定数の命令シーケンスファイル4018、および
必要に応じて、アイコンライブラリファイル、イメージファイル、文字フォントファイル、カラーテーブルファイルおよびASCIIテキストファイルのようなデータファイル402
【0043】
MPEGデータストリームにおいて、各モジュールはMPEGテーブルのグループを1つ備えている。各MPEGテーブルは、いくつかのセクションとしてフォーマットされうる。MPEGデータストリームにおいて、各セクションは最大4キロバイトの「サイズ」を有する。シリアルおよびパラレルポートを介したデータの伝送には、例えば、同種のモジュールがテーブルとセクションに分割され、また、セクションのサイズは伝送する媒体によって異なる。
【0044】
モジュールは、例えば、ビデオデータストリーム、オーディオデータストリーム、テレテキストデータストリームのようなデータストリームの関連するタイプ内において一般に188バイトのパケットの形式で、MPEGデータストリーム内に伝送される。各パケットは13ビットのパケット識別子(PID)を前に付けており、PIDはMPEGデータストリーム内で伝送されるパケット毎に1つである。プログラムマップテーブル(PMTテーブル)は、異なるデータストリームのリストを備え、各データストリームの内容を関連するPIDに従って定義する。PIDは、データストリーム内にアプリケーションが存在することを装置に知らせることができ、この場合、PIDはPMTテーブルを使って識別されている。
【0045】
図4を参照して、各セクション4300は典型的に次のフィールドを含んでいる:
テーブルID(TID)4302、典型的にセクション4300の始めにおいて1バイトのサイズを有している;
セクションの長さ識別子4304、典型的に2バイトのサイズを有している;
テーブル中のそのセクション番号(SN)4306(eg.1)、SNが典型的に1バイトのサイズを有している;
テーブル中のセクションの総数(LSN)4308(eg.3)、LSNが典型的に1バイトのサイズを有している;
TIDエクステンション4310、典型的に2バイトのサイズを有している;
プライベイト・データ4312;および、
セクション4300のCRC4314。CRC4314の目的は、セクション4300中のバイトを全てチェックすることであり、CRC4314が先行データの全てと相関関係があれば、セクションはレシーバ/デコーダ2020によって許容される。同様に、プライベイト・データ・フィールド4312は、そのフィールドの末尾にあり、そのフィールド4312の先行内容全てから算出されMD5サインを含み得る。
【0046】
直列または並列インターフェイスを介して受信されたデータに関して、セクションのフィールドは変化する。典型的に前述のインターフェイスのいずれかを介して受信されたセクションは、フィールド4302から4310中の、低減された量のデーからなり、CRC4314はない。
【0047】
特定モジュール/テーブルのために、このテーブルを構成するセクションの全ては同じTID4302と同じTIDエクステンション4310を有している。特定のアプリケーションのために、そのアプリケーションを形成するテーブル全ては同じTIDを有しているが、異なる別々のTIDエクステンションである。
【0048】
例えば、MPEGビットストリームからモジュール4010へアクセスするためには、モジュールのためのPIDとモジュール・ディレクトリの両方が必要である。このディレクトリは単にキャリア信号からダウンロードできるモジュール4010をリストするだけである。一旦このディレクトリがダウンロードされると、アプリケーションに対して一つのまたはそれ以上のモジュール4010をダウンロードすることが可能である。
【0049】
少量のコードをダウンロードするコンセプトと一緒にモジュール4010のコンセプトは、アプリケーションの容易な展開を許容する。これらは、常駐ソフトとしてレシーバ/デコーダ2020の永久FLASHメモリにダウンロードすることができ、エンド・ユーザによって必要とされたときにのみ、デコーダ2020のRAMにダウンロードするために送(broadcast)することできる。
【0050】
メモリ容量はモジュール4010のための記憶スペースである。この種の記憶スペースはレシーバ/デコーダ2020のメモリ2024中に配備されている。図5を参照して、メモリ2024は典型的にRAM容量4022、FLASH容量4024およびROM容量4026に分割される。メモリはモジュールがレシーバ/デコーダ2020に、例えばMPEGビットストリームからダウンロードされるモジュールを記憶するためのMPEG容量およびシリアル・インターフェイスを介して受信されたモジュールを受信するためのシリアル容量のようなレシーバ/デコーダ2020にダウンロードされるモジュールを介して種々のインターフェイスに関連するメモリ容量にさらに分割される。
【0051】
次に、RAM容量4022が、ファームウェへの専用のゾーン、エンジン4008のためのワーキング・スペースおよびバッフに分割される。FLASHおよび他の不揮発性メモリがデバイス・マネージャを介してアプリケーションまたはエンジン自体のいずれかによってアクセスできる。
【0052】
各容量はモジュール4010のリストを含み、各モジュール4010はファイル4012、4014、4016、4018、4020のリストを含んでいる。同じ名前のついた二つのファイルをもたせることができ、また、別個のモジュールに配備することもできる。例えば、アプリケーションのバージョンは典型的にROM容量4026に記憶され、後者のバージョンはFLASH容量4024にダウンロード可能で、FLASH容量4024に記憶されたバージョンの代わりにROM容量に記憶されたバージョンと置換される。ファイルの内容はLZWフォーマットに圧縮されるが、ファイルの解凍はある一定時間かかるので、解凍されたフォーマットで受信することができる
【0053】
レシーバ/デコーダ2020の物理的インターフェイスは、データをダウンロードするために使用される。図6を参照して、レシーバ/デコーダ2020は、例えば、6個のダウンロードする媒体、すなわち、MPEGフロー・チューナ4028、シリアル・インターフェイス4030、パラレル・インターフェイス4032、モデム4034および二つのカード読取装置4036を含んでいる。
【0054】
複数のアプリケーションソースとレシーバ/デコーダ2020の複数の製作ソースにより、一つのアプリケーションは全てのレシーバ/デコーダにおいて同じように機能し、各レシーバ/デコーダは同じように正しい方法で全てのアプリケーションを実行しなければならない。図7を参照して、レシーバ/デコーダ2020はマイクロプロセッサの制御と共通のアプリケーション・プログラミング・インターフェイス4054の制御下で実行する実行時間エンジン4008からなる。これらは全てのレシーバ/デコーダ2020に設けられていて、全てのレシーバ/デコーダ2020がアプリケーションの局面から同一である。
【0055】
図7はアプリケーション4056を実行するためのレシーバ/デコーダ2020のアーキテクチャを示す。バーチャル・マシン4007がアプリケーション4056を実行し、これは例えばMPEGデータ・ストリームからレシーバ/デコーダ2020にダウンロードされたバーチャル・マシンまたはアプリケーション4056”に直接接続されたアプリケーション4056’から構成できる。実行時間エンジン4008はグラフおよびテキストを表示し、サービスのためのデバイスをコールし、「イベント」を受信し、特定計算のためのライブラリ4058の機能を使用する。
【0056】
図7を参照して、アプリケーションに関して、デコーダ2020の機能はデバイス4060として「見られる」。従って、これらはどのアプリケーションによっても見られないレシーバ/デコーダ2020の機能である。
【0057】
デバイス4060は、ハードウア4066の要素4062または物理的インターフェイス4064に対応できる論理デバイス・ユニットからなる。この種のデバイスは、「低いレベルのデバイス」4068と見なされる。この種のデバイス4068の出力は、デバイス4068によって論理信号出力を、例えばハードウア・インターフェイス4064を実行するのに必要とする信号に変換するための少なくとも一つのデバイス・ドライバ4070に接続することができる。別の方法として、デバイス4068はそれ自体レシーバ/デコーダ2020の要素ないしインターフェイスを動してもよい、すなわち、デバイスの出力がハードウア4066に直接接続されてもよい。
【0058】
低いレベルのデバイス4068の例を次に説明する。
【0059】
LCARDデバイスは、プログラムが、一つのスマートカード読取装置4036中に含まれたスマートカードと通信することを可能にし、また、RCARDデバイスは、プログラムが、他のスマートカード読取装置4036中に含まれたスマートカードと通信することを可能にする。例えば、これらのデバイスはプログラムをカードの状態で読み取れるように、カード歴を読み取り、また、入力メッセージをカードに送れるようにすることができる。これらのデバイスは、また、読取装置カードが挿入された旨、読取装置からカードを取り出された旨、および、カードがリセットされた旨(プログラムによって要求されない場合)をプログラム通知る。LCARDおよびRCARDデバイスはカードを実行するために使用されるプロトコルに固有である。典型的に、ISO7816プロトコルが使用される。
【0060】
SCTVデバイスは、テレビ・セット2022へのスカート(定順位自動送信方式)(SCART)アウトレットの検証及び構成をプログラムが行うことを可能にする。例えば、このデバイスは、プログラムが、スカート・アウトレットのサウンド特性に関する情報をリクエストし、サウンドに「ミュート」を実行し、またRGBレベルをダイナミックにプログラムすることを可能にする。
【0061】
TUNERデバイスは、プログラムチューナ4028を使用ことを可能にする。例えば、このデバイスはプログラム最小周波数か、またはチューナの現周波数のいずれかから走査を実行し、チューナ・パラメータを読み取り、またチューナをプログラムすることを可能にする。
【0062】
SERIALデバイスは、プログラムシリアル・リンクを介して装置と通信することを可能にし、またPARALLELデバイスは、プログラムパラレル・リンクを介して装置と通信することを可能にする。例えば、これらのデバイスはプログラム各リンクを介してメッセージを送り、またそのリンクを介してメッセージ受信された旨をプログラム通知する。
【0063】
MODEMデバイスは、レシーバ/デコーダが、V23を支持する内部半2重モデムを介してデータ・サービスと通信することを可能にする。このMODEMデバイスは番号のダイアリングと、メッセージのデータ・サーバへの送信と、モデムの断続と、メッセージの信号受信と、ャリアの検出または喪失およびエラーの検出をリクエストする。
【0064】
遠隔位置で実行される遠隔デバイスは、ポートおよびプロトコルが規定されなければならないことを除いて、どのローカル・デバイスともなりうる。
【0065】
「低レベル・デバイス」に加えて、レシーバ/デコーダ2020は、レシーバ/デコーダ2020の動作を制御する「高レベル・デバイス」を含めることもできる。
【0066】
MPEGデータ・ストリームからロードされたセクションに関して、「MLOADデバイス」といわれるデバイス4072は、一つのアプリケーションが、MPEGセクション、完全なMPEGテーブルまたはハードウアおよびソフトウア・フィルタ基準に対応するMPEGセクションのグループにロードすることを可能にする。
【0067】
図8を参照して、電磁信号がレシーバ2018によって受信され、MPEGチューナ4028に送信される。チューナは典型的にはある周波数の範囲を走査し、キャリア周波数がその範囲内で検出されたときにのみ停止する。そうして検出された信号は復調器4500に送信され、ここで信号が復調され、この信号がデマルチプレクサ4502に送信される。このデマルチブレクサ4502はMPGEチップ4504に接続され。MPGEチップ4504は同様に、テレビ2022に接続さる。デマルチプレクサ4502は、レシーバ/デコーダ2020のRAM容量4022に接続されている32個の出力まで典型的に提供されるハードウア・フィルタ4506にも接続されている。
【0068】
デマルチプレクサ4502によって受信された電磁信号は、データ・パケットの多数のデータ・ストリームを含み、典型的には放送供給者によって提供されサービスのためのビデオ・パケットのストリーム、オーディオ・パケットのストリーム、テレテキスト・パケットのストリームおよびサブタイトル・パケットのストリームからなる。これらのデータ・パケットは、テレビ・セット2022のための信号にデコードするためにデマルチプレクサ4502によってデマルチプレックスされ、MPEGチップ4504に伝送される。
【0069】
アプリケーションに関するデータ・パケットはハードウア・フィルタ4506に伝送される。図9を参照して、ハードウア・フィルタないしプリフィルタ4506は、データ・ストリームのセクション4508の典型的には8バイトのうち一つまたはそれ以上、典型的にはオフセット・バイト0(4150)およびオフセット・バイト3から9(4512)を使用して、データ・ストリームからのセクションをフィルタする。これらのバイトはTID4302、セクション番号4306、最終セクション番号4308およびMPEGセクション4508のTIDエクステンション4310を含んでいる。
【0070】
ハードウア・プリフィルタ特性を規定するために、アプリケーションは、セクション4508のどのビットを考慮するか、また各選択されたビットの予想値を特定付ける。従って、ハードウア・プリフィルタ4506フィルタ・マスク・アレイ4514およびフィルタ値アレイ4516それぞれからなり、各例は図10に示す。図10において、ビット4518、4520および4522はフィルタ・マス4514を使用して選択され、またこれらのビットそれぞれの0、1および0がフィルタ値4516を使用して選択される。これらのフィルタの基準により、MPEGセクション4524はレシーバ/デコーダ2020のRAM4022のバッファ出力され、ここでMPEGセクション4526はバッファ出力されない。
【0071】
ハードウア・プリフィルタ4506は、メイン・プロセッサ内でのプロセッサ電力の浪費を回避してデマルチプレクサ・チップによって操作される。
【0072】
マイクロプロセッサは、そのセクションがソフトウェア・フィルタ4526として記憶されているレシーバ/デコーダ2020のRAM4022を利用できる。ソフトウア・フィルタ4526により、RAM容量4022のバッファ中にロードされたどのセクションがアプリケーションに入ることになるか選択することができる。
【0073】
ソフトウア・フィルタの原理は、ハードウア・フィルタの原理と類似している。ソフトウア・フィルタ4526は、MPEGセクション4508中のデータの典型的には8個の連続したバイト4528を使用する。図11に示したように、これらの8個の連続するバイトの第1バイト4530の位置は、セクション4508中の第1バイト4510に基づいたオフセット4532で規定される。
【0074】
ハードウア・フィルタを介してロードされた後、MPEGセクション中に記憶されたデータがソフトウア・フィルタのための基準に対応していない場合、MPEGセクションが記憶されたバッファが、他のMPEGセクションをロードするのに使用できる。
【0075】
MPEGデータ・ストリームからMPEGセクションをロードするために、MLOADデバイス典型的に次の情報を受ける。
【0076】
MPEGセクションが見いだされるデータ・ストリームのPID;
PIDをデスクランブルするための多数のPID ECMからなるデスクランブル・データ・アレイ;
PIDをデスクランブルするのに使用される特定ECMを認識するオペレータ基準;
適用されるべきハードウア・フィルタ値アレイ;
適用されるべきハードウア・フィルタ・マスク・アレイ;
適用されるべきソフトウア・オフセット値;
適用されるべきソフトウア・フィルタ値アレイ;
適用されるべきソフトウア・フィルタ・マスク・アレイ;
セクションの最大サイズ(4096バイトまで);および
どれだけ長くデバイスがセクションへ、セクションのグループへまたはテーブルにロードするのに待つか決定するタイムアウト機能。
【0077】
セクションの最大サイズが512バイトを示しているとき、セクションのサイズは512バイトを超えることはできない。
【0078】
セクションは、デバイスによって割り当てられたRAM容量4022のバッファに一度に全てロードされる。セクションがロードされたときに、また、これがソフトウア・フィルタ基準に対応していれば、デバイスはデマルチプレキシング・ルートを開し、実行レポートとセクションを含んでいるバッファのアドレスを含む「イベント」を介してアプリケーションに通知しなければならない。ロード後、セクションはそれが記憶されたバッファのアドレスによって識別される。
【0079】
テーブルがロードされたときに、デバイスはTID4302も受ける。テーブルの各セクションは、これに割り当てられた各バッファ全てに一度にロードされる。しかし、テーブルはセクションの端から端まで、またセクションの順番に進めることによってロードすることが必須ではない。テーブルの各セクションがロードされるにつれて、デバイスはテーブルのセクションがロードされたことをアプリケーションに通知することになる。別の方法で、または付加的にデバイスは全テーブルがそのために割り当てられたバッファに順次ロードされる事象を介してアプリケーションに通知することができる。
【0080】
図12を参照して、テーブルは典型的に次の方法でロードされる(ソフトウア・フィルタの説明は簡潔さだけの理由で省略する);
ステップ1:ハードウア・フィルタ・マスク・アレイ4532およびハードウェア・フィルタ値アレイ4536の特定付け;
ステップ2:ハードウア(およびソフトウア)に対応する第1セクション4538ロードする;
ステップ3:セクション4538のLSN4530の値を読み取り、ロードされるべきセクションの(=LSN+1)を決定し、LSN4530の値に従ってハードウア・フィルタ・マスク・アレイ4534およハードウア・フルタ値アレイ4536を変更する;
ステップ4から6:TIDとLSNの値に従って残りのセクション4542、4544および4546をロードし、イベント(事象)をアプリケーションに送信する。
【0081】
テーブルのローディングは、正しく行われたダウンロードを示すベントが実行時間エンジン4006のキューに突入したときにのみ完了す。このイベントがエンジン・キューに配置される前に、テーブルのローデングの途中終了正しく行わなければならない。
【0082】
テーブルがロードされた後、テーブルのダウンロードがリクエストされたときに、アプリケーションによってそれが割り当てられた名前で識別される。
【0083】
テーブルがレシーバ/デコーダ2020のメモリに記憶された方法に関する情報は、テーブルの記述子を戻すコールによってアクセスすることができる。この種の記述子の一例を図17に示す。記述子4700はテーブル中のセクション総数(LSN+1)を含むフィールド4702と、「0」のSNを有するセクション4544に始まり、「1」のSNを有するセクション4546から、LSNに対応するSNを有するセクション4542までのテーブルを形成するセクション4538、4542、4544および4546を包含しているバッファのリスト4704とを含んでる。
【0084】
一グループのセクションは、ハードウェおよびソフトウェフィルタ基準に対応するセクションの全てからなる。これらのセクションはMPEGデータ・ストリーム中に巡回的に現れる。
【0085】
図13を参照して、グループ(組)4548は、二つのセクション、すなわち、最初のセクション(SDG)4550と最後のセクション(SFG)4552によって範囲が定められている。各セクションはそれぞれのフィルタ基準に対応し、両者間にグループの他のセクション(SG)4554がある。
【0086】
グループ中のセクションのローディングは二つの異なるローディング・モードを用いて行なうことができる。
【0087】
後続モード」において、SDG4550の直後の所定数のセクション4544がロードされる。各タイプのセクション(SDG、SG、SFG)については、アプリケーションはTID、ハードウア・フィルタ、ソフトウア・フィルタおよび最大セクション長さを識別する。
【0088】
図14を参照して、デバイスはまずハードウアおよびソフトウア・フィルタ基準を適用してSDG4550のみダウンロードおよび記憶を可能にするのが好ましい。これでSDG4550のロードの前に、レシーバ/デコーダ2020のRAMメモリ容量4022のバッファへの余分なSG4554のローディングを回避する。検出時に、SDG4550がメモリのロケーションまたはバッファ4556に記憶される。こうしてデバイスはハードウおよびソフトウフィルタ基準を適用して1グループのMPEGデータ・セクションから所望のSGとSFGのダウンロードを可能にする。
【0089】
図14に示す例において、一つのSDG、七つのSGおよび一つのSFGからなる1グルーブのMPEGセクションから三つのSG4554が、MPEGデータ・ストリームからダウンロードされることになる。バッファ4556へのSDGの記憶に続いてSDG4550の後に伝送される対象のMPEGセクションのグループから最初のSG4558がバッファ4560に記憶される。同様にして、SDG4550の後に伝送される対象のMPEGセクションのグループから第2のSG4562がバッファ4564に記憶され、SDG4550の後に伝送される対象のMPEGセクションのグループからの第3のSG4566がバッファ4568に記憶される。
【0090】
所要数のセクション4554が記憶されるか、SFG4552がダウンロードされまで、SGの記憶操作が続行される。ダウンロードが実行されれば、SFG4552はメモリ・ロケーションに記憶されない。
【0091】
グループの各セクションがロードされるにつれて、デバイスは、グループのセクションがロードされたイベントを介してアプリケーションに通知することができる。別の方法で、または付加的に、デバイスは、MPEGセクションの記憶の完了かまたはアプリケーションへイベントを送ることによってSFG4552ダウンロードすることのいずれかのみでアプリケーションへ通知することができる。
【0092】
「先行モード」において、SFGの前の所定数のセクショがメモリ・ロケーションに記憶される。各タイプのセクション(SDG、SG、SFG)については、アプリケーションはPID、TID、ハードウア・フィルタ、ソフトウア・フィルタおよび最大セクション長さを識別る。
【0093】
このモードでのローディングは、MPEGセクションを記憶するために循環バッファの使用を必要とする
【0094】
図15を参照して、デバイスはまずハードウアおよびソフトウフィルタ基準を適用してSDG4570のみをダウンロードし記憶できるのが好ましい。これでSDG4570のロードの前に、レシーバ/デコーダ2020のRAMメモリ容量4022のへの余分なSG4544のローディングを回避する。検出時に、SDG4550は記憶されない。こうしてデバイスはハードウおよびソフトウフィルタ基準を適用して1グループのMPEGデータ・セクションから所望のSGとSFGのダウンロードを実行することを可能にする
【0095】
図15に示す例において、一つのSDG、七つのSGおよび一つのSFGからなる1グループのMPEGセクションから三つのSG4544が、MPEGデータ・ストリームからダウンロードされることになる。SDG4570のダウンロードに続いて、SDG4570の後に伝送される対象のMPEGセクションのグループから最初のSG4572バッファ4574に記憶される。同様にして、SDG4550の後に伝送される対象のMPEGセクションのグループから第2のSG4576がバッファ4578に記憶され、SDG4570の後に伝送される対象のMPEGセクションのグループから第3のSG4580がバッファ4582に記憶される。
【0096】
SDG4550の後に伝送される対象のMPEGセクションのグループからの第4のSG4584がバッファ4574(すなわち、最初のSG4572が記憶されたバッファ)に記憶される。
同様にして、続いて伝送される各SG4586、4588および4590バッファ4578、4582および4574それぞれに記憶される。
【0097】
この巡回的方法でSGを記憶することは、SFG4592がデバイスによって検出さるまで継続される。これはSFGが検出される前にたとえ所望の数のがロードされていなくてもあてはまる。検出がなされたときに、SFG4592はバッファに記憶され、グループのダウンロードが首尾良く行われたことを示すイベント(事象)がアプリケーションに送られる。
【0098】
グループがレシーバ/デコーダ2020のRAM4022に記憶され方法に関する情報は、グループの記述子を戻す特定コールによってアクセスすることができる。
【0099】
この種の記述子の一例を図16に示す。記述子4600は、グループ中のセクションの数と、SDGかまたはSFのいずれか(ローディング・モードによる)、およびーディングする順序でグループを構成するセクションSGを包含しているバッファのリスト4604とからなる。
【0100】
グループは、ロードされた後、グループのダウンロードがリクエストされたときにアプリケーションによってそれに割り当てられた名前で一意に識別される。
【0101】
セクションをグループに付加し、またはグループからセクションを除去したりすることができる。あるセクションは一つを超えるグループに属すことができる。
【0102】
アプリケーションがある一つのセクションをグループに付加することリクエストると、新しいセクションを含むバッファのアドレスが記述子4604の末尾に配置され、フィールド4602がアップデートされる。アプリケーションがセクションのグループからの除去リクエストると、このセクションを含むバッファのアドレスが記述子4600中で非表示とされ、フィールド4602がアップデートされる。セクションがグループ中の最後のセクションでなければ、記述子は、どの空きメモリ・スペースも除去るよ再編成される。従って、全てのセクションを削除することによって「空きグループ」をもたせることもできる。
【0103】
デバイスは一意の識別子で識別され、例えば、「LCARD_DEVICE_ID」がLCARDデバイスを識別し、また「RCARD_DEVICE_ID」がRCARDデバイスを識別する。
【0104】
新しいデバイス4062が作成されると、放送センターから適切なアプリケーション4056をダウンロードすることによって既存デコーダ2020中にインストールすることができる。典型的に、一つのマネジャによって扱われるデバイスの最大数は256である。
【0105】
このダウンロードは、ハードウアおよびソフトウア・バージョンをチェックするアプリケーション4056によってレシーバ/デコーダ2020で実行され、もし正しければ、新しいデバイス4062を表わすソフトウア・モジュールをロードし、また、ツールボックス4058のプロシージャに、ファームウア(FLASHメモリ中の)内の新しいデバイス・コードをインストールするよう求める。これはソフトウアの残りの部分に影響を与えることなくデコーダ2020内での新しいインストールに融通性と信頼性を提供することができる。
【0106】
本発明は、単に例として述べられ、詳細の変更は本発明の範囲内で行うことができる。
【0107】
説明に開示された各特徴、および(妥当である場合)請求の範囲および図面は、別々にあるいは任意の適切な組み合わせで提供されてもよい。
【0108】
前述の好ましい実施例では、本発明のある種の特徴はコンピュータソフトウェアを使用して実現された。しかしながら、もちろん、これらの特徴のいずれハードウェアを使用して実現されてもよいことは当業者に明らかである。さらに、ハードウェア、コンピュータソフトウェア等によって実行された機能は、電気信号等に対して、あるいは電気信号を使用して実行されることは容易に理解される。
【0109】
相互参照は、我々の同時係属出願に対して行われ、全ては、同じ出願日を有し、名称が「信号発生および放送(代理人参照番号PC/ASB/19707)」、「暗号化放送信号の受信機と併用するためのスマートカード、および受信機(代理人参照番号PC/ASB/19708)」、「放送・受信システムおよびそのための条件付アクセスシステム(代理人参照番号PC/ASB/19710)」、「受信機/デコーダを介して送信機からコンピュータにコンピュータファイルのダウンロード(代理人参照番号PC/ASB/19711)」、「テレビジョンプログラムおよび他のデータの送信および受信(代理人参照番号PC/ASB/19712)」、「データのダウンロード(代理人参照番号PC/ASB/19713)」、「コンピュータメモリ構成(代理人参照番号PC/ASB/19714)」、「テレビジョンあるいはラジオ制御システム生成(代理人参照番号PC/ASB/19715)」、「送信データストリームからのデータセクションの抽出(代理人参照番号PC/ASB/19716)」、「アクセス制御システム(代理人参照番号PC/ASB/19717)」、「データ処理システム(代理人参照番号PC/ASB/19718)」、および「放送・受信システム、およびそのための受信機/デコーダおよび遠隔コントローラ(代理人参照番号PC/ASB/19720)」である。これらの文書の開示は参照してここに組み込まれている。出願のリストは本出願を含んでいる。
【図面の簡単な説明】
【図1】本発明の好ましい実施例によるデジタル・テレビ・システムの全体構成を示す。
【図2】デジタル・テレビ・システムの相互作用システムの構成を示す。
【図3】相互作用レシーバ/デコーダのメモリにダウンロードされたモジュール内のファイルの配置を示す。
【図4】セクションの配置を示す。
【図5】相互作用レシーバ/デコーダのメモリのメモリ容量の配置を示す。
【図6】レシーバ/デコーダのインターフェイスの概略図である。
【図7】レシーバ/デコーダのソフトエウアの構成を示す。
【図8】MPEGデータ・ストリームからセクションをダウンロードするための受信システムの構成を示す。
【図9】ハードウア・プリフィルタによって使用されるセクション中のバイトの配置を示す。
【図10】ハードウェア・フィルタのハードウア・フィルタ・マスク・アレイおよびハードウア・フィルタ数アレイの一例を示す。
【図11】ソフトウア・プリフィルタによって使用されるセクション中のバイトの配置を示す。
【図12】テーブルのローディングの一例を示す。
【図13】セクションのグループ中のセクションの配置の一例を示す。
【図14】セクションのグルーブの後続モード・ダウンロードの一例を示す。
【図15】セクションのグループの先行モード・ダウンロードの一例を示す。
【図16】セクションのグループの記述子中のフィールドの配置を示す。
【図17】セクションのテーブルの記述子中のフィールドの配置を示す。
【Technical field】
[0001]
In addition to data sections, the present invention provides video and audio television.·dataRelates to an apparatus and method for storing one or more sections of a transmitted data stream, such as an MPEG bitstream.
[Background]
[0002]
A digital transmission system intended primarily for broadcasting television signals, but not limited toInThe advent of satellite television systems has opened up the possibility of using this type of system for other purposes. One of them is to provide interaction with end users.
[0003]
One way to do this is to use a TV signalIs receivedOn receiver / decodersoTo run the application. The code for the application is permanently stored in the receiver / decoder. However, this is quite limited.Preferably,The receiver / decoder must be able to download the code for the required application. thisLike,ThanWide rangeCan provide a method, and the application,If necessary,Updates can be done without any user intervention.
DISCLOSURE OF THE INVENTION
[Problems to be solved by the invention]
[0004]
CoIn computer systems, especially as a receiver / decoder for digital televisionspecificAssembled into a large systemIncludedIn rare systems, the amount of memory is often limited. This means that the memory must be organized so that the use of memory space by the various functions required by the system is minimized. Furthermore, it is also necessary to minimize the time required to access at least certain parts of the memory.
[Means for Solving the Problems]
[0005]
Therefore, the present invention is not particularly limited to this.InRequired by applicationOnly the dataReceiver / decoder memoryWhatdownloadTo doAbout.
[0006]
In a first aspect, the present invention provides a method for storing at least one of a plurality of sections of a transmission data stream, wherein the one section has at least one section characteristic, the method comprising:
Receiving a data stream;
Filtering the one section from the data stream according to at least the one section characteristic;
Storing the one section;
Consists of.
[0007]
This filtering process is performed only on the sections required by the application to be loaded into the receiver / decoder memory.
[0008]
In this preferred embodiment, the filtering step identifies at least one filter characteristic, each characteristic comprising a filter criterion and a value for that filter criterion;
Comparing each section characteristic with each filter characteristic;
Filtering the one section from the data stream when each section characteristic corresponds to a respective filter characteristic;
Is included.
[0009]
A second aspect of the present invention provides a method for storing a plurality of sections of a transmission data stream using the method described above, each section being stored in a respective memory location.
[0010]
The method further includes identifying at least one data filter characteristic, each data filter characteristic comprising a data manipulation criterion and a value for the data filter criterion;
Comparing the data stored in each stored section with the respective data filter characteristics;
Enabling the stored section to be replaced by the memory when the data stored in the stored section does not correspond to a respective data filter characteristic;
It is preferable that it is further included.
[0011]
Preferably, the method further includes supplying a section identification signal to the application when the data stored in the stored section corresponds to each data filter characteristic.
[0012]
The section identification signal preferably comprises the storage address of the one section.
[0013]
In a third aspect, the present invention provides a method for storing a group of sections according to the above-mentioned direction, wherein the sections are periodically transmitted in the data stream, each group comprising a first section and a final section. And the method is
Storing the first section;
Sections transmitted consecutively immediately after the first section are later downloaded and each section continues to its respective memory location until the last section is downloaded or a predetermined number of sections are stored. Memorized process;
Is included.
[0014]
In a fourth aspect, the present invention provides a method for storing a group of sections according to the method described above, wherein the sections are periodically transmitted to the data stream, the group comprising a first section and a final section; The method comprises
Downloading the first section;
Continue to download the section transmitted consecutively immediately after the first section, and the last section is downloaded, or the section stored in a memory location continues until the last section is downloaded Each section being successively stored in a respective memory location until a predetermined number of sections are stored by being overwritten in succession by being downloaded in a subsequent manner;
Storing the final section in the memory;
Is included.
[0015]
In a fifth aspect, the present invention provides a method for storing a periodically transmitted section group in a data stream, wherein the group includes a first section and a final section, the method comprising:
Downloading the first section and storing it in memory;
Subsequent downloads of consecutively transmitted sections immediately after the first section and each section has its own memory location until the last section is downloaded or a predetermined number of sections are stored in the memory And a process stored in succession;
Is included.
[0016]
In a sixth aspect, the present invention provides a method for storing a group of sections periodically transmitted in the data stream, wherein each group includes a first section and a final section, the method comprising: ,
Receiving a data stream;
Downloading the first section;
Continue to download the section transmitted consecutively immediately after the first section, and the last section is downloaded, or the section stored in a memory location continues until the last section is downloaded Each section being successively stored in a respective memory location until a predetermined number of sections are stored by being overwritten in succession by being downloaded in a subsequent manner;
Storing the final section in the memory;
Is included.
[0017]
According to the above third to sixth aspects of the present invention, only those sections required from the group of sections are stored in the memory of the receiver / decoder. For example, when viewing a list of three television programs scheduled for broadcast at a specific time in the third and fifth aspects, only the first four sections of the group are downloaded from the data stream. The end user can quickly scroll down the list and can start from the final program shown at that time. With the fourth and sixth aspects, only the last four sections of the group are downloaded from the data stream, allowing the end user to quickly scroll down the list and start with the first program shown at that time The memory of the receiver / decoder can be minimized.
[0018]
In a seventh aspect, the present invention provides an apparatus for storing at least one of a plurality of sections of a transmission data stream, wherein the one section has at least one section characteristic, the apparatus comprising:
Means for receiving a data stream;
Means for filtering the one section from the data stream according to at least the one section characteristic;
Means for storing said one section;
Is included.
[0019]
Means for specifying at least one filter characteristic, each characteristic comprising a filter criterion and a value for the filter criterion;
Means for comparing each section characteristic with each filter characteristic;
Means for filtering the one section from the data stream when each section characteristic corresponds to a respective filter characteristic;
Is preferably included.
[0020]
In an eighth aspect, the present invention provides an apparatus for downloading such a plurality of sections, wherein said storage means comprises a plurality of memory sections storing each section.
[0021]
The apparatus further includes means for identifying at least one data filter characteristic, each data filter characteristic comprising a data manipulation criterion and a value for the data filter criterion;
Means for comparing the data stored in each stored section with the respective data filter characteristics;
Means for allowing said stored section to be replaced by said memory when said data stored in said stored section does not correspond to a respective data filter characteristic;
Is preferably further included.
[0022]
The apparatus also includes means for providing a section identification signal to the application when the data stored in the stored section corresponds to each filter characteristic.
[0023]
The method and apparatus described above can use this type of data stream in the form of an MPEG bitstream that includes video and audio television data in addition to the section.
BEST MODE FOR CARRYING OUT THE INVENTION
[0024]
Preferred features of the present invention will now be described by way of example only with reference to the accompanying drawings.
【Example】
[0025]
Figure 1 is digitalTV set1000Showing the whole. The present invention utilizes a conventional MPEG-2 compression system to transmit a compressed digital signal, which is almost conventional digitalTV setSystem 2000 is provided. In more detail, MPEG-2 compression in the broadcast centervessel2002 receives a digital signal stream (typically a stream of video signals). compressionvessel2002 is connected to the multiplexer and scrambler 2004 by linkage 2006. The multiplexer 2004 further receives a plurality of input signals, assembles one or more transport streams, and transmits the compressed digital signal to the broadcast center transmitter 2008 via linkage 2010. Of course, it can take a wide variety of forms including telecom links. Transmitter 2008 sends the electromagnetic signal to satellite transponder 2014 via uplink 2012, whereAbove the groundReceiver 2018In,Normal,EndA concept that is in the form of a receiving antenna owned or rented by a userupperVia the downlink 2016, the electromagnetic signal is processed and broadcast electronically. Receiver2018ReceivedissueThe endOwned or rented by user, endUser TVWithin connected to set 2022WarehouseSent to receiver / decoder 2020. Receiver / decoder 2020 converts compressed MPEG-2 signal to TVDecode into set 2022 television signal.
[0026]
Conditional Access System 3000 is Multiplexer 2004, Receiver / Decoder2020Are partly located in the broadcast center and another part in the decoder. ThisEndUsers can receive from one or more broadcast suppliersofDigitalAccess to TV broadcasts is possible. Within the receiver / decoder 2020, a commercial offer (ie, one or more televisions sold by its broadcast supplier)A smart card that can decrypt messages related to the program) can be inserted. End using decoder 2020 and smart cardThe user can purchase a commercial offer in a subscription mode or a paid viewing mode.
[0027]
The interaction system 4000 is also connected to the multiplexer 2004, the receiver / decoder 2020 and is also partly located in the broadcast center and another part in the decoderA user can interact with many applications via a back channel 4002 connected to a modem.
[0028]
FIG. 2 shows a digital representation according to the invention.TV setSystem 1000 interactive television1 shows a general configuration of a system 4000.
[0029]
For example, by the interaction system 4000, the endThe user has a televisionIt is possible to purchase products from the catalog on the screen through the set, watch local news and weather forecasts as needed, and play games.
[0030]
The interaction system 4000 comprises the following four main elements as a whole.
[0031]
Authoring tool 4004, located in the broadcast center (or elsewhere), that broadcast suppliers can use to create, develop, debug, and test applications;
Application and dataServer 4006, located at the broadcast center, connected to authoring tool 4004, and endIn order to broadcast to the user, the broadcast supplier uses this to communicate applications and data to the multiplexer and scrambler 2004 for insertion into the MPEG-2 transport stream (typically its dedicated section). Prepare,AuthenticationCan be formatted;
Runtime engine (RTE)4008Virtual withMashiNAnd this is the endExecutable code installed within the receiver / decoder 2020 owned or rented by the userUser is working memory of receiver / decoder 20202024Receive the application for execution withinAuthenticationCan be decompressed and loaded. Engine 4008 also executes a resident, general purpose application. Engine 4008 is independent of hardware and operating system;
Receiver / decoder 2020 and applications and dataserver4006Back channel 4002 connected by modem betweenIn response to a user request, the signal can instruct the server 4006 to insert data and applications into the MPEG-2 transport stream.
[0032]
Interactive tvThe system operates using an “application” that controls the functionality of the receiver / decoder and various devices built into the system. The application is represented in the engine 4008 as a “resource file”. A “module” is a set of resource files and data. Several modules are required to configure one application. The “memory volume” of the receiver / decoder is the storage space for the module. "InterfaceI"" Is used to download the module. The module can also be downloaded into the receiver / decoder 2020 from the MPEG-2 transport stream.
[0033]
Next, these elements mentioned in the above sentence will be described in more detail.
[0034]
For purposes herein, the application is preferably a piece of computer code that controls the high level functionality of the receiver / decoder 2020. For example, endThe user focuses the remote controller on the TVButton object on the screen of set 2022GPlaced on topValidationWhen a key is pressed, the instruction sequence associated with that button is executed.
[0035]
The interactive application presents a menu and endsExecute commands in response to user requests and provide data related to the purpose of the application. Application / receiverDeIt may be a resident application stored in the ROM (or FLASH, or other non-volatile memory) of the coder 2020, or broadcast and downloaded to the RAM / FLASH memory of the receiver / decoder 2020.
[0036]
Examples of applications are shown below.
● Start application. The receiver / decoder 2020 includes a resident start application that is an adaptive collection of modules (this term will be described in detail later). The adaptable collection of modules makes the receiver / decoder 2020 ready for operation in the MPEG-2 environment. The application has core characteristics that can be changed by the broadcast supplier if desired. The core characteristics are the interface between the resident application and the downloaded application.IProvide
● Startup application. The startup application executes an application on the receiver / decoder 2020 that may be either downloaded or resident. This application serves as a bootstrap that is executed when the service arrives to start the application. Since the startup is downloaded into the RAM, it can be easily updated. The startup can also be configured to allow selection and execution of an interactive application available on each channel, either immediately after download or after preload. In the case of preloading, the application is loaded into the memory 2024 and can be started by startup as needed.
● Program guide. A program guide is an interactive application that provides complete information about programming. For example, the program guide provides information about the weekly TV program assigned to each channel of the digital TV bouquet. Press a key on the remote controller 2026 to endUser tvAn add-on screen overlaid over the events on the screen of set 2022 can be accessed. This add-on screen is digitalTV setA browser that provides information about the current and next events for each channel in the bouquet. Press another key on remote controller 2026 to endUser is 1 weekSpanYou can access an application that displays a list of information about the event. Further endUser is simple and customizedStandardYou can search and sort events. In addition, the selected channel can be directly accessed.
● Program pay viewing system application. The pay-for-view program application is digitally linked to the conditional access system 3000.TV setAn interaction service available on each PPV channel of the bouquet. EndThe user can access this application using a TV guide or a channel browser. In addition, the application starts automatically as soon as a PPV event is detected on the PPV channel. EndThe user can use the daughter smart card 3020 or the communication server 3022 (using a modem, a telephone, a DTMF code, MINITEL, etc.).currentEvents can be purchased. Application resides in the ROM of the receiver / decoder 2020, orDeIt can be anything that can be downloaded into the RAM of the coder 2020.
● PC download application. If requested, endThe user can download the computer software using a PC download application.
● Magazine browser application. Magazine browser application ends via an on-screen buttonHaving a patrol video broadcast of images with user navigation.
● Quiz application. The quiz application is preferably synchronized with the broadcast quiz program. As an example, a polynomial selection question is displayed on the screen of the television 2022, so that the user can select an answer using the remote controller 2026. The quiz application can inform the user whether the answer is correct and can count the user's score.
● Teleshopping application. In one example of teleshopping, an offer for a product for sale is transferred to a receiver / decoder 2020 and displayed on a television 2022. Using the remote controller, the user can select specific items to purchase. The order of the item is applied to the application and data via a back channel 4002 connected by a modem.It is sent to the server 4006 or sent to an individual sales system. The telephone number of this sales system has been downloaded to the receiver / decoder along with an instruction to charge the credit card inserted into one of the card readers 4036 of the receiver / decoder 2020.
● Telebanking application. In one example of telebanking, a user inserts a bank card into one of the card readers 4036 of the receiver / decoder 2020. The receiver / decoder 2020 then calls the user's bank using the bank card or the telephone number stored in the receiver / decoder, and the application provides multiple functions to make a selection using the remote controller 2026. This function includes, for example, downloading a deposit account balance report via a telephone line, transferring funds between deposit accounts, requesting a check book, and the like.
● Internet browser application. In one example of an Internet browser application, an instruction from a user that wants to view a web page with a specific URL is input using the remote controller 2026, and these instructions are transmitted by the back channel 4002 connected by a modem. dataIt is transmitted to the server 4006. A web page suitable for transmission from the broadcast center is then included, and this transmission is received by the receiver / decoder 2020 via the uplink 2012, transponder 2014, downlink 2016 and displayed on the television 2022.
[0037]
Applications are stored in memory locations of the receiver / decoder 2020 and are shown as resource files. Resource files include graphic object description unit files, variable block unit files, instruction sequence files, application files, dataWith files.
[0038]
The graphic object description unit file describes the screen of the application, that is, the man-machine interface of the application. The variable block unit file describes the data structure processed by the application. The instruction sequence file describes the processing operation of the application. This application has an entry point for the application.
[0039]
Applications configured in this way include data such as icon library files, image files, character font files, color table files, and ASCII text files.You can use the file. The interactive application can also obtain online data by performing input and / or output.
[0040]
The engine 4008 simply loads those memory files that it needs at a given time into its memory. These resource files are read from the graphic object description unit file, the instruction sequence file, and the application file. The variable block unit file is stored in memory following a call to the procedure to load the module and remains locked there until a specific call to the procedure to unload the module is made.
[0041]
Referring to FIG. 3, a module 4010, such as telephone shopping, is a set of resource files and data that includes:
[0042]
Single application file 4012
Undecided number of graphic block unit files 4014
Undecided number of variable block unit files 4016
Undecided number of instruction sequence files 4018,and
If necessary, Data such as icon library files, image files, character font files, color table files, and ASCII text filesFile 4020.
[0043]
MPEG dataIn the stream, each module has one group of MPEG tables. Each MPEG table can be formatted as several sections. MPEG dataIn the stream, each section has a “size” of up to 4 kilobytes. For data transmission via serial and parallel ports, for example, the same type of module is divided into a table and a section, and the size of the section varies depending on the transmission medium.
[0044]
Module, for example, video dataStream, audio dataStream, teletext dataStream-like dataMPEG data, typically in the form of 188-byte packets within the relevant type of streamIt is transmitted in the stream. Each packet is prefixed with a 13-bit packet identifier (PID)PID is,MPEG dataTransmitted in the streamOne per packet. Program map table (PMT table) is different dataEach stream with a list of streamsDefine the contents of the stream according to the associated PID. PID dataThe device can be informed that there is an application in the stream, in which case the PID is identified using the PMT table.
[0045]
Referring to FIG. 4, each section 4300 typically includes the following fields:
Table ID (TID) 4302, typically having a size of 1 byte at the beginning of section 4300;
Section length identifier 4304, typically having a size of 2 bytes;
Its section number (SN) 4306 (eg. 1) in the table, SN typically has a size of 1 byte;
Total number of sections in the table (LSN) 4308 (eg. 3), the LSN typically has a size of 1 byte;
TID extension 4310, typically having a size of 2 bytes;
Private data 4312; and
CRC4314 in section 4300. The purpose of CRC 4314 is to check all bytes in section 4300, and if CRC 4314 is correlated with all of the preceding data, the section is allowed by receiver / decoder 2020. Similarly, private data field 4312Is thatFieldAt the end,Calculated from all previous contents of field 4312IsRuMay contain MD5 signatureThe
[0046]
For data received via a serial or parallel interface, the section fields change. Sections typically received via any of the aforementioned interfaces are in fields 4302 through 4310.Reduced amount ofDayTThere is no CRC4314.
[0047]
For a particular module / table, all of the sections that make up this table have the same TID 4302 and the same TID extension 4310. For a particular application, all the tables that make up that application have the same TID, but different TID extensions.
[0048]
For example, to access a module 4010 from an MPEG bitstream, both a PID for the module and a module directory are required. This directory simply lists modules 4010 that can be downloaded from the carrier signal. Once this directory is downloaded, it is possible to download one or more modules 4010 for the application.
[0049]
The concept of module 4010 along with the concept of downloading a small amount of code allows for easy deployment of the application. They are,Can be downloaded to the permanent flash memory of receiver / decoder 2020 as resident softwareTo download to decoder 2020 RAM only when needed by the end userReleaseBroadcastingAlsoit can.
[0050]
Memory capacity is storage space for module 4010. This type of storage space is located in the memory 2024 of the receiver / decoder 2020. Referring to FIG. 5, memory 2024 is typically divided into RAM capacity 4022, FLASH capacity 4024, and ROM capacity 4026. Memory receiver / decoder 2020, such as a receiver / decoder such as an MPEG capacity for storing modules downloaded from an MPEG bitstream and a serial capacity for receiving modules received via a serial interface It is further divided into memory capacity associated with various interfaces via modules downloaded to 2020.
[0051]
Next, the RAM capacity 4022 isWeADedicated zone to, Working space and buff for engine 4008AIt is divided into. FLASH and other non-volatile memory can be accessed by either the application or the engine itself via the device manager.
[0052]
Each capacity contains a list of modules 4010, and each module 4010 contains a list of files 4012, 4014, 4016, 4018, 4020. You can have two files with the same name, or you can deploy them in separate modules. For example, the application version is typically stored in ROM capacity 4026, the latter version being downloadable to FLASH capacity 4024 and FLASH capacity 4024Remembered versionInstead of the version stored in the ROM capacity. The contents of the file are compressed to LZW format,,It takes a certain amount of timeSo you can receive in decompressed format.
[0053]
The physical interface of the receiver / decoder 2020 is used to download data. Referring to FIG. 6, the receiver / decoder 2020 includes, for example, six download media: an MPEG flow tuner 4028, a serial interface 4030, a parallel interface 4032, a modem 4034, and two card readers 4036. Contains.
[0054]
With multiple application sources and multiple production sources for receiver / decoder 2020, one application functions the same in all receivers / decoders, and each receiver / decoder must run all applications in the same correct way I must. Referring to FIG. 7, the receiver / decoder 2020 comprises an execution time engine 4008 that runs under the control of the microprocessor and the common application programming interface 4054. These are provided in all the receivers / decoders 2020, and all the receivers / decoders 2020 are the same from the application aspect.
[0055]
FIG. 7 shows the architecture of the receiver / decoder 2020 for executing the application 4056. Virtual machine 4007 executes application 4056, which is a virtual machine or application 40 downloaded to receiver / decoder 2020 from, for example, an MPEG data stream.Five6 ”can be configured directly from the application 4056 '. The runtime engine 4008 displays graphs and text, calls devices for services, receives" events ", and library 4058 for specific calculations Use the function.
[0056]
Referring to FIG. 7, for the application, the functionality of decoder 2020 is “seen” as device 4060. Thus, these are receiver / decoder 2020 functions that are not seen by any application.
[0057]
Device 4060 is hardwareYeIt comprises a logical device unit that can correspond to element 4062 of physical circuit 4066 or physical interface 4064. This type of device is considered a “low level device” 4068. The output of this type of device 4068 is a logic signal output by device 4068, e.g. hardware.YeA interface 4064 may be connected to at least one device driver 4070 for converting to the signals needed to execute. Alternatively, device 4068 can itself be a receiver / decoder 2020 element or interface.DrivingThe device output may beYeIt may be directly connected to the core 4066.
[0058]
An example of a low level device 4068 will now be described.
[0059]
LCARD device programBut,Smart card contained in one smart card reader 4036communicationTo doEnableAlso, RCARD deviceIsprogramBut,Smart cards included in other smart card readers 4036communicationTo doEnableThe For example, these devices can read the program on the card.Shi,cardWearHistory can be read and input messages can be sent to the card. ThisTheyThe device is also a readerWhatcardThat the card has been inserted, that the card has been removed from the reader, and that the card has been reset (if not requested by the program)programInnotificationYouThe LCARD and RCARD devicesExecutionTo the protocol used toUniqueThe Typically, the ISO 7816 protocol is used.
[0060]
SCTV devices, To TV set 2022Skirt (automatic transmission system for fixed order) (SCART) outletAllows the program to verify and configureTo do. For example, this device, The program isRequest information about the sound characteristics of the skirt outlet, perform “mute” on the sound, and dynamically program the RGB levelsEnable.
[0061]
TUNER deviceIsprogramButUse tuner 4028YouRuMake it possible. For example, this device,programButPerform a scan from either the minimum frequency or the current frequency of the tuner, read the tuner parameters, and program the tunerEnableThe
[0062]
SERIAL deviceIsprogramButWith the device via a serial linkEnable communication, Also PARALLEL deviceIsprogramButWith the device via a parallel linkEnable to communicateTo do. For example, these devices,programButSend a message over each link and message over that linkButProgram that receivedInNotice.
[0063]
MODEM deviceIsReceiver / decoderBut,Data service via internal half-duplex modem supporting V23communicationTo doPossibleTo do. This MODEM device dials numbers, sends messages to the data server, disconnects the modem, receives messages,KiCarrier detectionOr loss and error detectionRequest.
[0064]
A remote device running at a remote location can be any local device except that the port and protocol must be defined.
[0065]
In addition to “low level devices”, the receiver / decoder 2020 may also include “high level devices” that control the operation of the receiver / decoder 2020.
[0066]
Device 4072 called "MLOAD device" for sections loaded from an MPEG data streamIsOne applicationBut,MPEG section, complete MPEG table or hardwareYeA and softwareYeTo load a group of MPEG sections corresponding to the filter criteriaPossibleTo do.
[0067]
Referring to FIG. 8, an electromagnetic signal is received by receiver 2018 and transmitted to MPEG tuner 4028. The tuner typically scans a range of frequencies and stops only when a carrier frequency is detected within that range.ThendetectionWasThe signal is sent to demodulator 4500 where it is demodulated and this signal is sent to demultiplexer 4502. This demultiplexer 4502 is connected to the MPGE chip 4504Ru. MPGE chip 4504 is connected to TV 2022 as wellThisThe The demultiplexer 4502 is a hardware typically provided with up to 32 outputs connected to the RAM capacity 4022 of the receiver / decoder 2020.YeA filter 4506 is also connected.
[0068]
The electromagnetic signal received by the demultiplexer 4502 includes multiple data streams of data packets, typically provided by a broadcast provider.RuIt consists of a stream of video packets, a stream of audio packets, a stream of teletext packets and a stream of subtitle packets for the service. These data packets are demultiplexed by demultiplexer 4502 and transmitted to MPEG chip 4504 for decoding into a signal for television set 2022.
[0069]
Data packets for applications are hardwareYeIs transmitted to the filter 4506. Refer to FIG.YeA filter or pre-filter 4506 is typically one or more of the 8 bytes of section 4508 of the data stream, typically offset byte 0 (4150) and offset bytes 3 to 9 (4512). ) To filter sections from the data stream. These bytes include TID 4302, section number 4306, final section number 4308 and MPEG section 4508 TID extension 4310.
[0070]
HardwareYeApplication to specify the pre-filter characteristicsIsSection 4508WhichConsider the bits and specify the expected value of each selected bit. Therefore, hardwareYeA prefilter 4506IsFilter mask array 4514 and filter value array 4516RespectivelyEach example is shown in FIG. In FIG. 10, bits 4518, 4520 and 4522 are filter masses.TheUse 4514do itSelected and also these bitsofThatOfvalue(0, 1 and 0)Uses filter value 4516do itSelected. By these filter criteria, the MPEG section 4524 is a buffer in the RAM 4022 of the receiver / decoder 2020.WhatoutputIs, Where MPEG section 4526 is a bufferWhatoutputIsAbsent.
[0071]
HardwareYeThe pre-filter 4506 is operated by the demultiplexer chip to avoid wasting processor power in the main processor.
[0072]
The microprocessor can utilize the RAM 4022 of the receiver / decoder 2020 whose section is stored as a software filter 4526. SoftwareYeA filter 4526 allows selection of which section loaded into the buffer of RAM capacity 4022 will enter the application.
[0073]
SoftwareYeThe principle of a filter is hardwareYeIt is similar to the principle of a filter. SoftwareYeA filter 4526 uses typically 8 consecutive bytes 4528 of the data in MPEG section 4508. As shown in FIG. 11, the location of the first byte 4530 of these eight consecutive bytes is defined by an offset 4532 based on the first byte 4510 in section 4508.
[0074]
HardwareYeAfter loading through the filter, the data stored in the MPEG section isYeA.IfA buffer in which MPEG sections are stored can be used to load other MPEG sections.
[0075]
MLOAD device to load MPEG section from MPEG data streamIsTypically receives the following information:
[0076]
The PID of the data stream in which the MPEG section is found;
A descrambling data array consisting of a number of PID ECMs for descrambling the PID;
Operator criteria that recognizes the specific ECM used to descramble the PID;
Hardware to be appliedYeA filter value array;
Hardware to be appliedYeA filter mask array;
Software to be appliedYeA offset value;
Software to be appliedYeA filter value array;
Software to be appliedYeA filter mask array;
Maximum section size (up to 4096 bytes); and
A timeout function that determines how long the device waits to load into a section, group of sections or into a table.
[0077]
When the maximum section size indicates 512 bytes, the section size cannot exceed 512 bytes.
[0078]
The sections are loaded all at once into the RAM capacity 4022 buffer allocated by the device. When the section is loaded, this is alsoYeIf the device meets the filter criteria, the device opens a demultiplexing route.ReleaseAnd the address of the buffer containing the execution report and sectionWhenThe application must be notified via an "event" containing After loading, the section is identified by the address of the buffer in which it is stored.
[0079]
The device also receives a TID 4302 when the table is loaded. Each section of the table is loaded at once into all the buffers allocated to it. However, it is not essential that the table be loaded by advancing the section from end to end and in section order. As each section of the table is loaded, the device will notify the application that the section of the table has been loaded. Alternatively, or additionally, the device can notify the application via the event that the entire table is loaded sequentially into the buffer allocated for it.
[0080]
Referring to FIG. 12, the table is typically loaded in the following manner (softwareYeA) The description of the filter is omitted for the sake of brevity);
Step 1: HardwareYeA filter mask array 4532 andhardware·Filter valuearray4536 identification;
Step 2: HardwareYe(And softwareYeThe first section 4538 corresponding to a)TheLoad;
Step 3: Read LSN4530 value in section 4538number(= LSN + 1)According to the value of LSN4530HardwareYeA filter mask array 4534 andAndHardwareYeA FuIChanging the value array 4536;
Steps 4 to 6: Load the remaining sections 4542, 4544 and 4546 according to the TID and LSN values and send the event to the application.
[0081]
Table loading,Done correctlyIndicates downloadIWhen vent enters the run time engine 4006 queueonlyCompleteRu. Before this event is placed in the engine queue, the table loadIOfEndTheDone correctlyThere must be.
[0082]
After the table is loaded, it is identified by the name it was assigned by the application when a table download is requested.
[0083]
Information about how the table was stored in the memory of the receiver / decoder 2020 can be accessed by a call that returns a table descriptor. An example of this type of descriptor is shown in FIG. Descriptor 4700,Section in tableofTotal number (LSN + 1)Including field 4702And section 4544 with SN of “0”From Section 4546 with SN of “1” to Section 4542 with SN corresponding to LSNIncluding a list 4704 of buffers containing sections 4538, 4542, 4544 and 4546 forming a table ofNoThe
[0084]
One group section is hardWeAandsoftWeAofConsists of all sections corresponding to filter criteria. These sections are in the MPEG data streamPatrolWill appear.
[0085]
Referring to FIG. 13, the group 4548 is delimited by two sections: a first section (SDG) 4550 and a last section (SFG) 4552. Each section corresponds to a respective filter criterion and there is another section (SG) 4554 in the group between them.
[0086]
Loading of sections in a group can be done using two different loading modes.
[0087]
"FollowingMode ", the SDG4550A predetermined number ofSection 454FourIs loaded. For each type of section (SDG, SG, SFG), the application is TID, hardwareYeA filter, softwareYeA) Identify the filter and maximum section length.
[0088]
Referring to FIG. 14, the device is first hardware.YeA and softwareYeA Filter standard is applied and only SDG4550ofdownloadandMemoryEnableIs preferred. This avoids loading the extra SG4554 into the buffer of the RAM memory capacity 4022 of the receiver / decoder 2020 before loading the SDG4550. Upon detection, the SDG 4550 is stored in a memory location or buffer 4556. This way the device is hardwareYeAandSoftwareYeAofApply filter criteria to allow download of desired SG and SFG from a group of MPEG data sections.
[0089]
In the example shown in FIG. 14, three SG4554s are downloaded from the MPEG data stream from one groove MPEG section consisting of one SDG, seven SGs and one SFG. Following storage of SDG in buffer 4556,SDG4550Of objects to be transmitted afterFrom the MPEG section groupofThe first SG4558Store in buffer 4560Is done. Similarly, SDG4550Of objects to be transmitted afterFrom the MPEG section groupofThe second SG4562Store in buffer 4564SDG4550Of objects to be transmitted afterA third SG4566 from the MPEG section groupStore in buffer 4568Is done.
[0090]
Required number ofSection 455FourIs stored or SFG4552 is downloadedRuUntil then, the SG storage operation is continued. If the download is performed, the SFG 4552 is not stored in the memory location.
[0091]
As each section of the group is loaded, the deviceIsThe application can be notified via the event that the section of the group is loaded. Alternatively or additionally, the device may send SFG4552 by completing the storage of the MPEG section or sending an event to the application.TheThe application can be notified only by downloading.
[0092]
In "preceding mode", SFGstraightpreviousA predetermined number ofSectionNIs stored in the memory location. For each type of section (SDG, SG, SFG), the application is PID, TID, hardwareYeA filter, softwareYeIdentify filters and maximum section lengthYouThe
[0093]
Loading in this mode isTo remember the MPEG sectionRequires the use of circular buffersDo.
[0094]
Referring to FIG. 15, the device is first hardware.YeA and softwareYeAofPreferably, only SDG 4570 can be downloaded and stored applying filter criteria. This avoids loading the extra SG4544 into the RAM memory capacity 4022 of the receiver / decoder 2020 prior to loading the SDG4570. Upon detection, SDG 4550 is not stored. This way the device is hardwareYeAandSoftwareYeAofApply filter criteria to perform desired SG and SFG downloads from a group of MPEG data sectionsMake it possible.
[0095]
In the example shown in FIG. 15, three SG4544 from a group of MPEG sections consisting of one SDG, seven SGs and one SFG will be downloaded from the MPEG data stream. Following the download of SDG4570, SDG4570Of objects to be transmitted afterFrom the MPEG section groupofFirst SG4572ButStore in buffer 4574Is done. Similarly, SDG4550Of objects to be transmitted afterFrom the MPEG section groupofThe second SG4576Store in buffer 4578SDG4570Of objects to be transmitted afterFrom the MPEG section groupofThe third SG4580Store in buffer 4582Is done.
[0096]
SDG4550Of objects to be transmitted afterMPEG sectionGroup ofFromNo. 4SG4584Store in buffer 4574 (ie, the buffer where the first SG4572 was stored)Is done.
Similarly, each SG4586, 4588 and 4590 transmitted subsequently.ButBuffers 4578, 4582 and 4574RespectivelyIs remembered.
[0097]
thisPatrolStoring SGs in a manual manner continues until SFG4592 is detected by the device. this is,Even before SFG is detectedDesired number ofSGEven if is not loadedTomorrowThe When a detection is made, the SFG 4592 is stored in a buffer and an event is sent to the application indicating that the group download was successful.
[0098]
The group is stored in the RAM 4022 of the receiver / decoder 2020.RuInformation about the method can be accessed by a specific call that returns a descriptor for the group.
[0099]
An example of this type of descriptor is shown in FIG. Descriptor 4600 contains the number of sections in the group and either SDG or SFGOne of(Depending on loading mode),andBCoding orderConfigure a group withA list 4604 of buffers containing the section SG.
[0100]
groupIsAfter loading, the name assigned to it by the application when a group download was requestedUniqueIdentified.
[0101]
Sections can be added to groups or sections can be removed from groups. A section can belong to more than one group.
[0102]
Application,Adding a section to a groupTherequestYouThen the address of the buffer containing the new section is in descriptor 4604endAnd field 4602 is updated. Application,Remove a section from a groupTherequestYouThen the address of the buffer containing this section is in descriptor 4600And hiddenField 4602 is updated. If the section is not the last section in the group, the descriptorIsRemove any free memory spaceYouRuUReorganized. Accordingly, it is possible to provide an “empty group” by deleting all sections.
[0103]
DeviceUniqueFor example, “LCARD_DEVICE_ID"Identifies the LCARD device, and"RCARD_DEVICE_ID"Identifies the RCARD device.
[0104]
New device 406Once 2 is created, it can be installed into the existing decoder 2020 by downloading the appropriate application 4056 from the broadcast center. Typically, the maximum number of devices handled by one manager is 256.
[0105]
This download is hardwareYeA and softwareYeSoftware running on receiver / decoder 2020 by application 4056 that checks the version and, if correct, represents the new device 4062YeLoad the module and also the toolbox 4058 procedureIn addition,FarmYeA new device code (in FLASH memory)Prompt to installThe This is softwareYeCan provide flexibility and reliability for new installations within decoder 2020 without affecting the rest of the domain.
[0106]
The present invention has been described by way of example only and modifications of detail can be made within the scope of the invention.
[0107]
Each feature disclosed in the description, and (where appropriate) the claims and drawings may be provided separately or in any appropriate combination.
[0108]
In the preferred embodiment described above, certain features of the present invention were implemented using computer software. However, of course, none of these featuresAlsoIt will be apparent to those skilled in the art that it may be implemented using hardware. In addition, functions performed by hardware, computer software, etc., are electrical signals, etc.AgainstOr electrical signaletcIt is easily understood that it is implemented using.
[0109]
Cross-references are made to our co-pending application, all having the same filing date and the names “Signal Generation and Broadcast (Attorney Reference Number PC / ASB / 19707)”, “Encrypted Broadcast Signal” Smart card and receiver for use with other receivers (representative reference number PC / ASB / 19708) "," broadcast / reception system and conditional access system therefor (representative reference number PC / ASB / 19710) "" Downloading computer files from transmitter to computer via receiver / decoder (agent reference number PC / ASB / 19711) "," Transmission and reception of television programs and other data (agent reference number PC / ASB / 19712) ”,“ Download data (agent reference number PC / ASB / 19713) ”,“ Computer memory configuration (Attorney Reference No. PC / ASB / 19714) "," television or radio control system generation (Attorney Reference No. PC / ASB / 19715) "," transmit dataData from the streamSection extraction (agent reference number PC / ASB / 19716) ”,“ access control system (agent reference number PC / ASB / 19717) ”,“ data processing system (agent reference number PC / ASB / 19718) ”, And “Broadcast and Receiving System, and Receiver / Decoder and Remote Controller for It (Agency Reference Number PC / ASB / 19720)”. The disclosures of these documents are incorporated herein by reference. The list of applications includes this application.
[Brief description of the drawings]
FIG. 1 shows the overall configuration of a digital television system according to a preferred embodiment of the present invention.
FIG. 2 shows the configuration of an interactive system of a digital television system.
FIG. 3 shows the placement of files in a module downloaded to the memory of an interactive receiver / decoder.
FIG. 4 shows the arrangement of sections.
FIG. 5 shows the memory capacity arrangement of the memory of the interactive receiver / decoder.
FIG. 6 is a schematic diagram of a receiver / decoder interface.
FIG. 7 shows a configuration of software of a receiver / decoder.
FIG. 8 shows the structure of a receiving system for downloading a section from an MPEG data stream.
[Fig. 9] HardwareYeA shows the arrangement of bytes in the section used by the pre-filter.
FIG. 10Hardware filterHardwareYeA filter mask arrayandHardwareYeAn example of a filter number array is shown.
FIG. 11 SoftwareYeA shows the arrangement of bytes in the section used by the pre-filter.
FIG. 12 shows an example of table loading.
FIG. 13 shows an example of the arrangement of sections in a group of sections.
FIG. 14 shows the groove of the section.FollowingAn example of mode download is shown.
FIG. 15 shows an example of a preceding mode download for a group of sections.
FIG. 16 shows the placement of fields in a section group descriptor.
FIG. 17: Section table descriptorInside fieldThe arrangement of

Claims (4)

データ・ストリームをビデオ処理装置において処理する方法であって、
(a)前記データ・ストリームを受信する工程であって、
前記データ・ストリームは、符号化されたビデオ・データ・セクション又は符号化されたオーディオ・データ・セクションを含み、
前記符号化されたビデオ・データ・セクション及び前記符号化されたオーディオ・データ・セクションはそれぞれ、ヘッダ及びペイロードを含み、
前記ヘッダはパラメータを含む、
前記工程と、
(b)少なくとも1つの前記ヘッダのパラメータに応じて、第1のセクションの組を前記データ・ストリームからフィルタする工程であって、
前記第1のセクションの組が、プリケーション自体に対応し、最初のセクション、後続する複数のセクション、及び最後のセクションを含む、
前記工程と、
(c)前記第1のセクションの組のうちの前記最初のセクションを記憶する工程と、
(d)前記アプリケーションによって定義された所定数のセクションが記憶されるまで、前記少なくとも1つの前記ヘッダのパラメータに応じて更なるセクションを前記データ・ストリームからフィルタする工程であって、
前記アプリケーションによって定義された所定数のセクションは、前記フィルタされた第1のセクションの組からのセクション部分集合であり、
前記セクション部分集合は、前記アプリケーション自体の一部に対応し、前記フィルタされた第1のセクションの組よりも少ないセクション数を有し、
前記セクション部分集合は、レシーバ/デコーダにインストールされると、新たな装置機能を提供するよう構成されたモジュールを含む、
前記工程と、
を含み、
前記工程(d)は、前記最初のセクションに後続して、連続して受信されてフィルタされた前記第1のセクションの組のセクションを、前記アプリケーションによって定義された所定数のセクションが記憶される前に、前記最後のセクションが記憶されるまで、連続して記憶する工程を含み、
前記第1のセクションの組のうちのセクション、及び前記最後のセクションは、所定数のバッファのうちの少なくとも1つのバッファに記憶される、
方法。
A method of processing a data stream in a video processing device, comprising:
(A) receiving the data stream, comprising:
The data stream includes an encoded video data section or an encoded audio data section;
The encoded video data section and the encoded audio data section each include a header and a payload;
The header includes parameters;
Said step;
(B) filtering a first set of sections from the data stream according to at least one parameter of the header,
It said set of first section corresponds to the application itself, including the first section, the subsequent plurality of sections, and the last section,
Said step;
(C) storing the first section of the first set of sections;
(D) filtering further sections from the data stream according to the parameters of the at least one header until a predetermined number of sections defined by the application are stored;
The predetermined number of sections defined by the application is a section subset from the first set of filtered sections;
The section subset corresponds to a portion of the application itself and has a smaller number of sections than the filtered first section set;
The section subset includes modules configured to provide new device functionality when installed in a receiver / decoder;
Said step;
Including
In step (d), following the first section, the first set of sections received and filtered in succession is stored, and a predetermined number of sections defined by the application are stored. Before, storing continuously until the last section is stored,
The sections of the first set of sections and the last section are stored in at least one of a predetermined number of buffers;
Method.
データ・ストリームをビデオ処理装置において処理する方法であって、
(a)前記データ・ストリームを受信する工程であって、
前記データ・ストリームは、符号化されたビデオ・データ・セクション又は符号化されたオーディオ・データ・セクションを含み、
前記符号化されたビデオ・データ・セクション及び前記符号化されたオーディオ・データ・セクションはそれぞれ、ヘッダ及びペイロードを含み、
前記ヘッダはパラメータを含む、
前記工程と、
(b)少なくとも1つの前記ヘッダのパラメータに応じて、第1のセクションの組を前記データ・ストリームからフィルタする工程であって、
前記第1のセクションの組が、プリケーション自体に対応し、最初のセクション、後続する複数のセクション、及び最後のセクションを含む、
前記工程と、
(c)前記第1のセクションの組のうちの前記最初のセクションを記憶する工程と、
(d)前記少なくとも1つの前記ヘッダのパラメータに応じて更なるセクションを前記データ・ストリームからフィルタする工程であって、
前記フィルタされたセクションは、前記最後のセクションの受信まで、前記アプリケーションによって定義された所定数のセクションを含むことが可能な循環バッファに記憶され、
前記フィルタされた第1のセクションの組からのセクション部分集合が前記アプリケーション用のメモリにロードされ、
前記セクション部分集合は、プリケーション自体の一部に対応し、前記フィルタされた第1のセクションの組よりも少ないセクション数を有し、
前記セクション部分集合は、レシーバ/デコーダにインストールされると、新たな装置機能を提供するよう構成されたモジュールを含む、
前記工程と、
を含み、
前記工程(d)は、前記最初のセクションに後続して、連続して受信されてフィルタされた前記第1のセクションの組のセクションを、前記アプリケーションによって定義された所定数のセクションが記憶される前に、前記最後のセクションが記憶されるまで、連続して記憶する工程を含み、
前記第1のセクションの組のうちのセクション、及び前記最後のセクションは、所定数のバッファのうちの少なくとも1つのバッファに記憶される、
方法。
A method of processing a data stream in a video processing device, comprising:
(A) receiving the data stream, comprising:
The data stream includes an encoded video data section or an encoded audio data section;
The encoded video data section and the encoded audio data section each include a header and a payload;
The header includes parameters;
Said step;
(B) filtering a first set of sections from the data stream according to at least one parameter of the header,
It said set of first section corresponds to the application itself, including the first section, the subsequent plurality of sections, and the last section,
Said step;
(C) storing the first section of the first set of sections;
(D) filtering further sections from the data stream according to the parameters of the at least one header;
The filtered section is stored in a circular buffer that can include a predetermined number of sections defined by the application until receipt of the last section;
A section subset from the filtered first section set is loaded into memory for the application;
It said section subset corresponds to a portion of the application itself, has a number of smaller section than the first set of sections is the filter,
The section subset includes modules configured to provide new device functionality when installed in a receiver / decoder;
Said step;
Including
In step (d), following the first section, the first set of sections received and filtered in succession is stored, and a predetermined number of sections defined by the application are stored. Before, storing continuously until the last section is stored,
The sections of the first set of sections and the last section are stored in at least one of a predetermined number of buffers;
Method.
送信されたデータ・ストリームの複数のセクションを記憶するビデオ処理装置であって、
前記データ・ストリームを受信する手段であって、
前記データ・ストリームは、符号化されたビデオ・データ・セクション又は符号化されたオーディオ・データ・セクションを含み、
前記符号化されたビデオ・データ・セクション及び前記符号化されたオーディオ・データ・セクションはそれぞれ、ヘッダ及びペイロードを含み、
前記ヘッダはパラメータを含む、
前記手段と、
少なくとも1つの前記ヘッダのパラメータに応じて、第1のセクションの組を前記データ・ストリームからフィルタする手段であって、
前記第1のセクションの組が、プリケーション自体に対応し、最初のセクション、後続する複数のセクション、及び最後のセクションを含む、
前記手段と、
前記第1のセクションの組を記憶する手段と、
を含み、
前記フィルタする手段及び前記記憶する手段は、前記アプリケーションによって定義された所定数のセクションが記憶されるまで、前記少なくとも1つの前記ヘッダのパラメータに応じて更なるセクションを前記データ・ストリームからフィルタするよう構成され、
前記アプリケーションによって定義された所定数のセクションは、前記フィルタされた第1のセクションの組からのセクション部分集合であり、
前記セクション部分集合は、前記アプリケーション自体の一部に対応し、前記フィルタされた第1のセクションの組よりも少ないセクション数を有し、
前記セクション部分集合は、レシーバ/デコーダにインストールされると、新たな装置機能を提供するよう構成されたモジュールを含み、
前記フィルタする手段及び前記記憶する手段は、前記最初のセクションに後続して、連続して受信されてフィルタされた前記第1のセクションの組のセクションを、前記アプリケーションによって定義された所定数のセクションが記憶される前に、前記最後のセクションが記憶されるまで、連続して記憶するようにさらに構成されており、
前記第1のセクションの組のうちのセクション、及び前記最後のセクションは、所定数のバッファのうちの少なくとも1つのバッファに記憶される、
ビデオ処理装置。
A video processing device for storing a plurality of sections of a transmitted data stream, comprising:
Means for receiving said data stream, comprising:
The data stream includes an encoded video data section or an encoded audio data section;
The encoded video data section and the encoded audio data section each include a header and a payload;
The header includes parameters;
Said means;
Means for filtering a first set of sections from the data stream according to at least one parameter of the header;
It said set of first section corresponds to the application itself, including the first section, the subsequent plurality of sections, and the last section,
Said means;
Means for storing the first set of sections;
Including
The means for filtering and the means for storing are adapted to filter further sections from the data stream according to the parameters of the at least one header until a predetermined number of sections defined by the application are stored. Configured,
The predetermined number of sections defined by the application is a section subset from the first set of filtered sections;
The section subset corresponds to a portion of the application itself and has a smaller number of sections than the filtered first section set;
The section subset includes modules configured to provide new device functionality when installed in a receiver / decoder;
The means for filtering and the means for storing are arranged in a predetermined number of sections defined by the application for the sections of the first set of sections received and filtered successively following the first section. Is further configured to store continuously until the last section is stored before
The sections of the first set of sections and the last section are stored in at least one of a predetermined number of buffers;
Video processing device.
送信されたデータ・ストリームの複数のセクションを記憶するビデオ処理装置であって、
前記データ・ストリームを受信する手段であって、
前記データ・ストリームは、符号化されたビデオ・データ・セクション又は符号化されたオーディオ・データ・セクションを含み、
前記符号化されたビデオ・データ・セクション及び前記符号化されたオーディオ・データ・セクションはそれぞれ、ヘッダ及びペイロードを含み、
前記ヘッダはパラメータを含む、
前記手段と、
少なくとも1つの前記ヘッダのパラメータに応じて、第1のセクションの組を前記データ・ストリームからフィルタする手段であって、
前記第1のセクションの組が、プリケーション自体に対応し、最初のセクション、後続する複数のセクション、及び最後のセクションを含む、
前記手段と、
前記第1のセクションの組を記憶する手段と、を含み、
前記フィルタする手段及び前記記憶する手段は、
前記少なくとも1つの前記ヘッダのパラメータに応じて更なるセクションを前記データ・ストリームからフィルタし、
前記最後のセクションの受信まで、前記アプリケーションによって定義された所定数のセクションを含むことが可能な循環バッファに、前記フィルタされたセクションを記憶する、
ように構成され、
前記フィルタされた第1のセクションの組からのセクション部分集合が前記アプリケーション用の前記循環バッファにロードされ、
前記セクション部分集合は、プリケーション自体の一部に対応し、前記フィルタされた第1のセクションの組よりも少ないセクション数を有し、
前記セクション部分集合は、レシーバ/デコーダにインストールされると、新たな装置機能を提供するよう構成されたモジュールを含み、
前記フィルタする手段及び前記記憶する手段は、前記最初のセクションに後続して、連続して受信されてフィルタされた前記第1のセクションの組のセクションを、前記アプリケーションによって定義された所定数のセクションが記憶される前に、前記最後のセクションが記憶されるまで、連続して記憶するようにさらに構成されており、
前記第1のセクションの組のうちのセクション、及び前記最後のセクションは、所定数のバッファのうちの少なくとも1つのバッファに記憶される、
ビデオ処理装置。
A video processing device for storing a plurality of sections of a transmitted data stream, comprising:
Means for receiving said data stream, comprising:
The data stream includes an encoded video data section or an encoded audio data section;
The encoded video data section and the encoded audio data section each include a header and a payload;
The header includes parameters;
Said means;
Means for filtering a first set of sections from the data stream according to at least one parameter of the header;
It said set of first section corresponds to the application itself, including the first section, the subsequent plurality of sections, and the last section,
Said means;
Means for storing the first set of sections;
The means for filtering and the means for storing are:
Filtering further sections from the data stream according to the at least one parameter of the header;
Store the filtered section in a circular buffer that can contain a predetermined number of sections defined by the application until receipt of the last section;
Configured as
A section subset from the filtered first section set is loaded into the circular buffer for the application;
It said section subset corresponds to a portion of the application itself, has a number of smaller section than the first set of sections is the filter,
The section subset includes modules configured to provide new device functionality when installed in a receiver / decoder;
The means for filtering and the means for storing are arranged in a predetermined number of sections defined by the application for the sections of the first set of sections received and filtered successively following the first section. Is further configured to store continuously until the last section is stored before
The sections of the first set of sections and the last section are stored in at least one of a predetermined number of buffers;
Video processing device.
JP54206498A 1997-03-21 1997-04-25 How to extract a data section from a transmitted data stream Expired - Fee Related JP4376321B2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP97400650 1997-03-21
EP97400650.4 1997-03-21
PCT/EP1997/002114 WO1998043415A1 (en) 1997-03-21 1997-04-25 Extracting data sections from a transmitted data stream

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2009006133A Division JP2009077451A (en) 1997-03-21 2009-01-14 Method of extracting data section from transmission data stream

Publications (3)

Publication Number Publication Date
JP2001518256A JP2001518256A (en) 2001-10-09
JP2001518256A5 JP2001518256A5 (en) 2009-03-05
JP4376321B2 true JP4376321B2 (en) 2009-12-02

Family

ID=26070209

Family Applications (2)

Application Number Title Priority Date Filing Date
JP54206498A Expired - Fee Related JP4376321B2 (en) 1997-03-21 1997-04-25 How to extract a data section from a transmitted data stream
JP2009006133A Pending JP2009077451A (en) 1997-03-21 2009-01-14 Method of extracting data section from transmission data stream

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2009006133A Pending JP2009077451A (en) 1997-03-21 2009-01-14 Method of extracting data section from transmission data stream

Country Status (17)

Country Link
EP (1) EP0968602A1 (en)
JP (2) JP4376321B2 (en)
KR (1) KR100495779B1 (en)
CN (1) CN1254469A (en)
AU (1) AU742067B2 (en)
BR (1) BR9714600A (en)
CA (1) CA2284018C (en)
HU (1) HUP0002383A2 (en)
IL (1) IL131937A (en)
NO (1) NO334507B1 (en)
NZ (1) NZ500204A (en)
PL (1) PL183917B1 (en)
RU (1) RU2181929C2 (en)
TR (1) TR199902275T2 (en)
UA (1) UA61944C2 (en)
WO (1) WO1998043415A1 (en)
ZA (1) ZA973611B (en)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6134554A (en) * 1998-11-10 2000-10-17 Opentv, Inc. System and method for recording receipt of information
US6460086B1 (en) * 1998-12-01 2002-10-01 Sun Microsystems, Inc. Method and apparatus for delivery of a bytecode embedded within a transport stream
KR100587284B1 (en) * 1999-01-14 2006-06-08 엘지전자 주식회사 Method for PSI filtering
FR2794602A1 (en) * 1999-06-02 2000-12-08 Dassault Automatismes DIGITAL TELEVISION RECEIVER / DECODER DEVICE WITH INTERACTIVE READING OF PREVIOUSLY RECORDED TELEVISION PROGRAMS
GB2350980B (en) * 1999-06-08 2003-08-27 Sgs Thomson Microelectronics Device and method for processing a stream of data
GB2352595B (en) * 1999-07-27 2003-10-01 Sgs Thomson Microelectronics Data processing device
BR0013419A (en) * 1999-08-16 2002-07-23 Gen Instrument Corp Process and system for managing multiple versions of an object-code that is downloaded by a top converter terminal on a cable television system
JP2001067803A (en) 1999-08-30 2001-03-16 Matsushita Electric Ind Co Ltd Image-recording/reproducing apparatus
JP4240766B2 (en) * 2000-06-26 2009-03-18 パナソニック株式会社 DATA STORAGE METHOD, RECEIVING DEVICE AND BROADCASTING SYSTEM IMPLEMENTING THE SAME
EP1267579A3 (en) 2001-06-11 2003-03-19 Canal+ Technologies Société Anonyme MPEG table structure
KR100619053B1 (en) * 2003-11-10 2006-08-31 삼성전자주식회사 Information storage medium for subtitle and apparatus therefor
KR20050072255A (en) 2004-01-06 2005-07-11 엘지전자 주식회사 Method for managing and reproducing a subtitle of high density optical disc
KR100782808B1 (en) * 2004-01-13 2007-12-06 삼성전자주식회사 Storage medium recording interactive graphic stream and reproducing apparatus thereof
US7162533B2 (en) 2004-04-30 2007-01-09 Microsoft Corporation Session description message extensions
KR100601689B1 (en) * 2004-06-29 2006-07-14 삼성전자주식회사 Method and apparatus for filtering section data
US20090292761A1 (en) * 2004-12-13 2009-11-26 Koninklijke Philips Electronics, N.V. Bypass dsmcc middleware via section filter mechanism
CN100521676C (en) 2005-04-14 2009-07-29 华为技术有限公司 Method and apparatus for realizing independent staging business software in set-top box
EP1835728A1 (en) * 2006-03-15 2007-09-19 Dibcom Method for data transfer and data recovery
US7962725B2 (en) 2006-05-04 2011-06-14 Qualcomm Incorporated Pre-decoding variable length instructions

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4837620A (en) * 1988-05-12 1989-06-06 Zenith Electronics Corporation Teletext receiver with page up and page down functions
US5563648A (en) * 1994-04-28 1996-10-08 Thomson Consumer Electronics, Inc. Method for controlling execution of an audio video interactive program
US5477263A (en) * 1994-05-26 1995-12-19 Bell Atlantic Network Services, Inc. Method and apparatus for video on demand with fast forward, reverse and channel pause
US5635979A (en) * 1994-05-27 1997-06-03 Bell Atlantic Dynamically programmable digital entertainment terminal using downloaded software to control broadband data operations
JP3474005B2 (en) * 1994-10-13 2003-12-08 沖電気工業株式会社 Video coding method and video decoding method
KR0166935B1 (en) * 1994-11-23 1999-03-20 구자홍 Mpeg2 transport decoder apparatus
DE69637067T2 (en) * 1995-03-15 2008-01-10 Kabushiki Kaisha Toshiba Variable length decoding system
JP3301263B2 (en) * 1995-03-29 2002-07-15 株式会社日立製作所 Data decoding device
DE69631393T2 (en) * 1995-03-29 2004-10-21 Hitachi Ltd Decoder for compressed and multiplexed image and audio data
US5600378A (en) * 1995-05-22 1997-02-04 Scientific-Atlanta, Inc. Logical and composite channel mapping in an MPEG network
US5864358A (en) * 1995-06-26 1999-01-26 Matsushita Electric Industrial Co., Ltd. Method for switching programs in digital broadcasting and digital broadcast receiving apparatus
JPH09182049A (en) * 1995-12-26 1997-07-11 Hitachi Ltd Digital information transmission system and transmitter and receiver therefor
JPH10145755A (en) * 1996-11-06 1998-05-29 Matsushita Electric Ind Co Ltd Data output controller

Also Published As

Publication number Publication date
UA61944C2 (en) 2003-12-15
IL131937A (en) 2004-06-01
NZ500204A (en) 2001-12-21
ZA973611B (en) 1998-03-23
EP0968602A1 (en) 2000-01-05
HUP0002383A2 (en) 2000-10-28
CA2284018C (en) 2008-06-03
CA2284018A1 (en) 1998-10-01
BR9714600A (en) 2002-09-10
TR199902275T2 (en) 2000-02-21
WO1998043415A1 (en) 1998-10-01
JP2009077451A (en) 2009-04-09
CN1254469A (en) 2000-05-24
AU742067B2 (en) 2001-12-13
AU2770897A (en) 1998-10-20
RU2181929C2 (en) 2002-04-27
KR20000076404A (en) 2000-12-26
PL183917B1 (en) 2002-08-30
NO334507B1 (en) 2014-03-24
IL131937A0 (en) 2001-03-19
PL335776A1 (en) 2000-05-22
JP2001518256A (en) 2001-10-09
NO994538D0 (en) 1999-09-17
NO994538L (en) 1999-11-22
KR100495779B1 (en) 2005-06-17

Similar Documents

Publication Publication Date Title
JP2009077451A (en) Method of extracting data section from transmission data stream
CA2284153C (en) Method of downloading of data to an mpeg receiver/decoder and mpeg transmission system for implementing the same
RU2321965C2 (en) Mpeg-table structure
JP2001518256A5 (en)
CN100385910C (en) Application data table for a multiservice digital transmission system
US20060271971A1 (en) Interactive television system
US20060179465A1 (en) Handling feature availability in a broadcast
KR20010030926A (en) Downloading data
CZ298058B6 (en) Filtering method of packet data stream and receiver/decoder
AU740740B2 (en) Data processing system
EP1734748A1 (en) Program execution device
US7869462B2 (en) Broadcast system and method therefor
EP1055176A2 (en) Access control system
MXPA99008546A (en) Extracting data sections from a transmitted data stream
AU776683B2 (en) Method of downloading of data to an MPEG receiver/decoder and MPEG transmission system for implementing the same
KR20000076405A (en) Acess control system
MXPA99008545A (en) Access control system
CZ331699A3 (en) Selection method of data sections from transmitted data flow and apparatus for making the same
MXPA00007588A (en) Configuring method and device

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040423

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040423

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070403

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20070313

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20070608

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070702

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080129

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20080423

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20080609

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080729

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080916

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090114

A524 Written submission of copy of amendment under article 19 pct

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20090114

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20090312

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090707

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090722

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090825

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090909

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120918

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120918

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120918

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120918

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120918

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130918

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees