[go: up one dir, main page]

JP2006325020A - Data processing apparatus and data processing method - Google Patents

Data processing apparatus and data processing method Download PDF

Info

Publication number
JP2006325020A
JP2006325020A JP2005147070A JP2005147070A JP2006325020A JP 2006325020 A JP2006325020 A JP 2006325020A JP 2005147070 A JP2005147070 A JP 2005147070A JP 2005147070 A JP2005147070 A JP 2005147070A JP 2006325020 A JP2006325020 A JP 2006325020A
Authority
JP
Japan
Prior art keywords
stream
frame
packet
image
image frame
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
JP2005147070A
Other languages
Japanese (ja)
Inventor
Hiroshi Yamura
太史 八村
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2005147070A priority Critical patent/JP2006325020A/en
Publication of JP2006325020A publication Critical patent/JP2006325020A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

【課題】 ネットワークカメラからの映像をインターネット等を介して同時受信して再生する場合のゆらぎを解消する。
【解決手段】 パケット化された動画ストリームを複数同時に受信するパケット受信手段と、受信パケットをパケット内の特定情報によりストリーム毎に振り分けるストリーム分割手段と、振り分けたストリームデータを画像フレーム単位にて格納する画像フレーム単位格納手段と、格納された画像フレームを各々のストリームのフレームレートによって定期的に取り出すフレーム取り込み手段と、各々の動画ストリームの各パケットを画像フレームデータとして格納し、そのフレーム数を所定周期で計数するフレーム計数手段と、それらの計数結果からネットワークゆらぎ変化量を検出し、それを基に各々のストリームの補正タイミングを算出してフレーム取り込み手段を補正するフレーム取り込み補正手段とを備える。
【選択図】 図3
PROBLEM TO BE SOLVED: To eliminate fluctuations when simultaneously receiving and reproducing video from a network camera via the Internet or the like.
Packet receiving means for simultaneously receiving a plurality of packetized video streams, stream dividing means for distributing received packets for each stream according to specific information in the packet, and storing the distributed stream data in units of image frames Image frame unit storage means, frame capture means for periodically retrieving stored image frames according to the frame rate of each stream, each packet of each moving picture stream is stored as image frame data, and the number of frames is set to a predetermined period And a frame capturing correction unit that detects a network fluctuation change amount from the counting results, calculates a correction timing of each stream based on the detected network fluctuation amount, and corrects the frame capturing unit.
[Selection] Figure 3

Description

本発明は、データ処理装置、データ処理方法、記憶媒体、並びにプログラムに関し、特に複数の動画ストリームを同時に受信可能で、かつ再生可能なデータ処理装置及び当該プログラムに関するものである。   The present invention relates to a data processing device, a data processing method, a storage medium, and a program, and more particularly to a data processing device that can simultaneously receive and reproduce a plurality of moving image streams and the program.

図1は、従来のデータ処理装置により構成される動画配信サービスの提供システム構成の一例を示す図である。この提供システムにおいては、パーソナルコンピュータ(以降、「PC」と称す。)1が、インターネット3を介して、各種コンテンツサーバ2−1、2−2にユーザの指示によりアクセスが可能になっている。PC1とインターネット3とは、インターネットサービスプロバイダ(以降、「ISP」と称す。)と呼ばれるインターネットアクセスを提供している会社の回線により接続されている。ユーザは、PC1でブラウザソフトを立ち上げて、各種コンテンツサーバ2−1、2−2等に格納されているWEBコンテンツを配信可能にしているWWW(World Wide Web)サーバより前記インターネット3及びISPの回線を介してアクセスし、ディスプレイ上のブラウザの中に表示する。   FIG. 1 is a diagram illustrating an example of a system configuration for providing a moving image distribution service configured by a conventional data processing apparatus. In this providing system, a personal computer (hereinafter referred to as “PC”) 1 can access various content servers 2-1 and 2-2 according to user instructions via the Internet 3. The PC 1 and the Internet 3 are connected by a line of a company providing Internet access called an Internet service provider (hereinafter referred to as “ISP”). The user starts up the browser software on the PC 1 and uses the Internet 3 and ISP from the WWW (World Wide Web) server that can distribute the WEB contents stored in the various content servers 2-1 and 2-2. It is accessed via the line and displayed in the browser on the display.

従来、上述のような動画ストリームにおけるゆらぎ(ジッタ)制御技術に関しては、一度メモリにバッファリングして、ゆらぎを吸収するという技術が一般的である。   Conventionally, with regard to the fluctuation control technique in a moving picture stream as described above, a technique of once buffering in a memory and absorbing fluctuation is common.

第1の従来技術例として、特開平8−139704号公報「データ処理装置およびデータ処理方法」の請求項1には、伝送データに含まれる時刻情報を抽出する抽出手段と、当該抽出した時刻情報に基づいて、前記伝送データを処理する基準となるシステムクロックを生成する手段を備え、前記抽出手段に供給される前記伝送データを記憶する記憶手段と、前記記憶手段における前記伝送データの記憶量を検出する検出手段と、前記検出手段の検出結果に対応して、前記記憶量の増減により前記伝送データの読み出しレートを可変する読出制御手段を備えるものが記載されている。   As a first prior art example, claim 1 of Japanese Patent Laid-Open No. 8-139704 “Data Processing Device and Data Processing Method” includes an extracting means for extracting time information included in transmission data, and the extracted time information. And a storage means for storing the transmission data supplied to the extraction means, and a storage amount of the transmission data in the storage means. There is described a detecting means for detecting, and a reading control means for changing the reading rate of the transmission data by increasing or decreasing the storage amount corresponding to the detection result of the detecting means.

第2の従来技術例として、特開2000−22678号公報「データ伝送端末装置」の請求項1には、ネットワーク間に用意され、送信データを蓄積するための送信用バッファと受信データを蓄積するための受信用バッファとをそれぞれ具備し、前記送信用バッファから受信側伝送クロックと異なる伝送クロックを伴って相互に所定データを伝送するデータ伝送端末装置であって、送信相手先端末装置から所定のデータが伝送されて前記受信用バッファに蓄積されるとき、この蓄積されるデータ量の所定周期毎の変化量を検出し、統計的手法を用いて前記変化量に応じた補正用クロックを得、この補正用クロックにより前記受信側伝送クロックを補正して、前記送信側のクロックとの同期化を図るようにしたことを特徴とするものが記載されている。   As a second example of the prior art, claim 1 of JP-A-2000-22678 “Data transmission terminal device” is provided between networks, and stores a transmission buffer for storing transmission data and reception data. A data transmission terminal device for transmitting predetermined data to each other with a transmission clock different from the reception side transmission clock from the transmission buffer. When data is transmitted and accumulated in the reception buffer, a change amount of the accumulated data amount for each predetermined period is detected, and a correction clock corresponding to the change amount is obtained using a statistical method, The correction clock is corrected by the correction clock and is synchronized with the transmission clock. There.

第3の従来技術例として、特許第3314700号公報「MPEGデータ転送制御回路」の請求項1には、受信されるMPEGデータを順次蓄積するバッファと、前記バッファに蓄積されたMPEGデータを、予め設定された転送レートで復号器へ転送する転送レート制御回路と、前記バッファから読み出されるMPEGデータに含まれる時刻情報と前記復号器のタイミング制御に用いられる基準クロックが示す情報とを比較し、比較結果に基づいて前記転送レートを変更すべき旨の命令を前記転送レート制御回路へ供給する時刻情報比較回路とを具備し、前記転送レート制御回路が前記命令により前記転送レートを変更することを特徴とするものが記載されている。   As a third prior art example, in claim 1 of Japanese Patent No. 3314700 “MPEG data transfer control circuit”, a buffer for sequentially storing received MPEG data, and MPEG data stored in the buffer are stored in advance. Compare the transfer rate control circuit for transferring to the decoder at a set transfer rate, the time information included in the MPEG data read from the buffer and the information indicated by the reference clock used for timing control of the decoder, and compare A time information comparison circuit for supplying an instruction to change the transfer rate to the transfer rate control circuit based on a result, wherein the transfer rate control circuit changes the transfer rate according to the instruction. Is described.

特開平8−139704号公報JP-A-8-139704 特開2000−22678号公報JP 2000-22678 A 特許第3314700号公報Japanese Patent No. 3314700

しかしながら、第1の従来例では、伝送データを処理する基準となるシステムクロックを伝送データに含まれる時刻情報を基に生成することから、同クロックによって制御される他のシステムへの影響が大きい。また、前記影響を排除するために、伝送データ(オーディオ・ビデオ)に関連する回路のシステムクロックを分離すると、コストアップ及び回路設計が複雑になり、また、ソフトウェア的に映像を加工(処理)することが困難になる。   However, in the first conventional example, the system clock that is the reference for processing the transmission data is generated based on the time information included in the transmission data, so that the influence on other systems controlled by the clock is great. Further, if the system clock of a circuit related to transmission data (audio / video) is separated in order to eliminate the influence, the cost increases and the circuit design becomes complicated, and the video is processed (processed). It becomes difficult.

また、第2の従来例では、受信バッファに蓄積された相手端末装置からの所定のデータのデータ量の所定周期毎の変化量を検出し、統計的手法を用いて当該変化量に応じた補正用クロックを得て、この補正用クロックにより受信側伝送クロックを補正して、送信側のクロックとの同期化を図るようにしている。そのため、例えば、相手端末装置から受信するデータが複数になり、かつそれぞれのデータ及び送受信が異なる経路(例えば無線の周波数別及びチャンネル別等)を介して伝送され受信した場合には、相手端末装置毎に送受信バッファを用意したりコーデック毎に送受信バッファを用意したりしても、受信バッファの変化量から補正クロックを生成することは困難になる。   Further, in the second conventional example, the amount of change of the data amount of the predetermined data from the counterpart terminal device accumulated in the reception buffer is detected for each predetermined period, and the correction according to the amount of change is performed using a statistical method. A reception clock is obtained, and the reception-side transmission clock is corrected by this correction clock, so that synchronization with the transmission-side clock is achieved. Therefore, for example, when there are a plurality of data received from the partner terminal device and each data and transmission / reception are transmitted and received via different paths (for example, by radio frequency and channel), the partner terminal device Even if a transmission / reception buffer is prepared for each codec or a transmission / reception buffer is prepared for each codec, it is difficult to generate a correction clock from the amount of change in the reception buffer.

また、第3の従来例においては、LANやインターネット等のノンギャランティなネットワークにより伝送されたMPEGデータを順次蓄積するようにしたMPEGデータ転送制御回路では、MPEGデータの長さが可変長になったり、MPEGデータ自体の順番が入れ替わったり、1パケットデータが落ちる等の事象が発生する場合において、当該回路では正常な処理が困難である。   In the third conventional example, in the MPEG data transfer control circuit that sequentially stores MPEG data transmitted through a non-guaranteed network such as a LAN or the Internet, the length of the MPEG data becomes variable. In the case where the order of the MPEG data itself is changed or an event occurs such that one packet data is dropped, it is difficult for the circuit to perform normal processing.

本発明は、このような状況に鑑みてなされたものであり、図2に示すような複数のネットワークカメラ4−1,4−2,4−3からの映像をインターネット3等を介して同時に受信して再生するような場合であって、インターネットや無線等の異なる経路を通った複数の動画ストリーミングコンテンツを受信し、かつ他の回路システムへのクロック影響を最小限にした、ネットワークゆらぎを解消するデータ処理装置及びデータ処理方法を提供することを目的とする。   The present invention has been made in view of such a situation, and simultaneously receives images from a plurality of network cameras 4-1, 4-2, 4-3 as shown in FIG. 2 via the Internet 3 or the like. In this case, it is possible to receive multiple video streaming contents through different routes such as the Internet and wireless, and minimize the influence of the clock on other circuit systems, eliminating network fluctuations. An object is to provide a data processing apparatus and a data processing method.

上記目的を達成するために本発明では、パケット化された動画ストリームを複数同時に受信するパケット受信手段と、前記パケット受信手段によって受信したパケットをパケット内の特定情報を判定してストリーム毎に振り分けるストリーム分割手段と、前記ストリーム分割手段により分割されたストリームデータを画像フレーム単位にて格納する画像フレーム単位格納手段と、前記画像フレーム単位格納手段により格納された各々のストリーム毎の画像フレームを、各々のストリームのフレームレートによって定期的に取り出すフレーム取り込み手段と、前記画像フレーム単位格納手段により各々の動画ストリームのパケット化された各パケットが画像フレームデータとして格納され、当該格納される画像フレームデータのフレーム数を所定周期毎に計数するフレーム計数手段と、前記各動画ストリームのフレーム計数手段の計数結果をとりまとめてネットワークゆらぎ変化量を検出し、前記ネットワークゆらぎ変化量を基に各々のストリームの補正タイミングを算出し、当該補正タイミングにより前記フレーム取り込み手段を補正するフレーム取り込み補正手段とを有することを特徴とするデータ処理装置を提供する。   In order to achieve the above object, in the present invention, a packet receiving means for simultaneously receiving a plurality of packetized moving image streams, and a stream for sorting packets received by the packet receiving means according to specific information in the packet and distributing the packets for each stream A dividing unit, an image frame unit storing unit that stores the stream data divided by the stream dividing unit in an image frame unit, and an image frame for each stream stored by the image frame unit storing unit, Frame capturing means periodically fetched according to the frame rate of the stream, and each packetized packet of each moving picture stream is stored as image frame data by the image frame unit storage means, and the number of frames of the stored image frame data Where Frame counting means that counts every period and the frame counting means of each video stream are combined to detect the network fluctuation change amount, and the correction timing of each stream is calculated based on the network fluctuation change amount, There is provided a data processing apparatus comprising: a frame capturing correction unit that corrects the frame capturing unit according to the correction timing.

本発明によれば、インターネットや無線等の異なる経路を通った複数の動画ストリーミングコンテンツを受信しながら、かつ、他の回路システムへのクロック影響を最小限にした、ネットワークゆらぎを解消したデータ処理装置及びデータ処理方法を提供することができるという効果がある。   According to the present invention, a data processing apparatus that receives a plurality of moving picture streaming contents through different paths such as the Internet and wireless, and eliminates the fluctuation of the network by minimizing the influence of the clock on other circuit systems. In addition, there is an effect that a data processing method can be provided.

本発明の実施形態によるデータ処理装置について図面に基づいて説明する。
(第1の実施形態)
以下、図3及び図4に基づき、本発明の第1の実施形態によるデータ処理装置について説明する。図3は、第1の実施形態によるデータ処理装置の構成例を具現化して示したブロック図である。
A data processing apparatus according to an embodiment of the present invention will be described with reference to the drawings.
(First embodiment)
The data processing apparatus according to the first embodiment of the present invention will be described below with reference to FIGS. FIG. 3 is a block diagram illustrating a configuration example of the data processing apparatus according to the first embodiment.

図3に示すように第1の実施形態によるデータ処理装置は、MUX(多重化、マルチプレックス)されていない動画(MPEG−4においては、ES:Elementary streamと称す。)と音声の別々のストリームパケットが複数同時に受信可能なマルチストリームパケット受信部101と、各々のストリーム別にパケットをストリーム別バッファに振り分ける機能をもつパケット振り分け部102と、Aストリームパケットをフレーム単位にてバッファリングを行うAストリームフレーム格納部103−1と、Bストリームパケットをフレーム単位にてバッファリングするBストリームフレーム格納部103−2と、nストリームパケットをフレーム単位にてバッファリングするnストリームフレーム格納部103−3と、Aストリームフレーム格納部103−1に格納されたAストリームのフレーム区切りを認識してフレーム数をカウントするAストリームフレーム計数部104−1と、Bストリームフレーム格納部103−2に格納されたBストリームのフレーム区切りを認識してフレーム数をカウントするBストリームフレーム計数部104−2と、nストリームフレーム格納部103−3に格納されたnストリームのフレーム区切りを認識してフレーム数をカウントするnストリームフレーム計数部104−3と、Aストリームフレームの周期フレーム数管理部105−1と、Bストリームフレームの周期フレーム数管理部105−2と、nストリームフレームの周期フレーム数管理部105−3と、各々のストリームフレーム計数部104−1,104−2,104−3からの情報によりネットワークゆらぎを算出し各々のストリームのゆらぎを統括的に管理するゆらぎ統括管理部109と、Aストリーム専用コーデックであるCodec−A(コーデックA)110−1と、Bストリーム専用コーデックであるCodec−B(コーデックB)110−2と、nストリーム専用コーデックであるCodec−n(コーデックn)110−3と、各々のコーデック110−1,110−2,110−3の取り込みタイミングを制御するフレーム制御部113とから構成されている。   As shown in FIG. 3, the data processing apparatus according to the first embodiment performs separate streams of moving images (called “ES: Elementary stream” in MPEG-4) and audio that are not MUX (multiplexed or multiplexed). A multi-stream packet receiving unit 101 capable of receiving a plurality of packets simultaneously, a packet distributing unit 102 having a function of distributing a packet to a buffer for each stream, and an A stream frame for buffering A stream packets in units of frames A storage unit 103-1, a B stream frame storage unit 103-2 that buffers B stream packets in units of frames, an n stream frame storage unit 103-3 that buffers n stream packets in units of frames, and A Stream frame storage A stream frame counting unit 104-1 that recognizes the frame delimiter of the A stream stored in 103-1, and counts the number of frames, and recognizes the frame delimiter of the B stream stored in the B stream frame storage unit 103-2 The B stream frame counting unit 104-2 that counts the number of frames and the n stream frame counting unit 104-that recognizes the frame delimiter of the n streams stored in the n stream frame storage unit 103-3 and counts the number of frames. 3, the periodic frame number management unit 105-1 of the A stream frame, the periodic frame number management unit 105-2 of the B stream frame, the periodic frame number management unit 105-3 of the n stream frame, and the respective stream frame counts Information from the sections 104-1, 104-2, 104-3 Fluctuation management unit 109 that calculates network fluctuations and manages fluctuations of each stream in an integrated manner, Codec-A (Codec A) 110-1 that is an A stream dedicated codec, and Codec- that is a B stream dedicated codec B (codec B) 110-2, Codec-n (codec n) 110-3, which is a dedicated codec for n streams, and frame control for controlling the capture timing of each codec 110-1, 110-2, 110-3 Part 113.

なお、以下の説明において、動画録画記録方式は、特に断らない限りMPEG−4記録方式であるとする。
次に、第1の実施形態によるデータ処理装置の動作について説明する。
図4は、第1の実施形態によるデータ処理装置の動作を示すフローチャートである。
In the following description, it is assumed that the moving image recording recording method is the MPEG-4 recording method unless otherwise specified.
Next, the operation of the data processing apparatus according to the first embodiment will be described.
FIG. 4 is a flowchart showing the operation of the data processing apparatus according to the first embodiment.

ここで、マルチストリームパケット受信部101は、図2に示したような複数のカメラ4−1,4−2,4−3等からの複数の動画・音声ストリームのパケットを受信する手段である。本実施形態では、各カメラ4−1,4−2,4−3からの動画と音声は、マルチプレックスされていない(多重化されていない)別々のストリームとして受信する。なお、各カメラ4−1,4−2,4−3から受信するストリーム選択の制御は、別の層のプロトコル(例えば、HTTP(HyperText Transfer Protocol)によるURL(Uniform Resource Locator)等の位置情報の取得や、SIP(Session Initiation Protocol)等による位置情報を検索して取得等)によって実施される。   Here, the multi-stream packet receiving unit 101 is means for receiving a plurality of moving image / audio stream packets from a plurality of cameras 4-1, 4-2, 4-3 and the like as shown in FIG. In the present embodiment, the moving images and audio from the cameras 4-1, 4-2, 4-3 are received as separate streams that are not multiplexed (not multiplexed). The control of stream selection received from each of the cameras 4-1, 4-2, 4-3 is performed by controlling the position information such as URL (Uniform Resource Locator) by another layer protocol (for example, HyperText Transfer Protocol (HTTP)). For example, acquisition and retrieval by acquiring location information by SIP (Session Initiation Protocol) or the like.

また、各々の動画と音声のストリームは、RTP(Real-time Transport Protocol)等の伝送用プロトコルによって配送される。さらに、ストリーム受信自身の制御(セッション確立、再生開始、一時停止、再生再開、再生停止等)は、RTSP(Real Time Streaming Protocol)等によって制御される。
なお、第1の実施形態においては、受信する個々のストリームの種別及びフレームレート等は、前記プロトコルを用いて予め情報を得ているものとする。
Each moving image and audio stream is delivered by a transmission protocol such as RTP (Real-time Transport Protocol). Furthermore, control of stream reception itself (session establishment, playback start, pause, playback restart, playback stop, etc.) is controlled by RTSP (Real Time Streaming Protocol) or the like.
In the first embodiment, it is assumed that information on the type and frame rate of each received stream is obtained in advance using the protocol.

ステップS1000にてマルチストリームパケット受信部101により受信された各種混合パケットは、パケット振り分け部102により個々のストリームに分離され、各々のストリーム毎に別々のバッファに格納される(S1010)。前記個々のストリームに分離する際に使用する情報として、例えばラベルスイッチに用いられるラベルを用いて分離する。前記ラベルは、ストリームが各カメラ4−1,4−2,4−3から送信される前にストリーム単位で付加されているものとする。   The various mixed packets received by the multi-stream packet receiving unit 101 in step S1000 are separated into individual streams by the packet sorting unit 102, and stored in separate buffers for each stream (S1010). For example, a label used for a label switch is used as the information used for separating the individual streams. It is assumed that the label is added in units of streams before the stream is transmitted from each camera 4-1, 4-2, 4-3.

また、第1の実施形態では、個々のストリームは各々、Aストリーム、Bストリーム、及びnストリームの3つに分離されて、各々のバッファであるAストリームフレーム格納部103−1、Bストリームフレーム格納部103−2、及びnストリームフレーム格納部103−3に格納される。ここでも、各フレーム単位には、各フレームの区別が付くように上述したものと同様でかつ異なったラベルが付加されており、当該ラベルの変化がフレームの切れ目として認識可能であり、当該ラベルでフレーム単位のバッファリングを可能としている(S1020)。なお、フレーム単位のラベルは、ストリームが異なれば同じラベルを用いていてもよい。   Further, in the first embodiment, each stream is divided into three streams of A stream, B stream, and n stream, respectively, and an A stream frame storage unit 103-1, which is a buffer, and B stream frame storage. Stored in the unit 103-2 and the n-stream frame storage unit 103-3. Here again, each frame unit is attached with a label similar to that described above so that each frame can be distinguished, and the change in the label can be recognized as a frame break. Buffering in units of frames is possible (S1020). Note that the same label may be used as the label for each frame as long as the streams are different.

また、ゆらぎ制御の処理として各周期フレーム数管理部105−1,105−2,105−3では、ある一定周期あたりの到達フレーム数計数処理ルーチンが別に動作している(S1050)。前記各周期フレーム数管理部105−1,105−2,105−3は、一定周期毎に(S1051)、対応する各ストリームフレーム格納部103−1,103−2,103−3に到達した各々のストリームのフレーム数を各ストリームフレーム計数部104−1,104−2,104−3より取得し、周期フレーム数としてメモリに格納する(S1052)。なお、この一定周期あたりの到達フレーム数計数処理ルーチンは、終了フラグが立つまで繰り返し続けられる(S1053)。   In addition, as a fluctuation control process, each of the periodic frame number management units 105-1, 105-2, and 105-3 operates a separate process for counting the number of arrived frames per certain period (S1050). The periodic frame number management units 105-1, 105-2, and 105-3 reach the corresponding stream frame storage units 103-1, 103-2, and 103-3 at regular intervals (S1051). Are acquired from the stream frame counting units 104-1, 104-2, and 104-3 and stored in the memory as the number of periodic frames (S1052). Note that the arrival frame count processing routine per certain period is repeated until the end flag is set (S1053).

各ストリームフレーム計数部104−1,104−2,104−3は、前記ラベル変化によるフレーム切れ目を認識し(S1030)、到達フレーム数を計数する(S1040)と共に、フレーム切れ目の情報と前記各周期フレーム数管理部105−1,105−2,105−3より取得した周期フレーム数等をゆらぎ統括管理部109に対して通知する。   Each stream frame counting unit 104-1, 104-2, 104-3 recognizes the frame break due to the label change (S1030), counts the number of arrived frames (S1040), and information about the frame break and each period The fluctuation frame management unit 109 is notified of the number of periodic frames and the like acquired from the frame number management units 105-1, 105-2, and 105-3.

各ストリームフレーム計数部104−1,104−2,104−3からのフレーム切れ目の情報と周期フレーム数等の情報を受信したゆらぎ統括管理部109は、各ストリーム毎の周期フレーム数を元にしたトータルなネットワークゆらぎを算出し、その後個々のストリーム毎のフレーム到達ゆらぎ補正タイミングを割り出し(S1060)、各ストリームでのフレーム到達タイミングと共にフレーム制御部113に通知する。   The fluctuation overall management unit 109 that has received information such as frame break information and the number of periodic frames from each stream frame counting unit 104-1, 104-2, 104-3 is based on the number of periodic frames for each stream. The total network fluctuation is calculated, and then the frame arrival fluctuation correction timing for each stream is determined (S1060) and notified to the frame controller 113 together with the frame arrival timing for each stream.

個々のストリーム毎のフレーム到達ゆらぎ補正タイミング及び各ストリームでのフレーム到達タイミングを受信したフレーム制御部113は、各ストリームにおけるフレームレートを鑑みつつ、補正が必要であれば(S1070)、当該フレーム到達ゆらぎ補正タイミングとフレーム到達タイミングにより各ストリーム毎のコーデック110−1,110−2,110−3にフレーム取得指示を発行する(S1080)。一方、補正が必要でなければ、フレーム到達タイミングもしくはフレームレートタイミングにて、各ストリーム毎のコーデック110−1,110−2,110−3にフレーム取得指示を発行する。   The frame control unit 113 that has received the frame arrival fluctuation correction timing for each stream and the frame arrival timing for each stream considers the frame rate in each stream and if correction is necessary (S1070), the frame arrival fluctuation A frame acquisition instruction is issued to the codecs 110-1, 110-2, 110-3 for each stream according to the correction timing and the frame arrival timing (S1080). On the other hand, if correction is not necessary, a frame acquisition instruction is issued to the codecs 110-1, 110-2, and 110-3 for each stream at the frame arrival timing or the frame rate timing.

フレーム制御部113からのフレーム取得指示を受信した各ストリーム毎のコーデック110−1,110−2,110−3は、各ストリームフレーム格納部103−1,103−2,103−3より1フレーム分のデータを取得し(S1090)、デコードを実施後(S1100)、次処理に渡す。   The codecs 110-1, 110-2, and 110-3 for each stream that have received the frame acquisition instruction from the frame control unit 113 correspond to one frame from each stream frame storage unit 103-1, 103-2, and 103-3. Is obtained (S1090), decoded (S1100), and passed to the next process.

以上、説明したように第1の実施形態によれば、動画のストリーム及びフレームレベルで、ラベルを用いた制御をすることで、ハード化が可能であり、より高速かつ機器内遅延を最小限にできるという効果がある。   As described above, according to the first embodiment, it is possible to realize hardware by controlling using a label at a moving image stream and frame level, and at a higher speed and minimizing an in-device delay. There is an effect that can be done.

(第2の実施形態)
次に、本発明の第2の実施形態について説明する。
図5は、第2の実施形態によるデータ処理装置の構成例を示すブロック図である。
(Second Embodiment)
Next, a second embodiment of the present invention will be described.
FIG. 5 is a block diagram illustrating a configuration example of a data processing device according to the second embodiment.

図5に示すように第2の実施形態によるデータ処理装置は、MUX(多重化、マルチプレックス)されていない動画(MPEG−4においては、ES: Elementary streamと称す。)と音声の別々のストリームパケットが複数同時に受信可能なマルチストリームパケット受信部201と、各々のストリーム別にパケットをストリーム別バッファに振り分ける機能をもつパケット振り分け部202と、各々のストリームに応じたパケットの順序制御とパケット中のデータのネットワーク上で起こったエラーをFEC(Forward Error Correction)等により修復を行う整合性チェック&修正部203−xと、No.xの動画ストリームパケットをフレーム単位にてバッファリングを行う動画ストリームNo.xフレーム格納部204−xと、No.xの音声ストリームパケットのバッファリングを行うNo.x音声ストリーム格納部205−xと、動画ストリームNo.xフレーム格納部204−xに格納されたNo.xストリームのフレーム区切りを認識してフレーム数をカウントする動画ストリームNo.xフレーム数計数部206−xと、No.x音声ストリーム格納部205−xに格納されたパケット数をさらに一定周期でカウントするNo.x音声パケット数計数部207−xと、動画ストリームNo.xフレーム数計数部206−xで計数されているフレーム数を一定周期でサンプリングして周期フレーム数を割り出し記録する動画周期フレーム数管理部208−xと、動画ストリームNo.xフレーム数計数部206−x及びNo.x音声パケット数計数部207−xから通知されるデータによりネットワークゆらぎを管理するゆらぎ統括管理部210と、受信対象となった動画及び音声のコーデックに応じたハードコーデックをコンフィグレーションすることで用意して各種格納部との組み合わせをスイッチ213を切り替えて管理する共にコーデックモジュール212−xでのデコードタイミングを管理するストリーム制御部211と、種々の動画及び音声のデコードにコンフィグレーションにより対応可能なコーデックモジュール212−xと、動画ストリームNo.xフレーム格納部204−xやNo.x音声ストリーム格納部205−xとコーデックモジュール212−xとを結ぶスイッチ213とで構成される。なお、上述した説明において、符号に付した“x”は添え字であり、xは自然数である。   As shown in FIG. 5, the data processing apparatus according to the second embodiment has separate video and audio streams that are not MUX (multiplexed, multiplexed) (referred to as ES: Elementary stream in MPEG-4) and audio. A multi-stream packet receiving unit 201 capable of receiving a plurality of packets simultaneously, a packet distribution unit 202 having a function of distributing a packet to a buffer for each stream, a packet order control according to each stream, and data in the packet Consistency Check & Correction Unit 203-x that repairs errors that occurred on the network of No. 1 by FEC (Forward Error Correction) or the like, video stream No. that buffers the video stream packet of x in frame units. x frame storage unit 204-x; No. for buffering the audio stream packet of x. x audio stream storage unit 205-x and video stream No. No. stored in the x frame storage unit 204-x. The video stream No. that recognizes the frame break of the x stream and counts the number of frames x frame number counting unit 206-x; x No. for counting the number of packets stored in the audio stream storage unit 205-x at a constant period. x audio packet number counting unit 207-x and moving picture stream No. a moving image cycle frame number management unit 208-x that samples and counts the number of frames counted by the x frame number counting unit 206-x at a constant period and records the number of the periodic frames; x frame number counting unit 206-x and No. 1 Prepared by configuring a fluctuation overall management unit 210 that manages network fluctuations based on data notified from the x audio packet number counting unit 207-x, and a hard codec corresponding to the video and audio codecs that have been received. The stream control unit 211 that manages the combination of various storage units by switching the switch 213 and manages the decoding timing in the codec module 212-x, and the codec module that can cope with various video and audio decoding by configuration 212-x and the video stream No. x frame storage unit 204-x or No. The switch 213 connects the x audio stream storage unit 205-x and the codec module 212-x. In the above description, “x” added to the reference sign is a subscript, and x is a natural number.

次に、第2の実施形態によるデータ処理装置の動作について説明する。
図6及び図7は、第2の実施形態によるデータ処理装置の動作を示すフローチャートである。
Next, the operation of the data processing apparatus according to the second embodiment will be described.
6 and 7 are flowcharts showing the operation of the data processing apparatus according to the second embodiment.

ここで、マルチストリームパケット受信部201は、図2に示したような複数のカメラ4−1,4−2,4−3等からの複数の動画・音声ストリームのパケットを受信する手段である。本実施形態では、各カメラ4−1,4−2,4−3からの動画と音声は、マルチプレックスされていない(多重化されていない)別々のストリームとして受信する。第1の実施形態と同様にして、各カメラ4−1,4−2,4−3から受信するストリーム選択の制御は、別の層のプロトコル(例えば、HTTP(HyperText Transfer Protocol)によるURL(Uniform Resource Locator)等の位置情報の取得や、SIP(Session Initiation Protocol)等による位置情報を検索して取得等)によって実施される。   Here, the multi-stream packet receiving unit 201 is means for receiving a plurality of moving image / audio stream packets from a plurality of cameras 4-1, 4-2, 4-3, and the like as shown in FIG. In the present embodiment, the moving images and audio from the cameras 4-1, 4-2, 4-3 are received as separate streams that are not multiplexed (not multiplexed). In the same manner as in the first embodiment, control of stream selection received from each of the cameras 4-1, 4-2, 4-3 is performed by URL (Uniform using a protocol of another layer (for example, HyperText Transfer Protocol (HTTP)). (Location acquisition such as Resource Locator) or location information by SIP (Session Initiation Protocol) or the like).

また、各々の動画と音声のストリームは、RTP(Real-time Transport Protocol)等の伝送用プロトコルによって配送される。さらに、ストリーム受信自身の制御(セッション確立、再生開始、一時停止、再生再開、再生停止等)は、RTSP(Real Time Streaming Protocol)等によって制御される。   Each moving image and audio stream is delivered by a transmission protocol such as RTP (Real-time Transport Protocol). Furthermore, control of stream reception itself (session establishment, playback start, pause, playback restart, playback stop, etc.) is controlled by RTSP (Real Time Streaming Protocol) or the like.

なお、第2の実施形態においては、受信する個々のストリームの種別及びフレームレート等は、前記プロトコルを用いて予め情報を得ており、当該ストリーム種別の情報により動画と音声の各々のコーデック種別に合わせて、コーデックモジュール212−xをストリーム制御部211を使ってコンフィグレーションし、動画コーデックと音声コーデックのコーデックモジュール212−xをそれぞれ必要な個数用意する。   In the second embodiment, information such as the type and frame rate of each received stream is obtained in advance using the protocol, and the codec type of each of video and audio is determined by the stream type information. At the same time, the codec module 212-x is configured using the stream control unit 211, and the necessary number of codec modules 212-x for the moving image codec and the audio codec are prepared.

さらに、前記ストリーム種別の情報等により動画と音声のコーデック種別毎にバッファとしての格納部を用意し、動画ストリームNo.xフレーム格納部204−xの番号と対応する動画コーデックにコンフィグレーションされたコーデックモジュール212−xの番号が合うように、また、No.x音声ストリーム格納部205−xの番号と対応する音声コーデックにコンフィグレーションされたコーデックモジュール212−xの番号が合うように、ストリーム制御部211を使ってスイッチ213を切り替えておく。具体的には、動画ストリームNo.xフレーム格納部204−x及びNo.x音声ストリーム格納部205−xとコーデックモジュール212−xとが、図5に示した対応となるようにスイッチ213を切り替えておく。   Further, a storage unit as a buffer is prepared for each video and audio codec type based on the stream type information and the like. The number of the codec module 212-x configured for the corresponding video codec matches the number of the x frame storage unit 204-x, and The switch 213 is switched using the stream control unit 211 so that the number of the x audio stream storage unit 205-x matches the number of the codec module 212-x configured in the corresponding audio codec. Specifically, the video stream No. x-frame storage unit 204-x and No. The switch 213 is switched so that the x audio stream storage unit 205-x and the codec module 212-x have the correspondence shown in FIG.

ステップS2000にてマルチストリームパケット受信部201により受信された各種混合パケットは、パケット振り分け部202により個々のストリームに分離され、特に動画と音声の各々のストリーム毎に別々の処理に渡される(S2010)。前記個々のストリームに分離する際に使用する情報として、例えばラベルスイッチに用いられるラベルを用いて分離する。前記ラベルは、ストリームが各カメラ4−1,4−2,4−3から送信される前にストリーム単位で付加されているものとし、また、動画と音声の区別がつくように、さらに動画に関してはフレームの区別がつくように各々別ラベルが付加されている。   The various mixed packets received by the multi-stream packet receiving unit 201 in step S2000 are separated into individual streams by the packet distribution unit 202, and in particular, passed to separate processing for each of the moving image and audio streams (S2010). . For example, a label used for a label switch is used as the information used for separating the individual streams. The label is added to each stream before the stream is transmitted from each of the cameras 4-1, 4-2 and 4-3. Each has a different label to distinguish the frames.

パケット振り分け部202から各動画と音声のストリームに分離されたパケットは、整合性チェック&修正部203−xによって、各々のストリームの特徴に応じて、パケット順序の入れ替えやパケットデータの修復等の処理を実施して、ストリーム毎のバッファに格納される(S2020及びS2200)。また、動画のストリームにおいては各動画のフレーム単位に、各動画フレームの区別が付くように上述したものと同様でかつ異なったラベルが付加されており、当該ラベルの変化が動画フレームの切れ目として認識可能であり、当該ラベルを用いることでフレーム単位のバッファリングを可能としている(S2030)。なお、動画フレーム単位のラベルは、動画ストリームが異なれば同じラベルを用いていてもよい。   Packets separated from the video distribution unit 202 into each moving image and audio stream are processed by the consistency check & correction unit 203-x according to the characteristics of each stream, such as changing the order of packets and restoring packet data. And stored in a buffer for each stream (S2020 and S2200). Also, in the video stream, the same and different labels as described above are added to each video frame so that each video frame can be distinguished, and the change in the label is recognized as a break of the video frame. This is possible, and buffering in units of frames is possible by using the label (S2030). Note that the same label may be used as the label for each moving image frame as long as the moving image stream is different.

次に、ゆらぎ制御の処理として各動画周期フレーム数管理部208−1,208−2では、ある一定周期あたりの到達フレーム数計数処理ルーチンが別に動作している(S2060)。前記動画周期フレーム数管理部208−1,208−2は、一定周期毎に(S2061)、対応する各動画ストリームNo.xフレーム格納部204−1,204−2に到達した各々のストリームのフレーム数を各動画ストリームNo.xフレーム数計数部206−1,206−2より取得し、周期フレーム数としてメモリに格納する(S2062)。なお、この一定周期あたりの到達フレーム数計数処理ルーチンは、終了フラグが立つまで繰り返し続けられる(S2063)。   Next, as the fluctuation control process, in each moving image periodic frame number management unit 208-1, 208-2, an arrival frame number counting routine per certain period is operating separately (S2060). The moving image cycle frame number management units 208-1 and 208-2 each correspond to each moving image stream No. every predetermined cycle (S 2061). The number of frames of each stream that has reached the x frame storage units 204-1 and 204-2 is assigned to each video stream No. It is acquired from the x frame number counting units 206-1 and 206-2 and stored in the memory as the number of periodic frames (S2062). Note that the arrival frame count processing routine per certain period is repeated until the end flag is set (S2063).

また、各No.x音声パケット数計数部207−1,207−2は、対応するNo.x音声ストリーム格納部205−1,205−2に格納された(S2210)音声パケットの数を音声パケットが格納される毎にカウントアップする音声パケット逐次カウント処理(S2220)と、ある一定周期毎に前記音声パケット逐次カウント処理によってカウントされたパケット数を記録し、さらにゆらぎ統括管理部210に通知する音声パケット周期サンプリング通知処理(S2230)を実行している。   In addition, each No. x voice packet number counting units 207-1 and 207-2 correspond to the corresponding Nos. x audio stream storage units 205-1 and 205-2 (S2210) The audio packet sequential counting process (S2220) for counting up the number of audio packets every time an audio packet is stored, and every certain period A voice packet cycle sampling notification process (S2230) for recording the number of packets counted by the voice packet sequential counting process and notifying the fluctuation overall management unit 210 is executed.

前記ラベル変化によるフレーム切れ目を認識した(S2040)各動画ストリームNo.xフレーム数計数部206−1,206−2は、到達フレーム総数を計数する(S2050)と共に、フレーム切れ目の情報と前記動画周期フレーム数管理部208−1,208−2より取得した周期フレーム数等をゆらぎ統括管理部210に対して通知する。   A frame break due to the label change is recognized (S2040). The x frame number counting units 206-1 and 206-2 count the total number of arrived frames (S2050), and information on frame breaks and the number of periodic frames acquired from the moving image periodic frame number management units 208-1 and 208-2. And the like are notified to the fluctuation management unit 210.

各動画ストリームNo.xフレーム数計数部206−1,206−2からのフレーム切れ目の情報及び周期フレーム数等の情報と、各No.x音声パケット数計数部207−1,207−2からの音声パケット周期サンプリング値等の情報とを受信したゆらぎ統括管理部210は、関連する動画ストリームと音声ストリームの前記各種情報を分析してトータルなネットワークゆらぎを算出し、その後個々の関連する動画と音声のストリームペア毎のフレーム到達ゆらぎ補正タイミングを割り出し、各動画ストリームについてはフレーム到達タイミングと共にゆらぎ補正タイミングを、各音声ストリームについてはゆらぎ補正タイミングのみをストリーム制御部211に通知する(S2070)。   Each video stream No. x frame number counting units 206-1 and 206-2, information on frame breaks, information such as the number of periodic frames, etc. The fluctuation supervision managing unit 210 that has received the information such as the voice packet cycle sampling value from the x voice packet number counting units 207-1 and 207-2 analyzes the various information of the related video stream and voice stream, and calculates the total Network fluctuations are calculated, and then the frame arrival fluctuation correction timing for each associated video and audio stream pair is determined. The fluctuation correction timing is calculated together with the frame arrival timing for each video stream, and the fluctuation correction timing for each audio stream. Only the stream control unit 211 is notified (S2070).

各動画ストリームでのフレーム到達タイミング及びゆらぎ補正タイミングと、各音声ストリームでのゆらぎ補正タイミングとを受信したストリーム制御部211は、まず各動画ストリームに対し、各動画ストリームにおけるフレームレートを鑑みつつ、補正が必要であれば(S2080)、当該ゆらぎ補正タイミングとフレーム到達タイミングに基づいて、各動画ストリームに対応したコーデックにコンフィグレーションされたコーデックモジュール212−xにフレーム取得指示を発行する(S2090)。また、各音声ストリームに対しては、各音声ストリームにおけるゆらぎ補正タイミングにより、補正が必要であれば(S2090)、当該ゆらぎ補正タイミングに基づいて、各音声ストリームに対応したコーデックにコンフィグレーションされたコーデックモジュール212−xの音声取得タイミングを補正する。   The stream control unit 211 that has received the frame arrival timing and fluctuation correction timing in each video stream and the fluctuation correction timing in each audio stream first corrects each video stream in consideration of the frame rate in each video stream. Is required (S2080), a frame acquisition instruction is issued to the codec module 212-x configured in the codec corresponding to each moving picture stream based on the fluctuation correction timing and the frame arrival timing (S2090). Further, if correction is necessary for each audio stream based on the fluctuation correction timing in each audio stream (S2090), the codec configured to the codec corresponding to each audio stream based on the fluctuation correction timing. The sound acquisition timing of the module 212-x is corrected.

ストリーム制御部211からのフレーム取得指示を受信した、各動画ストリームに対応したコーデックにコンフィグレーションされたコーデックモジュール212−xは、各動画ストリームNo.xフレーム格納部204−1,204−2より1フレーム分のデータを取得し(S2100)、デコードを実施後(S2110)、次処理に渡す。
また、ストリーム制御部211からの補正情報を受信した、各音声ストリームに対応したコーデックにコンフィグレーションされたコーデックモジュール212−xは、補正した周期で、各No.x音声ストリーム格納部205−1,205−2から一定量のデータを取得し(S2260)、デコードを実施後(S2270)、次処理に渡す。
The codec module 212-x configured with the codec corresponding to each moving image stream that has received the frame acquisition instruction from the stream control unit 211 receives the moving image stream No. Data for one frame is acquired from the x frame storage units 204-1 and 204-2 (S2100), and after decoding is performed (S2110), it is transferred to the next process.
In addition, the codec module 212-x configured to the codec corresponding to each audio stream, which has received the correction information from the stream control unit 211, has each No. 1 in the corrected cycle. A certain amount of data is acquired from the x audio stream storage units 205-1 and 205-2 (S2260), and after decoding is performed (S2270), it is passed to the next process.

以上、説明したように第2の実施形態によれば、固定したコーデックをもつことなく、コーデックモジュールを使いまわすことが可能な構成においても、ゆらぎ・遅延制御ができるという効果がある。また、ストリーム毎にFEC等のエラー修復機能を搭載することで、例えば、動画パケットの修復が音声パケットの配送遅延に影響しない等の最小限の機器内遅延により各ストリームのゆらぎ・遅延制御が可能であるという効果もある。   As described above, according to the second embodiment, there is an effect that fluctuation and delay control can be performed even in a configuration in which a codec module can be reused without having a fixed codec. Also, by installing an error recovery function such as FEC for each stream, it is possible to control fluctuations and delays of each stream with a minimum in-device delay such as, for example, video packet repair does not affect audio packet delivery delay. There is also an effect that.

(本発明の他の実施形態)
なお、本発明は前記各々の実施形態に限定されるものではなく、さらに以下のような変形が可能である。
第1及び第2の実施形態において、パケット振り分け部102,202は、ラベルスイッチのラベルを用いてパケット振り分けを行っているが、ストリーム区別情報を持ったアドレス自身によってパケット振り分けを行ってもよい。
また、第1及び第2の実施形態において、動画ストリームの動画記録形式は、MPEG−4記録方式以外でもよく、Motion−JPEG,MPEG2,H264,DivX,XVID,Windows(登録商標)Media9等であってもよい。
(Other embodiments of the present invention)
The present invention is not limited to each of the above embodiments, and the following modifications are possible.
In the first and second embodiments, the packet distribution units 102 and 202 perform packet distribution using the label of the label switch. However, the packet distribution unit 102 and 202 may perform packet distribution according to an address itself having stream identification information.
In the first and second embodiments, the moving picture recording format of the moving picture stream may be other than the MPEG-4 recording method, such as Motion-JPEG, MPEG2, H264, DivX, XVID, Windows (registered trademark) Media9, or the like. May be.

第1及び第2の実施形態において、ゆらぎ統括管理部109,210は、周期処理による動画フレーム到着数と音声パケット到着数によりネットワークゆらぎを算出しているが、この処理に統計的手法を用いて予想ゆらぎを係数として加えて算出するようにしても良い。また、ゆらぎ統括管理部109,210は、動画ストリームのフレーム切れ目での周期フレーム数通知によってネットワークゆらぎを算出しているが、このタイミングに限定されるものではなく、フレーム切れ目通知と周期フレーム数通知のタイミングを分けて各々のタイミングで通知してもよく、このようにした場合にはネットワークゆらぎの算出は、フレームレートタイミング等で行っても良い。   In the first and second embodiments, the fluctuation supervision management units 109 and 210 calculate network fluctuations based on the number of arrivals of moving image frames and the number of arrivals of voice packets by periodic processing. A statistical technique is used for this processing. Calculation may be performed by adding the expected fluctuation as a coefficient. Further, the fluctuation supervision management units 109 and 210 calculate the network fluctuation by notifying the periodic frame number at the frame break of the video stream, but the present invention is not limited to this timing, and the frame break notice and the periodic frame number notice are calculated. These timings may be divided and notified at each timing, and in this case, the network fluctuation may be calculated at the frame rate timing or the like.

第2の実施形態における動画ストリームNo.xフレーム格納部204−xにおいて、当該バッファとしての格納部でストリームのバッファあふれが起きそうな場合には、現在の格納部とは別に長い格納部を動的に用意し、パケット振り分け部202の振り分け先を変更するようにし、スイッチ213を対象コーデックモジュールに切り替えて、ゆらぎ制御が止まらないようにしてもよいし、整合性チェック&修正部203−xと複数の大きさの動画ストリームNo.xフレーム格納部を設けて、パケット振り分け部202の振り分け先を変更するようにしてゆらぎ制御が止まらないようにしてもよい。   In the second embodiment, the video stream No. In the x frame storage unit 204-x, when a buffer overflow of a stream is likely to occur in the storage unit as the buffer, a long storage unit is dynamically prepared separately from the current storage unit, and the packet distribution unit 202 The distribution destination may be changed, the switch 213 may be switched to the target codec module so that the fluctuation control does not stop, the consistency check & correction unit 203-x and the video stream Nos. Of multiple sizes. An x frame storage unit may be provided to change the distribution destination of the packet distribution unit 202 so that the fluctuation control does not stop.

また、上述した実施形態の機能を実現するべく各種のデバイスを動作させるように、該各種デバイスと接続された装置あるいはシステム内のコンピュータに対し、上記実施形態の機能を実現するためのソフトウェアのプログラムコードを供給し、そのシステムあるいは装置のコンピュータ(CPUあるいはMPU)に格納されたプログラムに従って上記各種デバイスを動作させることによって実施したものも、本発明の範疇に含まれる。
また、この場合、上記ソフトウェアのプログラムコード自体が上述した実施形態の機能を実現することになり、そのプログラムコード自体は本発明を構成する。また、そのプログラムコードをコンピュータに供給するための手段、例えばかかるプログラムコードを格納した記録媒体は本発明を構成する。かかるプログラムコードを記憶する記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
また、コンピュータが供給されたプログラムコードを実行することにより、上述の実施形態の機能が実現されるだけでなく、そのプログラムコードがコンピュータにおいて稼働しているOS(オペレーティングシステム)あるいは他のアプリケーションソフト等と共同して上述の実施形態の機能が実現される場合にもかかるプログラムコードは本発明の実施形態に含まれることは言うまでもない。
さらに、供給されたプログラムコードがコンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後、そのプログラムコードの指示に基づいてその機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって上述した実施形態の機能が実現される場合にも本発明に含まれることは言うまでもない。
Also, a software program for realizing the functions of the above-described embodiment for a computer in an apparatus or a system connected to the various devices so that the various devices are operated to realize the functions of the above-described embodiments. What was implemented by supplying the code and operating the various devices according to a program stored in the computer (CPU or MPU) of the system or apparatus is also included in the scope of the present invention.
In this case, the program code of the software itself realizes the functions of the above-described embodiments, and the program code itself constitutes the present invention. Further, means for supplying the program code to the computer, for example, a recording medium storing the program code constitutes the present invention. As a recording medium for storing the program code, for example, a flexible disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a magnetic tape, a nonvolatile memory card, a ROM, or the like can be used.
Further, by executing the program code supplied by the computer, not only the functions of the above-described embodiments are realized, but also the OS (operating system) or other application software in which the program code is running on the computer, etc. It goes without saying that the program code is also included in the embodiment of the present invention even when the functions of the above-described embodiment are realized in cooperation with the embodiment.
Further, after the supplied program code is stored in the memory provided in the function expansion board of the computer or the function expansion unit connected to the computer, the CPU provided in the function expansion board or function expansion unit based on the instruction of the program code Needless to say, the present invention includes a case where the functions of the above-described embodiment are realized by performing part or all of the actual processing.

なお、上記実施形態は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。   The above-described embodiments are merely examples of implementation in carrying out the present invention, and the technical scope of the present invention should not be construed as being limited thereto. That is, the present invention can be implemented in various forms without departing from the technical idea or the main features thereof.

従来の動画配信サービスの提供システムの構成を示す図である。It is a figure which shows the structure of the provision system of the conventional moving image delivery service. 本発明が適用可能な動画配信サービスの提供システムの構成を示す図である。It is a figure which shows the structure of the provision system of the moving image delivery service which can apply this invention. 第1の実施形態によるデータ処理装置の構成例を示すブロック図である。It is a block diagram which shows the structural example of the data processor by 1st Embodiment. 第1の実施形態によるデータ処理装置の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the data processor by 1st Embodiment. 第2の実施形態によるデータ処理装置の構成例を示すブロック図である。It is a block diagram which shows the structural example of the data processor by 2nd Embodiment. 第2の実施形態によるデータ処理装置の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the data processor by 2nd Embodiment. 第2の実施形態によるデータ処理装置の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the data processor by 2nd Embodiment.

符号の説明Explanation of symbols

1…パーソナルコンピュータ
2…サーバ
3…インターネット
4−x…動画カメラ
101,102…マルチストリームパケット受信部
102,202…パケット振り分け部
103−x…xストリームフレーム格納部
104−x…xストリームフレーム数計数部
105−x,208−x…x周期フレーム数管理部
109,210…ゆらぎ統括管理部
110−x…コーデック−x
113…フレーム制御部
203−x…整合性チェック&修正部
204−x…ストリームNo.xフレーム格納部
205−x…No.x音声ストリーム格納部
206−x…ストリームNo.xフレーム数計数部
207−x…No.x音声パケット数計数部
211…ストリーム制御部
212−x…コーデックモジュール
213…スイッチ
DESCRIPTION OF SYMBOLS 1 ... Personal computer 2 ... Server 3 ... Internet 4-x ... Movie camera 101,102 ... Multi-stream packet receiving part 102,202 ... Packet distribution part 103-x ... x stream frame storage part 104-x ... x stream frame number count 105-x, 208-x ... x periodic frame number management unit 109, 210 ... fluctuation overall management unit 110-x ... codec-x
113: Frame control unit 203-x: Consistency check & correction unit 204-x: Stream No. x frame storage unit 205-x. x audio stream storage unit 206-x. x frame number counting section 207-x. x voice packet number counting unit 211 ... stream control unit 212-x ... codec module 213 ... switch

Claims (17)

パケット化された動画ストリームを複数同時に受信するパケット受信手段と、
前記パケット受信手段によって受信したパケットをパケット内の特定情報を判定してストリーム毎に振り分けるストリーム分割手段と、
前記ストリーム分割手段により分割されたストリームデータを画像フレーム単位にて格納する画像フレーム単位格納手段と、
前記画像フレーム単位格納手段により格納された各々のストリーム毎の画像フレームを、各々のストリームのフレームレートによって定期的に取り出すフレーム取り込み手段と、
前記画像フレーム単位格納手段により各々の動画ストリームのパケット化された各パケットが画像フレームデータとして格納され、当該格納される画像フレームデータのフレーム数を所定周期毎に計数するフレーム計数手段と、
前記各動画ストリームのフレーム計数手段の計数結果をとりまとめてネットワークゆらぎ変化量を検出し、前記ネットワークゆらぎ変化量を基に各々のストリームの補正タイミングを算出し、当該補正タイミングにより前記フレーム取り込み手段を補正するフレーム取り込み補正手段とを有することを特徴とするデータ処理装置。
A packet receiving means for simultaneously receiving a plurality of packetized video streams;
Stream dividing means for determining the specific information in the packet and distributing the packets received by the packet receiving means for each stream;
Image frame unit storage means for storing the stream data divided by the stream dividing means in image frame units;
Frame fetching means for periodically fetching image frames for each stream stored by the image frame unit storage means according to the frame rate of each stream;
Each packetized packet of each video stream is stored as image frame data by the image frame unit storage means, and a frame counting means for counting the number of frames of the stored image frame data every predetermined period;
Collecting the counting results of the frame counting means of each video stream, detecting the network fluctuation change amount, calculating the correction timing of each stream based on the network fluctuation change amount, and correcting the frame capturing means based on the correction timing A data processing apparatus comprising: a frame capturing correction unit that performs the processing.
前記パケット受信手段によって受信したパケットをストリーム毎に振り分けるための特定情報として、ラベルを用いることを特徴とする請求項1記載のデータ処理装置。   2. The data processing apparatus according to claim 1, wherein a label is used as the specific information for distributing the packet received by the packet receiving means for each stream. 前記パケット化された動画ストリームは、音声と多重化されていない単独の動画ストリームであることを特徴とする請求項1記載のデータ処理装置。   The data processing apparatus according to claim 1, wherein the packetized moving image stream is a single moving image stream that is not multiplexed with audio. 前記パケット化された動画ストリームは、音声と多重化されていない単独の動画ストリームで、MPEG−ES(ES: Elementary stream)であることを特徴とする請求項1記載のデータ処理装置。   2. The data processing apparatus according to claim 1, wherein the packetized moving picture stream is a single moving picture stream that is not multiplexed with audio and is an MPEG-ES (ES: Elementary stream). 前記フレーム取り込み手段は、動画ストリームのデコーダ又はコーデックであることを特徴とする請求項1記載のデータ処理装置。   2. The data processing apparatus according to claim 1, wherein the frame capturing means is a video stream decoder or codec. パケット化された動画ストリームを複数同時に受信するパケット受信手段と、
前記パケット受信手段によって受信したパケットをパケット内の特定情報を判定してストリーム毎に振り分けるストリーム分割手段と、
前記ストリーム分割手段により分割されたストリームデータをパケット内の特定情報を判定して画像フレーム単位にて格納する画像フレーム単位格納手段と、
前記画像フレーム単位格納手段により格納された各々のストリーム毎の画像フレームを、各々のストリームのフレームレートによって定期的に取り出してデコードを行うフレームデコード手段と、
前記画像フレーム単位格納手段により各々の動画ストリームのパケット化された各パケットが画像フレームデータとして格納され、当該格納される画像フレームデータのフレーム数を所定周期毎に計数するフレーム計数手段と、
前記各フレーム計数手段によって計数されている計数結果を、前記フレーム単位格納手段によって1フレームが揃うタイミングにて次処理に通知する計数結果通知手段と、
前記各計数結果通知手段の計数結果をとりまとめてネットワークゆらぎ変化量を検出し、前記ネットワークゆらぎ変化量を基に各々のストリームの補正タイミングを算出し、当該補正タイミングにより前記フレームデコード手段を補正するフレームデコード補正手段とを有することを特徴とするデータ処理装置。
A packet receiving means for simultaneously receiving a plurality of packetized video streams;
Stream dividing means for determining the specific information in the packet and distributing the packets received by the packet receiving means for each stream;
Image frame unit storage means for determining the specific information in the packet and storing the stream data divided by the stream dividing means in image frame units;
Frame decoding means for periodically extracting and decoding image frames for each stream stored by the image frame unit storage means according to the frame rate of each stream;
Each packetized packet of each video stream is stored as image frame data by the image frame unit storage means, and a frame counting means for counting the number of frames of the stored image frame data every predetermined period;
Counting result notifying means for notifying the next processing of the counting result counted by each frame counting means at the timing when one frame is aligned by the frame unit storing means;
A frame for detecting a network fluctuation change amount by collecting the count results of the respective count result notification means, calculating a correction timing for each stream based on the network fluctuation change amount, and correcting the frame decoding means based on the correction timing. A data processing apparatus comprising: a decoding correction unit.
前記パケット受信手段によって受信したパケットをストリーム毎に振り分けるための特定情報として、ラベルを用いることを特徴とする請求項6記載のデータ処理装置。   7. The data processing apparatus according to claim 6, wherein a label is used as the specific information for distributing the packet received by the packet receiving means for each stream. 前記パケット化された動画ストリームは、音声と多重化されていない単独の動画ストリームであることを特徴とする請求項6記載のデータ処理装置。   7. The data processing apparatus according to claim 6, wherein the packetized moving image stream is a single moving image stream that is not multiplexed with audio. 前記パケット化された動画ストリームは、音声と多重化されていない単独の動画ストリームで、MPEG−ES(ES: Elementary stream)であることを特徴とする請求項6記載のデータ処理装置。   7. The data processing apparatus according to claim 6, wherein the packetized moving image stream is a single moving image stream that is not multiplexed with audio and is an MPEG-ES (ES: Elementary stream). 前記フレーム取り込み手段は、動画ストリームのデコーダ又はコーデックであることを特徴とする請求項6記載のデータ処理装置。   7. The data processing apparatus according to claim 6, wherein the frame capturing means is a video stream decoder or codec. パケット化された動画ストリームを複数同時に受信するパケット受信ステップと、
前記パケット受信ステップによって受信したパケットをパケット内の特定情報を判定してストリーム毎に振り分けるストリーム振り分けステップと、
前記ストリーム振り分けステップにより振り分けられたストリームデータをパケット内の特定情報を判定して画像フレーム単位にてメモリに格納する画像フレーム単位格納ステップと、
前記画像フレーム単位格納ステップにより格納された各々のストリーム毎の画像フレームを、各々のストリームのフレームレートによって定期的に取り出すフレーム取り込みステップと、
前記画像フレーム単位格納ステップにより各々の動画ストリームのパケット化された各パケットが画像フレームデータとしてメモリに格納され、当該格納される画像フレームデータのフレーム数を所定周期毎に計数するフレーム計数ステップと、
前記各動画ストリームのフレーム計数ステップの計数結果をとりまとめてネットワークゆらぎ変化量を計算し、前記ネットワークゆらぎ変化量を基に各々のストリームの補正タイミングを算出し、当該補正タイミングにより前記フレーム取り込みステップを補正するフレーム取り込み補正ステップとを有することを特徴とするデータ処理方法。
A packet receiving step for simultaneously receiving a plurality of packetized video streams;
A stream distribution step of determining specific information in the packet and distributing the packet received by the packet reception step for each stream; and
An image frame unit storage step for determining the specific information in the packet and storing the stream data distributed in the stream distribution step in a memory in image frame units;
A frame capturing step of periodically taking out the image frame for each stream stored in the image frame unit storing step according to the frame rate of each stream;
A packet counting step in which each packetized packet of each moving image stream is stored in a memory as image frame data in the image frame unit storing step, and the number of frames of the stored image frame data is counted every predetermined period;
The network fluctuation change amount is calculated by collecting the counting results of the frame counting steps of each video stream, the correction timing of each stream is calculated based on the network fluctuation change amount, and the frame capturing step is corrected based on the correction timing. And a frame capturing correction step.
前記パケット受信ステップによって受信したパケットをストリーム毎に振り分けるための特定情報として、ラベルを用いることを特徴とする請求項11記載のデータ処理方法。   12. The data processing method according to claim 11, wherein a label is used as the specific information for distributing the packet received by the packet receiving step for each stream. 前記パケット化された動画ストリームは、音声と多重化されていない単独の動画ストリームであることを特徴とする請求項11記載のデータ処理方法。   12. The data processing method according to claim 11, wherein the packetized moving image stream is a single moving image stream that is not multiplexed with audio. 前記パケット化された動画ストリームは、音声と多重化されていない単独の動画ストリームで、MPEG−ES(ES: Elementary stream)であることを特徴とする請求項11記載のデータ処理方法。   12. The data processing method according to claim 11, wherein the packetized moving picture stream is a single moving picture stream that is not multiplexed with audio and is an MPEG-ES (ES: Elementary stream). 前記フレーム取り込みステップは、動画ストリームのデコーダ又はコーデックステップを兼ねるステップであることを特徴とする請求項11記載のデータ処理方法。   12. The data processing method according to claim 11, wherein the frame capturing step also serves as a video stream decoder or codec step. パケット化された動画ストリームを複数同時に受信するパケット受信ステップと、
前記パケット受信ステップによって受信したパケットをパケット内の特定情報を判定してストリーム毎に振り分けるストリーム振り分けステップと、
前記ストリーム振り分けステップにより振り分けられたストリームデータをパケット内の特定情報を判定して画像フレーム単位にてメモリに格納する画像フレーム単位格納ステップと、
前記画像フレーム単位格納ステップにより格納された各々のストリーム毎の画像フレームを、各々のストリームのフレームレートによって定期的に取り出すフレーム取り込みステップと、
前記画像フレーム単位格納ステップにより各々の動画ストリームのパケット化された各パケットが画像フレームデータとしてメモリに格納され、当該格納される画像フレームデータのフレーム数を所定周期毎に計数するフレーム計数ステップと、
前記各動画ストリームのフレーム計数ステップの計数結果をとりまとめてネットワークゆらぎ変化量を計算し、前記ネットワークゆらぎ変化量を基に各々のストリームの補正タイミングを算出し、当該補正タイミングにより前記フレーム取り込みステップを補正するフレーム取り込み補正ステップとをコンピュータに実行させるためのプログラム。
A packet receiving step for simultaneously receiving a plurality of packetized video streams;
A stream distribution step of determining specific information in the packet and distributing the packet received by the packet reception step for each stream; and
An image frame unit storage step for determining the specific information in the packet and storing the stream data distributed in the stream distribution step in a memory in image frame units;
A frame capturing step of periodically taking out image frames for each stream stored in the image frame unit storing step according to a frame rate of each stream;
A packet counting step in which each packetized packet of each moving image stream is stored in a memory as image frame data in the image frame unit storing step, and the number of frames of the stored image frame data is counted every predetermined period;
The network fluctuation change amount is calculated by collecting the counting results of the frame counting steps of each video stream, the correction timing of each stream is calculated based on the network fluctuation change amount, and the frame capturing step is corrected based on the correction timing. A program for causing a computer to execute a frame capturing correction step.
請求項16記載のプログラムを記憶したことを特徴とするコンピュータ読み取り可能な記憶媒体。   A computer-readable storage medium storing the program according to claim 16.
JP2005147070A 2005-05-19 2005-05-19 Data processing apparatus and data processing method Pending JP2006325020A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005147070A JP2006325020A (en) 2005-05-19 2005-05-19 Data processing apparatus and data processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005147070A JP2006325020A (en) 2005-05-19 2005-05-19 Data processing apparatus and data processing method

Publications (1)

Publication Number Publication Date
JP2006325020A true JP2006325020A (en) 2006-11-30

Family

ID=37544348

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005147070A Pending JP2006325020A (en) 2005-05-19 2005-05-19 Data processing apparatus and data processing method

Country Status (1)

Country Link
JP (1) JP2006325020A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2568653A1 (en) 2011-09-09 2013-03-13 Sony Corporation Transmitting device, receiving device, communication system, transmission method, reception method, and program
US8982219B2 (en) 2010-04-09 2015-03-17 Sony Corporation Receiving device and camera system
CN108347645A (en) * 2018-01-19 2018-07-31 浙江大华技术股份有限公司 A kind of method and device that video frame decoding is shown
CN112383819A (en) * 2020-11-06 2021-02-19 平安科技(深圳)有限公司 Video frame extraction method and related equipment

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8982219B2 (en) 2010-04-09 2015-03-17 Sony Corporation Receiving device and camera system
EP2568653A1 (en) 2011-09-09 2013-03-13 Sony Corporation Transmitting device, receiving device, communication system, transmission method, reception method, and program
US8937973B2 (en) 2011-09-09 2015-01-20 Sony Corporation Transmitting device, receiving device, communication system, transmission method, reception method, and program
CN108347645A (en) * 2018-01-19 2018-07-31 浙江大华技术股份有限公司 A kind of method and device that video frame decoding is shown
CN112383819A (en) * 2020-11-06 2021-02-19 平安科技(深圳)有限公司 Video frame extraction method and related equipment
CN112383819B (en) * 2020-11-06 2022-03-11 平安科技(深圳)有限公司 Video frame extraction method and related equipment
WO2022095423A1 (en) * 2020-11-06 2022-05-12 平安科技(深圳)有限公司 Video frame extraction method and related device

Similar Documents

Publication Publication Date Title
US7613381B2 (en) Video data processing method and video data processing apparatus
US9237108B2 (en) Jitter buffer emulation for RTP streams in passive network monitoring systems
JP4936751B2 (en) Rapid media channel switching mechanism and access network node including the mechanism
CN107231563A (en) Method for processing video frequency and device
US20100064054A1 (en) Remote fast forward and rewind functionality for client devices
WO2012047004A2 (en) Method for transmitting a scalable http stream for natural reproduction upon the occurrence of expression-switching during http streaming
CN101087407A (en) Method and apparatus for instant channel change
US20040125816A1 (en) Method and apparatus for providing a buffer architecture to improve presentation quality of images
US20130219073A1 (en) Adaptive display streams
WO2013098810A1 (en) Adaptive forward error correction (fec) system and method
US9654301B2 (en) Method, system and software product for streaming content
KR101278632B1 (en) Method for performing data transport over a serial bus using internet protocol and apparatus for use in the method
Ramos Mitigating IPTV zapping delay
US20030152080A1 (en) System and method for fault tolerant multimedia communication
CN103339930B (en) Cooperation media system manages the method and apparatus of content assignment on multiple terminal unit
JP2006325020A (en) Data processing apparatus and data processing method
US8233549B2 (en) Video receiving apparatus and video receiving method to address error in received video
CN101026555A (en) Discarded packet indicator
US9363574B1 (en) Video throttling based on individual client delay
JP2011114490A (en) Broadcast material transmitting apparatus and data transmitting method
JP2009171294A (en) Video distribution system, video relay device, and video relay method
JP4295079B2 (en) Special video data processing method, special video data processing apparatus and special video data processing system
JP5562436B2 (en) Video signal output method and video information reproducing apparatus
JP4457349B2 (en) MPEG content synchronous playback method, client terminal, and MPEG content synchronous playback program
US20070274313A1 (en) Method for Routing Data Frames from a Data Content Source to a Destination Device with Buffering of Specific Data and Device Thereof