JP4419785B2 - Multiplexed packet generating apparatus and multiplexed packet generating method - Google Patents

Multiplexed packet generating apparatus and multiplexed packet generating method Download PDF

Info

Publication number
JP4419785B2
JP4419785B2 JP2004300381A JP2004300381A JP4419785B2 JP 4419785 B2 JP4419785 B2 JP 4419785B2 JP 2004300381 A JP2004300381 A JP 2004300381A JP 2004300381 A JP2004300381 A JP 2004300381A JP 4419785 B2 JP4419785 B2 JP 4419785B2
Authority
JP
Japan
Prior art keywords
packet
data
temporary
data transfer
buffer
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
JP2004300381A
Other languages
Japanese (ja)
Other versions
JP2006115199A (en
Inventor
啓太郎 川合
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP2004300381A priority Critical patent/JP4419785B2/en
Publication of JP2006115199A publication Critical patent/JP2006115199A/en
Application granted granted Critical
Publication of JP4419785B2 publication Critical patent/JP4419785B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は多重化パケット生成装置および多重化パケット生成方法に関し、特に順次バッファに格納されるエレメンタリーストリームから少なくともヘッダ部と情報部を備える多重化パケットを生成してストリームバッファに設定する多重化パケット生成装置および多重化パケット生成方法に関する。   The present invention relates to a multiplexed packet generation apparatus and a multiplexed packet generation method, and more particularly to a multiplexed packet that generates a multiplexed packet including at least a header portion and an information portion from elementary streams that are sequentially stored in a buffer and sets the multiplexed packet in the stream buffer. The present invention relates to a generation device and a multiplexed packet generation method.

従来、多重化パケットを生成する多重化パケット生成装置では、エンコーダがビデオやオーディオなどのベースバンド信号を符号化したES(Elementary Stream)を多重化器によってパケット化している。多重化器は、パケット生成のスケジューリングを行う制御部と、制御部の作成する処理命令を受け、その処理命令に従って指定されたデータを転送し、パケットを生成する処理部とを有する。通常、制御部は、プログラムに記述された手順に従って処理を実行するプロセッサとプログラムを記憶した記憶媒体で構成され、処理部は、データの高速転送を行うハードウェアによって構成される。   Conventionally, in a multiplexed packet generating apparatus that generates multiplexed packets, an encoder packetizes an ES (Elementary Stream) obtained by encoding a baseband signal such as video or audio by a multiplexer. The multiplexer includes a control unit that performs packet generation scheduling, and a processing unit that receives a processing instruction generated by the control unit, transfers data specified in accordance with the processing instruction, and generates a packet. Usually, the control unit is configured by a processor that executes processing according to a procedure described in the program and a storage medium that stores the program, and the processing unit is configured by hardware that performs high-speed data transfer.

パケット生成をスケジューリングする制御部の処理手順について説明する。図8は、従来の多重化パケット生成処理の手順を示したフローチャートである。なお、実際のパケット生成では、オーディオESとビデオESそれぞれ個別に対応処理が行われるが、詳細な個々の手順は省略し、共通する処理手順について説明する。   A processing procedure of the control unit that schedules packet generation will be described. FIG. 8 is a flowchart showing the procedure of a conventional multiplexed packet generation process. In actual packet generation, corresponding processing is performed for each of the audio ES and video ES, but detailed individual procedures are omitted, and common processing procedures are described.

パケット生成は、ESのアクセス単位ごとに行われる。まず、ビデオエンコーダから出力されたビデオES情報と、オーディオエンコーダから出力されたオーディオES情報に関するアクセス単位のAU(Access Unit)情報があるかどうかが判定される(ステップS101)。ない場合は、揃うまで待つ。存在する場合は、パケット作成を実行するかどうかを判断し(ステップS102)、実行しない場合は、ステップS101に戻る。実行であれば、TSヘッダを作成し(ステップS103)、フレームの先頭であるかどうかを判定し(ステップS104)、先頭であればPESヘッダを作成する(ステップS105)。これまでの手順でヘッダが作成されるので、作成されたヘッダをストリームバッファへ置くコマンドを作成し(ステップS106)、処理部に対してヘッダを置くコマンドを出力する(ステップS107)。これにより、処理部が、ステップS106で作成されたヘッダをストリームバッファへ転送する。続いて、制御部は、ペイロードをストリームバッファに置くコマンドを作成し(ステップS108)、処理部に対してこのペイロードを置くコマンドを出力する(ステップS109)。これにより、処理部が、エンコーダが生成したESがペイロードとしてストリームバッファへ転送され、PESが生成される。   Packet generation is performed for each access unit of ES. First, it is determined whether there is video unit information output from the video encoder and access unit AU (Access Unit) information related to the audio ES information output from the audio encoder (step S101). If not, wait until they are complete. If it exists, it is determined whether or not to create a packet (step S102). If not, the process returns to step S101. If it is to be executed, a TS header is created (step S103), it is determined whether it is the head of the frame (step S104), and if it is the head, a PES header is created (step S105). Since the header is created by the procedure so far, a command for placing the created header in the stream buffer is created (step S106), and a command for placing the header is output to the processing unit (step S107). As a result, the processing unit transfers the header created in step S106 to the stream buffer. Subsequently, the control unit creates a command for placing the payload in the stream buffer (step S108), and outputs a command for placing the payload to the processing unit (step S109). As a result, the processing unit transfers the ES generated by the encoder as a payload to the stream buffer, and generates a PES.

図9は、従来の多重化パケット生成処理の手順によるパケット生成の一例を示した図である。(A)はヘッダを置くコマンド実行後、(B)はペイロードを置くコマンド実行後、(C)は次のヘッダを置くコマンド実行後のストリームバッファの状態を示している。   FIG. 9 is a diagram showing an example of packet generation according to a conventional multiplexed packet generation processing procedure. (A) shows the state of the stream buffer after execution of a command for placing a header, (B) for execution of a command for placing a payload, and (C) showing the state of the stream buffer after execution of a command for placing the next header.

上記説明の手順のステップS107によって、アクセス単位、n_v#01に関し、ヘッダを置くコマンドを受けた処理部は、(A)に示したように制御部の生成したTSヘッダ(TH)901、PESヘッダ(PH)902をストリームバッファ900に設定する。次に、ステップS109によりペイロードを置くコマンドを受けると、ESが格納される記憶装置から該当するESを探し出し、バッファに転送し、(B)に示したようにペイロード903を設定する。こうして、1アクセス単位のパケットが作成される。続いて、次のアクセス単位、n_v#02に関し、ヘッダを置くコマンドを受けた処理部は、(C)に示したように制御部の生成したTSヘッダ(TH)904をバッファに設定する。   In step S107 of the procedure described above, the processing unit that has received the command for placing a header regarding the access unit n_v # 01, the TS header (TH) 901, the PES header generated by the control unit as shown in (A). (PH) 902 is set in the stream buffer 900. Next, when a command for placing a payload is received in step S109, the corresponding ES is searched from the storage device storing the ES, transferred to the buffer, and the payload 903 is set as shown in (B). Thus, a packet for one access unit is created. Subsequently, regarding the next access unit, n_v # 02, the processing unit that has received the header placement command sets the TS header (TH) 904 generated by the control unit in the buffer, as shown in (C).

従来、制御部では、このような処理手順を実行する場合、処理部に対してコマンドを出力した後、コマンドに応じた処理が終了されるまで待ってから次の指示を行っていた。そこで、制御部であるCPU(Central Processing Unit)が、メモリに格納されたES情報を取り込む指示を行ってからその処理が終了するまで待つ時間を不要にすることによって、CPUの処理能力の有効活用を図る多重化パケット生成装置が提案されている(たとえば、特許文献1参照)。
特開2001−345770号公報(段落番号〔0017〕〜〔0025〕、図4)
Conventionally, when executing such a processing procedure, the control unit outputs a command to the processing unit and then waits until the processing corresponding to the command is completed before giving the next instruction. Therefore, the CPU (Central Processing Unit), which is the control unit, effectively uses the processing power of the CPU by eliminating the time to wait until the processing is completed after giving an instruction to fetch the ES information stored in the memory. A multiplexed packet generation apparatus that achieves the above has been proposed (see, for example, Patent Document 1).
JP 2001-345770 A (paragraph numbers [0017] to [0025], FIG. 4)

しかし、従来の多重化パケット生成では、パケット生成処理を高速にすることが難しいという問題点がある。
従来の多重化パケット生成装置では、多重化のスケジューリングを行うソフトウェアによって、1パケットごとにヘッダを置くコマンドとペイロードを置くコマンドが作成され、このコマンドを受けたハードウェアによってデータがストリームバッファに転送され、パケットが生成されていた。
However, the conventional multiplexed packet generation has a problem that it is difficult to increase the packet generation processing speed.
In the conventional multiplexed packet generation device, a command for placing a header and a command for placing a payload for each packet are created by multiplexing scheduling software, and data received by the hardware is transferred to the stream buffer. The packet was being generated.

データ転送処理を行うハードウェアがコマンドを実行する場合、まず、コマンドの解釈が行われ、解釈に基づいてその処理が行われる。たとえば、DMA(Direct Memory Access)転送の場合、転送元アドレス、転送先アドレスおよび転送サイズが指定されると、CPUを介せずに指定領域のデータを転送する。このようにハードウェアによってデータ転送を行う場合、全体の処理時間に対してコマンド解釈を行う時間の占める割合が高いことが知られている。すなわち、一般に、同じサイズのデータを何回かに分けて転送を行う場合、一度に転送するサイズを大きくしてコマンドの出力回数を減らす方が、転送サイズを小さくしてコマンドの出力回数を多くする場合に比べて、処理時間が短くなり、効率的なデータ転送を行うことができる。   When hardware that performs data transfer processing executes a command, the command is first interpreted, and the processing is performed based on the interpretation. For example, in the case of DMA (Direct Memory Access) transfer, when a transfer source address, a transfer destination address, and a transfer size are specified, data in a specified area is transferred without going through the CPU. When data transfer is performed by hardware as described above, it is known that the ratio of time for command interpretation to the entire processing time is high. In other words, in general, when transferring the same size of data several times, increasing the size to be transferred at one time and reducing the number of command outputs reduces the transfer size and increases the number of command outputs. Compared to the case, the processing time is shortened and efficient data transfer can be performed.

しかしながら、従来の多重化パケット生成では、図8および図9に示したように、1アクセス単位ごとにヘッダを置くコマンドとペイロードを置くコマンドが発行され、それぞれのデータのストリームバッファへの転送がハードウェアによって行われている。このため、パケット数が多くなると、パケット数に比例してハードウェアに発行される処理命令が多くなる。生成するパケット数がNP個の場合、ハードウェアは、2NP個の処理命令を処理しなければならない。このように、転送処理が1パケットごとに行われているため、処理命令の解釈に要する時間の占める割合が高くなり、データ転送効率が落ちてしまうという問題点がある。   However, in the conventional multiplexed packet generation, as shown in FIGS. 8 and 9, a command for placing a header and a command for placing a payload are issued for each access unit, and the transfer of each data to the stream buffer is hard. Is done by wear. For this reason, as the number of packets increases, the number of processing instructions issued to hardware increases in proportion to the number of packets. If the number of packets to be generated is NP, the hardware must process 2NP processing instructions. As described above, since the transfer process is performed for each packet, there is a problem that the ratio of the time required for the interpretation of the processing instruction becomes high and the data transfer efficiency is lowered.

特に、TSの多重化の場合、PS(Program Stream)の多重化に比べて作成するパケット数が非常に多くなる上、小さなデータの単位で切替えながら書き込むため、ハードウェアの命令を解釈するためのオーバーヘッドは、非常に大きなものになる。   In particular, in the case of TS multiplexing, the number of packets to be created is much larger than in the case of PS (Program Stream) multiplexing, and since writing is performed while switching in units of small data, it is necessary to interpret hardware instructions. The overhead is very large.

また、ハードウェアによる処理終了までの待ち時間を不要にするパケット生成装置では、CPUの処理能力の有効活用は図れるが、命令解釈のオーバーヘッドを削減し、ハードウェアによるデータ転送効率を向上させることはできない。   In addition, in a packet generator that eliminates the waiting time until the end of processing by hardware, it is possible to effectively use the processing capacity of the CPU, but it is possible to reduce the overhead of instruction interpretation and improve the data transfer efficiency by hardware. Can not.

本発明はこのような点に鑑みてなされたものであり、ストリームバッファへの転送処理の効率を向上させ、パケット生成処理を高速化する多重化パケット生成装置および多重化パケット生成方法を提供することを目的とする。   The present invention has been made in view of these points, and provides a multiplexed packet generation apparatus and a multiplexed packet generation method that improve the efficiency of transfer processing to a stream buffer and speed up packet generation processing. With the goal.

本発明では上記課題を解決するために、仮パケット記憶手段と転送手段を有する多重化処理部と、命令群記憶手段、仮パケット作成手段およびスケジューリング手段を有する多重化制御部を具備する多重化パケット装置が提供される。多重化制御部と多重化処理部により、順次バッファに格納されるエレメンタリーストリームから少なくともヘッダ部と情報部を備える多重化パケットが生成され、ストリームバッファに設定される。   In order to solve the above-mentioned problems, the present invention provides a multiplexed packet comprising a multiplexing processing unit having temporary packet storage means and transfer means, and a multiplexing control unit having instruction group storage means, temporary packet creation means, and scheduling means. An apparatus is provided. A multiplexing packet including at least a header part and an information part is generated from the elementary stream sequentially stored in the buffer by the multiplexing control unit and the multiplexing processing unit, and set in the stream buffer.

多重化処理部の仮パケット記憶手段は、ストリームバッファに転送する仮パケットを一時格納する。転送手段は、データ転送命令に従って、指定されたデータ転送元領域のデータをデータ転送先領域に転送する。多重化制御部の命令群記憶手段は、多重化処理部の転送手段に出力される、エレメンタリーストリームの転送を指示するデータ転送命令群を一時格納する。仮パケット作成手段は、順次バッファに格納されるエレメンタリーストリームをアクセス単位で取り込んで解析し、ヘッダ部データのみを設定した仮パケットを作成し、仮パケット記憶手段に格納する。また、情報部に設定されるエレメンタリーストリームを格納するストリームバッファの指定領域に転送するデータ転送命令を作成して命令群記憶手段に格納する。スケジューリング手段は、所定の数の仮パケットが作成されたら、仮パケット記憶手段に格納された仮パケットをストリームバッファへ転送するデータ転送命令と、命令群記憶手段に格納されたデータ転送命令を多重化処理部の転送手段へ出力する。   The temporary packet storage means of the multiplexing processing unit temporarily stores temporary packets to be transferred to the stream buffer. The transfer means transfers the data in the designated data transfer source area to the data transfer destination area in accordance with the data transfer command. The instruction group storage unit of the multiplexing control unit temporarily stores a data transfer instruction group that instructs the transfer of the elementary stream, which is output to the transfer unit of the multiplexing processing unit. The temporary packet creation means captures and analyzes the elementary streams sequentially stored in the buffer for each access unit, creates a temporary packet in which only header portion data is set, and stores the temporary packet in the temporary packet storage means. In addition, a data transfer command to be transferred to a designated area of a stream buffer for storing an elementary stream set in the information section is created and stored in the command group storage means. The scheduling means multiplexes the data transfer instruction for transferring the temporary packet stored in the temporary packet storage means to the stream buffer and the data transfer instruction stored in the instruction group storage means when a predetermined number of temporary packets are created. Output to the transfer means of the processing unit.

このような多重化パケット生成装置によれば、多重化制御部は、順次バッファに格納されるエレメンタリーストリームを取り込み、多重化パケットの生成処理を制御する。多重化制御部の仮パケット作成手段は、エレメンタリーストリームをアクセス単位で取り込み解析し、多重化パケットのヘッダ部データを作成し、ヘッダ部データのみが設定された仮パケットを作成して仮パケット記憶手段に格納する。また、解析結果に基づき、この多重化パケットの情報部に設定されるエレメンタリーストリームのデータをストリームバッファに転送するデータ転送命令を作成して命令群記憶手段に格納する。こうして、仮パケット記憶手段には複数の仮パケットが格納され、命令群記憶手段には対応する多重化パケットの情報部に関するデータ転送命令群が設定される。スケジューリング手段は、所定の数の仮パケットが生成されると、仮パケット記憶手段に格納された仮パケットのストリームバッファへのデータ転送命令と、命令群記憶手段に格納されているデータ転送命令を転送手段に出力する。転送手段は、データ転送命令を解釈し、仮パケット記憶手段に格納された仮パケットのストリームバッファへの転送処理を実行し、続いて、情報部にエレメンタリーストリームを転送する転送処理を順次実行することによって、ストリームバッファ上に多重化パケットを生成する。   According to such a multiplexed packet generating apparatus, the multiplexing control unit takes in the elementary streams sequentially stored in the buffer and controls the generation process of the multiplexed packet. Temporary packet creation means of the multiplexing control unit captures and analyzes the elementary stream in units of access, creates header data of the multiplexed packet, creates a temporary packet in which only the header data is set, and stores the temporary packet Store in the means. Further, based on the analysis result, a data transfer command for transferring the elementary stream data set in the information portion of the multiplexed packet to the stream buffer is created and stored in the command group storage means. Thus, a plurality of temporary packets are stored in the temporary packet storage means, and a data transfer instruction group related to the information portion of the corresponding multiplexed packet is set in the instruction group storage means. When a predetermined number of temporary packets are generated, the scheduling means transfers a data transfer instruction to the stream buffer of the temporary packets stored in the temporary packet storage means and a data transfer instruction stored in the instruction group storage means. Output to the means. The transfer means interprets the data transfer command, executes a transfer process of the temporary packet stored in the temporary packet storage means to the stream buffer, and then sequentially executes a transfer process of transferring the elementary stream to the information section. As a result, a multiplexed packet is generated on the stream buffer.

また、上記課題を解決するために、順次バッファに格納されるエレメンタリーストリームから少なくともヘッダ部と情報部を備える多重化パケットを生成してストリームバッファに設定する多重化パケット生成方法において、多重化制御部の仮パケット作成手段が、アクセス単位ごとに前記エレメンタリーストリームを解析し、ヘッダ部データを設定した仮パケットを作成して仮パケット記憶手段に格納し、前記情報部に設定される前記エレメンタリーストリームのデータを格納する前記ストリームバッファの指定領域に転送するデータ転送命令を作成して命令群記憶手段に格納し、多重化制御部のスケジューリング手段が、前記仮パケット作成手段によって所定の数の前記仮パケットが作成されたら、前記仮パケット記憶手段に格納された前記仮パケットを前記ストリームバッファへ転送するデータ転送命令と、前記命令群記憶手段に格納された前記データ転送命令を出力し、多重化処理部の転送手段が、スケジューリング手段によって出力された前記データ転送命令を取得し、前記データ転送命令に従って前記仮パケット記憶手段に格納された前記仮パケットを前記ストリームバッファに転送し、前記命令群記憶手段の前記データ転送命令に従って、指示された前記多重化パケットの情報部に相当する前記ストリームバッファの指定領域に前記エレメンタリーストリームを転送する、ことを特徴とする多重化パケット生成方法、が提供される。   Further, in order to solve the above-mentioned problem, in a multiplexed packet generation method for generating a multiplexed packet including at least a header part and an information part from an elementary stream sequentially stored in a buffer and setting the multiplexed packet in the stream buffer, multiplexing control is performed. The temporary packet creation means of each part analyzes the elementary stream for each access unit, creates a temporary packet in which header part data is set, stores the temporary packet in the temporary packet storage means, and sets the elementary data set in the information part A data transfer command to be transferred to the designated area of the stream buffer for storing the stream data is created and stored in the command group storage means, and the scheduling means of the multiplexing control unit uses the temporary packet creation means to generate a predetermined number of the Once the temporary packet is created, it is stored in the temporary packet storage means A data transfer instruction for transferring the temporary packet to the stream buffer and the data transfer instruction stored in the instruction group storage means are output, and the transfer means of the multiplexing processing unit outputs the data transfer output by the scheduling means An instruction is acquired, the temporary packet stored in the temporary packet storage means is transferred to the stream buffer according to the data transfer instruction, and the multiplexed packet is instructed according to the data transfer instruction of the instruction group storage means. There is provided a multiplexed packet generation method, wherein the elementary stream is transferred to a designated area of the stream buffer corresponding to an information section.

このような多重化パケット生成方法では、入力されるアクセス単位のエレメンタリーストリームの解析によって多重化パケットのヘッダ部データが設定された仮パケットが作成され、仮パケット記憶手段に格納される。さらに、多重化パケットの情報部に設定されるエレメンタリーストリームをストリームバッファの指定領域に転送するデータ転送命令が作成され、命令群記憶手段に格納される。所定の数の仮パケットが作成されたら、仮パケット記憶手段に格納された仮パケットをストリームバッファに転送するデータ転送命令が出力され、続いて、命令群記憶手段に格納されたデータ転送命令が読み出されて順次出力される。データ転送命令を取得した転送手段はデータ転送命令に従って、仮パケット記憶手段の仮パケットをストリームバッファに転送し、ストリームバッファの情報部にエレメンタリーストリームを転送し、ストリームバッファ上に多重化パケットを作成する。   In such a multiplexed packet generation method, a temporary packet in which the header data of the multiplexed packet is set is created by analyzing the input elementary stream of the access unit, and stored in the temporary packet storage means. Further, a data transfer command for transferring the elementary stream set in the information portion of the multiplexed packet to the designated area of the stream buffer is created and stored in the command group storage means. When a predetermined number of temporary packets have been created, a data transfer instruction for transferring the temporary packets stored in the temporary packet storage means to the stream buffer is output, and subsequently, the data transfer instructions stored in the instruction group storage means are read. Are output sequentially. In response to the data transfer instruction, the transfer means that acquired the data transfer instruction transfers the temporary packet in the temporary packet storage means to the stream buffer, transfers the elementary stream to the information section of the stream buffer, and creates a multiplexed packet on the stream buffer. To do.

本発明の多重化パケット生成装置および多重化パケット生成方法では、複数のパケットを生成する処理を1つの処理単位として、多重化制御部が多重化パケットのヘッダ部データを作成し、ヘッダ部データのみが設定された仮のパケットを作成して一時保存しておき、1つの処理単位分の処理が終了したら、一時保存されている仮のパケットを一括して転送処理を行うハードウェアによって書き込む。その後、対応した情報部にデータを書き込むことによって、多重化パケットをストリームバッファ上に生成する。このように本発明によれば、転送処理を行うハードウェアが実行するデータ転送命令は、複数のヘッダ部データの一括データ転送と、情報部のデータ転送となり、命令数を削減することができる。この結果、転送処理を行うハードウェアの効率的なデータ転送処理が可能となり、多重化パケット生成の高速化が図れる。   In the multiplexed packet generating apparatus and the multiplexed packet generating method of the present invention, the multiplexing control unit creates the header part data of the multiplexed packet with the process of generating a plurality of packets as one processing unit, and only the header part data Is created and temporarily stored, and when processing for one processing unit is completed, the temporarily stored temporary packets are written by hardware that performs transfer processing in a batch. Thereafter, a multiplexed packet is generated on the stream buffer by writing data in the corresponding information section. As described above, according to the present invention, data transfer instructions executed by hardware that performs transfer processing are batch data transfer of a plurality of header part data and data transfer of an information part, and the number of instructions can be reduced. As a result, it is possible to perform efficient data transfer processing of hardware that performs transfer processing, and it is possible to speed up the generation of multiplexed packets.

以下、本発明の実施の形態を図面を参照して説明する。まず、実施の形態に適用される発明の概念について説明し、その後、実施の形態の具体的な内容を説明する。
図1は、実施の形態に適用される発明の概念図である。
Hereinafter, embodiments of the present invention will be described with reference to the drawings. First, the concept of the invention applied to the embodiment will be described, and then the specific contents of the embodiment will be described.
FIG. 1 is a conceptual diagram of the invention applied to the embodiment.

本発明に係る多重化パケット生成装置は、多重化パケットを作成する処理を制御する多重化制御部1と、多重化制御部1に従って多重化パケットをストリームバッファ3に設定する多重化処理部2を具備し、順次入力されるビデオES41とビデオES情報42、オーディオES51とオーディオES情報52から多重化パケットを生成する。   A multiplexed packet generation apparatus according to the present invention includes a multiplexing control unit 1 that controls processing for creating a multiplexed packet, and a multiplexing processing unit 2 that sets the multiplexed packet in the stream buffer 3 according to the multiplexing control unit 1. A multiplexed packet is generated from video ES 41 and video ES information 42, audio ES 51 and audio ES information 52 that are sequentially input.

ここで、各ESについて説明する。ビデオES41は、図示しないエンコーダによってビデオのベースバンド信号が符号化されたESであり、ビデオES情報42には、アクセス単位ごとに、各アクセス単位のビデオESが格納されているビデオESバッファ上の位置、サイズ、デコード時刻などの情報が設定されている。同様に、オーディオES51は、エンコーダによってオーディオのベースバンド信号が符号化されたESであり、オーディオES情報52は、各アクセス単位のオーディオESのバッファ上の位置、サイズなどの情報が設定されている。   Here, each ES will be described. The video ES 41 is an ES in which a video baseband signal is encoded by an encoder (not shown), and the video ES information 42 includes a video ES buffer on which a video ES of each access unit is stored for each access unit. Information such as position, size, and decoding time is set. Similarly, the audio ES 51 is an ES in which an audio baseband signal is encoded by an encoder, and the audio ES information 52 is set with information such as the position and size on the buffer of the audio ES of each access unit. .

次に、各処理部について説明する。
多重化制御部1は、ビデオES情報42とオーディオES情報52に基づいて、多重化処理のスケジューリングを行うスケジューリング手段11、ヘッダ部が設定された仮パケットと情報部のデータ転送命令を作成する仮パケット作成手段12および仮パケット作成手段12の作成したデータ転送命令群を一時格納する命令群記憶手段13を有する。スケジューリング手段11および仮パケット作成手段12は、各処理手段が有すべき機能の処理内容を記述したプログラムをCPUが実行することによって、各処理機能が実現される。すなわち、多重化制御部1は、ソフトウェアによって実現される。
Next, each processing unit will be described.
The multiplexing control unit 1, based on the video ES information 42 and the audio ES information 52, has a scheduling unit 11 that schedules multiplexing processing, a provisional packet in which a header part is set, and a provisional packet that creates a data transfer command for the information part. The packet creation means 12 and the temporary packet creation means 12 have an instruction group storage means 13 for temporarily storing the data transfer instruction group created. In the scheduling unit 11 and the provisional packet creation unit 12, each processing function is realized by the CPU executing a program describing the processing content of the function that each processing unit should have. That is, the multiplexing control unit 1 is realized by software.

スケジューリング手段11は、多重化制御部1による多重化パケット生成処理手順の実行を管理しており、仮パケット作成手段12によって所定の数の仮パケットが作成されたら、仮パケット作成手段12によって作成された仮パケットをストリームバッファ3へ転送するデータ転送命令を作成して多重化処理部2の転送手段21に出力する。さらに、命令群記憶手段13に格納された仮パケットの情報部に設定されるエレメンタリーストリームのデータをストリームバッファ3に転送するデータ転送命令群を転送手段21へ出力する。   The scheduling unit 11 manages the execution of the multiplexed packet generation processing procedure by the multiplexing control unit 1. When a predetermined number of temporary packets are generated by the temporary packet generation unit 12, the scheduling unit 11 generates the temporary packet generation unit 12. A data transfer instruction for transferring the provisional packet to the stream buffer 3 is created and output to the transfer means 21 of the multiplexing processing unit 2. Further, a data transfer instruction group for transferring the elementary stream data set in the information part of the temporary packet stored in the instruction group storage means 13 to the stream buffer 3 is output to the transfer means 21.

仮パケット作成手段12は、アクセス単位ごとにビデオES情報42またはオーディオES情報52を取り込んで解析し、解析結果に応じた多重化パケットのヘッダ部データを作成し、このヘッダ部データと空白の情報部を有する仮パケットを生成して仮パケット作成手段12に格納する。仮パケットには、ヘッダ部データに続き、解析結果に応じて算出される情報部のデータ分の領域が確保されている。さらに、多重化パケットが生成されるとき、情報部に設定されるビデオES41またはオーディオES51のデータをストリームバッファ3に転送するためのデータ転送命令を作成し、命令群記憶手段13に格納する。ビデオES情報42およびオーディオES情報52には、それぞれ対応するESが格納されるバッファ上のアドレスやデータサイズが登録されており、これらに基づいてデータ転送元のアドレスと転送サイズが規定される。また、ストリームバッファ3上のデータ転送先アドレスは、多重化制御部1が管理している。   The temporary packet creation means 12 takes in and analyzes the video ES information 42 or the audio ES information 52 for each access unit, creates the header part data of the multiplexed packet according to the analysis result, and the header part data and blank information. A temporary packet having a part is generated and stored in the temporary packet creating means 12. In the temporary packet, an area for the data of the information part calculated according to the analysis result is secured following the header part data. Further, when a multiplexed packet is generated, a data transfer instruction for transferring the data of the video ES 41 or the audio ES 51 set in the information section to the stream buffer 3 is created and stored in the instruction group storage means 13. In the video ES information 42 and the audio ES information 52, an address and a data size on a buffer in which the corresponding ES is stored are registered, and based on these, a data transfer source address and a transfer size are defined. The multiplexing control unit 1 manages the data transfer destination address on the stream buffer 3.

命令群記憶手段13は、仮パケット作成手段12によって作成された仮パケットでは空白であった情報部に設定されるエレメンタリーストリームのデータをストリームバッファ3に転送するデータ転送命令群を一時保存するメモリである。   The instruction group storage means 13 is a memory for temporarily storing a data transfer instruction group for transferring the elementary stream data set in the information section that was blank in the temporary packet created by the temporary packet creation means 12 to the stream buffer 3. It is.

多重化処理部2は、多重化制御部1によって作成されたデータ転送命令に従ってストリームバッファ3に多重化パケットを設定する転送手段21と、多重化制御部1によって作成されたヘッダを一時格納する仮パケット記憶手段22を有する。転送手段21は、データ転送命令を解釈し、命令に従って転送元データが格納される領域から転送先のストリームバッファ3の指定領域に、CPUを介さずに直接データ転送する。すなわち、多重化処理部2はハードウェアによって実現されており、高速なデータ転送が可能なことが特徴である。また、仮パケット記憶手段22は、多重化制御部1および転送手段21からアクセス可能なメモリで、仮パケット作成手段12によって作成された仮パケットが一時保存される。   The multiplexing processing unit 2 includes a transfer unit 21 that sets a multiplexed packet in the stream buffer 3 in accordance with the data transfer command created by the multiplexing control unit 1 and a temporary storage that temporarily stores the header created by the multiplexing control unit 1. Packet storage means 22 is included. The transfer means 21 interprets the data transfer command and transfers the data directly from the area where the transfer source data is stored to the designated area of the transfer destination stream buffer 3 without using the CPU. That is, the multiplexing processing unit 2 is realized by hardware, and is characterized by being capable of high-speed data transfer. The temporary packet storage unit 22 is a memory accessible from the multiplexing control unit 1 and the transfer unit 21, and temporarily stores the temporary packet created by the temporary packet creation unit 12.

このような構成の多重化パケット生成装置の動作について説明する。
図示しないバッファには、エンコーダによって生成されるビデオES41、ビデオES情報42、オーディオES51およびオーディオES情報52が順次格納されている。
The operation of the multiplexed packet generator having such a configuration will be described.
In a buffer (not shown), video ES41, video ES information 42, audio ES51, and audio ES information 52 generated by an encoder are sequentially stored.

多重化制御部1では、ビデオES41またはオーディオES51ごとに、アクセス単位のESがバッファに入力されると、仮パケット作成手段12は、ビデオES情報42またはオーディオES情報52を取り込み、解析してヘッダ部データを設定し、作成されたヘッダ部データと空白の情報部を備えた仮パケットを作成する。空白の情報部は、解析結果に応じて算出される情報部のサイズ分の領域が確保される。作成された仮パケットは、仮パケット記憶手段22に格納する。さらに、情報部に設定するビデオES41またはオーディオES51のデータを取り込み、ストリームバッファ3に転送するデータ転送命令を作成し、命令群記憶手段13に格納する。以上の処理がアクセス単位ごとに繰り返されることにより、仮パケット記憶手段22には、ヘッダ部のみが設定された複数の仮パケットが格納される。従って、仮パケット記憶手段22は、ストリームバッファ3に設定される多重化パケット群と同じデータ構成の仮パケット群が作成される。ただし、仮パケットの情報部は空白になっている。また、命令群記憶手段13には、仮パケット記憶手段22に格納される空白の情報部に対応するストリームバッファ3上の多重化パケットの情報部に有効なデータを転送するデータ転送命令群が格納される。   In the multiplexing control unit 1, when an access unit ES is input to the buffer for each video ES 41 or audio ES 51, the temporary packet creation unit 12 takes in the video ES information 42 or the audio ES information 52, analyzes it, and analyzes the header. The partial data is set, and a temporary packet including the created header part data and a blank information part is created. In the blank information portion, an area corresponding to the size of the information portion calculated according to the analysis result is secured. The created temporary packet is stored in the temporary packet storage unit 22. Further, the video ES 41 or audio ES 51 data set in the information section is taken in, a data transfer command for transferring to the stream buffer 3 is created, and stored in the command group storage means 13. By repeating the above processing for each access unit, the temporary packet storage unit 22 stores a plurality of temporary packets in which only the header portion is set. Accordingly, the temporary packet storage unit 22 creates a temporary packet group having the same data configuration as the multiplexed packet group set in the stream buffer 3. However, the information part of the temporary packet is blank. The instruction group storage means 13 stores a data transfer instruction group for transferring valid data to the information portion of the multiplexed packet on the stream buffer 3 corresponding to the blank information portion stored in the temporary packet storage means 22. Is done.

こうして、所定の数の仮パケットが設定されると、スケジューリング手段11によって仮パケットをストリームバッファ3へ転送するデータ転送命令が作成され、転送手段21に出力される。これにより、転送手段21は、仮パケット記憶手段22に格納される複数の仮パケットを一括してストリームバッファ3の指定領域に転送する。この結果、ストリームバッファ3上には、ヘッダ部データが設定され、情報部が空白の多重化パケットが設定される。   When a predetermined number of temporary packets are set in this way, a data transfer command for transferring the temporary packets to the stream buffer 3 is created by the scheduling means 11 and output to the transfer means 21. As a result, the transfer unit 21 transfers a plurality of temporary packets stored in the temporary packet storage unit 22 to the designated area of the stream buffer 3 at a time. As a result, the header portion data is set on the stream buffer 3, and the multiplexed packet with the blank information portion is set.

続いて、スケジューリング手段11は、命令群記憶手段13に格納されたデータ転送命令を転送手段21に出力する。たとえば、データ転送命令を転送手段21に用意されたキューに一括して登録すれば、多重化制御部1のCPUの処理負荷を減らすことができる。転送手段21は、データ転送命令に従って、空白となっているストリームバッファ上の多重化パケットの情報部に相当するビデオES41もしくはオーディオES51のデータを順次転送する。これにより、ストリームバッファ3上の多重化パケットの情報部にデータが設定され、多重化パケットが完成する。   Subsequently, the scheduling unit 11 outputs the data transfer instruction stored in the instruction group storage unit 13 to the transfer unit 21. For example, if data transfer commands are registered in a queue prepared in the transfer means 21, the processing load on the CPU of the multiplexing control unit 1 can be reduced. The transfer means 21 sequentially transfers the data of the video ES 41 or the audio ES 51 corresponding to the information portion of the multiplexed packet on the stream buffer that is blank according to the data transfer command. As a result, data is set in the information portion of the multiplexed packet on the stream buffer 3, and the multiplexed packet is completed.

このように、多重化パケットのヘッダ部データのみを設定した複数の仮パケットを仮パケット記憶手段22上に作成しておき、転送処理を行うハードウェアに一括してストリームバッファ3に転送させることにより、ハードウェアが1回の命令解釈で複数のヘッダ部データをストリームバッファ3上に設定することができる。これにより、転送処理を行うハードウェアの処理効率が上がり、転送処理を高速化することができる。   In this way, a plurality of temporary packets in which only the header data of the multiplexed packet is set are created on the temporary packet storage means 22 and transferred to the stream buffer 3 collectively by hardware that performs transfer processing. The hardware can set a plurality of header data on the stream buffer 3 by interpreting the instruction once. As a result, the processing efficiency of the hardware that performs the transfer process increases, and the transfer process can be speeded up.

なお、上記の説明では、命令群記憶手段13を多重化制御部1に設けるとしたが、多重化制御部1から読み書きが可能な多重化処理部2のメモリ上に設けるとしてもよい。また、エレメンタリーストリームがTSの場合で説明したが、PSに適用することもできる。   In the above description, the instruction group storage unit 13 is provided in the multiplexing control unit 1. However, the instruction group storage unit 13 may be provided on the memory of the multiplexing processing unit 2 readable / writable from the multiplexing control unit 1. Moreover, although the case where the elementary stream is a TS has been described, it can also be applied to a PS.

以下、実施の形態を、MPEG2(Moving Picture Experts Group2)の規定に基づいて、ビデオESとオーディオESを取り込み、これらのESからPESを生成する多重化パケット生成装置に適用した場合を例に図面を参照して詳細に説明する。   In the following, the embodiment is applied to a multiplexed packet generation apparatus that takes in video ES and audio ES and generates PES from these ES based on the definition of MPEG2 (Moving Picture Experts Group 2). Details will be described with reference to FIG.

図2は、本発明の実施の形態の多重化パケット生成装置の構成を示したブロック図である。図1と同じものには同じ番号を付し、説明は省略する。
本発明の実施の形態の多重化パケット生成装置は、ストリームバッファ3、ソフトウェアによって構成され多重化処理を制御する多重化部(ソフトウェア、以下、S/Wとする)10、ハードウェアによって構成され多重化処理を行ってストリームバッファ3に多重化パケットを設定する多重化部(ハードウェア、以下、H/Wとする)20、ビデオのベースバンド信号からビデオESとビデオES情報を生成するビデオエンコーダ40、オーディオのベースバンド信号からオーディオESとオーディオES情報を生成するオーディオエンコーダ50、およびそれぞれESを格納するビデオESバッファ61、ビデオES情報バッファ62、オーディオESバッファ63、オーディオES情報バッファ64を具備する。
FIG. 2 is a block diagram showing the configuration of the multiplexed packet generation apparatus according to the embodiment of the present invention. The same parts as those in FIG.
A multiplexed packet generation apparatus according to an embodiment of the present invention includes a stream buffer 3, a multiplexing unit (software, hereinafter referred to as S / W) 10 configured by software and controlling multiplexing processing, and configured by hardware. A multiplexing unit (hardware, hereinafter referred to as H / W) 20 for performing a multiplexing process and setting multiplexed packets in the stream buffer 3, and a video encoder 40 for generating a video ES and video ES information from a video baseband signal , An audio encoder 50 for generating audio ES and audio ES information from an audio baseband signal, and a video ES buffer 61, a video ES information buffer 62, an audio ES buffer 63, and an audio ES information buffer 64 for storing the ES, respectively. .

多重化部(S/W)10は、少なくともCPUと、多重化部(S/W)10が実行すべき機能の処理内容を記述したプログラムを記憶する記憶装置と、処理手順により生成される情報を格納するメモリを有する。CPUがプログラムを実行することにより多重化制御部1として機能し、スケジューリング手段11、仮パケット作成手段12の各処理手段を実現する。   The multiplexing unit (S / W) 10 includes at least a CPU, a storage device that stores a program describing the processing contents of the function to be executed by the multiplexing unit (S / W) 10, and information generated by the processing procedure. Has a memory for storing. When the CPU executes the program, it functions as the multiplexing control unit 1 and realizes each processing means of the scheduling means 11 and the temporary packet creation means 12.

多重化部(H/W)20は、ハードウェアによって直接メモリ間のデータを転送する転送装置と、転送装置および多重化部(S/W)10からアクセス可能なバッファを有する。転送装置は、転送手段21として機能し、データ転送命令(以下、コマンドとする)を解釈し、指定された転送元アドレスから転送先アドレスへのデータ転送を高速に実行する。たとえば、DMAにより構成される。また、キュー用のメモリを有し、キューに登録されたコマンドを書き込まれた順に解釈して実行する。バッファは、仮パケット記憶手段22として機能し、多重化部(S/W)10の作成した仮パケットを格納する。バッファは、たとえば、リングバッファで構成されており、多重化部(S/W)10によって管理される。多重化部(S/W)10は、バッファのどこまで書き込みを行ったか、書き込みを行ったものがどこまで転送装置に使用されたかを常に管理し、仮パケットをバッファ上に設定していく。   The multiplexing unit (H / W) 20 includes a transfer device that directly transfers data between memories by hardware, and a buffer that can be accessed from the transfer device and the multiplexing unit (S / W) 10. The transfer device functions as the transfer means 21, interprets a data transfer command (hereinafter referred to as a command), and executes data transfer from the designated transfer source address to the transfer destination address at high speed. For example, it is constituted by DMA. It also has a queue memory, and interprets and executes commands registered in the queue in the order written. The buffer functions as temporary packet storage means 22 and stores temporary packets created by the multiplexing unit (S / W) 10. The buffer is constituted by a ring buffer, for example, and is managed by the multiplexing unit (S / W) 10. The multiplexing unit (S / W) 10 always manages how much data has been written in the buffer and how much the written data has been used by the transfer device, and sets temporary packets on the buffer.

ビデオエンコーダ40は、ビデオのベースバンド信号を入力し、圧縮符号化したビデオESとビデオESに関するビデオES情報のESを作成し、それぞれビデオESバッファ61とビデオES情報バッファ62に格納する。ビデオES情報には、対象のビデオESのバッファ上の位置およびデータサイズが格納されている。   The video encoder 40 receives a video baseband signal, creates a compression-encoded video ES, and an ES of video ES information related to the video ES, and stores them in the video ES buffer 61 and the video ES information buffer 62, respectively. The video ES information stores the position of the target video ES on the buffer and the data size.

オーディオエンコーダ50は、オーディオのベースバンド信号を入力し、圧縮符号化したオーディオESとオーディオESに関するオーディオES情報のESを作成し、それぞれオーディオESバッファ63とオーディオES情報バッファ64に格納する。オーディオES情報には、対象のオーディオESのバッファ上の位置およびデータサイズが格納されている。   The audio encoder 50 receives an audio baseband signal, creates a compression-encoded audio ES and audio ES information related to the audio ES, and stores them in the audio ES buffer 63 and the audio ES information buffer 64, respectively. The audio ES information stores the position of the target audio ES on the buffer and the data size.

このような構成の多重化パケット生成装置の動作について説明する。
ビデオエンコーダ40によって、順次入力されるビデオのベースバンド信号からビデオESが生成されビデオESバッファ61に格納されるとともに、ビデオESに関するビデオES情報が生成されビデオES情報バッファ62に格納される。同様に、順次入力されるオーディオのベースバンド信号からオーディオESが生成されオーディオESバッファ63に格納されるとともに、オーディオESに関するオーディオES情報が生成されオーディオES情報バッファ64に格納される。
The operation of the multiplexed packet generator having such a configuration will be described.
The video encoder 40 generates a video ES from the video baseband signals sequentially input and stores it in the video ES buffer 61, and also generates video ES information related to the video ES and stores it in the video ES information buffer 62. Similarly, an audio ES is generated from the sequentially input audio baseband signal and stored in the audio ES buffer 63, and audio ES information related to the audio ES is generated and stored in the audio ES information buffer 64.

多重化部(S/W)10は、ビデオES情報バッファ62に格納されるビデオES情報、およびオーディオES情報バッファ64に格納されるオーディオES情報を解析し、それぞれの仮パケットを作成して多重化部(H/W)20のバッファに書き込む。仮パケットは、解析結果に基づき生成されたヘッダ部データと、空白のペイロードとで構成される。空白のペイロードのサイズは、ビデオES情報とオーディオES情報に登録されている対象のビデオESとオーディオESのデータサイズに応じて規定される。さらに、同様にして、ビデオES情報とオーディオES情報に登録されている対象のビデオESとオーディオESが格納されるバッファ上の位置とデータサイズを用いて、仮パケットに空白のペイロードに対応するストリームバッファ3上の多重化パケットのペイロードに該当するデータが転送されるようにペイロードデータを転送するコマンドを作成し、一時保存しておく。   The multiplexing unit (S / W) 10 analyzes the video ES information stored in the video ES information buffer 62 and the audio ES information stored in the audio ES information buffer 64, creates respective temporary packets, and multiplexes them. Write to the buffer of the conversion unit (H / W) 20. The temporary packet includes header part data generated based on the analysis result and a blank payload. The size of the blank payload is defined according to the data size of the target video ES and audio ES registered in the video ES information and audio ES information. Further, similarly, a stream corresponding to a blank payload in a temporary packet using the position and data size on the buffer where the target video ES and audio ES registered in the video ES information and audio ES information are stored. A command for transferring payload data is created and temporarily stored so that data corresponding to the payload of the multiplexed packet on the buffer 3 is transferred.

そして、所定の数の仮パケットが作成されると、多重化部(S/W)10は、バッファに設定された仮パケット群をストリームバッファ3に転送するコマンドを作成して、多重化部(H/W)20に出力する。多重化部(H/W)20は、コマンドを解釈し、バッファに設定された複数の仮パケットを一括してストリームバッファ3に転送する。   When a predetermined number of temporary packets are created, the multiplexing unit (S / W) 10 creates a command for transferring the temporary packet group set in the buffer to the stream buffer 3, and the multiplexing unit ( H / W) 20. The multiplexing unit (H / W) 20 interprets the command, and transfers a plurality of temporary packets set in the buffer to the stream buffer 3 at once.

続いて、多重化部(S/W)10は、一時保存したペイロードデータを転送するコマンド群を多重化部(H/W)20のキューに登録する。多重化部(H/W)20は、キューに登録された順番に従って、コマンドを解釈し、ストリームバッファ3のペイロード領域にビデオESおよびオーディオESのデータを転送する処理を繰り返し行う。   Subsequently, the multiplexing unit (S / W) 10 registers a command group for transferring temporarily stored payload data in the queue of the multiplexing unit (H / W) 20. The multiplexing unit (H / W) 20 interprets the commands in accordance with the order registered in the queue, and repeatedly performs the process of transferring the video ES and audio ES data to the payload area of the stream buffer 3.

以上の転送処理によって、ストリームバッファ3に設定される多重化パケットについて一例を挙げて説明する。図3、図4および図5は、本発明の実施の形態の多重化パケット生成処理によるストリームバッファ上の多重化パケットの状態の一例を示した図である。図で、斜線あるいは格子で囲まれた領域は、有効なデータが設定されていることを示している。   An example of the multiplexed packet set in the stream buffer 3 by the above transfer processing will be described. 3, 4, and 5 are diagrams illustrating an example of a state of the multiplexed packet on the stream buffer by the multiplexed packet generation process according to the embodiment of this invention. In the figure, the area surrounded by diagonal lines or grids indicates that valid data is set.

以下、コマンド実行順に従って、(A)ヘッダを置くコマンド実行後(図3)、(B)ペイロードを置くコマンド実行後(図4)、(C)次のペイロードを置くコマンド実行後(図5)の状態について説明する。   Hereinafter, according to the command execution order, (A) after execution of a command for placing a header (FIG. 3), (B) after execution of a command for placing a payload (FIG. 4), and (C) after executing a command for placing the next payload (FIG. 5). The state of will be described.

図3は、ヘッダを置くコマンドを実行後のストリームバッファの状態を示している。ヘッダを置くコマンドは、所定の数の仮パケットがバッファに格納された後、多重化部(S/W)10から多重化部(H/W)20に対して出力される。多重化部(H/W)20は、コマンドに従って、バッファに設定された仮パケットを一括してストリームバッファに転送する。なお、当然ながら、コマンド実行前までには、仮パケットが格納されるバッファに図3に示したデータと同じデータが格納されている。   FIG. 3 shows the state of the stream buffer after execution of the header placement command. The command for placing the header is output from the multiplexing unit (S / W) 10 to the multiplexing unit (H / W) 20 after a predetermined number of temporary packets are stored in the buffer. The multiplexing unit (H / W) 20 collectively transfers the temporary packets set in the buffer to the stream buffer according to the command. Of course, before the command is executed, the same data as shown in FIG. 3 is stored in the buffer in which the temporary packet is stored.

ヘッダを置くコマンドが実行されると、ストリームバッファ3には、1番目のビデオパケットの仮パケットを構成するTSヘッダ(THn_v#01)101、PESヘッダ(PHn_v#01)、空白のペイロード(ペイロードn_v#01)103が転送される。また、同一コマンドによる転送処理で、同様に2番目のビデオパケットの仮パケット(TSヘッダ104、ペイロード105)、1番目のオーディオパケットの仮パケット(TSヘッダ106、PESヘッダ107、ペイロード108)、3番目のビデオパケットの仮パケット(TSヘッダ109、ペイロード110)、4番目のビデオパケットの仮パケット(TSヘッダ111、ペイロード112)、2番目のオーディオパケットの仮パケット(TSヘッダ113、ペイロード114)というように、複数の仮パケットがストリームバッファ3に転送される。ここで有効なデータは、TSヘッダ101、104、106、109、111、113とPESヘッダ102、107のみである。   When a command for placing a header is executed, the stream buffer 3 stores a TS header (THn_v # 01) 101, a PES header (PHn_v # 01), and a blank payload (payload n_v) that constitute the temporary packet of the first video packet. # 01) 103 is transferred. Similarly, in the transfer process using the same command, the temporary packet of the second video packet (TS header 104, payload 105) and the temporary packet of the first audio packet (TS header 106, PES header 107, payload 108), 3 The tentative packet of the second video packet (TS header 109, payload 110), the tentative packet of the fourth video packet (TS header 111, payload 112), and the tentative packet of the second audio packet (TS header 113, payload 114) As described above, a plurality of temporary packets are transferred to the stream buffer 3. The valid data here are only the TS headers 101, 104, 106, 109, 111, 113 and the PES headers 102, 107.

図4は、最初のペイロードを置くコマンドが実行された後のストリームバッファの状態を示している。
最初のペイロードを置くコマンドが実行されると、図3に示した状態のストリームバッファ3における1番目のビデオパケットの空白のペイロード103に対象のビデオESのデータが転送され、有効なペイロード103aが設定される。
FIG. 4 shows the state of the stream buffer after the command to place the first payload is executed.
When the command for placing the first payload is executed, the data of the target video ES is transferred to the blank payload 103 of the first video packet in the stream buffer 3 in the state shown in FIG. 3, and a valid payload 103a is set. Is done.

図5は、次のペイロードを置くコマンド実行後のストリームバッファの状態を示している。
次のペイロードを置くコマンドが実行されると、図4に示した状態のストリームバッファ3における2番目のビデオパケットの空白のペイロード105に対象のビデオESのデータが転送され、有効なペイロード105aが設定される。
FIG. 5 shows the state of the stream buffer after execution of the command for placing the next payload.
When a command to place the next payload is executed, the data of the target video ES is transferred to the blank payload 105 of the second video packet in the stream buffer 3 in the state shown in FIG. 4, and a valid payload 105a is set. Is done.

このように、ペイロードを置くコマンドにより、空白のペイロードに有効なデータが転送される。すべての仮パケットのペイロードの設定が終了するまで、処理が繰り返される。   Thus, valid data is transferred to a blank payload by a command for placing a payload. The process is repeated until the setting of the payloads of all temporary packets is completed.

以上の処理が実行されることによってストリームバッファ3に設定された多重化パケットは、ペイロードが設定されたパケットから順に送出が可能となる。なお、一括して処理を行うパケットの個数は、アクセスユニットや転送処理の能力、バッファのサイズなどに応じて適宜設定される。また、必要に応じて、状況に応じた可変値とすることもできる。   By executing the above processing, the multiplexed packet set in the stream buffer 3 can be sent in order from the packet in which the payload is set. Note that the number of packets to be processed in a lump is appropriately set according to the access unit, transfer processing capability, buffer size, and the like. Moreover, it can also be set as the variable value according to a condition as needed.

次に、実施の形態の多重化パケット生成方法について説明する。図6は、本発明の実施の形態の多重化パケット生成方法の手順を示したフローチャートである。
以下の処理手順は、多重化部(S/W)10によって実行される処理手順を示しており、ソフトウェアによって予め設定された仮パケット個数(これをNPとする)の仮パケット生成処理が終了すると、多重化部(H/W)20に処理が引き継がれる。
Next, the multiplexed packet generation method of the embodiment will be described. FIG. 6 is a flowchart showing a procedure of the multiplexed packet generation method according to the embodiment of the present invention.
The following processing procedure shows a processing procedure executed by the multiplexing unit (S / W) 10, and when the provisional packet generation processing for the number of provisional packets preset by software (this is assumed to be NP) is completed. The processing is taken over by the multiplexing unit (H / W) 20.

[ステップS1] 多重化部(S/W)10による仮パケット生成処理が開始され、生成された仮パケットの個数を示すカウンタ(np)が0に初期化される。
[ステップS2] アクセス単位のビデオESとビデオESに関するビデオES情報(以下、これらをまとめてビデオAU情報とする)が存在するか否かを判定する。ビデオAU情報が存在しない場合は、ビデオES待ちを続ける。
[Step S1] Temporary packet generation processing by the multiplexing unit (S / W) 10 is started, and a counter (np) indicating the number of generated temporary packets is initialized to zero.
[Step S2] It is determined whether or not there is a video ES of an access unit and video ES information related to the video ES (hereinafter collectively referred to as video AU information). If there is no video AU information, it waits for video ES.

[ステップS3] ビデオAU情報が存在している場合、続いて、アクセス単位のオーディオESとオーディオESに関するオーディオES情報(以下、これらをまとめてオーディオAU情報とする)が存在するか否かを判定する。オーディオAU情報が存在しない場合は、オーディオES待ちを続ける。   [Step S3] When the video AU information exists, it is determined whether the audio ES of the access unit and the audio ES information related to the audio ES (hereinafter collectively referred to as audio AU information) exist. To do. If there is no audio AU information, the audio ES wait is continued.

[ステップS4] ビデオAU情報とオーディオAU情報がともに存在する場合、それぞれのESに基づいて仮パケット作成処理を行う。仮パケット作成処理により、ヘッダ部データが作成され、空白のペイロードを付加した仮パケットが仮パケット記憶手段に格納される。さらに、ストリームバッファのペイロードにESデータを置くためのコマンドが作成され、一時保存される。詳細な処理については、後述する。   [Step S4] When both video AU information and audio AU information exist, provisional packet creation processing is performed based on each ES. Through the temporary packet creation process, header data is created, and a temporary packet with a blank payload added is stored in the temporary packet storage means. Further, a command for placing ES data in the payload of the stream buffer is created and temporarily stored. Detailed processing will be described later.

[ステップS5] 仮パケットの作成が終了したので、仮パケット個数npを1増加させる。
[ステップS6] 仮パケット個数npをNPと比較する。NPを超えていない場合は、ステップS2に戻って、次のESの処理を行う。
[Step S5] Since the provisional packet has been created, the number of provisional packets np is incremented by one.
[Step S6] The number of temporary packets np is compared with NP. If it does not exceed NP, the process returns to step S2 to perform the next ES process.

[ステップS7] 仮パケット個数npがNP以上の場合、転送処理を開始する。まず、仮パケット記憶手段に格納された仮パケットをストリームバッファへ転送するため、ヘッダを置くコマンドを作成する。   [Step S7] When the number of temporary packets np is greater than or equal to NP, transfer processing is started. First, in order to transfer the temporary packet stored in the temporary packet storage means to the stream buffer, a command for placing a header is created.

[ステップS8] ステップS7で作成したヘッダを置くコマンドと、一時保存されたペイロードを置くコマンドを、転送処理を行うH/Wに出力する。
以上の処理手順が実行されることにより、複数の仮パケットが一括してストリームバッファに転送された後、ペイロードが設定される。
[Step S8] The command for placing the header created in step S7 and the command for placing the temporarily stored payload are output to the H / W that performs the transfer process.
By executing the above processing procedure, a plurality of temporary packets are collectively transferred to the stream buffer, and then a payload is set.

次に、仮パケット作成処理について説明する。図7は、本発明の実施の形態の仮パケット作成処理の手順を示したフローチャートである。
[ステップS11] オーディオパケットを作成するかどうか判断する。オーディオパケットを作成しない場合、処理をステップS17へ進める。
Next, the temporary packet creation process will be described. FIG. 7 is a flowchart illustrating a procedure of temporary packet creation processing according to the embodiment of this invention.
[Step S11] It is determined whether to create an audio packet. If an audio packet is not created, the process proceeds to step S17.

[ステップS12] オーディオパケットを作成する場合、まずTSヘッダを作成し、仮パケットのヘッダ部データ格納領域に設定する。
[ステップS13] 続いて、フレーム(ESの単位であるアクセスユニット)先頭であるかどうかを判断する。先頭でない場合、処理をステップS15へ進める。
[Step S12] When creating an audio packet, a TS header is first created and set in the header data storage area of the temporary packet.
[Step S13] Subsequently, it is determined whether or not it is the head of the frame (an access unit that is a unit of ES). If not, the process proceeds to step S15.

[ステップS14] フレームの先頭である場合、PESヘッダを作成し、仮パケットのヘッダ部データ格納領域のTSヘッダに続けて設定する。
[ステップS15] 空白のペイロードを作成し、仮パケットを生成する。空白のペイロードの作成は、その領域をバッファ上に確保することにより行う。
[Step S14] If it is the head of the frame, a PES header is created and set following the TS header in the header part data storage area of the temporary packet.
[Step S15] A blank payload is created and a temporary packet is generated. A blank payload is created by securing the area on the buffer.

[ステップS16] 空白のペイロードに設定されるESのオーディオデータをストリームバッファ上のペイロードに置くためのペイロード作成コマンドを作成し、一時保存する。   [Step S16] A payload creation command for placing the ES audio data set in the blank payload in the payload on the stream buffer is created and temporarily stored.

以上の手順により、オーディオの仮パケットが作成される。
[ステップS17] オーディオパケットを作成しない場合、ビデオパケットを作成するかどうかを判断する。ビデオパケットを作成しない場合、処理を終了する。
Through the above procedure, a temporary audio packet is created.
[Step S17] When an audio packet is not created, it is determined whether a video packet is created. If no video packet is created, the process ends.

[ステップS18] ビデオパケットを作成する場合、まずTSヘッダを作成し、仮パケットのヘッダ部データ格納領域に設定する。
[ステップS19] 続いて、フレーム先頭であるかどうかを判断する。先頭でない場合、処理をステップS21へ進める。
[Step S18] When creating a video packet, a TS header is first created and set in the header part data storage area of the temporary packet.
[Step S19] Subsequently, it is determined whether or not it is the top of the frame. If not, the process proceeds to step S21.

[ステップS20] フレームの先頭である場合、PESヘッダを作成し、仮パケットのヘッダ部データ格納領域のTSヘッダに続けて設定する。
[ステップS21] 空白のペイロードを作成し、仮パケットを作成する。空白のペイロードの作成は、その領域をバッファ上に確保することにより行う。
[Step S20] If it is the head of the frame, a PES header is created and set following the TS header in the header part data storage area of the temporary packet.
[Step S21] A blank payload is created to create a temporary packet. A blank payload is created by securing the area on the buffer.

[ステップS22] 空白のペイロードに設定されるESのビデオデータをストリームバッファ上のペイロードに置くためのペイロード作成コマンドを作成し、一時保存する。
以上の手順により、ビデオの仮パケットが作成される。
[Step S22] A payload creation command for placing the ES video data set in the blank payload in the payload on the stream buffer is created and temporarily stored.
A video temporary packet is created by the above procedure.

このように、仮パケット作成処理では、ヘッダ部と空白のペイロードで構成される仮パケットが作成され、バッファに格納される。この仮パケットの作成が1処理単位分終了すると、一括の転送処理が行われる。   Thus, in the temporary packet creation process, a temporary packet composed of a header portion and a blank payload is created and stored in the buffer. When the provisional packet creation is completed for one processing unit, batch transfer processing is performed.

上記の説明の多重化パケット生成装置における多重化パケット生成方法によれば、NP個の多重化パケットのヘッダ部を1つのコマンドでストリームバッファに転送することができる。この結果、転送処理を行うハードウェアが処理するコマンド数は、パケット数をNP個とすると、NP+1となる。従来の多重化パケット生成方法では、NP個のパケット数の場合、2NPのコマンドを発行しなければならなかったので、コマンド数を(NP+1)/2NP、すなわち約半分に削減することができる。この結果、ハードウェアがコマンドを解釈するオーバーヘッドを少なくすることが可能となり、多重化処理の高速化を図ることができる。特に、パケット数が非常に多く、小さなデータ単位で切替えるためオーバーヘッドが問題となるTSに好適であり、TS多重化処理の高速化が実現できる。   According to the multiplexed packet generating method in the multiplexed packet generating apparatus described above, the header portion of NP multiplexed packets can be transferred to the stream buffer with one command. As a result, the number of commands processed by hardware that performs transfer processing is NP + 1 when the number of packets is NP. In the conventional multiplexed packet generation method, in the case of the number of NP packets, 2NP commands have to be issued, so the number of commands can be reduced to (NP + 1) / 2NP, that is, approximately half. As a result, it is possible to reduce the overhead for interpreting commands by hardware, and it is possible to increase the speed of the multiplexing process. Particularly, it is suitable for a TS that has a very large number of packets and is switched in a small data unit, and thus overhead is a problem, and it is possible to increase the speed of TS multiplexing processing.

実施の形態に適用される発明の概念図である。It is a conceptual diagram of the invention applied to embodiment. 本発明の実施の形態の多重化パケット生成装置の構成を示したブロック図である。It is the block diagram which showed the structure of the multiplexed packet production | generation apparatus of embodiment of this invention. 本発明の実施の形態の多重化パケット生成処理によるストリームバッファ上の多重化パケットの状態の一例を示した図である(ヘッダを置くコマンド実行後)。It is the figure which showed an example of the state of the multiplexed packet on the stream buffer by the multiplexed packet production | generation process of embodiment of this invention (after execution of the command which puts a header). 本発明の実施の形態の多重化パケット生成処理によるストリームバッファ上の多重化パケットの状態の一例を示した図である(ペイロードを置くコマンド実行後)。It is the figure which showed an example of the state of the multiplexed packet on the stream buffer by the multiplexed packet production | generation process of embodiment of this invention (after the command which puts a payload). 本発明の実施の形態の多重化パケット生成処理によるストリームバッファ上の多重化パケットの状態の一例を示した図である(次のペイロードを置くコマンド実行後)。It is the figure which showed an example of the state of the multiplexed packet on a stream buffer by the multiplexed packet production | generation process of embodiment of this invention (after execution of the command which puts the next payload). 本発明の実施の形態の多重化パケット生成方法の手順を示したフローチャートである。It is the flowchart which showed the procedure of the multiplexed packet production | generation method of embodiment of this invention. 本発明の実施の形態の仮パケット作成処理の手順を示したフローチャートである。It is the flowchart which showed the procedure of the temporary packet creation process of embodiment of this invention. 従来の多重化パケット生成処理の手順を示したフローチャートである。It is the flowchart which showed the procedure of the conventional multiplexed packet production | generation process. 従来の多重化パケット生成処理の手順によるパケット生成の一例を示した図である。It is the figure which showed an example of the packet generation by the procedure of the conventional multiplexed packet generation process.

符号の説明Explanation of symbols

1……多重化制御部、2……多重化処理部、3……ストリームバッファ、10……多重化部(S/W)、11……スケジューリング手段、12……仮パケット作成手段、13……命令群記憶手段、20……多重化部(H/W)、21……転送手段、22……仮パケット記憶手段、40……ビデオエンコーダ、50……オーディオエンコーダ
DESCRIPTION OF SYMBOLS 1 ... Multiplexing control part, 2 ... Multiplexing process part, 3 ... Stream buffer, 10 ... Multiplexing part (S / W), 11 ... Scheduling means, 12 ... Temporary packet preparation means, 13 ... ... instruction group storage means, 20 ... multiplexing unit (H / W), 21 ... transfer means, 22 ... temporary packet storage means, 40 ... video encoder, 50 ... audio encoder

Claims (5)

順次バッファに格納されるエレメンタリーストリームから少なくともヘッダ部と情報部を備える多重化パケットを生成してストリームバッファに設定する多重化パケット生成装置において、
前記ストリームバッファに転送する仮パケットを一時格納する仮パケット記憶手段と、データ転送命令に従って、指示されたデータ転送元領域のデータをデータ転送先領域へ転送する転送手段と、を有する多重化処理部と、
前記エレメンタリーストリームのデータの転送を指示するデータ転送命令を一時格納する命令群記憶手段と、アクセス単位ごとに前記エレメンタリーストリームを解析し、ヘッダ部データを設定し、前記エレメンタリーストリームの解析結果に基づき、前記ヘッダ部データに続けて前記情報部のデータを格納する領域を確保した仮パケットを作成して前記仮パケット記憶手段に格納し、前記情報部に設定される前記エレメンタリーストリームのデータを前記ストリームバッファの指定領域に転送するデータ転送命令を作成して前記命令群記憶手段に格納する仮パケット作成手段と、前記仮パケット作成手段により所定の数の前記仮パケットが作成されたら、前記仮パケット記憶手段に格納された前記仮パケットを一括して前記ストリームバッファへ転送するデータ転送命令と、前記命令群記憶手段に格納された前記データ転送命令を前記転送手段に出力するスケジューリング手段と、を有する多重化制御部と、
を具備することを特徴とする多重化パケット生成装置。
In a multiplexed packet generation device that generates a multiplexed packet including at least a header part and an information part from an elementary stream that is sequentially stored in a buffer, and sets the multiplexed packet in the stream buffer,
Multiplexing processing unit comprising: temporary packet storage means for temporarily storing temporary packets to be transferred to the stream buffer; and transfer means for transferring data in a designated data transfer source area to a data transfer destination area in accordance with a data transfer command When,
Instruction group storage means for temporarily storing data transfer instructions for instructing transfer of data of the elementary stream, analysis of the elementary stream for each access unit, setting of header part data, and analysis result of the elementary stream Based on the data of the elementary stream set in the information part by creating a temporary packet that secures an area for storing the data of the information part following the header part data and storing it in the temporary packet storage means A temporary packet creating means for creating a data transfer instruction for transferring the data to the designated area of the stream buffer and storing it in the instruction group storage means, and when a predetermined number of the temporary packets are created by the temporary packet creating means, the stream back collectively the temporary packet stored in the temporary packet storage means A data transfer instruction to be transferred to § the multiplexing control unit having, a scheduling unit that outputted the data transfer instruction stored in the instruction group storage to the transfer means,
A multiplexed packet generation apparatus comprising:
前記多重化処理部の前記転送手段は、前記データ転送命令をキューとして登録するキュー用バッファを備え、前記キュー用バッファに書き込まれた前記データ転送命令を順番に従って処理し、
前記多重化制御部の前記スケジューリング手段は、前記仮パケット記憶手段の格納データの前記データ転送命令と前記命令群記憶手段に格納された前記データ転送命令を前記キュー用バッファに登録する、
ことを特徴とする請求項1記載の多重化パケット生成装置。
The transfer means of the multiplexing processing unit includes a queue buffer for registering the data transfer instruction as a queue, and processes the data transfer instructions written in the queue buffer in order,
The scheduling means of the multiplexing control unit registers the data transfer instruction of the data stored in the temporary packet storage means and the data transfer instruction stored in the instruction group storage means in the queue buffer;
The multiplexed packet generation apparatus according to claim 1, wherein:
前記多重化処理部の前記転送手段は、前記データ転送命令を解釈し、前記データ転送命令によって指示されたデータ転送元装置からデータ転送先装置へ前記多重化制御部を介さずに直接データを転送することを特徴とする請求項1記載の多重化パケット生成装置。 The transfer means of the multiplexing processing unit interprets the data transfer command and transfers data directly from the data transfer source device designated by the data transfer command to the data transfer destination device without passing through the multiplexing control unit. multiplexed packet generating apparatus according to claim 1, characterized in that. 前記エレメンタリーストリームは、エンコーダでMPEG2(Moving Picture Experts Group 2)の規定に基づいて、ビデオやオーディオのベースバンド信号を符号化して生成されており、
前記多重化制御部の前記仮パケット作成手段は、MPEG2の規定に基づいて、PES(Packetized Elementary Stream)ヘッダ部、TS(Transport Stream)ヘッダ部およびアダプテーションフィールド部の各データを設定し、ペイロード部を空白にした前記仮パケットを前記仮パケット記憶手段に格納し、前記ペイロード部に設定される前記エレメンタリーストリームのデータを前記ストリームバッファに転送するデータ転送命令を作成して前記命令群記憶手段に格納する、
ことを特徴とする請求項1記載の多重化パケット生成装置。
The elementary stream is generated by encoding a video or audio baseband signal based on the MPEG2 (Moving Picture Experts Group 2) standard by an encoder.
The provisional packet creation means of the multiplexing control unit sets each data of a PES (Packetized Elementary Stream) header part, a TS (Transport Stream) header part, and an adaptation field part based on MPEG2 regulations, and sets a payload part. The temporary packet that has been made blank is stored in the temporary packet storage means, and a data transfer instruction for transferring the elementary stream data set in the payload portion to the stream buffer is created and stored in the instruction group storage means To
The multiplexed packet generation apparatus according to claim 1, wherein:
順次バッファに格納されるエレメンタリーストリームから少なくともヘッダ部と情報部を備える多重化パケットを生成してストリームバッファに設定する多重化パケット生成方法において、  In a multiplexed packet generation method for generating a multiplexed packet including at least a header part and an information part from an elementary stream sequentially stored in a buffer and setting the packet in a stream buffer,
多重化制御部の仮パケット作成手段が、アクセス単位ごとに前記エレメンタリーストリームを解析し、ヘッダ部データを設定し、前記エレメンタリーストリームの解析結果に基づき、前記ヘッダ部データに続けて前記情報部のデータを格納する領域を確保した仮パケットを作成して仮パケット記憶手段に格納し、前記情報部に設定される前記エレメンタリーストリームのデータを格納する前記ストリームバッファの指定領域に転送するデータ転送命令を作成して命令群記憶手段に格納し、  Temporary packet creation means of the multiplexing control unit analyzes the elementary stream for each access unit, sets header part data, and based on the analysis result of the elementary stream, the information part A data transfer that creates a temporary packet that secures an area for storing the data, stores the temporary packet in the temporary packet storage means, and transfers the data to the designated area of the stream buffer that stores the data of the elementary stream set in the information section Create an instruction and store it in the instruction group storage means,
前記多重化制御部のスケジューリング手段が、前記仮パケット作成手段によって所定の数の前記仮パケットが作成されたら、前記仮パケット記憶手段に格納された前記仮パケットを一括して前記ストリームバッファへ転送するデータ転送命令と、前記命令群記憶手段に格納された前記データ転送命令を出力し、  The scheduling unit of the multiplexing control unit collectively transfers the temporary packets stored in the temporary packet storage unit to the stream buffer when the predetermined number of the temporary packets are generated by the temporary packet generation unit. Outputting a data transfer instruction and the data transfer instruction stored in the instruction group storage means;
多重化処理部の転送手段が、スケジューリング手段によって出力された前記データ転送命令を取得し、前記データ転送命令に従って前記仮パケット記憶手段に格納された前記仮パケットを前記ストリームバッファに転送し、前記命令群記憶手段の前記データ転送命令に従って、指示された前記多重化パケットの情報部に相当する前記ストリームバッファの指定領域に前記エレメンタリーストリームを転送する、  The transfer unit of the multiplexing processing unit acquires the data transfer command output by the scheduling unit, transfers the temporary packet stored in the temporary packet storage unit according to the data transfer command to the stream buffer, and In accordance with the data transfer command of the group storage means, the elementary stream is transferred to the designated area of the stream buffer corresponding to the information portion of the instructed multiplexed packet.
ことを特徴とする多重化パケット生成方法。  A multiplexed packet generation method characterized by the above.
JP2004300381A 2004-10-14 2004-10-14 Multiplexed packet generating apparatus and multiplexed packet generating method Expired - Fee Related JP4419785B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004300381A JP4419785B2 (en) 2004-10-14 2004-10-14 Multiplexed packet generating apparatus and multiplexed packet generating method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004300381A JP4419785B2 (en) 2004-10-14 2004-10-14 Multiplexed packet generating apparatus and multiplexed packet generating method

Publications (2)

Publication Number Publication Date
JP2006115199A JP2006115199A (en) 2006-04-27
JP4419785B2 true JP4419785B2 (en) 2010-02-24

Family

ID=36383336

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004300381A Expired - Fee Related JP4419785B2 (en) 2004-10-14 2004-10-14 Multiplexed packet generating apparatus and multiplexed packet generating method

Country Status (1)

Country Link
JP (1) JP4419785B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5224502B2 (en) * 2007-09-25 2013-07-03 イビデン株式会社 Biodegradation treatment method
JP7027145B2 (en) * 2017-12-08 2022-03-01 キヤノン株式会社 Communication equipment, control methods and programs for communication equipment

Also Published As

Publication number Publication date
JP2006115199A (en) 2006-04-27

Similar Documents

Publication Publication Date Title
US7680962B2 (en) Stream processor and information processing apparatus
US6954806B2 (en) Data transfer apparatus and method
JP2006259898A (en) I/o controller, signal processing system and data transferring method
EP1770519A2 (en) Information processing apparatus and its data processing method capable of forming descriptor queue
JP2011049764A (en) Data compression and decompression device
US6597810B1 (en) Image processor
JP4419785B2 (en) Multiplexed packet generating apparatus and multiplexed packet generating method
JP4747077B2 (en) Arithmetic circuit
US20100281234A1 (en) Interleaved multi-threaded vector processor
JP2006215886A (en) Signal processor, signal processing system and signal processing method
US20050080784A1 (en) Data processing system
JP5055497B2 (en) Data processing device
US9380260B2 (en) Multichannel video port interface using no external memory
JP4045823B2 (en) Image processing apparatus and image processing method
JP2013196509A (en) Information processor and control method of the same
US8868674B2 (en) Streaming and bulk data transfer transformation with context switching
US20100104204A1 (en) Encoding device, decoding device, image forming device, method, and program storage medium
EP1388232B1 (en) Encryption/decryption engine for multiple data streams
JP3874225B2 (en) Data processing apparatus and data processing method
JP2001103116A (en) Stream generator
CN112000371A (en) Vector processor for heterogeneous data streams
US20100281236A1 (en) Apparatus and method for transferring data within a vector processor
JP3674720B2 (en) Data transfer method in parallel computer
JP4259328B2 (en) Image processing apparatus, printer, and method for reading stored data
JP2001345770A (en) Multiplex packet generation system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070419

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090427

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090526

A521 Written amendment

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

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

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

Free format text: PAYMENT UNTIL: 20121211

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20121211

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees