JP2004040576A - データ分配装置及び方法 - Google Patents

データ分配装置及び方法 Download PDF

Info

Publication number
JP2004040576A
JP2004040576A JP2002196277A JP2002196277A JP2004040576A JP 2004040576 A JP2004040576 A JP 2004040576A JP 2002196277 A JP2002196277 A JP 2002196277A JP 2002196277 A JP2002196277 A JP 2002196277A JP 2004040576 A JP2004040576 A JP 2004040576A
Authority
JP
Japan
Prior art keywords
data
memory
packet
input
stream
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2002196277A
Other languages
English (en)
Other versions
JP3794352B2 (ja
Inventor
Keisuke Aoki
青木 敬介
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2002196277A priority Critical patent/JP3794352B2/ja
Priority to US10/610,846 priority patent/US7385996B2/en
Publication of JP2004040576A publication Critical patent/JP2004040576A/ja
Application granted granted Critical
Publication of JP3794352B2 publication Critical patent/JP3794352B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/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/439Processing of audio elementary streams
    • H04N21/4392Processing of audio elementary streams involving audio buffer management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23406Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving management of server-side video buffer
    • 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
    • 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/4341Demultiplexing of audio and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/15Conference systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Television Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

【課題】ネットワークを介して入力された多重化ストリームのチャネル数が動的に変動する場合であっても、メモリ上の領域を効率よく使用するデマルチプレクサを提供する。
【解決手段】メモリ転送部14は、入力されたトランスポートストリームをメモリ16に格納し、各TSパケットの先頭アドレスをアドレスメモリ15に格納しておく。CPU21は、アドレスメモリ15に格納されている情報を参照してメモリ16内の各パケットにアクセスし、ヘッダの情報を解析する。CPU21は、メモリ16からデコーダ19,20へデータを転送する転送命令を、アクセスユニット(例えば1フレーム)ごとに生成し、DMA17,18に与える。DMA17,18は、CPU21から与えられた転送命令に従って、メモリ16からデータを読み出してデコーダ19,20に転送する。
【選択図】 図1

Description

【0001】
【発明の属する技術分野】
本発明は、複数チャネルのビデオデータ、オーディオデータ等をパケット単位で多重化した多重化ストリームを、チャネルごとに分割し、それぞれ対応するチャネルのデコーダに分配するデータ分配装置及び方法に関するものである。
【0002】
【従来の技術】
デジタルコンテンツのネットワーク配信を行う場合、複数のデータエンコーダから出力されたビデオデータ、オーディオデータ、テキストデータ、プログラムデータ、その他の伝送に必要なシステムデータ等の複数のエレメンタリストリームを多重化して配信される。配信された多重化ストリームは、受信側のデマルチプレクサにより、複数のエレメンタリストリームに分割されて対応するデコーダに分配される。
【0003】
従来のデマルチプレクサは、多重化ストリームを複数のエレメンタリストリームに分割する場合、多重化ストリームに含まれているエレメンタリストリームのチャネル数を解析し、メモリ内の領域をチャネルごとに予め分割しておく。そして、入力されたパケットを対応するチャネル領域に格納する。メモリ内の領域をチャネルごとに分割する処理は、多重化ストリームが入力されたのちの最初のセッションで行われる。
【0004】
【発明が解決しようとする課題】
ところで、多重化ストリーム内に含まれるチャネル数が、時間ごとに動的に変化する場合がある。例えば、複数のユーザが会話するようなTV会議システム等では、会議中にユーザが加わったり、抜けたりし、チャネル数が動的に変化する場合がある。このようにチャネル数が動的に変化する場合、セッションの開始時にチャネル数を決定してメモリ上の領域を分割すると、データ転送中にメモリ上に形成したチャネル数が不足したり、或いは、使用されない領域が生じたりしてしまう。
【0005】
また、入力されたパケットがどのチャネルに対応するか判断し、対応するメモリ領域に格納するパケットの分配処理は、リアルタイムで処理しなければならない。また、その処理量も多い。そのため、例えば、他の回路と共通に用いられるメインコントローラに、パケットの分配処理を行わせると、リアルタイムで処理をしなければならないので、負担が大きくなってしまう。また、メインコントローラとは異なる独立したハードウェアを設けてパケットの分配処理を行わせたとしても、処理量が多いため、回路規模が大きくなってしまう。
【0006】
本発明は、このような実情を鑑みてなされたものであり、動的にチャネル数が変動する場合であっても、メモリ上の領域を効率よく使用するデータ分配装置及方法を提供することを目的とする。
【0007】
【課題を解決するための手段】
本発明にかかるデータ分配装置は、複数のチャネルの各データストリームをパケット単位で多重化した多重化ストリームが入力され、入力された多重化ストリームに含まれている各データストリームを、それぞれのデータストリームに対応したチャネルのデータ処理装置に分配する分配装置であって、コントローラと、入力された多重化ストリームを格納するメモリと、上記多重化ストリームの上記メモリ内の格納位置を示したアドレス情報を、パケットごと生成するアドレス情報生成手段と、上記アドレス情報を格納するアドレス情報格納手段と、上記コントローラから与えられる命令に従って、上記メモリからデータを読み出して上記データ処理装置に転送するデータ転送手段とを備え、上記コントローラは、上記アドレス情報格納手段に格納されているアドレス情報に基づき上記メモリ内の各パケットにアクセスし、各パケットのヘッダの情報を参照して各チャネルのデータストリームの復号単位の上記メモリ内の格納位置を求め、上記メモリから上記復号単位ごとにデータを読み出して対応するチャネルのデータ処理装置へ転送する転送命令を生成し、生成した転送命令を上記メモリアクセス手段に与える。
【0008】
本発明にかかるデータ分配方法は、複数のチャネルの各データストリームをパケット単位で多重化した多重化ストリームが入力され、入力された多重化ストリームに含まれている各データストリームを、それぞれのデータストリームに対応したチャネルのデータ処理装置に分配するデータ分配方法であって、入力された多重化ストリームをメモリに格納し、上記多重化ストリームの上記メモリ内の格納位置を示したアドレス情報を、パケットごと生成して、アドレス格納用のアドレスメモリに格納し、上記アドレスメモリに格納されているアドレス情報に基づき上記メモリ内の各パケットにアクセスし、各パケットのヘッダの情報を参照して各チャネルのデータストリームの復号単位の上記メモリ内の格納位置を求め、上記メモリから上記復号単位ごとにデータを読み出して対応するチャネルのデータ処理装置へ転送する転送命令を生成し、生成した転送命令を上記メモリから上記データ処理装置にデータを転送する転送処理部に与え、データ転送処理部が上記転送命令に従って、上記メモリからデータを読み出して上記データ処理装置に転送する。
【0009】
以上のような構成の本発明にかかるデータ分配装置及び方法は、以下のような処理を行う。
【0010】
すなわち、入力された多重化ストリームのメモリ上の格納位置を示したアドレス情報を、パケットごと生成して、アドレス格納用のアドレスメモリに格納しておく。コントローラは、アドレスメモリに格納されているアドレス情報に基づきメモリ上の各パケットにアクセスし、各パケットのヘッダの情報を参照して復号処理を行うために必要となる最小の復号単位を構成するデータの格納位置をチャネル毎に求める。コントローラは、メモリから復号単位ごとにデータを読み出して対応するチャネルのデータ処理装置へ転送する転送命令を生成する。そして、データ転送手段は、コントローラから与えられた転送命令に従って、メモリからデータを読み出してデータ処理装置に転送する。
【0011】
【発明の実施の形態】
以下、本発明の実施の形態として、本発明を適用したデコードシステムについて説明をする。
【0012】
図1に、本発明の実施の形態のデコードシステムのブロック構成図を示す。
【0013】
本発明の実施の形態のデコード1は、図1に示すように、ヘッダ検出部11と、追加ヘッダ挿入部12と、パケット削除部13と、メモリ転送部14と、アドレス情報格納部15と、メモリ16と、第1のDMA(Direct Memory Access)回路17と、第2のDMA回路18と、ビデオデコーダ19と、オーディオデコーダ20と、CPU(Central Processing Unit)21とを備えて構成されている。
【0014】
デコードシステム1には、ネットワークを介して外部から、複数チャネルの符号化データが多重化された多重化ストリームが入力される。入力される多重化ストリームは、所定の伝送規格に従って各チャネルの符号化データがパケット化され、パケット単位で多重化された多重化ストリームである。例えば、MPEG2システムズに規定されたトランスポートストリーム(TS)、IPネットワーク上で音声や映像データをリアルタイム配信する技術規格であるRTP(Real−time Transport Protocol RFC1889)、MPEG2又はMPEG4のエレメンタリストリームES,プログラムストリーム(PS)等が、多重化ストリームとして本デコードシステム1に入力される。
【0015】
なお、本発明の実施の形態において、チャネルとは、多重化される各符号化ストリームに対応した伝達経路であるものとする。例えば、同時再生される音声データと映像データとが1つの配信元から送出される場合であっても、この音声データと映像データとは異なるチャネルで伝送されるものとする。
【0016】
ヘッダ検出部11には、外部から多重化ストリームが入力される。ヘッダ検出部11は、入力された多重化ストリームを構成するパケットのヘッダを検出する。パケットとは、入力された多重化ストリームの多重化単位に対応する。例えば、パケットは、TSであればTSパケット、RTPであればRTPパケット、PSであればパック、ESであればAU(Access Unit)に対応する。
【0017】
追加ヘッダ挿入部12は、ヘッダ検出部11により検出された各パケットのヘッダの前に、追加ヘッダを挿入する。追加ヘッダには、追加ヘッダのスタートコード、パケットの識別用のID、そのパケットの入力時刻、パケットやヘッダのバイト数等のパケット情報が記述される。
【0018】
追加ヘッダ挿入部12により挿入される追加ヘッダの具体的な記述内容例を、図2、図3及び図4に示す。図2は、TSが入力されたときに挿入される追加ヘッダの例である。TS用の追加ヘッダには、TSパケット情報を含んだデータ、例えば、INFO_START_CODE、PID、TS_HEADER_BYTE、INPUT_TIME_H、INPUT_TIME_Lが記述される。INFO_START_CODEは、追加ヘッダのスタート位置を示すコードである。PIDは、この追加ヘッダに続くTSパケットを識別するためのPIDである。TS_HEADER_BYTEは、この追加ヘッダに続くTSパケットのヘッダのバイト数である。INPUT_TIME_H及びINPUT_TIME_Lは、このTSパケットの入力時刻である。
【0019】
図3は、RTPが入力されたときに挿入される追加ヘッダの例である。RTP用の追加ヘッダには、RTPパケット情報を含んだデータ、例えば、INFO_START_CODE、RTP_RTCP_ID、PACKET_BYTE、INPUT_TIME_H、INPUT_TIME_Lが記述される。INFO_START_CODEは、追加ヘッダのスタート位置を示すコードである。RTP_RTCP_IDは、この追加ヘッダに続くRTP及びRTCPを識別するための識別子である。PACKET_BYTEは、この追加ヘッダに続くRTPパケットのバイト数である。INPUT_TIME_H及びINPUT_TIME_Lは、このRTPパケットの入力時刻である。
【0020】
図4は、ES又はPSが入力されたときに挿入される追加ヘッダの例である。ES又はPS用の追加ヘッダには、PSパケット情報を含んだデータ、例えば、INFO_START_CODE、START_CODE、INPUT_TIME_H、INPUT_TIME_Lが記述される。INFO_START_CODEは、追加ヘッダのスタート位置を示すコードである。STRAT_CODEは、この追加ヘッダに続くシーケンスのスタート位置を示すコードである。INPUT_TIME_H及びINPUT_TIME_Lは、このパケットの入力時刻である。ESのAUの先頭に挿入される追加ヘッダには、INPUT_TIME_H及びINPUT_TIME_Lを記述する必要はない。
【0021】
パケット削除部13は、入力された多重化ストリーム中のパケットのうち、デコードをしない不必要なパケットを削除する。パケット削除部13は、パケットを削除する際に、そのパケットに追加されている追加ヘッダも同時に削除する。
【0022】
メモリ転送部14には、追加ヘッダが挿入され、且つ、パケット削除部13により不必要なパケットが削除された後の多重化ストリームが入力される。メモリ転送部14は、入力された多重化ストリームを、パケット単位でメモリ16に格納していく。メモリ転送部14は、パケットを格納する際に、そのパケットの先頭に付加された追加ヘッダも一緒に格納する。メモリ転送部14は、入力されたパケットが映像データが格納されたパケットである場合、そのパケットをメモリ16上のビデオストリーム格納領域16aに格納する。メモリ転送部14は、入力されたパケットが音声データが格納されたパケットである場合、そのパケットをメモリ16上のオーディオストリーム格納領域16bに格納する。なお、メモリ転送部14は、パケットを格納する際に、1つのパケットを連続した領域に格納する。
【0023】
また、メモリ転送部14は、メモリ16に格納した各パケットの先頭アドレス、つまり、追加ヘッダの先頭アドレスと、そのパケットの識別情報(例えば、PID,RTP_RTCP_ID)とが示されたパケットアドレス情報を生成して、アドレス情報格納部15に格納する。パケットアドレス情報は、メモリ16に格納する全てのパケットについて生成される。
【0024】
メモリ16は、入力された多重化ストリームを格納する。メモリ16は、メモリバス22を介してメモリ転送部14、第1のDMA17、第2のDMA18及びCPU21からアクセスがされる。なお、本例では、メモリ16に、ビデオストリーム領域16aと、オーディオストリーム領域16bとを形成し、ビデオストリーム領域16aには、多重化ストリーム中に含まれている映像データが格納され、オーディオストリーム領域16bには、多重化ストリーム中に含まれている音声データが格納されているが、データの種類ごとに領域を区別して格納しなくてもよい。
【0025】
第1のDMA17は、CPU21からインストラクションが与えられ、そのインストラクションに基づきメモリ16上からデータを読み出して、ビデオデコーダ19に転送する。
【0026】
第2のDMA18は、CPU21からインストラクションが与えられ、そのインストラクションに基づきメモリ16上からデータを読み出して、オーディオデコーダ20に転送する。
【0027】
ビデオデコーダ19は、第1のDMA17を介して転送される符号化データをデコードして、ベースバンドの映像信号を出力する。
【0028】
オーディオデコーダ20は、第2のDMA18を介して転送される符号化データをデコードして、ベースバンドの音声信号を出力する。
【0029】
CPU21は、本デコードシステム1の全体の制御を行う。また、CPU21は、アドレス情報格納部15に格納されているパケットアドレス情報を直接読み出すことができる。
【0030】
つぎに、メモリ16に格納された多重化ストリームを、ビデオデコーダ19及びオーディオデコーダ20へ分配するデータ分配方法について説明をする。
【0031】
本デコードシステム1では、入力された多重化ストリームがメモリ16内に記録される。本デコードシステム1では、メモリ16に記録した全てのパケットに対してパケットアドレス情報が生成され、そのパケットアドレス情報がアドレス情報格納部15に記録される。パケットアドレス情報には、パケットの先頭アドレスが示されている。
【0032】
CPU21は、まず、アドレス情報格納部15からパケットアドレス情報を読み出す。CPU21は、読み出したパケットアドレス情報に示されているメモリ16上のアドレスにアクセスをし、パケットのヘッダ情報を読み出す。
【0033】
続いて、CPU21は、読み出したヘッダ情報を解析して、アクセスユニットの解析を行う。アクセスユニットとは、そのデータストリームを復号する際の最小の復号単位である。例えば、映像データであれば、1アクセスユニットは通常1フレームとなる。アクセスユニットの解析は、多重化ストリームに含まれている全てのチャネルに対して行う。
【0034】
続いて、CPU21は、メモリ16からビデオデコーダ19又はオーディオデコーダ20へアクセスユニット単位でデータを転送させる命令内容を示した転送インストラクションを生成する。
【0035】
続いて、CPU21は、アクセスユニットの実行タイミングとなったタイミング、つまり、アクセスユニットのデコードタイミングに、そのアクセスユニットを転送する命令が示された転送インストラクションを、対応するDMAに送信する。CPU21は、例えば、映像データであれば、その映像データのデコードタイミングとなったときに、転送インストラクションを第1のDMA17に供給する。また、CPU21は、例えば、音声データであれば、その音声データのデコードタイミングとなったときに、転送インストラクションを第2のDMA18に供給する。
【0036】
DMA17,18は、CPU21から転送インストラクションが与えられると、その転送インストラクションに記述されているメモリ16上のアドレスからデータを読み出して、対応するビデオデコーダ19又はオーディオデコーダ20へ送信する。
【0037】
例えば、図5に示すように、多重化ストリームに3つのチャネル(チャネルA,B,C)の映像データが含まれているとする。メモリ16には、チャネルA、B、Cの区別に関わらず、パケットの入力順に従ってデータが記録される。
【0038】
ここで、チャネルAの2つのパケットA0−0、A0−1のペイロードデータをあわせて1つのアクセスユニットA0が構成されるとする。その場合、CPU21は、パケットA0−0のペイロードデータに続いてパケットA0−1のペイロードデータがビデオデコーダ19へ転送されるような転送インストラクションを生成する。つまり、CPU21は、パケットA0−0、A0−1のペイロードの先頭アドレスとそのバイト数を指定した転送インストラクションを生成する。CPU21は、生成した転送インストラクションを、そのアクセスユニットA0のデコードタイミングとなったときに、第1のDMA17に与える。そして、第1のDMA17が、パケットA0−0、パケットA0−1のペイロードデータを連続して読み出して、ビデオデコーダ19に供給する。
【0039】
また、チャネルBの3つのパケットB0−0、B0−1、B0−2のペイロードデータをあわせて、1つのアクセスユニットB0が構成され、上記アクセスユニットA0の次のタイミングでデコードされるとする。その場合、CPU21は、パケットB0−0のペイロードデータ、パケットB0−1のペイロードデータ、パケットB0−2のペイロードデータが連続してビデオデコーダ19へ転送されるような転送インストラクションを生成する。つまり、パケットB0−0、B0−1、B0−2のペイロードの先頭アドレスとそのバイト数を指定した転送インストラクションを生成する。CPU21は、生成した転送インストラクションを、そのアクセスユニットB0のデコードタイミングとなったときに、第1のDMA17に与える。そして、第1のDMA17が、パケットB0−0、パケットB0−1、パケットB0−2のペイローを連続して読み出して、ビデオデコーダ19に供給する。
【0040】
なお、CPU21は、生成した転送インストラクションを、そのアクセスユニットの実行タイミングとなったときにDMA17,18に転送しているが、その転送インストラクションにアクセスユニットの実行タイミングを記述して、つまり、そのアクセスユニットのデコード時刻を記述して、対応するDMAに送信してもよい。この場合、DMA17,18は、与えられた転送インストラクションを一旦キュー等に格納しておき、実行タイミングとなったときにキューに格納してある転送インストラクションを実行する。この場合、CPU21は、転送インストラクションを任意の時刻(少なくともデコードタイミングより前の時刻)にDMA17,18に供給すればよい。
【0041】
以上のように本発明の実施の形態のデコードシステム1では、入力された多重化ストリームのメモリ16上の格納位置を示したパケットアドレス情報を、パケットごと生成して、アドレス格納用のアドレス情報格納部15に格納しておく。CPU21は、アドレス情報格納部15に格納されているパケットアドレス情報に基づきメモリ16上の各パケットにアクセスし、各パケットのヘッダの情報を参照して復号処理を行うために必要となる最小の復号単位を解析する。CPU21は、メモリ16からアクセスユニットごとにデータを読み出して対応するDMA17,18へ転送する転送命令を生成する。そして、DMA17,18は、CPU21から与えられた転送命令に従って、メモリ16からデータを読み出してデコーダ19,20に転送する。
【0042】
このため、本発明の実施の形態のデコードシステム1では、メモリ16上の領域をチャネルごとに分割しなくてもよくなるので、動的にチャネル数が変動する場合であっても、メモリ16上の領域を効率よく使用することができる。
【0043】
また、さらに、本発明にかかるデコードシステム1では、CPU21はメモリ16に格納されているデータに対してアクセスをするので、入力された多重化ストリームにリアルタイムで対応して処理を行わなくてもよい。そのため、CPU21の処理負担が少なくなり、他のリソースに対して処理を開放することができる。また、デコードシステム1では、入力された多重化ストリームにリアルタイム処理で対応して処理を行わなくてはならない回路は、各パケットのメモリ16上の格納位置だけを算出すればよいので、非常に処理量が少なくなる。そのため、CPU21とは別途設けられる回路規模を小さくすることができる。
【0044】
【発明の効果】
本発明にかかるデータ分配装置及び方法は、以下のような処理を行う。
【0045】
すなわち、入力された多重化ストリームのメモリ上の格納位置を示したアドレス情報を、パケットごと生成して、アドレス格納用のアドレスメモリに格納しておく。コントローラは、アドレスメモリに格納されているアドレス情報に基づきメモリ上の各パケットにアクセスし、各パケットのヘッダの情報を参照して復号処理を行うために必要となる最小の復号単位を構成するデータの格納位置を各チャネル毎に求める。コントローラは、メモリから復号単位ごとにデータを読み出して対応するチャネルのデータ処理装置へ転送する転送命令を生成する。そして、データ転送手段は、コントローラから与えられた転送命令に従って、メモリからデータを読み出してデータ処理装置に転送する。
【0046】
このように、本発明にかかるデータ分配装置及び方法では、メモリ上の領域をチャネルごとに分割しなくてもよくなるので、動的にチャネル数が変動する場合であっても、メモリ上の領域を効率よく使用することができる。
【0047】
また、さらに、本発明にかかるデータ分配装置及び方法では、コントローラはメモリに格納されているデータに対してアクセスをするので、入力された多重化ストリームにリアルタイムで対応して処理を行わなくてもよい。そのため、コントローラの処理負担が少なくなり、他のリソースに対して処理を開放することができる。また、本発明にかかるデータ分配装置及び方法では、入力された多重化ストリームにリアルタイム処理で対応して処理を行わなくてはならない回路は、各パケットのメモリ上の格納位置だけを算出すればよいので、非常に処理量が少なくなる。そのため、コントローラとは別途設けられる回路規模を小さくすることができる。
【図面の簡単な説明】
【図1】本発明の実施の形態のデコードシステムのブロック構成図である。
【図2】TSが入力されたときに挿入される追加ヘッダを説明するための図である。
【図3】RTPが入力されたときに挿入される追加ヘッダを説明するための図である。
【図4】ES又はPSが入力されたときに挿入される追加ヘッダを説明するための図である。
【図5】AU単位でデコーダに転送される多重化データについて説明をするための図である。
【符号の説明】
1 デコードシステム、11 ヘッダ検出部、12 追加ヘッダ挿入部、13パケット削除部、14 メモリ転送部、15 アドレス情報格納部、16 メモリ、17,18 DMA、19 ビデオデコーダ、20 オーディオデコーダ、21 CPU、22 メモリバス

Claims (2)

  1. 複数のチャネルの各データストリームをパケット単位で多重化した多重化ストリームが入力され、入力された多重化ストリームに含まれている各データストリームを、それぞれのデータストリームに対応したチャネルのデータ処理装置に分配する分配装置において、
    コントローラと、
    入力された多重化ストリームを格納するメモリと、
    上記多重化ストリームの上記メモリ内の格納位置を示したアドレス情報を、パケットごと生成するアドレス情報生成手段と、
    上記アドレス情報を格納するアドレス情報格納手段と、
    上記コントローラから与えられる命令に従って、上記メモリからデータを読み出して上記データ処理装置に転送するデータ転送手段とを備え、
    上記コントローラは、上記アドレス情報格納手段に格納されているアドレス情報に基づき上記メモリ内の各パケットにアクセスし、各パケットのヘッダの情報を参照して各チャネルのデータストリームの復号単位の上記メモリ内の格納位置を求め、上記メモリから上記復号単位ごとにデータを読み出して対応するチャネルのデータ処理装置へ転送する転送命令を生成し、生成した転送命令を上記メモリアクセス手段に与えること
    を特徴とするデータ分配装置。
  2. 複数のチャネルの各データストリームをパケット単位で多重化した多重化ストリームが入力され、入力された多重化ストリームに含まれている各データストリームを、それぞれのデータストリームに対応したチャネルのデータ処理装置に分配するデータ分配方法において、
    入力された多重化ストリームをメモリに格納し、
    上記多重化ストリームの上記メモリ内の格納位置を示したアドレス情報を、パケットごと生成して、アドレス格納用のアドレスメモリに格納し、
    上記アドレスメモリに格納されているアドレス情報に基づき上記メモリ内の各パケットにアクセスし、各パケットのヘッダの情報を参照して各チャネルのデータストリームの復号単位の上記メモリ内の格納位置を求め、上記メモリから上記復号単位ごとにデータを読み出して対応するチャネルのデータ処理装置へ転送する転送命令を生成し、
    生成した転送命令を上記メモリから上記データ処理装置にデータを転送する転送処理部に与え、
    データ転送処理部が上記転送命令に従って、上記メモリからデータを読み出して上記データ処理装置に転送すること
    を特徴とするデータ分配方法。
JP2002196277A 2002-07-04 2002-07-04 データ分配装置及び方法 Expired - Fee Related JP3794352B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2002196277A JP3794352B2 (ja) 2002-07-04 2002-07-04 データ分配装置及び方法
US10/610,846 US7385996B2 (en) 2002-07-04 2003-07-01 Data distribution apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002196277A JP3794352B2 (ja) 2002-07-04 2002-07-04 データ分配装置及び方法

Publications (2)

Publication Number Publication Date
JP2004040576A true JP2004040576A (ja) 2004-02-05
JP3794352B2 JP3794352B2 (ja) 2006-07-05

Family

ID=30112366

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002196277A Expired - Fee Related JP3794352B2 (ja) 2002-07-04 2002-07-04 データ分配装置及び方法

Country Status (2)

Country Link
US (1) US7385996B2 (ja)
JP (1) JP3794352B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011087202A (ja) * 2009-10-19 2011-04-28 Sony Corp 記憶装置およびデータ通信システム

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100556826B1 (ko) * 2003-04-17 2006-03-10 한국전자통신연구원 Mpeg-4 기반의 양안식 3차원 동영상을 서비스하기 위한 인터넷 방송 시스템 및 그 방법
WO2006066454A1 (fr) * 2004-12-22 2006-06-29 Zte Corporation Procede de transmission des sources video multicanaux sur un systeme de visioconference
EP2476061B1 (fr) 2009-09-11 2013-07-24 Commissariat à l'Énergie Atomique et aux Énergies Alternatives Controleur d'acces direct en memoire, procede et programme d'ordinateur correspondants
FR2951291B1 (fr) * 2009-10-08 2013-10-11 Commissariat Energie Atomique Controleur d'acces direct en memoire a destinataires multiples, procede et programme d'ordinateur correspondants
CN104853243A (zh) * 2015-05-13 2015-08-19 上海玮舟微电子科技有限公司 一种传送流解复用的方法和装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6181706B1 (en) * 1997-09-26 2001-01-30 International Business Machines Corporation Common buffer for multiple streams and control registers in an MPEG-2 compliant transport register
US6359911B1 (en) * 1998-12-04 2002-03-19 Koninklijke Philips Electronics N.V. (Kpenv) MPEG-2 transport demultiplexor architecture with non-time-critical post-processing of packet information
US6735634B1 (en) * 1999-06-10 2004-05-11 Blue Coat Systems Method for real time protocol media recording

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011087202A (ja) * 2009-10-19 2011-04-28 Sony Corp 記憶装置およびデータ通信システム

Also Published As

Publication number Publication date
US20040008741A1 (en) 2004-01-15
US7385996B2 (en) 2008-06-10
JP3794352B2 (ja) 2006-07-05

Similar Documents

Publication Publication Date Title
US10177958B2 (en) Method for synchronously taking audio and video in order to proceed one-to-multi multimedia stream
JPH1198098A (ja) データ分離装置
US6434146B1 (en) Use of sequencing information in a local header that allows proper synchronization of packets to subsidiary interfaces within the post-processing environment of an mpeg-2 packet demultiplexing architecture
KR100358119B1 (ko) 디지털 데이터 방송 서비스를 위한 데이터 스트리밍 장치및 그 방법
CN108877820B (zh) 一种音频数据混合方法和装置
CN105847868A (zh) 用对分组流内的媒体帧的引用来定位兴趣点的系统和方法
JP2010154574A (ja) プログラムストリーム変換のためのトランスポートストリーム
JP2009543504A (ja) メディアデータ伝送装置と方法及びメディアデータ受信装置と方法
JP3794352B2 (ja) データ分配装置及び方法
CN110677394B (zh) 一种多媒体数据的传输方法及系统
CN104853243A (zh) 一种传送流解复用的方法和装置
JP4491918B2 (ja) データ配信装置及び方法、データ配信システム
CN110830762A (zh) 一种音视频数据的处理方法和系统
JP2005530376A (ja) ディジタルストリームの動的多重化方法
JP3874225B2 (ja) データ処理装置及びデータ処理方法
JP2885217B2 (ja) Mpegデータ処理回路
WO2010000628A1 (en) Method and device to perform direct memory access
CN107682716B (zh) 一种码率控制方法和装置
US20180115593A1 (en) Mmt apparatus and mmt method for processing media data
JP2001218175A (ja) 信号処理装置
KR100919888B1 (ko) 디지털 멀티미디어 방송에서 예측을 통한 데이터 다중화장치 및 그 방법
JP2001223656A (ja) 多重化伝送装置
JP4636896B2 (ja) ストリームデータ再生装置、ストリームデータ再生プログラム及びストリームデータ再生方法
JP2009225333A (ja) 映像データ転送システム、映像データ転送方法及び映像蓄積装置
JPH10290207A (ja) 多重化データ分離装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040416

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050902

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051004

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051124

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: 20060322

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060404

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

Free format text: PAYMENT UNTIL: 20090421

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100421

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100421

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110421

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110421

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120421

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120421

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130421

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees