JP2007165962A - Stream data processing device - Google Patents

Stream data processing device Download PDF

Info

Publication number
JP2007165962A
JP2007165962A JP2005355829A JP2005355829A JP2007165962A JP 2007165962 A JP2007165962 A JP 2007165962A JP 2005355829 A JP2005355829 A JP 2005355829A JP 2005355829 A JP2005355829 A JP 2005355829A JP 2007165962 A JP2007165962 A JP 2007165962A
Authority
JP
Japan
Prior art keywords
data
processing
time
queue
unit
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.)
Pending
Application number
JP2005355829A
Other languages
Japanese (ja)
Inventor
Takahisa Fujita
隆久 藤田
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2005355829A priority Critical patent/JP2007165962A/en
Publication of JP2007165962A publication Critical patent/JP2007165962A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a stream data processing device capable of effectively utilizing hardware resources in stream data processing for executing multiple steps of processing. <P>SOLUTION: A data discard determining means 104 obtains a prediction presentation enable time to be presented as a video image or a sound for data to be processed in each item of processing in the multiple steps of processing of the stream data processing, compares the prediction presentation enable time with a time stamp, and discards the data determined to be not in time of presentation schedule. Thus, the hardware resources in the stream data processing can be effectively utilized. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、映像や音声を提示するためのストリームデータ処理装置に関し、より特定的には、提示予定時刻に提示が間に合うか否かを判定し、間に合わないものを破棄することにより、映像や音声の提示に必要なハードウェア資源の有効活用が可能であるストリームデータ処理装置に関する。   The present invention relates to a stream data processing apparatus for presenting video and audio. More specifically, the present invention determines whether or not presentation is in time for the scheduled presentation time, and discards the video and audio by discarding those that are not in time. The present invention relates to a stream data processing apparatus that can effectively use hardware resources necessary for presenting a message.

映像や音声、音楽コンテンツなどのストリームデータに含まれるコンテンツは提示時間のリアルタイム性が重要視されるので、ストリームデータ中に、ストリームデータのどの位置がいつ提示されるべきなのかを指示する予定提示時刻情報(以降、「タイムスタンプ」と呼ぶ)が含まれる。例えばタイムスタンプは、ストリームデータの再生開始時刻からの相対時刻で表現される場合や、GPSや放送局、基地局などから送出される基準時刻情報に基づく絶対時間で表現される場合がある。以降、ストリームデータを映像や音声として提示するための処理を「ストリームデータ処理」と呼ぶ。   For content included in stream data such as video, audio, and music content, the real-time nature of presentation time is regarded as important, so scheduled presentation that indicates when and where in the stream data should be presented in the stream data Time information (hereinafter referred to as “time stamp”) is included. For example, the time stamp may be expressed as a relative time from the reproduction start time of the stream data, or may be expressed as an absolute time based on reference time information transmitted from a GPS, a broadcast station, a base station, or the like. Hereinafter, processing for presenting stream data as video or audio is referred to as “stream data processing”.

一般に、ストリームデータを映像や音声として提示するシステム(以降、「ストリームデータ処理装置」)においては、ストリームデータを映像や音声として提示するためにストリームデータに対するデコード・エンコード・変換処理や出力タイミング制御処理をおこなう。デコード・エンコード・変換処理の例は、H.264映像データからYUV映像データへの変換処理や、AAC(Advanced Audio Codec)音声データからPCM(Pulse Code Modulation)音声データへの変換処理である。ストリームデータの種類によっては、1つまたは2つ以上のデコード・エンコード・変換処理をおこなう場合がある。例えばMPEG2 TSのPES(Packetized Elementary Stream)形式で表現されたH.264データであり、この場合はPESデータからH.264映像データへの変換処理と、H.264映像データからYUV映像データへの変換処理がおこなわれる。出力タイミング制御処理はストリームデータに付与されたタイムスタンプに基づき、指定された時刻に指定されたデータを提示するための処理をおこなう。   In general, in a system that presents stream data as video or audio (hereinafter referred to as “stream data processing device”), in order to present the stream data as video or audio, decoding / encoding / conversion processing or output timing control processing for the stream data is performed. To do. Examples of decoding, encoding, and conversion processing are described in H.264. This is conversion processing from H.264 video data to YUV video data, and conversion processing from AAC (Advanced Audio Codec) audio data to PCM (Pulse Code Modulation) audio data. Depending on the type of stream data, one or more decoding / encoding / conversion processes may be performed. For example, H.264 expressed in the PES (Packetized Elementary Stream) format of MPEG2 TS. H.264 data. In this case, from the PES data, the H.264 data H.264 video data conversion processing; Conversion processing from H.264 video data to YUV video data is performed. The output timing control process performs a process for presenting the designated data at the designated time based on the time stamp given to the stream data.

一般にストリームデータ処理装置においては、ストリームデータに対して前記多段階の各処理(デコード・エンコード・変換処理および出力タイミング制御処理)をパイプライン的に並行処理させることが多い。ストリームデータを定められた単位に分割し、各分割単位のデータに対し順次多段階の各処理をおこなう。例えば、あるストリームデータを2つの分割単位1と分割単位2に分割する。分割単位2は分割単位1よりもストリームデータ中で後ろに存在し、分割単位2に付与されたタイムスタンプは分割単位1に付与されたものより後の提示時刻を指示しているものとする。このとき、分割単位1のデコード・エンコード・変換処理をおこなったあと、分割単位1の出力タイミング制御処理と分割単位2のデコード・エンコード・変換処理を並行しておこなった後、分割単位2の出力タイミング制御処理をおこなう。また2つ以上のデコード・エンコード・変換処理がある場合(順にデコード処理1、デコード処理2とする)、分割単位1に対するデコード処理1をおこなった後、分割単位1に対するデコード処理2と分割単位2に対するデコード処理1を並行におこなう。このように各処理段階を並行におこなう場合は、各処理の実行に必要な時間のばらつきや、ストリームデータ処理装置のハードウェア資源の使用状況や各分割単位の内容の違いによる処理時間の揺れに対応するため、分割単位に対するある処理をおこなった後、次の処理ができるようになるまでの一時的な保存領域を用意する。以降、分割単位を「データ」と呼び、一時的な保存領域を「データキュー」と呼び、ストリームデータ処理はこの多段階の並行処理のことを意味することにする。   In general, in a stream data processing apparatus, the multi-stage processing (decoding / encoding / conversion processing and output timing control processing) is often processed in parallel in a pipeline manner with respect to stream data. The stream data is divided into predetermined units, and multi-stage processing is sequentially performed on the data of each division unit. For example, certain stream data is divided into two division units 1 and 2. It is assumed that the division unit 2 exists after the division unit 1 in the stream data, and the time stamp given to the division unit 2 indicates a presentation time later than that given to the division unit 1. At this time, after performing decoding / encoding / conversion processing of division unit 1, output timing control processing of division unit 1 and decoding / encoding / conversion processing of division unit 2 are performed in parallel, and then output of division unit 2 is performed. Perform timing control processing. When there are two or more decoding / encoding / conversion processes (in order, decoding process 1 and decoding process 2), after performing decoding process 1 on division unit 1, decoding process 2 and division unit 2 on division unit 1 are performed. The decoding process 1 is performed in parallel. In this way, when each processing stage is performed in parallel, the processing time fluctuates due to variations in the time required to execute each processing, the use status of the hardware resources of the stream data processing device, and the content of each division unit. In order to cope with this, a temporary storage area is prepared after a certain process is performed on the division unit until the next process can be performed. Hereinafter, the division unit is referred to as “data”, the temporary storage area is referred to as “data queue”, and the stream data processing means this multi-stage parallel processing.

従来、ストリームデータ処理装置ではリアルタイム性を維持するため、提示タイミング制御装置に対応するデータキューに存在するデータがタイムスタンプに記述された時間に間に合わなかった場合(アンダーフロー)、ブルースクリーンや直前の映像を表示したりそのデータを破棄したりしていた。ここで、データを破棄する場合、データの破棄判定はアンダーフロー発生時に行うため、それまでのエンコード、デコード、変換処理などの各処理は全てのデータに行われており、破棄されたデータに関してはエンコード、デコード、変換処理などの各処理を行うためのハードウェア資源が無駄に使用され、ハードウェア資源を有効に活用していなかった。   Conventionally, in order to maintain the real-time property in the stream data processing device, when the data existing in the data queue corresponding to the presentation timing control device is not in time for the time described in the time stamp (underflow), the blue screen or immediately before The video was displayed and the data was discarded. Here, when discarding data, because the data discard determination is performed when an underflow occurs, each process such as encoding, decoding, conversion processing so far is performed on all data, and regarding the discarded data Hardware resources for performing each process such as encoding, decoding, and conversion processing are wasted, and hardware resources are not effectively used.

そこで、特許文献1によれば、動画像信号の部分領域毎の動画像符号化データを復号化するものであり、入力符号化データビットストリームからPTS(再生出力時刻管理情報)と当該ビットストリームから分離の動画像符号化データのSTC(再生基準時刻)とを抽出し、両時刻情報を比較して、復号化処理に余裕があれば通常の処理をし、復号化処理に余裕がなければ処理を省略することによりハードウェア資源を有効に活用する方法が開示されている。
特開2004−289745号公報
Therefore, according to Patent Document 1, moving image encoded data for each partial region of a moving image signal is decoded. From an input encoded data bit stream, PTS (reproduction output time management information) and the bit stream are used. The STC (reproduction reference time) of the separated moving image encoded data is extracted, and both time information are compared. If there is a margin in the decoding process, normal processing is performed. If there is no margin in the decoding process, processing is performed. A method for effectively utilizing hardware resources by omitting the symbol is disclosed.
JP 2004-289745 A

しかしながら、従来の方法では、データに付与されている時刻情報とある閾値によってそのデータの復号化処理を行うか否かを判定しているため、ストリームデータ処理の各処理段階毎の演算量は考慮されておらず、ハードウェア資源の使用状況やデータの内容に応じた柔軟な処理が行われているとは限らなかった。   However, in the conventional method, it is determined whether or not the data is to be decrypted based on the time information given to the data and a certain threshold value. Therefore, the calculation amount at each processing stage of the stream data processing is considered. However, the flexible processing according to the usage status of hardware resources and the contents of data is not always performed.

本発明は上記従来の問題点を解決するものであり、復号化処理の各処理の演算量を考慮し、データを処理する毎に当該データに対して、復号化処理の各処理が完了する予測提示可能時刻を求めることで、当該データに付与されたタイムスタンプに基づく提示時刻に間に合わないと判断したデータを破棄する。これにより本発明は、ハードウェア資源の使用状況やデータの内容に応じて、ハードウェア資源を有効に活用することができるストリームデータ処理装置の提供を目的とするものである。   The present invention solves the above-described conventional problems, and takes into account the amount of calculation of each process of the decoding process, and predicts that each process of the decoding process is completed for the data every time the data is processed By obtaining the presentable time, data determined to be in time for the presentation time based on the time stamp assigned to the data is discarded. Accordingly, an object of the present invention is to provide a stream data processing apparatus that can effectively use hardware resources in accordance with the use status of hardware resources and the contents of data.

上記目的を達成するために、本発明のストリームデータ処理装置は、ストリームデータに対して多段階の処理を実行するストリームデータ処理装置であって、前記ストリームデータに含まれるデータは、提示予定時刻をタイムスタンプとして含んでおり、前記データに対して前記多段階の処理に含まれるある段階の処理を実行し、処理後のデータを出力するデータ処理手段と、前記データ処理手段から出力されたデータを一時的に保存するデータキューと、前記データキューに対してデータの書き込みおよび読み出しを行い、前記データ処理手段から出力されたデータを、次の段階のデータ処理手段に通知するキュー管理手段と、前記データ処理手段がデータを処理するのにかかる処理時間を、前記データ処理手段ごとに保持する処理時間管理手段と、前記キュー管理手段が前記データキューに対するデータの書き込みまたは読み出しを行なう際に、前記処理対象のデータに対する前記多段階の処理を完了する予測時刻を前記処理時間管理手段が保持する処理時間を用いて予測提示可能時刻として求め、前記処理対象のデータの前記予測提示可能時刻とタイムスタンプとに基づいて、前記処理対象のデータを破棄するか否かを判定するデータ破棄判定手段と、前記データ破棄判定手段の判定結果に基づいて、前記処理対象のデータを破棄するデータ破棄手段を備えることを特徴とする。   In order to achieve the above object, a stream data processing apparatus of the present invention is a stream data processing apparatus that performs multi-stage processing on stream data, and the data included in the stream data has a scheduled presentation time. A data processing unit that includes a time stamp, executes a stage of processing included in the multi-stage processing on the data, and outputs the processed data; and the data output from the data processing unit A data queue to be temporarily stored, a queue management unit for writing and reading data to and from the data queue, and notifying the data output from the data processing unit to the data processing unit of the next stage; A processing time tube for holding the processing time required for the data processing means to process the data for each data processing means. And a processing time for the processing time management means to hold an estimated time to complete the multi-stage processing for the data to be processed when the queue management means writes or reads data to or from the data queue. A data discard determination means for determining whether to discard the data to be processed based on the predicted presentable time and a time stamp of the processing target data; Data discarding means for discarding the data to be processed based on the determination result of the discard determination means is provided.

本発明のストリームデータ処理装置は、多段階処理の各処理時に、例えば、エンコード、デコード、変換処理などの各処理時に、そのデータに対してその後の全ての処理が完了する予測提示可能時刻を求め、そのデータの予測提示可能時刻とタイムスタンプとを比較し、提示時刻に間に合わないと判断したデータを適宜破棄することにより無駄なハードウェア資源の消費をしなくて済むという効果を奏するものである。   The stream data processing apparatus according to the present invention obtains a predicted presentable time at which all subsequent processing is completed for the data at each processing of the multi-stage processing, for example, at each processing such as encoding, decoding, and conversion processing. By comparing the predicted presentable time of the data with the time stamp and appropriately discarding the data that is determined not to be in time for the presentation time, there is an effect that unnecessary hardware resources are not consumed. .

図1は、本発明の実施の形態に係るストリームデータ処理装置101の構成の一例を示すブロック図である。   FIG. 1 is a block diagram showing an example of the configuration of a stream data processing apparatus 101 according to an embodiment of the present invention.

図1において、ストリームデータ処理装置101は、データ処理手段102、キュー管理手段103、データ破棄判定手段104、データ破棄手段105、処理時間管理手段106、データキュー107、時刻管理手段108を備える。109は入力装置、110は出力装置である。ここで、ストリームデータとは、デジタルデータ列によって表現される映像や音声コンテンツをいう。また、動画や音声以外にも字幕やロゴ等、提示時刻のリアルタイム性が重要となる文字列や静止画等その他コンテンツもストリームデータに含む。さらに、各ストリームデータを多重化し、ひとつのデジタルデータ列として表現されたもの、たとえば動画や音声、字幕データを1つのデジタルデータ列として格納するMPEG2やMPEG4 TS(Transport Stream)といったものもストリームデータに含む。   1, the stream data processing apparatus 101 includes a data processing unit 102, a queue management unit 103, a data discard determination unit 104, a data discard unit 105, a processing time management unit 106, a data queue 107, and a time management unit 108. Reference numeral 109 denotes an input device, and 110 denotes an output device. Here, the stream data refers to video and audio content expressed by a digital data string. In addition to video and audio, the stream data also includes other content such as subtitles and logos, such as character strings and still images in which the real time property of the presentation time is important. Furthermore, the stream data is multiplexed and expressed as one digital data string, for example, MPEG2 or MPEG4 TS (Transport Stream) that stores moving picture, audio, and caption data as one digital data string. Including.

データ処理手段102は、例えばソフトウェアまたは少なくとも1つ以上のハードウェア、またはソフトウェアと少なくとも1つ以上のハードウェアとの組み合わせによって実現される。データ処理手段102はストリームデータ処理装置101に1個以上存在し、処理をおこなうストリームデータの種類に応じて個数は変化する。データ処理手段102はストリームデータに対する処理順序で識別され、あるストリームデータ処理においてn個のデータ処理手段102がある場合、処理順にデータ処理手段1、データ処理手段2、…、データ処理手段nと識別される。各データ処理手段102は、データに対するデコード、エンコード、変換処理、または出力タイミング制御処理などをおこなう。デコード、エンコード、変換処理を担当するデータ処理手段102の例としてH.264デコーダが挙げられる。データ処理手段102はキュー管理手段103からH.264データを受け取り、H.264デコード処理をおこない、YUVデータに変換したデータをキュー管理手段103に出力する。データ処理手段102が処理後のデータを出力する際、出力として自分自身を示す情報を付加する。データ処理手段1の例として、PESデコーダが挙げられ、入力装置109として例えばトランスポートデコーダからPESデータをストリームデータとして入力し、PESデータを解析し、PES中のES(Elementary Stream)データに、PES中のPTS(Presentation Time Stamp)をタイムスタンプとして付加し、キュー管理手段103に処理後のデータを出力する。出力タイミング制御処理を担当するデータ処理手段の例としては、映像出力装置制御処理が挙げられ、キュー管理手段105がデータキュー107から読み出したYUVデータを取得し、YUVデータをデータに付加されたタイムスタンプがあらわす時刻に出力装置110に出力する。ここで出力装置110は例えば液晶ディスプレイである。   The data processing means 102 is realized by, for example, software or at least one or more hardware, or a combination of software and at least one or more hardware. One or more data processing means 102 exist in the stream data processing apparatus 101, and the number varies depending on the type of stream data to be processed. The data processing means 102 is identified by the processing order for the stream data. When there are n data processing means 102 in a certain stream data processing, the data processing means 102 is identified as the data processing means 1, the data processing means 2,. Is done. Each data processing unit 102 performs decoding, encoding, conversion processing, output timing control processing, or the like on data. As an example of the data processing means 102 in charge of decoding, encoding, and conversion processing, H.264 is used. H.264 decoder. The data processing means 102 sends the queue management means 103 to the H.264 data. H.264 data is received. The H.264 decoding process is performed, and the data converted into YUV data is output to the queue management means 103. When the data processing unit 102 outputs the processed data, information indicating itself is added as an output. An example of the data processing means 1 is a PES decoder. As the input device 109, for example, PES data is input as stream data from a transport decoder, the PES data is analyzed, and ES (Elementary Stream) data in the PES is converted into PES data. A PTS (Presentation Time Stamp) is added as a time stamp, and the processed data is output to the queue management unit 103. An example of data processing means in charge of output timing control processing is video output device control processing. The queue management means 105 acquires YUV data read from the data queue 107, and the time when the YUV data is added to the data. The data is output to the output device 110 at the time indicated by the stamp. Here, the output device 110 is, for example, a liquid crystal display.

キュー管理手段103は、例えばソフトウェアまたは少なくとも1つ以上のハードウェア、またはソフトウェアと少なくとも1つ以上のハードウェアとの組み合わせによって実現される。キュー管理手段103はデータ処理手段102からデータを受け取り、データ破棄判定手段にデータをストレージ(例えばSRAMやDRAMなどのメモリやハードディスク、書き込み可能光ディスク、書き込み可能DVD、フロッピー(登録商標)ディスク、SDカード等)に格納するため、データの書き込み要求を出す。データが格納されたあとはデータ送信元にデータの格納が完了した旨の情報を返す。キュー管理手段103はデータ処理手段102に付加された情報により、どのデータ処理手段102から送信されたかを識別することができ、送信元のデータ処理手段に対応するデータキュー107に格納するよう書き込み要求を出すことができる。以降、あるデータ処理手段kから送信されたデータ送信元を保持して格納するデータキュー107を「データキューk」(1≦k≦n−1)とする。すなわち、データ処理手段1から送信されたデータを書き込みする先はデータキュー1、データ処理手段2から送信されたデータを書き込みする先はデータキュー1、データ処理手段n−1から送信されたデータを書き込みする先はデータキューn−1となる。以降、あるデータキューkに格納されているデータの個数をQとする。また、キュー管理手段103はデータ処理手段102からのデータの取得要求に応じてデータ破棄判定手段にストレージに格納されたデータの読み出し要求を出す。データが読み出されたらデータ処理手段102に返す。キュー管理手段103はデータ処理手段102に付加された情報により、どのデータ処理手段102へデータを送信するかを識別することができる。あるデータ処理手段mへデータを返す際は、データキューm−1に格納されているデータのうち最初に格納されたデータをデータ処理手段mに返す(2≦m≦n)。すなわち、データ処理手段2へ送信するデータを格納しているのはデータキュー1、データ処理手段3へ送信するデータを格納しているのはデータキュー2、…、データ処理手段nへ読み出すデータを格納しているのはデータキューn−1となる。キュー管理手段103があるデータ処理手段mからデータの読み出し要求を受けた際に、対応するデータキューm−1にデータがまったく格納されていない場合、キュー管理手段103はデータキューm−1にデータが無い旨をデータ処理手段mに返す。 The queue management unit 103 is realized by, for example, software, at least one or more hardware, or a combination of software and at least one hardware. The queue management unit 103 receives data from the data processing unit 102 and stores the data in the data discard determination unit (for example, a memory such as SRAM or DRAM, a hard disk, a writable optical disk, a writable DVD, a floppy (registered trademark) disk, an SD card) Etc.), a data write request is issued. After the data is stored, information indicating that the data storage is completed is returned to the data transmission source. The queue management means 103 can identify which data processing means 102 has transmitted from the information added to the data processing means 102, and write request to store it in the data queue 107 corresponding to the data processing means of the transmission source. Can be issued. Hereinafter, the data queue 107 that holds and stores the data transmission source transmitted from a certain data processing means k is referred to as “data queue k” (1 ≦ k ≦ n−1). That is, the destination to which the data transmitted from the data processing unit 1 is written is the data queue 1, the destination to which the data transmitted from the data processing unit 2 is written is the data queue 1, and the data transmitted from the data processing unit n-1 is the destination. The writing destination is the data queue n-1. Later, the number of data stored in one data queue k and Q k. Further, the queue management unit 103 issues a request to read data stored in the storage to the data discard determination unit in response to a data acquisition request from the data processing unit 102. When the data is read, it is returned to the data processing means 102. The queue management unit 103 can identify to which data processing unit 102 the data is transmitted based on the information added to the data processing unit 102. When returning data to a certain data processing means m, the data stored first in the data queue m-1 is returned to the data processing means m (2 ≦ m ≦ n). That is, the data to be transmitted to the data processing means 2 is stored in the data queue 1, the data to be transmitted to the data processing means 3 is stored in the data queue 2,. The data queue n-1 is stored. When the queue management unit 103 receives a data read request from a certain data processing unit m, if no data is stored in the corresponding data queue m-1, the queue management unit 103 stores data in the data queue m-1. Is returned to the data processing means m.

なお、データの個数Qは、データキューkに格納されているデータの量がわかればよいのでデータキューkに格納されているデータの総サイズなどでもよい。 Note that the number of data Q k may be the total size of the data stored in the data queue k because it is sufficient to know the amount of data stored in the data queue k.

データ破棄判定手段104は例えばソフトウェアまたは少なくとも1つ以上のハードウェア、またはソフトウェアと少なくとも1つ以上のハードウェアとの組み合わせによって実現される。データ破棄判定手段104は、キュー管理手段103からデータキュー107へのデータの書き込み要求、読み込み要求が来た際、処理対象のデータに対して予測提示可能時刻を求める。予測提示可能時刻は処理時間管理手段が保持する各データ処理手段の処理時間を用いて求められる。また、データ破棄判定手段104は、処理対象のデータの予測提示可能時刻とタイムスタンプに基づいて、当該データが提示時刻に間に合うか否かを判定し、判定結果をデータ破棄手段105に通知する。   The data discard determination unit 104 is realized by, for example, software, at least one hardware, or a combination of software and at least one hardware. The data discard determination unit 104 obtains a predicted presentable time for processing target data when a request for writing or reading data from the queue management unit 103 to the data queue 107 is received. The predicted presentable time is obtained using the processing time of each data processing means held by the processing time management means. In addition, the data discard determination unit 104 determines whether the data is in time for the presentation time based on the predicted presentable time and the time stamp of the processing target data, and notifies the data discard unit 105 of the determination result.

さらに、データ破棄判定手段104は予測提示可能時刻を求める際、時刻管理手段108に現在時刻、キュー管理手段103に各データキュー107に格納されているデータの個数を問い合わせ、現在時刻とデータの個数とを用いて予測提示可能時刻を求めるとしてもよい。データ破棄判定手段104のデータ破棄判定方法に関する詳細は後述する。   Further, when the data discard determination unit 104 obtains the predicted presentable time, the time management unit 108 inquires the current time and the queue management unit 103 asks the number of data stored in each data queue 107, and the current time and the number of data. The predicted presentation time may be obtained using. Details regarding the data discard determination method of the data discard determination means 104 will be described later.

データ破棄手段105は、データ破棄判定手段104からデータの破棄通知が来た場合にはそのデータを破棄する。また、データキュー107へのデータの書き込み処理通知が来た場合にはデータキュー107にそのデータを書き込み、キュー管理手段103への読み出し要求通知が来た場合には、データキュー107からキュー管理手段103へそのデータを読み出す。   The data discard unit 105 discards the data when a data discard notification is received from the data discard determination unit 104. In addition, when a data write processing notification to the data queue 107 is received, the data is written to the data queue 107, and when a read request notification to the queue management unit 103 is received, the queue management unit from the data queue 107 The data is read to 103.

なお、データ破棄判定手段104がデータの破棄をしたり、キュー管理手段103へデータを読み出したり、データキュー107へデータを書き込みしたりするという構成にしてもよい。   The data discard determination unit 104 may discard data, read data to the queue management unit 103, or write data to the data queue 107.

処理時間管理手段106は例えばソフトウェアまたは少なくとも1つ以上のハードウェア、またはソフトウェアと少なくとも1つ以上のハードウェアとの組み合わせによって実現される。処理時間管理手段106が保持する処理時間の個数はエンコーダ、デコーダなどの処理をおこなうストリームデータの種類に応じて変化するが、データ処理手段102と同じ個数、すなわちn個の処理時間を保持する。処理時間管理手段106が保持する処理時間は各データ処理手段102と1対1で対応する。つまり、処理時間管理手段106は対応するデータ処理手段k(1≦k≦n)のデータを処理するための処理時間T(1≦k≦n)を保持する。例えば対応するデータ処理手段102がソフトウェアによって実現される場合、データ処理に対してCPU時間を100%割り当てた場合の1つのデータを処理するのにかかる最大時間をあらかじめ計測、算出しておき、処理時間として保持する。対応するデータ処理手段が少なくとも1つ以上のハードウェアによって実現される場合、データ処理に対してハードウェアが処理に要する時間の最大時間をあらかじめ計測、算出しておき、処理時間として保持する。対応するデータ処理手段がソフトウェアと少なくとも1つ以上のハードウェアとの組み合わせによって実現される場合、データ処理に対してCPU時間を100%割り当てた場合の1つのデータ処理に要するCPU時間の最大時間と1つのデータ処理に対してハードウェアが処理に要する時間の最大時間との和をあらかじめ計測、算出しておき、処理時間として保持する。また、処理時間管理手段106が保持する処理時間Tは、処理時間Tに対応するデータ処理手段kが1つのデータを処理するのにかかる最大時間をSとした場合、T=S+Sk+1+Sk+2+・・・+Sで求められる値、つまり、処理対象のデータがその後のデータ処理にかかる時間の総和を処理時間Tとして保持してもよい。また、処理時間管理手段106はデータ破棄判定手段104からの処理時間取得要求に対して、保持する処理時間を返す。処理時間管理手段106はデータ破棄判定手段104の要求に応じて処理時間を返すほかに、データ破棄判定手段104に対して定期的に処理時間を通知するようにしてもよい。この場合、処理時間の通知を受ける側は新しい通知が来るまで、それまでの最新の通知で得られた処理時間を処理時間管理手段106の処理時間として判断する。さらに、処理時間の保持の仕方としては、対応する各データ処理手段102に1つ1つ保持させてもよいし、データ処理手段102と処理時間とを対応付けて一括管理して保持させてもよい。 The processing time management means 106 is realized by, for example, software or at least one or more hardware, or a combination of software and at least one or more hardware. The number of processing times held by the processing time management means 106 changes according to the type of stream data to be processed by the encoder, decoder, etc., but holds the same number as the data processing means 102, that is, n processing times. The processing time held by the processing time management unit 106 corresponds to each data processing unit 102 on a one-to-one basis. That is, the processing time management unit 106 holds the processing time T k (1 ≦ k ≦ n) for processing the data of the corresponding data processing unit k (1 ≦ k ≦ n). For example, when the corresponding data processing means 102 is realized by software, the maximum time required to process one data when 100% of CPU time is allocated to the data processing is measured and calculated in advance. Hold as time. When the corresponding data processing means is realized by at least one or more hardware, the maximum time required for processing by the hardware for data processing is measured and calculated in advance, and stored as processing time. When the corresponding data processing means is realized by a combination of software and at least one or more hardware, the maximum CPU time required for one data processing when 100% of the CPU time is allocated to the data processing, The sum of the time required for processing by the hardware for one data processing is measured and calculated in advance, and is stored as the processing time. The processing time T k held by the processing time management means 106 is T k = S, where S k is the maximum time required for the data processing means k corresponding to the processing time T k to process one data. The value obtained by k + S k + 1 + S k + 2 +... + S n , that is, the sum of the time required for subsequent data processing of the data to be processed may be held as the processing time T k . Further, the processing time management unit 106 returns the processing time to be held in response to the processing time acquisition request from the data discard determination unit 104. In addition to returning the processing time in response to a request from the data discard determination unit 104, the processing time management unit 106 may notify the data discard determination unit 104 of the processing time periodically. In this case, the processing time notification means determines the processing time obtained by the latest notification so far as the processing time of the processing time management means 106 until a new notification is received. Furthermore, as a method of holding the processing time, each corresponding data processing unit 102 may hold each one, or the data processing unit 102 and the processing time may be associated with each other and collectively managed. Good.

時刻管理手段108は、例えばソフトウェアまたは少なくとも1つ以上のハードウェア、またはソフトウェアと少なくとも1つ以上のハードウェアとの組み合わせによって実現される。時刻管理手段108はデータ破棄判定手段104からの要求に基づき、現在時刻Tnowを要求元に返す。時刻管理手段108は現在時刻Tnowを例えば32ビットの整数で表現し、扱うストリームデータの種類によって相対時刻と絶対時刻との両方を扱えるものとする。例えば扱うストリームデータがデジタル放送の場合、時刻管理手段108は放送局から送信される基準クロック情報であるPCR(Program Clock Reference)に基づいて現在時刻Tnowを保持する。時刻管理手段108はデータ破棄判定手段104の要求に応じて現在時刻Tnowを返すほかに、データ破棄判定手段104に対して定期的に現在時刻Tnowを通知するようにしてもよい。この際、現在時刻Tnowの通知を受ける側は新しい通知が来るまで、それまでの最新の通知で得られた時刻を現在時刻Tnowとして判断する。 The time management unit 108 is realized by, for example, software or at least one or more hardware, or a combination of software and at least one or more hardware. Based on the request from the data discard determination unit 104, the time management unit 108 returns the current time Tnow to the request source. The time management means 108 expresses the current time Tnow as, for example, a 32-bit integer, and can handle both relative time and absolute time depending on the type of stream data to be handled. For example, when the stream data to be handled is digital broadcasting, the time management unit 108 holds the current time T now based on PCR (Program Clock Reference) that is reference clock information transmitted from the broadcasting station. In addition to returning the current time Tnow in response to a request from the data discard determination unit 104, the time management unit 108 may notify the data discard determination unit 104 of the current time Tnow periodically. At this time, the side receiving the notification of the current time T now until further notice, to determine the time obtained in the most recent notification of up to it as the current time T now.

図2は、本実施の形態に係るストリームデータ処理装置のデータ格納要求時の動作を示すフローチャートである。あるデータ処理手段j(1≦j≦n−1)がデータの処理を終えるとキュー管理手段103に対してデータ格納要求を出す(ステップS201)。キュー管理手段103はデータ処理手段jからデータ格納要求を受けるとデータ破棄判定手段104にデータの書き込み要求を出す(ステップS202)。データ破棄判定手段104はキュー管理手段103からデータの書き込み要求を受けると処理対象のデータに対して予測提示可能時刻を求め(ステップS203)、データの破棄判定を行う(ステップS204)。   FIG. 2 is a flowchart showing an operation at the time of a data storage request of the stream data processing apparatus according to the present embodiment. When a certain data processing means j (1 ≦ j ≦ n−1) finishes the data processing, it issues a data storage request to the queue management means 103 (step S201). When the queue management means 103 receives a data storage request from the data processing means j, it issues a data write request to the data discard determination means 104 (step S202). When the data discard determination unit 104 receives a data write request from the queue management unit 103, the data discard determination unit 104 obtains a predicted presentable time for the data to be processed (step S203), and performs a data discard determination (step S204).

ここで、ステップS203とステップS204との処理であるデータ破棄判定手段104のデータ破棄判定方法について説明する。データ破棄判定手段104ははじめに処理対象のデータに対して予測提示可能時刻を求めるため、データ処理手段jよりもあとに処理されるデータ処理手段、すなわちデータ処理手段j+1からデータ処理手段nまでの各々のデータ処理手段102に対応する処理時間を処理時間管理手段106に要求する。次にデータキューjからデータキューn−1までのデータキューに格納されているデータの個数をキュー管理手段103に要求し、さらに、現在時刻Tnowを時刻管理手段108に要求する。そして予測提示可能時刻を以下の数式(1)により求める。つまり、データ処理手段j+1からデータ処理手段nまでの各々のデータ処理手段102に対応する処理時間とデータキューに格納されているデータの個数との積の和と時刻管理手段108から得た現在時刻とを足したものをそのデータの予測提示可能時刻とする(ステップS203)。なお、予測提示可能時刻が求められるのであれば処理時間、データの個数、現在時刻を要求する順序を問わないことはいうもでもない。このような計算式を用いることにより、多段階処理の途中のあるタイミングにおける動的に変化する予測提示可能時刻を求めることが可能となり、処理が間に合うか間に合わないかをより正しく判断することができる。 Here, the data discard determination method of the data discard determination means 104, which is the processing of step S203 and step S204, will be described. The data discard determination unit 104 first obtains the predicted presentation time for the data to be processed, so that each data processing unit processed after the data processing unit j, that is, each of the data processing unit j + 1 to the data processing unit n, is processed. The processing time management unit 106 is requested for a processing time corresponding to the data processing unit 102. Next, the queue management unit 103 is requested for the number of data stored in the data queues from the data queue j to the data queue n−1, and the current time T now is requested to the time management unit 108. And the prediction presentable time is calculated | required by the following Numerical formula (1). That is, the sum of the product of the processing time corresponding to each data processing means 102 from the data processing means j + 1 to the data processing means n and the number of data stored in the data queue and the current time obtained from the time management means 108. Is added as the predicted presentable time of the data (step S203). It should be noted that the processing time, the number of data, and the order of requesting the current time are not limited as long as the predicted presentable time is obtained. By using such a calculation formula, it is possible to obtain a predictable presentation time that dynamically changes at a certain timing during multi-stage processing, and more correctly determine whether the processing is in time or not in time. .

Figure 2007165962
Figure 2007165962

ステップS204の処理では、データ破棄判定手段104が予測提示可能時刻とデータに付与されたタイムスタンプとに基づいてデータの破棄判定を行う。データ破棄判定手段104により予測提示可能時刻が当該データに付与されたタイムスタンプすなわち提示予定時刻より後であると判定された場合(ステップS204)、データ破棄手段105に当該データに対して破棄通知を出し、通知を受けたデータ破棄手段105がデータを破棄する(ステップS205)。また、データ破棄判定手段104により予測提示可能時刻が当該データに付与されたタイムスタンプすなわち提示予定時刻より後でないと判定された場合(ステップS204)、データ破棄手段105に当該データをデータキューj+1に書き込むよう通知を出し、通知を受けたデータ破棄手段105が当該データをデータキューj+1に書き込む(ステップS206)。上記のように本実施形態に係るストリームデータ処理装置はデータ処理手段102がデータの格納要求を出すと当該処理対象のデータに対してデータを破棄するか否かの処理を行う。   In the process of step S204, the data discard determination unit 104 performs a data discard determination based on the predicted presentable time and the time stamp given to the data. When it is determined by the data discarding determination unit 104 that the predicted presentable time is later than the time stamp given to the data, that is, the scheduled presentation time (step S204), the data discarding unit 105 is notified of the discarding of the data. The data discarding means 105 that received the notification discards the data (step S205). If the data discarding determination unit 104 determines that the predicted presentable time is not later than the time stamp given to the data, that is, the scheduled presentation time (step S204), the data discarding unit 105 stores the data in the data queue j + 1. A notification is sent to write, and the data discarding means 105 that has received the notification writes the data in the data queue j + 1 (step S206). As described above, when the data processing unit 102 issues a data storage request, the stream data processing apparatus according to the present embodiment performs processing for determining whether or not to discard the data to be processed.

図3は、本実施の形態に係るストリームデータ処理装置のデータ取得要求時の動作を示すフローチャートである。あるデータ処理手段h(2≦h≦n)がキュー管理手段103にデータの取得要求を出すと(ステップS301)、キュー管理手段103はデータ破棄判定手段104にデータの読み出し要求を出す(ステップS302)。データ破棄判定手段104はキュー管理手段103からデータの読み出し要求を受けるとデータ破棄手段105にデータキューh−1の最初に格納されたデータを読み出してくるよう要求し、データ破棄手段105がデータキューh−1から読み出してきたデータに対して予測提示可能時刻を求め(ステップS303)、データの破棄判定を行う(ステップS304)。   FIG. 3 is a flowchart showing the operation at the time of data acquisition request of the stream data processing apparatus according to the present embodiment. When a data processing unit h (2 ≦ h ≦ n) issues a data acquisition request to the queue management unit 103 (step S301), the queue management unit 103 issues a data read request to the data discard determination unit 104 (step S302). ). When the data discarding determination unit 104 receives a data read request from the queue management unit 103, the data discarding unit 105 requests the data discarding unit 105 to read the data stored first in the data queue h-1. A predicted presentable time is obtained for the data read from h-1 (step S303), and a data discard determination is made (step S304).

ここで、ステップS303とステップS304との処理であるデータ破棄判定手段104のデータ破棄判定方法について説明する。データ破棄判定手段104ははじめに処理対象のデータに対して予測提示可能時刻を求めるため、データ処理手段hよりもあとに処理されるデータ処理手段、すなわちデータ処理手段h+1からデータ処理手段nまでの各々のデータ処理手段102に対応する処理時間を処理時間管理手段106に要求する。次にデータキューhからデータキューn−1までのデータキューに格納されているデータの個数をキュー管理手段103に要求し、さらに、現在時刻Tnowを時刻管理手段108に要求する。そして予測提示可能時刻を以下の数式(2)により求める。つまり、データ処理手段hに対応する処理時間管理手段106が保持する処理時間時間Tと、データ処理手段h+1からデータ処理手段nまでの各々のデータ処理手段102に対応する処理時間とデータキューに格納されているデータの個数との積の和と時刻管理手段108から得た現在時刻を足したものをそのデータの予測提示可能時刻とする(ステップS303)。なお、予測提示可能時刻が求められるのであれば処理時間、データの個数、現在時刻を要求する順序を問わないことはいうもでもない。 Here, the data discard determination method of the data discard determination unit 104, which is the processing of step S303 and step S304, will be described. The data discard determination unit 104 first obtains the predicted presentation time for the data to be processed, so that each data processing unit processed after the data processing unit h, that is, each of the data processing unit h + 1 to the data processing unit n, is processed. The processing time management unit 106 is requested for a processing time corresponding to the data processing unit 102. Next, the queue management unit 103 is requested for the number of data stored in the data queues from the data queue h to the data queue n-1, and further the current time Tnow is requested to the time management unit 108. And the prediction presentable time is calculated | required by the following Numerical formula (2). That is, the processing time period T h processing time management unit 106 corresponding to the data processing means h holds, from the data processing unit h + 1 to the processing time and the data queue corresponding to each of the data processing means 102 to the data processing means n The sum of the product of the number of stored data and the current time obtained from the time management means 108 is used as the predicted presentable time of the data (step S303). It should be noted that the processing time, the number of data, and the order of requesting the current time are not limited as long as the predicted presentable time is obtained.

Figure 2007165962
Figure 2007165962

ステップS304の処理では、データ破棄判定手段104が予測提示可能時刻とデータに付与されたタイムスタンプとに基づいてデータの破棄判定を行う。データ破棄判定手段104により予測提示可能時刻が当該データに付与されたタイムスタンプすなわち提示予定時刻より後であると判定された場合(ステップS304)、データ破棄手段105に当該データに対して破棄通知を出し、通知を受けたデータ破棄手段105が当該データを破棄する(ステップS305)。また、データ破棄判定手段104により予測提示可能時刻が当該データに付与されたタイムスタンプすなわち提示予定時刻より後でないと判定された場合(ステップS304)、データ破棄手段105に当該データをキュー管理手段103に送信するよう通知を出し、データ破棄手段105がキュー管理手段103に当該データを送信する(ステップS306)。当該データを受け取ったキュー管理手段103はデータ処理手段hに当該データを送信する(ステップS307)。上記のように本実施形態に係るストリームデータ処理装置はデータ処理手段102がデータの取得要求を出すと当該処理対象のデータに対してデータを破棄するか否かの処理を行う。   In the process of step S304, the data discard determination unit 104 determines whether to discard the data based on the predicted presentable time and the time stamp given to the data. When the data discarding determination unit 104 determines that the predicted presentable time is later than the time stamp given to the data, that is, the scheduled presentation time (step S304), the data discarding unit 105 notifies the data discarding unit 105 of the discarding. The data discarding means 105 that received the notification discards the data (step S305). If the data discarding determination unit 104 determines that the predicted presentable time is not later than the time stamp given to the data, that is, the scheduled presentation time (step S304), the data discarding unit 105 stores the data in the queue management unit 103. The data discarding unit 105 transmits the data to the queue managing unit 103 (step S306). The queue management means 103 that has received the data transmits the data to the data processing means h (step S307). As described above, when the data processing unit 102 issues a data acquisition request, the stream data processing apparatus according to the present embodiment performs processing for determining whether to discard data for the processing target data.

図2では本発明の実施の形態に係るストリームデータ処理装置101のデータ処理手段102がデータ格納要求を出したときのみのデータの破棄判定の動作を示し、図3では本発明の実施形態に係るストリームデータ処理装置101のデータ処理手段102がデータ取得要求を出したときのみのデータの破棄判定の動作を示したが、本発明の実施形態に係るストリームデータ処理装置101では、データ処理手段102がデータ格納要求とデータ取得要求とを出すたびにデータの破棄判定を行うとしてもよい。   FIG. 2 shows the data discarding determination operation only when the data processing means 102 of the stream data processing apparatus 101 according to the embodiment of the present invention issues a data storage request, and FIG. 3 shows the operation according to the embodiment of the present invention. Although the data discarding determination operation is performed only when the data processing unit 102 of the stream data processing apparatus 101 issues a data acquisition request, in the stream data processing apparatus 101 according to the embodiment of the present invention, the data processing unit 102 includes Data discarding determination may be performed each time a data storage request and a data acquisition request are issued.

以上のように、本発明の実施の形態に係るストリームデータ処理装置101によれば、提示予定時刻に間に合わないと判断されるデータをあらかじめ破棄することが可能になり、破棄によるデータの各処理の省略により、ハードウェア資源を有効に活用することができる。また、ハードウェア資源の有効活用により、映像や音声品質の向上を図ることもできる。   As described above, according to the stream data processing apparatus 101 according to the embodiment of the present invention, it is possible to discard in advance data determined to be in time for the scheduled presentation time. By omitting, hardware resources can be used effectively. Also, video and audio quality can be improved by effectively using hardware resources.

なお、データ破棄判定手段104は、処理時間管理手段106が保持している各データ処理手段の処理時間から最も処理に時間がかかるデータ処理手段102を特定し、特定したデータ処理手段102が処理をするデータまたは処理後の出力するデータに対してのみ破棄判定を行うとしてもよい。これにより、処理時間が最大のデータ処理手段102に対してのみ破棄判定を行うことで各データ処理手段102においてデータの破棄判定を行う必要がなく、ハードウェア資源をさらに有効に活用することができる。   The data discard determination unit 104 identifies the data processing unit 102 that takes the longest processing time from the processing time of each data processing unit held by the processing time management unit 106, and the identified data processing unit 102 performs processing. The discard determination may be performed only on data to be processed or data to be output after processing. As a result, it is not necessary to make a data discard decision in each data processing means 102 by making a discard decision only for the data processing means 102 with the longest processing time, and hardware resources can be used more effectively. .

また、いずれの実施の形態に関する記述においても、各構成要素間の要求、通知は例えば次のように実装される。例えばソフトウェアにおける関数呼び出しによって実現され、この場合例えば要求・通知元が関数呼び出しをおこない、各種データは関数の引数を用いて要求・通知先に送信される。さらに要求の場合は、要求に対する返答は例えば関数の戻り値を用いて要求元に送信される。ほかにも、ソフトウェアにおけるメッセージ通信で実現される場合は、例えば要求・通知元がメッセージに各種データを格納し、要求・通知先にメッセージを送信する。さらに要求の場合は、要求に対する返答は例えば同じくメッセージを用いて要求元に送信される。ハードウェアにより実現される場合は、例えば制御線により要求・通知・要求に対する返答がおこなわれたことを伝達し、信号線により各種データを送信する。   Also, in any description relating to any embodiment, requests and notifications between components are implemented as follows, for example. For example, it is realized by a function call in software. In this case, for example, a request / notification source performs a function call, and various data are transmitted to the request / notification destination using function arguments. Further, in the case of a request, a response to the request is transmitted to the request source using a return value of the function, for example. In addition, when realized by message communication in software, for example, the request / notification source stores various data in the message and transmits the message to the request / notification destination. Further, in the case of a request, a response to the request is transmitted to the request source using a message, for example. When implemented by hardware, for example, a request line / notification / response to a request is transmitted via a control line, and various data are transmitted via a signal line.

また、本発明のストリームデータ処理装置を構成する各機能ブロックは典型的には集積回路であるLSIとして実現されてもよい。これらは個別に1チップ化されても良いし、一部又は全てを含むように1チップ化されても良い。ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。   Each functional block constituting the stream data processing apparatus of the present invention may be realized as an LSI that is typically an integrated circuit. These may be individually made into one chip, or may be made into one chip so as to include a part or all of them. The name used here is LSI, but it may also be called IC, system LSI, super LSI, or ultra LSI depending on the degree of integration.

さらに、集積回路の手法はLSIに限るものではなく、専用回路又は汎用プロセッサで実現しても良い。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用しても良い。   Furthermore, the method of the integrated circuit is not limited to the LSI, and may be realized by a dedicated circuit or a general-purpose processor. An FPGA (Field Programmable Gate Array) that can be programmed after manufacturing the LSI, or a reconfigurable processor that can reconfigure the connection and setting of circuit cells inside the LSI may be used.

また、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行っても良い。バイオ技術の適応等が可能性としてありえる。   Further, if integrated circuit technology comes out to replace LSI's as a result of the advancement of semiconductor technology or a derivative other technology, it is naturally also possible to carry out function block integration using this technology. Biotechnology can be applied.

本発明にかかるストリームデータ処理装置は、ストリームデータの提示に関して、提示に間に合わないバッファを処理の早い段階で破棄することができるので、音声データや映像データの再生装置を始めとする、AV機器や情報端末、再生機能を備えた携帯電話や通信機器などに有用である。   The stream data processing apparatus according to the present invention can discard a buffer that is not in time for presentation of stream data at an early stage of processing. It is useful for information terminals, mobile phones equipped with a playback function, communication equipment, and the like.

本発明の実施の形態に係るストリームデータ処理装置101の構成の一例を示すブロック図The block diagram which shows an example of a structure of the stream data processing apparatus 101 which concerns on embodiment of this invention. 本実施の形態に係るストリームデータ処理装置のデータ格納要求時の動作を示すフローチャートThe flowchart which shows the operation | movement at the time of the data storage request | requirement of the stream data processing apparatus concerning this Embodiment. 本実施の形態に係るストリームデータ処理装置のデータ取得要求時の動作を示すフローチャートThe flowchart which shows the operation | movement at the time of the data acquisition request of the stream data processing apparatus concerning this Embodiment

符号の説明Explanation of symbols

101 ストリームデータ処理装置
102 データ処理手段
103 キュー管理手段
104 データ破棄判定手段
105 データ破棄手段
106 処理時間管理手段
107 データキュー
108 時刻管理手段
109 入力装置
110 出力装置
DESCRIPTION OF SYMBOLS 101 Stream data processing apparatus 102 Data processing means 103 Queue management means 104 Data discard determination means 105 Data discard means 106 Processing time management means 107 Data queue 108 Time management means 109 Input device 110 Output device

Claims (4)

ストリームデータに対して多段階の処理を実行するストリームデータ処理装置であって、前記ストリームデータに含まれるデータは、提示予定時刻をタイムスタンプとして含んでおり、
前記データに対して前記多段階の処理に含まれるある段階の処理を実行し、処理後のデータを出力するデータ処理手段と、
前記データ処理手段から出力されたデータを一時的に保存するデータキューと、
前記データキューに対してデータの書き込みおよび読出しを行い、前記データ処理手段から出力されたデータを、次の段階のデータ処理手段に通知するキュー管理手段と、
前記データ処理手段がデータを処理するのにかかる処理時間を、前記データ処理手段ごとに保持する処理時間管理手段と、
前記キュー管理手段が前記データキューに対するデータの書き込みまたは読出しを行なう際に、前記処理対象のデータに対する前記多段階の処理を完了する予測時刻を前記処理時間管理手段が保持する処理時間を用いて予測提示可能時刻として求め、前記処理対象のデータの前記予測提示可能時刻とタイムスタンプとに基づいて、前記処理対象のデータを破棄するか否かを判定するデータ破棄判定手段と、
前記データ破棄判定手段の判定結果に基づいて、前記処理対象のデータを破棄するデータ破棄手段を備えることを特徴とするストリームデータ処理装置。
A stream data processing device that performs multi-stage processing on stream data, wherein the data included in the stream data includes a scheduled presentation time as a time stamp,
Data processing means for executing a certain stage of processing included in the multi-stage processing on the data and outputting the processed data;
A data queue for temporarily storing data output from the data processing means;
Queue management means for writing and reading data to and from the data queue and notifying the data output from the data processing means to the data processing means of the next stage;
A processing time management means for holding a processing time required for the data processing means to process data for each data processing means;
When the queue management unit writes or reads data to or from the data queue, a prediction time to complete the multi-stage processing on the processing target data is predicted using a processing time held by the processing time management unit A data discard determination means for determining whether to discard the data to be processed based on the predicted presentable time and the time stamp of the data to be processed;
A stream data processing apparatus comprising: a data discarding unit that discards the processing target data based on a determination result of the data discarding determination unit.
現在時刻を管理する時刻管理手段と、
前記キュー管理手段は、前記データキューに格納されているデータの個数を保持し、
前記予測提示可能時刻は、前記キュー管理手段が保持する前記データキューのデータの個数と前記処理時間管理手段が保持する処理時間と前記時刻管理手段が保持する現在時刻とに基づいて求められることを特徴とする請求項1に記載のストリームデータ処理装置。
A time management means for managing the current time;
The queue management means holds the number of data stored in the data queue;
The predicted presentable time is obtained based on the number of data in the data queue held by the queue management unit, the processing time held by the processing time management unit, and the current time held by the time management unit. The stream data processing apparatus according to claim 1, wherein:
前記予測提示可能時刻は、前記キュー管理手段が保持する前記データキューのデータの個数と前記処理時間管理手段が保持する処理時間との積と時刻管理手段が保持する現在時刻とに基づいて求められることを特徴とする請求項2に記載のストリームデータ処理装置。 The predicted presentable time is obtained based on the product of the number of data in the data queue held by the queue management means and the processing time held by the processing time management means and the current time held by the time management means. The stream data processing apparatus according to claim 2. 前記データ破棄判定手段は、前記処理時間管理手段が保持する処理時間により最も処理に時間がかかる前記データ処理手段を特定し、特定したデータ処理手段が処理するデータまたは処理後の出力するデータに対してのみ、前記データ破棄判定を行う請求項1に記載のストリームデータ処理装置。 The data discard determination unit identifies the data processing unit that takes the longest processing time based on the processing time held by the processing time management unit, and determines the data processed by the identified data processing unit or the output data after processing The stream data processing apparatus according to claim 1, wherein only the data discarding determination is performed.
JP2005355829A 2005-12-09 2005-12-09 Stream data processing device Pending JP2007165962A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005355829A JP2007165962A (en) 2005-12-09 2005-12-09 Stream data processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005355829A JP2007165962A (en) 2005-12-09 2005-12-09 Stream data processing device

Publications (1)

Publication Number Publication Date
JP2007165962A true JP2007165962A (en) 2007-06-28

Family

ID=38248401

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005355829A Pending JP2007165962A (en) 2005-12-09 2005-12-09 Stream data processing device

Country Status (1)

Country Link
JP (1) JP2007165962A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011035613A (en) * 2009-07-31 2011-02-17 Fujitsu Ltd Transmitter, transmission method, and control program
US9021486B2 (en) 2010-08-19 2015-04-28 International Business Machines Corporation Selective constant complexity dismissal in task scheduling
JP2022140767A (en) * 2015-01-29 2022-09-27 スプランク インコーポレイテッド Real-time processing of data streams received from software with built-in measuring means
US12039307B1 (en) 2014-12-19 2024-07-16 Splunk Inc. Dynamically changing input data streams processed by data stream language programs

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011035613A (en) * 2009-07-31 2011-02-17 Fujitsu Ltd Transmitter, transmission method, and control program
US9021486B2 (en) 2010-08-19 2015-04-28 International Business Machines Corporation Selective constant complexity dismissal in task scheduling
US9052950B2 (en) 2010-08-19 2015-06-09 International Business Machines Corporation Selective constant complexity dismissal in task scheduling
US9262215B2 (en) 2010-08-19 2016-02-16 International Business Machines Corporation Selective constant complexity dismissal in task scheduling
US12039307B1 (en) 2014-12-19 2024-07-16 Splunk Inc. Dynamically changing input data streams processed by data stream language programs
JP2022140767A (en) * 2015-01-29 2022-09-27 スプランク インコーポレイテッド Real-time processing of data streams received from software with built-in measuring means
JP7439189B2 (en) 2015-01-29 2024-02-27 スプランク インコーポレイテッド Real-time processing of data streams received from software with integrated measurement means
US11928046B1 (en) 2015-01-29 2024-03-12 Splunk Inc. Real-time processing of data streams received from instrumented software

Similar Documents

Publication Publication Date Title
US8699581B2 (en) Image processing device, image processing method, information processing device, and information processing method
JP4519082B2 (en) Information processing method, moving image thumbnail display method, decoding device, and information processing device
US6246720B1 (en) Flexible software-based decoding system with decoupled decoding timing and output timing
CN110418186B (en) Audio and video playing method and device, computer equipment and storage medium
US20100325638A1 (en) Information processing apparatus, and resource managing method and program
CN110830838A (en) Security protection high-definition video reverse broadcasting method and device
JP4667108B2 (en) Data processing device
US20070097978A1 (en) Stream data processor
US20120069909A1 (en) Encoding method, decoding method, encoder, and decoder
EP1599043A1 (en) Code conversion method and device thereof
CN108429924A (en) Display device and its control method for playing replacement advertisement
JP2007165962A (en) Stream data processing device
US20160335734A1 (en) Memory subsystem synchronization primitives
JP5440839B2 (en) Information processing apparatus and method, and program
US7602801B2 (en) Packet processing device and method
US10349073B2 (en) Decoding device, image transmission system, and decoding method
CN111953992A (en) Decoding method and device
US20210400334A1 (en) Method and apparatus for loop-playing video content
JP2007124639A (en) Method and system for storing data packets
US20130084054A1 (en) Electronic apparatus and playback control method
US7577762B1 (en) Cooperative scheduling for multiple consumers
EP1871108A1 (en) Recording device, reproducing device, recording medium, recording method, and lsi
CN101090470B (en) Information processing apparatus and information processing method
US20100150247A1 (en) Video processing apparatus for processing plurality of multimedia, video processing method applied to the same, recording medium, and display apparatus
WO2017033764A1 (en) Recording device, recording method and program