[go: up one dir, main page]

JP2005229587A - Multiplexing conversion device - Google Patents

Multiplexing conversion device Download PDF

Info

Publication number
JP2005229587A
JP2005229587A JP2005005731A JP2005005731A JP2005229587A JP 2005229587 A JP2005229587 A JP 2005229587A JP 2005005731 A JP2005005731 A JP 2005005731A JP 2005005731 A JP2005005731 A JP 2005005731A JP 2005229587 A JP2005229587 A JP 2005229587A
Authority
JP
Japan
Prior art keywords
data
packet
sample
multiplexing
missing
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
JP2005005731A
Other languages
Japanese (ja)
Other versions
JP2005229587A5 (en
Inventor
Tadamasa Toma
正真 遠間
Yoshinori Matsui
義徳 松井
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 JP2005005731A priority Critical patent/JP2005229587A/en
Publication of JP2005229587A publication Critical patent/JP2005229587A/en
Publication of JP2005229587A5 publication Critical patent/JP2005229587A5/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

【課題】 ユーザに対して正しく復号できない動画像データを表示してしまうことを防止することができる多重化方式変換装置を提供する。
【解決手段】 多重化方式変換装置の変換部103は、TSパケットのパケットロスを判定し、パケットロスが検出された際には、エラー処理を行い、エラー処理後のペイロードデータを出力するパケットロス判定部202と、入力されたAUのデータおよびPESヘッダにおける表示時間に基づいて、エラー情報を含むmoov、およびmdatを作成するBox作成部206とを備える。
【選択図】 図2

PROBLEM TO BE SOLVED: To provide a multiplexing conversion device capable of preventing the display of moving image data that cannot be correctly decoded for a user.
A conversion unit 103 of a multiplexing system conversion apparatus determines a packet loss of a TS packet, and when a packet loss is detected, performs error processing and outputs packet data after error processing. The determination unit 202 includes a box creation unit 206 that creates moov including error information and mdat based on the input AU data and the display time in the PES header.
[Selection] Figure 2

Description

本発明は、動画像、音声などの符号化メディアデータの多重化方式を変換して出力する多重化方式変換装置に関する。   The present invention relates to a multiplexing system conversion apparatus that converts a multiplexing system of encoded media data such as moving images and voices and outputs the converted data.

近年、蓄積メディアや通信ネットワークの大容量化、あるいは伝送技術の進歩にともない、動画や音声などの符号化マルチメディアデータを扱う機器や、サービスが普及してきた。例えば、放送分野においては、従来のアナログ放送に代わり、デジタル符号化されたメディアデータの放送が開始された。現在のデジタル放送は、固定受信のみを対象としているが、将来的には携帯電話などの移動体向けの放送も予定されている。また、通信分野においても、第3世代の携帯電話向けの動画配信サービスが立ち上がるなど、固定端末と携帯端末の双方でマルチメディアデータを扱う環境が整ってきている。これらの背景を鑑みると、SD(Secure Digital)カードなどのメモリカード、あるいはDVD-RAM(Digital Versatile Disk-Rewritable)などの光ディスクに、放送や、インターネット経由で受信したコンテンツデータを記録し、機器間でコンテンツデータを共有するといった使用方法の普及が見込まれる。   In recent years, devices and services that handle encoded multimedia data such as moving images and voices have become widespread as storage media and communication networks have increased in capacity and transmission technology has advanced. For example, in the broadcasting field, broadcasting of digitally encoded media data has started instead of conventional analog broadcasting. The current digital broadcasting is intended only for fixed reception, but in the future broadcasting for mobiles such as mobile phones is also planned. Also in the communication field, an environment for handling multimedia data on both fixed terminals and mobile terminals has been established, such as the launch of a video distribution service for third-generation mobile phones. In view of these backgrounds, content data received via broadcasting or the Internet is recorded on a memory card such as an SD (Secure Digital) card or an optical disc such as a DVD-RAM (Digital Versatile Disk-Rewritable), and it is used between devices. It is expected that usage methods such as sharing content data will spread.

メディアデータを放送、蓄積、あるいはネットワーク経由で配信する際には、メディアデータの再生に必要なヘッダ情報とメディアデータとが多重化される。多重化にあたっては、放送やDVDなどの蓄積機器向け、および移動体向けに、それぞれ標準の多重化方式が規格化されている。まず、デジタル放送やDVDにおいては、ISO/IEC JTC1/SC29/WG 11 (International Standardisation Organization/International Engineering Consortium)において標準化されたMPEG−2(Moving Picture Expert Group)システム規格が使用される。また、携帯端末では、第3世代の移動体通信システムの規格化を目的とする国際標準化団体である3GPP(Third Generation Partnership Project)で、無線による動画配信規格として定められたTS26.234(Transparent end-to-end packet switched streaming service)において、ISO/IEC JTC1/SC29/WG 11で標準化されたMP4ファイルフォーマットが採用されている。   When media data is broadcast, stored, or distributed via a network, header information and media data necessary for reproducing the media data are multiplexed. In multiplexing, standard multiplexing schemes are standardized for storage devices such as broadcast and DVD, and for mobile units. First, in digital broadcasting and DVD, the MPEG-2 (Moving Picture Expert Group) system standard standardized by ISO / IEC JTC1 / SC29 / WG11 (International Standardization Organization / International Engineering Consortium) is used. In mobile terminals, TS26.234 (Transparent end), which was established as a wireless video distribution standard by the 3GPP (Third Generation Partnership Project), an international standardization organization aimed at standardizing third-generation mobile communication systems. -to-end packet switched streaming service) adopts the MP4 file format standardized by ISO / IEC JTC1 / SC29 / WG 11.

また、動画の符号化方式としては、現在普及しているMPEG−2 VisualやMPEG−4 Visualの後継規格としてMPEG−4 AVC(Advanced Video Coding)が標準化されたことから、今後MPEG−4 AVCの符号化ビデオデータをMPEG−2システム規格やMP4ファイルフォーマット(以降、MP4と呼ぶ)により多重化し、放送、蓄積あるいは配信することが予想される。   In addition, since MPEG-4 AVC (Advanced Video Coding) has been standardized as a successor to the currently popular MPEG-2 Visual and MPEG-4 Visual as a moving picture encoding system, MPEG-4 AVC will be used in the future. It is expected that encoded video data is multiplexed, broadcasted, stored, or distributed according to the MPEG-2 system standard or MP4 file format (hereinafter referred to as MP4).

以下に、MPEG−2システム、およびMP4における符号化データ多重化方法の概要について説明する。MPEG−2システム、およびMP4では、符号化データを扱う際の基本単位としてアクセスユニット(AU)を使用するため、まずAUの構造について説明する。AUとは、1ピクチャ分の符号化データを含む単位であり、MPEG−4 AVCにおけるAUデータは、図24に示す構造をもつ。MPEG−4 AVCでは、ピクチャの復号に必須のデータに加えて、復号に必須でないSEI(Supplemental Enhancement Information)と呼ばれる補助情報や、AUの境界情報などをAUデータに含めることができ、これらのデータは全てNAL(Network Adaptation Layer)ユニットに格納される。なお、MPEG−2システムでは、Access Unit Delimiterと呼ばれるAUの開始を示すNALユニットが、必ずAUの先頭に付加される。NALユニットは、図24(a)に示すようにヘッダとペイロードから構成され、ヘッダのサイズは1バイトであり、ペイロードに格納されるデータのタイプ(以降、NALユニットタイプと呼ぶ)を示すフィールドなどが含まれる。NALユニットタイプは、スライスやSEIなどデータの種類別に値が定義されており、NALユニットに格納されたデータの種類を取得する際にはNALユニットタイプを参照する。AUには、図24(b)および(c)に示すように、1ピクチャ分のスライスデータに加えて、ヘッダ情報やSEIなどのNALユニットが格納されるが、NALユニットにはNALユニットデータの境界を識別するための情報が存在しないため、AU格納時には、各NALユニットの先頭に境界情報が付加することができる。境界情報としては、図24(b)のように0x000001の3バイトで示されるスタートコードプレフィックスを付加する方法(以降、バイトストリームフォーマットと呼ぶ)と、図24(c)のようにNALユニットのサイズを付加する方法(以降、NALサイズフォーマットと呼ぶ)の2種類がある。なお、AUの先頭NALユニット、および特定のNALユニットタイプ値をもつNALユニットに対しては、スタートコードプレフィックスの前に、zero_byte(値が0x00である1バイト)を1つ以上付加することが規定されている。MPEG−2システムでは、バイトストリームフォーマットが使用され、MP4ではNALサイズフォーマットが使用される。   The outline of the encoded data multiplexing method in the MPEG-2 system and MP4 will be described below. In the MPEG-2 system and MP4, since an access unit (AU) is used as a basic unit when handling encoded data, the structure of the AU will be described first. AU is a unit including encoded data for one picture, and AU data in MPEG-4 AVC has a structure shown in FIG. In MPEG-4 AVC, in addition to data essential for picture decoding, auxiliary information called SEI (Supplemental Enhancement Information) that is not essential for decoding, AU boundary information, and the like can be included in AU data. Are stored in a NAL (Network Adaptation Layer) unit. In the MPEG-2 system, a NAL unit indicating the start of an AU called “Access Unit Delimiter” is always added to the head of the AU. The NAL unit is composed of a header and a payload as shown in FIG. 24A, the header size is 1 byte, and a field indicating the type of data stored in the payload (hereinafter referred to as a NAL unit type). included. The NAL unit type has a value defined for each type of data such as slice and SEI, and refers to the NAL unit type when acquiring the type of data stored in the NAL unit. As shown in FIGS. 24B and 24C, in addition to slice data for one picture, the AU stores NAL units such as header information and SEI. The NAL unit stores NAL unit data. Since there is no information for identifying the boundary, the boundary information can be added to the head of each NAL unit when storing the AU. The boundary information includes a method of adding a start code prefix indicated by 3 bytes of 0x000001 as shown in FIG. 24B (hereinafter referred to as a byte stream format), and the size of the NAL unit as shown in FIG. There are two types of methods (hereinafter referred to as NAL size format). Note that it is stipulated that one or more zero_bytes (one byte whose value is 0x00) is added before the start code prefix for the head NAL unit of the AU and a NAL unit having a specific NAL unit type value. ing. In the MPEG-2 system, the byte stream format is used, and in MP4, the NAL size format is used.

次に、スライス、およびヘッダ情報について詳しく説明する。スライスは、IDR(Instantaneous Decoder Refresh)スライスとそれ以外のスライスの2種類に分けられる。IDRスライスとは、画面内符号化されたスライスデータであり、後述するSPS(Sequence Parameter Set)などのヘッダ情報はIDRスライスにおいてのみ切り替えることができる。ピクチャにIDRスライスが含まれる際には、同一ピクチャ内の他のスライスも全てIDRスライスであるため、以降、IDRスライスを含むAUをIDR AUと呼ぶことにする。また、IDR AUから、次のIDR AUの直前AUにより構成される単位をシーケンスと呼び、AUのスライスデータを復号する際には、シーケンス内のAUのみが参照されるため、シーケンス単位でランダムアクセスすることができる。次に、ヘッダ情報にはSPSとPPS(Picture Parameter Set)の2種類があり、SPSはシーケンス単位で固定のヘッダ情報であり、PPSはピクチャ単位で切り替えることのできるヘッダ情報である。SPSとPPSは、ともに複数もつことができ、個々のSPS、あるいはPPSはインデックス番号により区別される。また、1NALユニットには1つのSPS、あるいはPPSが格納される。各ピクチャが参照するSPS、およびPPSのインデックス番号は次のように取得される。まず、ピクチャが参照するPPSのインデックス番号は、スライスデータのヘッダ部に示される。次に、PPSには、PPSが参照するSPSのインデックス番号が示されるため、ピクチャが参照するPPSを解析することにより、ピクチャが参照するSPSのインデックス番号を取得する。ピクチャが参照するSPSおよびPPSは、ピクチャのスライスデータ復号時に必須となる。   Next, the slice and header information will be described in detail. The slices are divided into two types: IDR (Instantaneous Decoder Refresh) slices and other slices. An IDR slice is slice data that is intra-coded, and header information such as SPS (Sequence Parameter Set) described later can be switched only in the IDR slice. When an IDR slice is included in a picture, all other slices in the same picture are also IDR slices. Therefore, an AU including an IDR slice is hereinafter referred to as an IDR AU. Also, the unit composed of the AU immediately before the next IDR AU is called a sequence from the IDR AU, and when decoding the AU slice data, only the AU in the sequence is referenced, so that random access is made in sequence units. can do. Next, there are two types of header information, SPS and PPS (Picture Parameter Set), SPS is fixed header information in sequence units, and PPS is header information that can be switched in picture units. There can be a plurality of SPS and PPS, and each SPS or PPS is distinguished by an index number. Further, one SPS or PPS is stored in one NAL unit. The index numbers of SPS and PPS that each picture refers to are obtained as follows. First, the PPS index number referenced by the picture is indicated in the header portion of the slice data. Next, since the PPS indicates the index number of the SPS referred to by the PPS, the index number of the SPS referenced by the picture is obtained by analyzing the PPS referenced by the picture. SPS and PPS referred to by a picture are indispensable when decoding slice data of the picture.

次に、放送において、MPEG−2システムによりAUデータを多重化する際の方法について説明する。MPEG−2システムでは、符号化データは、まずPES(Packetized Elementary Stream)パケットに多重化され、さらにPESパケットがTS(Transport Stream)パケットに多重化される。図25の(a)と(b)に、それぞれPESパケットとTSパケットの構造を示す。PESパケットのペイロードには、アクセスユニット(AU)データが格納される。図25(a)の(1)から(3)は、PESパケットのペイロードへのAUデータの格納例を示すものであり、(1)、(2)に示すように1以上のAUをまとめて格納してもよいし、(3)に示すようにAUデータを分割して格納してもよい。さらに、ペイロードには、AUデータとは別に、スタッフィングデータを含めることもできる。PESパケットのヘッダは、0x000001の3バイトで示されるスタートコードプレフィックス、および1バイトのストリームIDから構成される計4バイトのスタートコードから開始する。ストリームIDとは、PESパケットのペイロードデータに含まれる符号化データの種類を示す識別番号であり、MPEG−4AVCでは、0xE0以上0xEF以下の任意の値をとることができる。ヘッダには、ペイロード内で開始する先頭AUの復号時間、および表示時間を格納することができるが、全てのPESパケットに必ずこれらの時間情報が格納されるわけではなく、時間情報が格納されないPESパケットも存在する。PESパケットのヘッダにより復号時間、あるいは表示時間が示されないAUの時間情報が必要である際には、AUデータを解析して、直前AUとの復号時間、あるいは表示時間の差分値を取得する。なお、PESパケットの開始位置は、TSパケットのペイロードデータ内で、4バイトのスタートコードをサーチすることにより検出する。一方、PESパケットのデータは、図25の(b)に示すように、TSパケットのペイロードに分割して格納される。TSパケットは、サイズが188バイトである固定長のパケットであり、4バイトのヘッダ、アダプテーションフィールド、ペイロードデータから構成される。なお、アダプテーションフィールドは、ヘッダ内の特定のフラグがセットされている場合にのみ存在する。ヘッダには、TSパケットが伝送するデータの種類を示すPIDと呼ばれる識別番号と、continuity_counterと呼ばれるカウンタが含まれる。continuity_counterは、4ビットのフィールドであり、同一PIDのTSパケットにおいては、送信順に1ずつ増加し、最大値に達すると循環する。TSパケットのPIDと、TSパケットが伝送するデータの種類との対応関係は、別途TSパケットにより送信されるプログラム情報によって提供される。このため、TSパケット受信時には、まず、TSパケットのPIDを取得し、PIDの値に応じてパケットを振り分ける。例えば、受信開始時に取得したプログラム情報により、MPEG−4 AVCのデータはPIDが32であるTSパケットにより伝送されることが示される際には、PIDが32であるTSパケットを取得することにより、MPEG−4 AVCのAUデータを取得することができる。ここで、受信したTSパケットのcontinuity_counter値にギャップが発生している際には、伝送路においてパケットロスが発生したことを示す。また、TSパケットからAUデータを分離する際には、TSパケットのペイロードデータからPESパケットを分離し、分離されたPESパケットからAUのデータを分離する。   Next, a method for multiplexing AU data by the MPEG-2 system in broadcasting will be described. In the MPEG-2 system, encoded data is first multiplexed into a PES (Packetized Elementary Stream) packet, and further the PES packet is multiplexed into a TS (Transport Stream) packet. FIGS. 25A and 25B show the structures of the PES packet and the TS packet, respectively. Access unit (AU) data is stored in the payload of the PES packet. (1) to (3) in FIG. 25 (a) show an example of storing AU data in the payload of the PES packet. As shown in (1) and (2), one or more AUs are grouped together. The AU data may be divided and stored as shown in (3). Further, the stuffing data can be included in the payload separately from the AU data. The header of the PES packet starts with a start code prefix of 3 bytes of 0x000001 and a 4-byte start code composed of a 1-byte stream ID. The stream ID is an identification number indicating the type of encoded data included in the payload data of the PES packet. In MPEG-4 AVC, the stream ID can take any value from 0xE0 to 0xEF. The header can store the decoding time and display time of the first AU starting in the payload, but these time information is not necessarily stored in all PES packets, and PES in which time information is not stored is stored. There are also packets. When AU time information whose decoding time or display time is not indicated by the header of the PES packet is required, AU data is analyzed, and a difference value of the decoding time or display time from the immediately preceding AU is acquired. The start position of the PES packet is detected by searching for a 4-byte start code in the payload data of the TS packet. On the other hand, as shown in FIG. 25B, the data of the PES packet is divided and stored in the payload of the TS packet. The TS packet is a fixed-length packet having a size of 188 bytes, and includes a 4-byte header, an adaptation field, and payload data. Note that the adaptation field exists only when a specific flag in the header is set. The header includes an identification number called PID indicating the type of data transmitted by the TS packet and a counter called continuity_counter. The continuity_counter is a 4-bit field. In a TS packet with the same PID, the continuity_counter increases by 1 in the order of transmission and circulates when the maximum value is reached. The correspondence between the PID of the TS packet and the type of data transmitted by the TS packet is provided by program information separately transmitted by the TS packet. For this reason, when a TS packet is received, first, the PID of the TS packet is acquired, and the packet is distributed according to the value of the PID. For example, when the program information acquired at the start of reception indicates that MPEG-4 AVC data is transmitted by a TS packet with a PID of 32, by acquiring the TS packet with a PID of 32, MPEG-4 AVC AU data can be acquired. Here, when a gap occurs in the continuity_counter value of the received TS packet, it indicates that a packet loss has occurred in the transmission path. Further, when separating AU data from TS packets, PES packets are separated from payload data of TS packets, and AU data is separated from the separated PES packets.

最後に、MP4におけるAUデータの多重化方法について説明する。MP4では、サンプル単位のヘッダ情報やメディアデータは、Boxと呼ばれるオブジェクト単位で管理する。ここで、サンプルとは、MP4においてメディアデータを扱う際の基本単位であり、1サンプルは1AUに相当する。各サンプルには、復号時間順で昇順となるようにサンプル番号が振られ、サンプル番号は、サンプル毎に1ずつ増加する。図26(a)はBoxの構造を示し、以下のフィールドから構成される。
size:sizeフィールドも含めたBox全体のサイズ
type:Boxの識別子であり、通常はアルファベット4文字で表される。フィールド長は4バイトであり、MP4ファイル内でBoxを検索する際には、連続する4バイト分のデータがtypeフィールドの識別子と一致するかどうかを判定することにより行う。
version:Boxのバージョン番号
flags:Box毎に設定されるフラグ情報
データ:ヘッダ情報やメディアデータが格納される。
Finally, a method for multiplexing AU data in MP4 will be described. In MP4, header information and media data in units of samples are managed in units of objects called boxes. Here, a sample is a basic unit for handling media data in MP4, and one sample corresponds to 1 AU. Each sample is assigned a sample number so as to be in ascending order in decoding time order, and the sample number increases by one for each sample. FIG. 26 (a) shows the box structure, which is composed of the following fields.
size: Size of the entire Box including the size field
type: A box identifier, usually represented by four alphabetic characters. The field length is 4 bytes, and when a Box is searched in the MP4 file, it is determined by determining whether or not the continuous 4 bytes of data matches the identifier of the type field.
version: Box version number
flags: Flag information data set for each box: header information and media data are stored.

なお、versionとflagsは必須でないため、Boxによってはこれらのフィールドは存在しない。以後、Boxの参照にはtypeフィールドの識別子を使用することとし、例えばtypeが'moov'であるBoxは、moovと呼ぶ。MP4ファイルにおけるBox構造を図26(b)に示す。MP4ファイルは、ftyp、moov、mdat、あるいはmoofから構成され、ftypがファイルの先頭に配置される。ftypは、MP4ファイルを識別するための情報を含み、mdatには、メディアデータが格納される。mdatに含まれる各メディアデータはトラックと呼ばれ、各トラックはトラックIDにより識別される。次に、moovにはmdatの各トラックに含まれるサンプルについてのヘッダ情報が格納される。moov内では、図27(a)に示すように、Boxが階層的に配置され、オーディオ、ビデオなどの各メディアトラックにヘッダ情報は、それぞれ別々のtrakに格納される。trak内においても、Boxが階層的に配置され、サンプルのサイズや復号時間、表示開始時間、あるいはランダムアクセス可能なサンプルの情報などがstbl内の各Boxに格納される(図27(b))。ランダムアクセス可能なサンプルはシンクサンプルと呼ばれ、シンクサンプルのサンプル番号の一覧は、stbl内のstssにより示される。上記では、トラック内の全サンプルのヘッダ情報をmoovに格納していたが、トラックを分割してフラグメント化し、フラグメント単位でヘッダ情報を格納することもできる。トラックを分割した単位に対するヘッダ情報は、moofにより示され、図28の例では、mdat #1に格納されるサンプルのヘッダ情報を、moof #1に格納することができる。   In addition, since version and flags are not essential, these fields do not exist depending on the Box. Hereinafter, the identifier of the type field is used to refer to Box. For example, a Box whose type is 'moov' is called moov. The Box structure in the MP4 file is shown in FIG. The MP4 file is composed of ftyp, moov, mdat, or moof, and ftyp is arranged at the head of the file. ftyp includes information for identifying the MP4 file, and media data is stored in mdat. Each media data included in mdat is called a track, and each track is identified by a track ID. Next, header information about samples included in each track of mdat is stored in moov. In moov, as shown in FIG. 27 (a), Boxes are arranged hierarchically, and header information is stored in separate traks for each media track such as audio and video. Even in trak, Boxes are arranged in a hierarchical manner, and sample size, decoding time, display start time, information on randomly accessible samples, and the like are stored in each Box in stbl (FIG. 27 (b)). . Randomly accessible samples are called sync samples, and a list of sample numbers of sync samples is indicated by stss in stbl. In the above description, the header information of all the samples in the track is stored in moov. However, the track can be divided and fragmented, and header information can be stored in fragment units. The header information for the unit obtained by dividing the track is indicated by moof. In the example of FIG. 28, the header information of the sample stored in mdat # 1 can be stored in moof # 1.

ここで、携帯端末において受信した放送データを、携帯電話から電子メールに添付して送信するケースを考えてみる。3GPPでは、電子メールにおいて動画像や音声などを扱う際には、メディアデータをMP4で多重化することが規定されている。このため、電子メール送信時には、多重化方式をTSからMP4へ変換する必要がある。以下に、従来の多重化方式変換装置において、MPEG−4 AVCの符号化データが多重化されたTSパケットのパケット列を、MP4ファイルに変換する際の動作について説明する(例えば特許文献1参照)。なお、変換後のMP4においては、フラグメントは使用しないものとする。図29は、変換動作を示すフローチャートである。ステップ101では、入力されたTSパケットのペイロードからPESパケットの開始位置を検出することにより、PESパケットのデータを分離する。次に、ステップ102では、分離されたPESパケットのペイロードデータから、AUの開始位置を検出する。AUの開始位置が検出されるまでステップ101とステップ102を繰り返し(ループA)、検出された時点で、1AU分のAUデータを分離する。ステップ103では、PESヘッダに示される表示時間情報を取得し、ステップ104では、moov、およびmdatを作成する。最終TSパケットの処理が完了するまでステップ101からステップ104(ループB)の処理を繰り返し、メディアデータの全AUを処理した時点で、ループBを終了し、ステップ105において、moov、およびmdatのデータを連結し、MP4ファイルの作成を完了する。図30は、ステップ104の処理の詳細を示すフローチャートである。ステップ201において、AUデータを解析し、moov内のBoxを作成するために必要なヘッダ情報を取得する。ステップ202では、AUを構成するNALユニットの格納形式を、バイトストリームフォーマットからNALサイズフォーマットに変換する。ステップ203では、ステップ201において取得したAUのヘッダ情報をもとに、moov内のBoxデータを作成し、ステップ204ではmdatデータを作成する。なお、サンプルのサイズ、および復号時間情報など、サンプル毎のヘッダ情報を格納するBoxは、トラック内の全AUの処理が完了した時点で作成が完了する。
特開2003−114845号公報
Consider a case in which broadcast data received at a mobile terminal is transmitted from a mobile phone as an attachment to an e-mail. 3GPP stipulates that media data is multiplexed by MP4 when handling moving images, voices, and the like in electronic mail. For this reason, it is necessary to convert the multiplexing method from TS to MP4 at the time of e-mail transmission. The operation when a packet sequence of a TS packet multiplexed with MPEG-4 AVC encoded data is converted into an MP4 file in a conventional multiplexing system conversion apparatus will be described below (see, for example, Patent Document 1). . In the converted MP4, fragments are not used. FIG. 29 is a flowchart showing the conversion operation. In step 101, the data of the PES packet is separated by detecting the start position of the PES packet from the payload of the input TS packet. Next, in step 102, the start position of the AU is detected from the payload data of the separated PES packet. Steps 101 and 102 are repeated until the start position of the AU is detected (loop A), and when detected, AU data for one AU is separated. In step 103, display time information indicated in the PES header is acquired, and in step 104, moov and mdat are created. The processing from step 101 to step 104 (loop B) is repeated until the processing of the final TS packet is completed. When all the AUs of media data are processed, the loop B is terminated, and in step 105, the data of moov and mdat To complete the creation of the MP4 file. FIG. 30 is a flowchart showing details of the processing in step 104. In step 201, AU data is analyzed, and header information necessary for creating a Box in moov is obtained. In step 202, the storage format of the NAL unit constituting the AU is converted from the byte stream format to the NAL size format. In step 203, Box data in the moov is created based on the AU header information acquired in step 201, and in step 204, mdat data is created. The Box for storing the header information for each sample, such as the sample size and decoding time information, is completed when the processing of all AUs in the track is completed.
JP 2003-114845 A

放送されるTSパケットを受信する際には、天候や受信条件によってはパケットロスが発生する。特に、携帯電話などの移動体端末によって移動しながら受信するようなケースでは、パケットロスが頻発することがある。TSパケットでは、continuity_counter値が不連続となっていないかどうかを調べることにより、パケットロスによりAUデータが欠落していることを検出できるが、MP4においてはサンプルデータの欠落を示すことができない。そのため、MP4ファイルを再生する際に、データが欠落していて正常に復号することができないサンプルデータを復号し、結果として、画質の低い動画像データを表示してしまうという第1の課題があった。   When receiving broadcast TS packets, packet loss may occur depending on the weather and reception conditions. In particular, packet loss may occur frequently in the case of receiving while moving by a mobile terminal such as a mobile phone. By checking whether the continuity_counter value is not discontinuous in the TS packet, it can be detected that AU data is missing due to packet loss, but MP4 cannot indicate missing sample data. Therefore, when playing an MP4 file, there is a first problem that sample data that cannot be decoded normally due to missing data is decoded, and as a result, low-quality moving image data is displayed. It was.

さらに、多重化方式をTSからMP4に変換する際には、NALユニットの格納形式をバイトストリームフォーマットからNALサイズフォーマットに変換する必要がある。バイトストリームフォーマットでは、NALユニットの先頭に付加されたスタートコードを検出することによりNALユニットの境界を検出するが、パケットロスにより境界部分がロストした際には、境界が検出できず、NALユニットのデータを正確に分離することができない。従来は、NALユニットデータが正確に分離できなかった際に、NALユニットのデータをMP4のサンプルとして格納する方法が規定されていなかったため、変換後のNALユニットに格納するデータを決定できないという第2の課題があった。   Furthermore, when converting the multiplexing method from TS to MP4, it is necessary to convert the storage format of the NAL unit from the byte stream format to the NAL size format. In the byte stream format, the boundary of the NAL unit is detected by detecting the start code added to the head of the NAL unit. However, when the boundary part is lost due to packet loss, the boundary cannot be detected. The data cannot be separated accurately. Conventionally, when the NAL unit data cannot be accurately separated, a method for storing the NAL unit data as an MP4 sample has not been defined. Therefore, it is not possible to determine the data to be stored in the converted NAL unit. There was a problem.

そこで、本発明は上記の事情に鑑みてなされたものであり、ユーザに対して正しく復号できない動画像データを表示してしまうことを防止することができる多重化方式変換装置を提供することを目的とする。   Accordingly, the present invention has been made in view of the above circumstances, and an object of the present invention is to provide a multiplexing system conversion apparatus that can prevent moving image data that cannot be correctly decoded from being displayed to a user. And

上記目的を達成するために、本発明に係る多重化方式変換装置は、第1の方式によりパケット多重化された符号化メディアデータを前記第1の方式と異なる第2の方式によりパケット多重化して出力する多重化方式変換装置であって、前記第1の方式によりパケット多重化された符号化メディアデータにおけるパケットロスの有無を判定するパケットロス判定手段と、前記パケットロス判定手段でパケットロスが有と判定された場合に、前記符号化メディアデータにおけるデータが欠落した位置に基づいて、データ欠落に関する欠落情報を生成する欠落情報生成手段と、前記欠落情報生成手段で生成された欠落情報を前記第2の方式のパケットに格納するとともに、前記符号化メディアデータを前記第2の方式によりパケット多重化する多重化手段とを備えることを特徴とする。   In order to achieve the above object, a multiplexing method conversion apparatus according to the present invention performs packet multiplexing of encoded media data packet-multiplexed by the first method by a second method different from the first method. An output multiplexing method conversion apparatus, wherein packet loss determination means for determining presence / absence of packet loss in encoded media data packet-multiplexed by the first method, and the packet loss determination means have packet loss. And determining the missing information generated by the missing information generating means based on the position where the data is missing in the encoded media data, and the missing information generated by the missing information generating means. 2 for storing the encoded media data in the packet of the second scheme and packet-multiplexing the encoded media data by the second scheme. Characterized in that it comprises a means.

これによって、例えばMP4である第2の方式のファイルでは、サンプルデータを復号することなく、例えばMPEG−2システムのTSである第1の方式のTSパケットのパケットロスによりデータが欠落したサンプルについての情報が得られるため、例えばオーディオやビデオの復号手段よりも上位のシステムレイヤにおいて、サンプルの復号、あるいは表示動作を決定することができる。   Thus, for example, in the second format file that is MP4, without decoding the sample data, for example, a sample with missing data due to the packet loss of the TS packet of the first format that is the TS of the MPEG-2 system. Since the information is obtained, for example, the decoding or display operation of the sample can be determined in a system layer higher than the audio or video decoding means.

また、前記多重化方式変換装置は、さらに、前記第1の方式によりパケット多重化された符号化メディアデータのパケットからヘッダとペイロードを分離するパケット分離手段を備えてもよい。   The multiplexing method conversion apparatus may further include a packet separation unit that separates a header and a payload from a packet of encoded media data packet-multiplexed by the first method.

また、前記多重化方式変換装置は、さらに、前記パケット分離手段で分離された前記ペイロードから前記符号化メディアデータのフレーム境界を検出してフレームを分離するフレーム分離手段を備え、前記欠落情報生成手段は、前記パケットロス判定手段でパケットロスが有と判定された場合に、前記符号化メディアデータにおけるデータが欠落した位置に基づいて、データ欠落に関する欠落情報をフレーム単位で生成し、前記多重化手段は、前記欠落情報生成手段で生成された前記フレーム単位の欠落情報を前記第2の方式のパケットに格納してもよい。ここで、前記欠落情報生成手段は、復号に必須なデータが欠落していないフレームが復号順で1枚以上連続する区間を示す情報を前記欠落情報として生成してもよい。   The multiplexing method conversion apparatus further includes a frame separation unit that detects a frame boundary of the encoded media data from the payload separated by the packet separation unit and separates the frame, and the missing information generation unit When the packet loss determination means determines that there is a packet loss, the multiplexing means generates missing information regarding data loss based on the position where the data in the encoded media data is lost, May store the missing information in units of frames generated by the missing information generation means in the packet of the second scheme. Here, the missing information generating means may generate, as the missing information, information indicating a section in which one or more frames in which no data essential for decoding is missing are consecutive in decoding order.

これによって、例えばMP4である第2の方式のファイルでは、サンプルが正しく復号できる区間をシステムレイヤにおいて特定できるため、データが欠落したサンプルを復号して、乱れた表示画像を出力することによる再生品質の低下を防ぐことができる。   As a result, in the file of the second method, for example, MP4, since the section in which the sample can be correctly decoded can be specified in the system layer, the reproduction quality by decoding the sample with missing data and outputting a distorted display image Can be prevented.

また、前記多重化方式変換装置は、さらに、ランダムアクセス可能であるフレームを登録するためのテーブルを作成する作成手段を備え、前記多重化手段は、前記符号化メディアデータのランダムアクセス可能であるフレームを前記テーブルへ登録する際に、前記符号化メディアデータにおけるデータが欠落した位置に基づいて、前記フレームにおいて復号に必須なデータが欠落しているか否かを判定し、前記フレームにおいて復号に必須なデータが欠落していれば、前記フレームをランダムアクセス可能なフレームとして前記テーブルへ登録しなくてもよい。   In addition, the multiplexing method conversion apparatus further includes a creation unit that creates a table for registering a randomly accessible frame, and the multiplexing unit includes a frame in which the encoded media data is randomly accessible. Is registered in the table, it is determined whether or not data essential for decoding is missing in the frame based on the position where the data in the encoded media data is missing, and is essential for decoding in the frame. If data is missing, the frame need not be registered in the table as a randomly accessible frame.

これによって、例えばMP4である第2の方式のファイルでは、シンクサンプルが正しく復号できることが保証されるため、ランダムアクセス時の再生品質の低下を防ぐことができる。   As a result, in the second method file, which is MP4, for example, it is guaranteed that the sync sample can be correctly decoded, so that it is possible to prevent the reproduction quality from being deteriorated during random access.

また、前記多重化方式変換装置は、さらに、前記符号化メディアデータの格納形式を変換する変換手段を備えてもよい。ここで、格納形式とは、多重化方式より狭い意味で用い、例えばフレームデータの格納方式等である。   The multiplexing system conversion device may further include conversion means for converting the storage format of the encoded media data. Here, the storage format is used in a narrower sense than the multiplexing method, for example, a frame data storage method.

また、前記フレームが1以上のサブフレーム単位から構成され、前記変換手段は、サブフレーム単位の先頭に前記サブフレームのサイズ情報を付加して前記格納形式を変換する際には、前記符号化メディアデータにおけるデータが欠落した位置に基づいて、前記第2の方式のパケットに格納するサブフレームデータ、およびサブフレームデータのサイズを決定してもよい。   Further, the frame is composed of one or more subframe units, and the converting means adds the size information of the subframe to the head of the subframe unit and converts the storage format when the encoding medium is converted. The subframe data stored in the packet of the second scheme and the size of the subframe data may be determined based on the position where the data is missing in the data.

これによって、例えばMP4である第2の方式のファイルでは、パケットロスによりデータが欠落している際にも、MPEG−4 AVCのAUデータを、NALサイズフォーマットに変換することができる。   Thereby, for example, in the file of the second method that is MP4, AU data of MPEG-4 AVC can be converted into the NAL size format even when data is lost due to packet loss.

また、前記フレームが1以上のサブフレーム単位から構成され、前記変換手段は、前記符号化メディアデータにおけるデータが欠落した位置に、データの欠落を示すサブフレーム単位を挿入した上で、前記符号化メディアデータを前記第2の方式によりパケット多重化してもよい。   In addition, the frame is composed of one or more subframe units, and the converting means inserts the subframe unit indicating data loss at a position where the data is missing in the encoded media data, and then performs the encoding. Media data may be packet-multiplexed by the second method.

これによって、例えばMP4である第2の方式のファイルでは、サンプルデータに挿入された、パケットロス情報を通知するためのNALユニットを検出することにより、復号手段においてもAUデータの欠落位置を特定でき、適切なエラー隠匿処理を行うことができる。   As a result, for example, in the second format file, which is MP4, by detecting the NAL unit for notifying the packet loss information inserted in the sample data, the decoding means can also identify the missing position of the AU data. Appropriate error concealment processing can be performed.

また、前記欠落情報生成手段は、所定単位の復号に必須なデータが欠落しているか否かを示す情報を前記欠落情報として生成してもよい。   The missing information generation means may generate information indicating whether or not data essential for decoding in a predetermined unit is missing as the missing information.

これによって、例えばMP4である第2の方式のファイルでは、復号に必須な例えばSPS(Sequence Parameter Set)やPPS(Picture Parameter Set)、あるいはスライス等のデータが欠落したサンプルをシステムレイヤにおいて特定できるため、データが欠落したサンプルを復号して、乱れた表示画像を出力することによる再生品質の低下を防ぐことができる。   As a result, in the file of the second method, which is MP4, for example, a sample lacking data such as SPS (Sequence Parameter Set) or PPS (Picture Parameter Set) essential for decoding can be specified in the system layer. It is possible to prevent deterioration in reproduction quality caused by decoding a sample with missing data and outputting a distorted display image.

また、本発明に係る逆多重化装置は、符号化メディアデータがパケット多重化された多重化データを復号する逆多重化装置であって、前記多重化データからデータ欠落に関する欠落情報を抽出する欠落情報抽出手段と、前記欠落情報抽出手段で抽出された前記欠落情報に基づいて前記符号化メディアデータの中で復号するデータを決定する欠落情報解析手段と、前記欠落情報解析手段で復号すると決定された前記データを復号する復号手段とを備えることを特徴とする。   The demultiplexing apparatus according to the present invention is a demultiplexing apparatus that decodes multiplexed data in which encoded media data is packet-multiplexed, and is a missing unit that extracts missing information related to missing data from the multiplexed data. Information extracting means, missing information analyzing means for determining data to be decoded in the encoded media data based on the missing information extracted by the missing information extracting means, and decoding to be performed by the missing information analyzing means And decoding means for decoding the data.

これによって、例えばMP4である多重化データでは、サンプルの欠落情報を示すBoxを参照して、サンプルの復号、表示動作を決定することができるため、データが欠落したサンプルを復号して、乱れた表示画像を出力することによる再生品質の低下を防ぐことができるとともに、エラー隠匿方法が異なる復号表示手段を使用した際にも、同一の出力結果を得ることができる。   As a result, for multiplexed data such as MP4, for example, the decoding and display operation of the sample can be determined with reference to the Box indicating the missing information of the sample. It is possible to prevent a reduction in reproduction quality due to the output of the display image, and it is possible to obtain the same output result even when using decoding display means having different error concealment methods.

また、前記逆多重化装置は、さらに、前記欠落情報抽出手段で抽出された前記欠落情報に基づいて再生品質をユーザに通知する欠落情報通知手段を備えてもよい。   The demultiplexing apparatus may further include missing information notifying means for notifying a user of reproduction quality based on the missing information extracted by the missing information extracting means.

これによって、例えばMP4である多重化データでは、例えばサンプルデータの欠落率(欠落データ/全データ)等の再生品質をユーザに通知することができる。   Thus, for example, with multiplexed data that is MP4, it is possible to notify the user of the reproduction quality such as the missing rate (missing data / all data) of the sample data, for example.

さらに、本発明は、このような多重化方式変換装置および逆多重化装置として実現することができるだけでなく、このような多重化方式変換装置および逆多重化装置が含む特徴的な手段をステップとして含む多重化方式変換方法および逆多重化方法として実現したり、それらのステップをコンピュータに実行させるプログラムとして実現したりすることもできる。そして、そのようなプログラムは、CD−ROM等の記録媒体やインターネット等の伝送媒体を介して配信することができるのは言うまでもない。   Furthermore, the present invention can be realized not only as such a multiplexing method conversion device and a demultiplexing device, but also by using characteristic means included in such a multiplexing method conversion device and a demultiplexing device as steps. It can also be realized as a multiplexing method conversion method and a demultiplexing method including, or as a program for causing a computer to execute these steps. Needless to say, such a program can be distributed via a recording medium such as a CD-ROM or a transmission medium such as the Internet.

以上の説明から明らかなように、本発明に係る多重化方式変換装置によれば、正しく復号できない動画像データを示すことにより、再生品質の低下を示すことができる。   As is clear from the above description, according to the multiplexing method conversion apparatus of the present invention, it is possible to show a reduction in reproduction quality by showing moving image data that cannot be correctly decoded.

以下、本発明の実施の形態について、図面を参照しながら説明する。
(実施の形態1)
まず、本発明の実施の形態1に係る多重化方式変換装置について図1から図12を参照して説明する。ここでは、MPEG−4 AVCの符号化ビデオデータが多重化されたTSパケットを入力して、TSパケットからAUデータを分離し、MP4に多重化して出力するものとする。なお、パケット多重化される符号化データは、MPEG−4 AVCに限定されるものではなく、MPEG−4 VisualやH.263、あるいはSMPTE(Society of Motion Picture and Television Engineers)で規格化中のVC−1などのビデオ符号化データ、あるいはMPEG−4 AACやAMRなどのオーディオ符号化データであってもよい。さらに、入力されるTSパケットには、ビデオの符号化データを伝送するTSパケットだけでなく、オーディオ、あるいはプログラム情報が含まれていてもよい。この場合は、まずプログラム情報を含むTSパケットを取得して、ビデオ、およびオーディオの符号化データを伝送するTSパケットのPIDを決定する。その後、PIDの値に基づいて、ビデオとオーディオのTSパケットを振り分け、それぞれ処理を行う。
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
(Embodiment 1)
First, a multiplexing scheme conversion apparatus according to Embodiment 1 of the present invention will be described with reference to FIGS. Here, it is assumed that a TS packet multiplexed with MPEG-4 AVC encoded video data is input, AU data is separated from the TS packet, multiplexed into MP4, and output. The encoded data to be packet-multiplexed is not limited to MPEG-4 AVC, but MPEG-4 Visual or H.264. It may be H.263, video encoded data such as VC-1 being standardized by SMPTE (Society of Motion Picture and Television Engineers), or audio encoded data such as MPEG-4 AAC or AMR. Furthermore, the input TS packet may include not only a TS packet for transmitting encoded video data but also audio or program information. In this case, first, a TS packet including program information is acquired, and the PID of the TS packet for transmitting video and audio encoded data is determined. Then, based on the value of PID, video and audio TS packets are sorted and processed.

図1は、多重化方式変換装置の全体構成を示す図である。本装置は、TSパケットデータを入力してメモリ102に格納するとともに、多重化方式変換後のMP4ファイルを出力するデータI/O部101と、メモリ102からTSパケットデータを取得してAUデータ、およびPESパケットのヘッダを分離、解析し、解析結果をメモリ102に記憶させ、前記分離したAUデータを、前記解析結果を用いてMP4に変換し、変換処理結果をメモリ102に出力する変換部103とから構成される。ここで、メモリ102には、入出力データの保存領域、および変換処理結果やAUデータを一時的に格納するワーク領域が存在し、各領域のサイズは可変とできる。また、再構成部103は、ここではCPUであるとするが、専用のハードウェアであってもよい。以下に、変換部103の動作を詳細に説明する。   FIG. 1 is a diagram showing an overall configuration of a multiplexing method conversion apparatus. This apparatus inputs TS packet data and stores it in the memory 102, and also outputs a data I / O unit 101 that outputs the MP4 file after the multiplexing method conversion, acquires TS packet data from the memory 102, and acquires AU data, And the PES packet header are separated and analyzed, the analysis result is stored in the memory 102, the separated AU data is converted into MP4 using the analysis result, and the conversion processing result is output to the memory 102 It consists of. Here, the memory 102 has a storage area for input / output data and a work area for temporarily storing a conversion processing result and AU data, and the size of each area can be made variable. In addition, the reconstruction unit 103 is a CPU here, but may be dedicated hardware. Hereinafter, the operation of the conversion unit 103 will be described in detail.

図2は、変換部103の構成を示すブロック図である。変換部103は、TSペイロード分離部201、パケットロス判定部202、PES分離解析部203、AU分離部204、PESヘッダ解析部205、Box作成部206、および連結部207とを備える。TSペイロード分離部201は、TSパケットのヘッダ、およびペイロードを分離して、パケットロス判定部202に出力する。パケットロス判定部202は、TSパケットのパケットロスを判定し、パケットロスが検出された際には、エラー処理を行い、エラー処理後のペイロードデータをPES分離解析部に出力する。パケットロスを判定する際は、TSヘッダからcontinuity_counter値を取得して、直前に入力されたTSパケットのcontinuity_counter値と比較し、値が不連続である際には、パケットがロスしたと判定する。ここで、continuity_counterの最大値は15であるため、直前TSパケットのcontinuity_counter値が15で、現TSパケットのcontinuity_counter値が0である際には、continuity_counterが循環したとみなし、パケットロスとは判定しない。パケットロスを検出した際には、パケットロス通知用の情報として、NALユニットタイプが25であり、ペイロードが空であるNALユニットを、バイトストリームフォーマット形式として、現TSパケットのペイロードデータの先頭に挿入する。なお、挿入するNALユニットのNALユニットタイプは、当該NALユニットタイプが他の目的で使用されていなければ、24以上31以下の任意の値をとることができる。ここで、0、および24以上31以下のNALユニットタイプは、AVC規格において、アプリケーションが任意に使用できる領域として定義されている。また、パケットロス通知用の情報としては、AVCストリーム内で現われることのないコードパターンを挿入してもよいし、ストリームとは別にパケットロス情報を管理してもよい。次に、PES分離解析部では、パケットロス通知用のNALユニットが挿入されたTSパケットのペイロードデータから、MPEG−4 AVCにおけるPESパケットのスタートコード(0x000001E0以上、0x000001EF以下の値)をサーチすることによりPESパケットの開始位置を検出する。ここで、PESパケットのヘッダには、PESパケットのサイズを示すフィールドが存在する場合には、当該サイズを用いてペイロードを分離してもよい。PESパケットを分離した後、PESパケットのヘッダとペイロードを分離し、ヘッダデータをPESヘッダ解析部205に出力し、ペイロードデータをAU分離部204に出力する。なお、PESパケットにおけるスタッフィングデータは、ペイロードデータには含めない。AU分離部204では、PESパケットのペイロードデータから、AUの境界を検出してAUデータを分離し、分離したAUデータをBox作成部206に出力する。ここで、パケットロス判定部によりパケットロス通知用のNALユニットが挿入された際には、Box作成部206に出力されるAUデータにも、パケットロス通知用NALユニットが含まれる。PESヘッダ解析部205では、入力されたPESヘッダのデータに、PESペイロード内で開始する先頭AUの表示時間が含まれるか判定し、含まれる際には、AUの表示時間をBox作成部206に出力する。次に、Box作成部206は、入力されたAUのデータ、およびPESヘッダにおける表示時間に基づいて、パケットロス情報を含むmoov、およびmdatを作成し、連結部207に出力する。なお、Box作成部206は、moov、mdatに加えて、moofやmfraを作成してもよい。最後に、連結部207は、moovとmdatを連結してMP4ファイルのデータとして出力する。   FIG. 2 is a block diagram illustrating a configuration of the conversion unit 103. The conversion unit 103 includes a TS payload separation unit 201, a packet loss determination unit 202, a PES separation analysis unit 203, an AU separation unit 204, a PES header analysis unit 205, a Box creation unit 206, and a connection unit 207. The TS payload separation unit 201 separates the header and payload of the TS packet and outputs them to the packet loss determination unit 202. The packet loss determination unit 202 determines the packet loss of the TS packet. When the packet loss is detected, the packet loss determination unit 202 performs error processing and outputs the payload data after error processing to the PES separation analysis unit. When determining the packet loss, the continuity_counter value is acquired from the TS header and compared with the continuity_counter value of the TS packet input immediately before. When the value is discontinuous, it is determined that the packet has been lost. Here, since the maximum value of continuity_counter is 15, when the continuity_counter value of the immediately preceding TS packet is 15 and the continuity_counter value of the current TS packet is 0, it is considered that the continuity_counter has circulated and is not determined as a packet loss. . When a packet loss is detected, the NAL unit type of 25 and the payload is empty as information for packet loss notification is inserted at the beginning of the payload data of the current TS packet as a byte stream format. . Note that the NAL unit type of the NAL unit to be inserted can take any value between 24 and 31 unless the NAL unit type is used for other purposes. Here, 0 and NAL unit types of 24 to 31 are defined as areas that can be used arbitrarily by the application in the AVC standard. As the packet loss notification information, a code pattern that does not appear in the AVC stream may be inserted, or packet loss information may be managed separately from the stream. Next, the PES separation analysis unit searches for the start code (0x000001E0 or more and 0x000001EF or less) of the PES packet in MPEG-4 AVC from the payload data of the TS packet in which the NAL unit for packet loss notification is inserted. To detect the start position of the PES packet. Here, when a field indicating the size of the PES packet exists in the header of the PES packet, the payload may be separated using the size. After the PES packet is separated, the header and the payload of the PES packet are separated, the header data is output to the PES header analysis unit 205, and the payload data is output to the AU separation unit 204. Note that the stuffing data in the PES packet is not included in the payload data. The AU separation unit 204 detects the AU boundary from the payload data of the PES packet, separates the AU data, and outputs the separated AU data to the Box creation unit 206. Here, when the packet loss notification NAL unit is inserted by the packet loss determination unit, the AU data output to the Box creation unit 206 also includes the packet loss notification NAL unit. The PES header analysis unit 205 determines whether the input PES header data includes the display time of the first AU starting in the PES payload. If included, the PES header analysis unit 205 sends the AU display time to the Box creation unit 206. Output. Next, the Box creation unit 206 creates moov and mdat including packet loss information based on the input AU data and the display time in the PES header, and outputs the moov and mdat to the connection unit 207. The Box creation unit 206 may create moof and mfra in addition to moov and mdat. Finally, the connecting unit 207 connects moov and mdat and outputs the data as MP4 file data.

図3は、変換部103の動作を示すフローチャートである。まず、ステップ301において、TSパケットのロスが発生したかどうか判定し、パケットロスの発生を検出した際には、パケットロス検出位置に、パケットロス通知用のNALユニットを挿入する。続いて、ステップ302において、PESパケットのヘッダとペイロードを分離し、ステップ303において、分離したPESパケットのペイロードからAUの境界を検出し、AUデータを分離する。図3のループAに示すように、ステップ301からステップ303の動作を、1AU分のデータが分離できるまで繰り返す。1AU分のデータを分離した後、ステップ304では、PESパケットのヘッダを解析して、PESペイロード内で開始する先頭AUの表示時間が含まれるか判定し、含まれる際には、AUの表示時間を取得する。なお、ステップ304の処理は、ループA内の処理で行ってもよい。次に、ステップ305において、ループAにおいて分離したAUデータ、およびステップ304において取得した表示時間情報をもとに、MP4ファイル内のBoxデータを作成する。入力されるTSパケットに含まれる全AUデータの処理が完了するまで、ループBの処理を繰り返し、全AUデータの処理を完了した時点で、moov、およびmdatを完成し、ステップ306において、moov、およびmdatを連結してMP4ファイルを出力する。ここで、ループBは、ループA、ステップ304、およびステップ305の処理を含む。なお、ftypについては、ステップ305において作成し、moovに付加して出力する、あるいは、ステップ306においてmoovに付加することとする。なお、フラグメントを使用したMP4ファイルを出力することとしてもよい。この際は、ステップ305において、1フラグメント分のmoofとmdatが決定した時点でmoofとmdatを出力してループBを抜け、ステップ306において、出力されたmoofとmdatを順次連結する。さらに、フラグメント使用時には、メディアトラックの全サンプルのヘッダ情報をmoofに格納してもよいし、トラックの先頭部分のサンプルについては、ヘッダ情報をmoovに格納してもよい。   FIG. 3 is a flowchart showing the operation of the conversion unit 103. First, in step 301, it is determined whether or not a TS packet loss has occurred. When the occurrence of a packet loss is detected, a packet loss notification NAL unit is inserted at the packet loss detection position. Subsequently, in step 302, the header and the payload of the PES packet are separated, and in step 303, the AU boundary is detected from the payload of the separated PES packet, and the AU data is separated. As shown in loop A of FIG. 3, the operations from step 301 to step 303 are repeated until 1 AU worth of data can be separated. After separating the data for one AU, in step 304, the header of the PES packet is analyzed to determine whether or not the display time of the head AU starting in the PES payload is included. To get. Note that the processing in step 304 may be performed by processing in loop A. Next, in step 305, Box data in the MP4 file is created based on the AU data separated in loop A and the display time information acquired in step 304. Loop B is repeated until processing of all AU data included in the input TS packet is completed, and when processing of all AU data is completed, moov and mdat are completed. And mdat are connected to output an MP4 file. Here, the loop B includes the processing of the loop A, step 304, and step 305. Note that ftyp is created in step 305 and added to moov for output, or added to moov in step 306. An MP4 file using fragments may be output. In this case, when the moof and mdat for one fragment are determined in step 305, the moof and mdat are output and the loop B is exited. In step 306, the output moof and mdat are sequentially connected. Furthermore, when using a fragment, the header information of all the samples of the media track may be stored in moof, and the header information of the sample at the beginning of the track may be stored in moov.

Box作成部205の構成、および動作について、詳しく説明する。なお、以下では、単にNALユニットと記述する場合には、TSパケットのペイロードに含まれていたNALユニットを指し、パケットロス通知用のNALユニットは含めないものとする。図4は、Box作成部205の構成を示すブロック図である。Box作成部205は、AU解析部301、エラー情報生成部302、AU形式変換部303、およびBoxデータ決定部304とから構成される。まず、AU解析部301は、AUデータを解析し、AUの表示時間、あるいは、AU IDRであるかどうかなど、従来のMP4ファイルを構成するBoxの作成に必要な情報を取得し、解析結果をBoxデータ決定部304に出力する。ここで、AU解析部301が出力する解析結果には、AUのサイズは含めない。また、従来のMP4ファイルを構成するBoxには、エラー情報(欠落情報)を示すBox、あるいは、mdat内でエラー情報を示すための識別情報は含まれない。   The configuration and operation of the Box creation unit 205 will be described in detail. In the following description, when the term “NAL unit” is used, it refers to the NAL unit included in the payload of the TS packet, and does not include the NAL unit for packet loss notification. FIG. 4 is a block diagram showing the configuration of the Box creation unit 205. The Box creation unit 205 includes an AU analysis unit 301, an error information generation unit 302, an AU format conversion unit 303, and a Box data determination unit 304. First, the AU analysis unit 301 analyzes AU data, obtains information necessary for creating a Box that constitutes a conventional MP4 file, such as whether it is an AU display time or an AU IDR, and analyzes the result. The data is output to the Box data determination unit 304. Here, the AU size is not included in the analysis result output by the AU analysis unit 301. In addition, the Box constituting the conventional MP4 file does not include the Box indicating the error information (missing information) or the identification information for indicating the error information in mdat.

以下に、パケットロスのために、AUの時間情報、あるいはAUデータを復号する際に参照するSPS、あるいはPPSのデータが欠落している際の動作について説明する。PESパケットのヘッダ情報から復号時間、あるいは表示時間が取得できないAUについては、AU内のデータを解析して時間情報を取得する。具体的には、Picture Order Countと呼ばれるピクチャの表示順序を示すパラメータ、あるいはPicture Timing SEI, Buffering Period SEIなどのSEIを解析する。これらの時間情報を示す情報がパケットロスにより欠落していた際には、予め定めた方法により、AUの復号時間、あるいは表示時間を計算する。SPSや、符号化メディアデータとは別のPIDをもつTSパケットにより伝送されるデスクリプタの情報により、フレームレートが固定であることが示される際には、当該フレームレートに基づいて復号時間、あるいは表示時間を決定してもよい。なお、デスクリプタとは、MPEG−2システム規格において規定される、符号化メディアデータの補助情報である。次に、MP4においては、SPSおよびPPSは、サンプルデスクリプションボックス('stsd')内のサンプルエントリ、あるいは、パラメータセット用のトラックに格納される。さらに、MPEG−4 AVCの符号化データのトラックにおけるサンプルと、サンプルが参照するSPS、およびPPSを格納するサンプルエントリ、あるいはパラメータセットのトラックのサンプルとは一対一に関連付けられる。従って、サンプルを復号する際に参照するSPS、あるいはPPSのデータが欠落した際には、直前サンプルと同一のSPS、あるいはPPSを参照することとする。なお、予め設定したデフォルトのSPS、あるいはPPSを使用してもよい。   In the following, an explanation will be given of the operation when SPS or PPS data to be referred to when decoding AU time information or AU data is missing due to packet loss. For AUs whose decoding time or display time cannot be acquired from the header information of the PES packet, the time information is acquired by analyzing the data in the AU. Specifically, a parameter indicating the display order of pictures called Picture Order Count, or SEI such as Picture Timing SEI and Buffering Period SEI is analyzed. When information indicating such time information is missing due to packet loss, the AU decoding time or display time is calculated by a predetermined method. When the information of a descriptor transmitted by a TS packet having a PID different from that of SPS or encoded media data indicates that the frame rate is fixed, the decoding time or display based on the frame rate Time may be determined. A descriptor is auxiliary information of encoded media data defined in the MPEG-2 system standard. Next, in MP4, SPS and PPS are stored in a sample entry in a sample description box ('stsd') or a parameter set track. Furthermore, the sample in the track of the encoded data of MPEG-4 AVC and the sample entry storing the SPS and PPS to which the sample refers, or the sample in the parameter set track are associated one-to-one. Therefore, when SPS or PPS data to be referred to when decoding a sample is lost, the same SPS or PPS as that of the immediately preceding sample is referred to. A preset default SPS or PPS may be used.

エラー情報生成部302では、AUデータから、パケットロス通知用のNALユニットを検索し、パケットロス通知用のNALユニットを検出した際には、エラー情報を示すBoxのデータを作成する。さらに、AUを構成するNALユニットのデータにおけるパケットロスの有無に基づいて、mdatに格納するNALユニットデータを決定し、mdatにサンプルデータとして格納すると決定したNALユニットデータから構成されるAUデータのサイズを決定して、エラー情報を示すBoxのデータとともに、Boxデータ決定部304に出力する。AU形式変換部303では、エラー情報生成部において、サンプルデータとして格納すると決定されたAU内のNALユニットのデータを、バイトストリームフォーマットからNALサイズフォーマット変換し、変換後のAUデータをBox決定部304に出力する。ここでBox決定部304に出力された、変換後のAUデータが、MP4におけるサンプルデータとなる。   The error information generation unit 302 searches for packet loss notification NAL units from the AU data, and when detecting a packet loss notification NAL unit, creates error box data indicating error information. Further, the NAL unit data to be stored in mdat is determined based on the presence or absence of packet loss in the data of the NAL units constituting the AU, and the size of the AU data configured from the NAL unit data determined to be stored as sample data in mdat Is output to the Box data determination unit 304 together with Box data indicating error information. In the AU format conversion unit 303, the NAL unit data in the AU determined to be stored as sample data in the error information generation unit is converted from the byte stream format to the NAL size format, and the converted AU data is converted into the Box determination unit 304. Output to. Here, the converted AU data output to the Box determination unit 304 becomes sample data in MP4.

図5は、Box作成部205の動作を示すフローチャートである。まず、ステップ401において、入力されたAUデータから、従来のMP4ファイルを構成するBoxの作成に必要な情報を取得する。ステップ402では、AUデータからパケットロス通知用のNALユニットを検出することにより、エラー情報を示すBoxのデータ作成し、さらに、ステップ403において、MP4ファイル内でサンプルデータとして格納するNALユニットデータを決定する。ステップ404では、ステップ403においてサンプルデータとして格納すると決定されたNALユニットデータをNALサイズフォーマットに変換し、変換後のNALユニットデータから構成されるサンプルデータを作成する。続いて、ステップ405では、ステップ402において作成された、エラー情報を示すBoxを含むmoovのデータを作成する。ステップ406では、ステップ404において作成されたサンプルデータを格納するmdatデータを作成する。図6は、ステップ405の動作を示すフローチャートである。ステップ404においては、まず、ステップ501において、従来のMP4ファイルを構成するBoxを作成し、次に、ステップ502において、エラー情報を格納するBoxを作成する。   FIG. 5 is a flowchart showing the operation of the Box creation unit 205. First, in step 401, information necessary for creating a Box constituting a conventional MP4 file is acquired from the input AU data. In step 402, the NAL unit for packet loss notification is detected from the AU data to create box data indicating error information. In step 403, NAL unit data to be stored as sample data in the MP4 file is determined. To do. In step 404, the NAL unit data determined to be stored as sample data in step 403 is converted into a NAL size format, and sample data composed of the converted NAL unit data is created. In step 405, moov data including a box indicating error information created in step 402 is created. In step 406, mdat data for storing the sample data created in step 404 is created. FIG. 6 is a flowchart showing the operation of step 405. In step 404, first, in step 501, a box constituting a conventional MP4 file is created, and in step 502, a box for storing error information is created.

次に、ステップ402において、エラー情報を示すBoxのデータを作成する際の手順について説明する。図7は、ステップ402の動作を示すフローチャートである。ここでは、MP4ファイルにおけるBoxデータ作成方法について説明するため、サンプルという用語を用いるが、1サンプルは1AUと同一である。まず、ステップ601において、AUデータにパケットロス通知用のNALユニットが含まれるかどうか検索する。検索時には、AUの先頭データから順に、バイトアライン位置において、バイトストリームフォーマットのスタートコードプレフィックス(0x000001から成る3バイト)を調べることにより、NALユニットの開始位置を検出する。続いて、検出したNALユニットのNALユニットタイプを取得して、NALユニットタイプの値が所定の値であれば、パケットロス通知用のNALユニットであると判定する。AUの最終NALユニットまでのNALユニットタイプを調べた後に、ステップ602において、サンプル内にパケットロス通知用NALユニットが検出されたかどうかを判定する。パケットロス通知用NALユニットが検出された際にはステップ603の処理を行い、検出されなかった際には、Boxデータの作成処理を終了する。ステップ603では、当該サンプルのサンプル番号を、エラーを含むサンプルの一覧を示すテーブルに追加する。以下、図8に具体例を挙げて、ステップ601からステップ603までの動作について説明する。図8(a)は、AVCの符号化データにおけるサンプルデータを復号順に並べたものであり、図中の番号は、サンプル番号を示す。この例では、サンプル番号が7、9、および15であるサンプルにおいて、サンプル内のNALユニットデータにパケットロス通知用のNALユニットが検出されたとする。サンプル番号が1から15までのサンプルについて、エラー情報を示すBoxを作成する際の手順は、次のようになる。なお、エラー情報を示すBoxの名称は、Error Sample Boxとする。まず、1から6番目のサンプルについては、ステップ601においてパケットロス通知用のNALユニットが検出されないため、ステップ602では、サンプル内にパケットロス通知用のNALユニットは存在しないと判定され、Error Sample Boxのテーブルデータを更新せずに処理を終了する。7番目のサンプルについては、ステップ601においてパケットロス通知用のNALユニットが検出されるため、ステップ602において、Error Sample Boxのテーブルデータを更新すると判定され、ステップ603で更新処理を行う。ステップ603では、7番目のサンプルにパケットロスが含まれることを示すために、テーブルのエントリを追加してサンプル番号7を格納する。後続サンプルについても同様の処理を行い、サンプル番号9とサンプル番号15をテーブルに追加する。結果として、Error Sample Boxのテーブルには、図8(b)に示すように、パケットロスを含むサンプルの番号として、7、9、15が格納される。図8(c)は、Error Sample Boxのシンタックス例であり、error_sample_numberは、サンプル内のNALユニットデータがパケットロスにより欠落しているサンプルのサンプル番号を示す。Error Sample Boxは、moovにおいては、trak内のstbl直下に配置することとし、moofにおいては、トラックフラグメントランボックス('traf')直下に配置するが、他のBoxの直下に配置することとしてもよい。ここで、Error Sample Boxは、メディアトラックにおいて、データが欠落したサンプルが存在する場合にのみ作成することとするが、データが欠落したサンプルが存在しない場合にも、エントリが空であるError Sample Boxを作成してもよい。なお、traf内に配置する際には、error_sample_numberは、traf内の先頭サンプルの番号を1として、順にサンプルをカウントした際の番号を示す。例えば、traf内に10個のサンプルが含まれ、3番目と5番目のサンプルのデータがパケットロスにより欠落していることを示す際には、error_sample_numberが3、および5である2つのエントリを作成する。あるいはまた、トラックフラグメントランボックス('trun')において、各サンプルのヘッダ情報についてのフラグ情報を示すフィールドであるtr_flagsにおいて、サンプル内のデータがパケットロスにより欠落していることを示すフラグを追加することとしてもよい。   Next, a procedure for creating Box data indicating error information in Step 402 will be described. FIG. 7 is a flowchart showing the operation of step 402. Here, the term “sample” is used to describe the Box data creation method in the MP4 file, but one sample is the same as one AU. First, in step 601, it is searched whether the AU data includes a packet loss notification NAL unit. At the time of search, the start position of the NAL unit is detected by checking the start code prefix (3 bytes consisting of 0x000001) of the byte stream format at the byte alignment position in order from the head data of the AU. Subsequently, the NAL unit type of the detected NAL unit is acquired, and if the value of the NAL unit type is a predetermined value, the NAL unit for packet loss notification is determined. After checking the NAL unit type up to the last NAL unit of the AU, it is determined in step 602 whether a packet loss notification NAL unit is detected in the sample. When the packet loss notification NAL unit is detected, the processing of step 603 is performed. When the packet loss notification NAL unit is not detected, the box data creation processing is terminated. In step 603, the sample number of the sample is added to a table showing a list of samples including errors. Hereinafter, the operation from step 601 to step 603 will be described with reference to FIG. FIG. 8A shows sample data in AVC encoded data arranged in decoding order, and the numbers in the figure indicate sample numbers. In this example, it is assumed that NAL units for packet loss notification are detected in the NAL unit data in the samples in the samples whose sample numbers are 7, 9, and 15. The procedure for creating a box indicating error information for samples with sample numbers 1 to 15 is as follows. Note that the name of the box indicating error information is Error Sample Box. First, since the NAL unit for packet loss notification is not detected in step 601 for the first to sixth samples, it is determined in step 602 that there is no packet loss notification NAL unit in the sample, and Error Sample Box The process is terminated without updating the table data. For the seventh sample, since a NAL unit for packet loss notification is detected in step 601, it is determined in step 602 that the table data in the Error Sample Box is updated, and an update process is performed in step 603. In step 603, in order to indicate that packet loss is included in the seventh sample, an entry in the table is added and sample number 7 is stored. Similar processing is performed for subsequent samples, and sample numbers 9 and 15 are added to the table. As a result, as shown in FIG. 8B, 7, 9, 15 are stored in the Error Sample Box table as sample numbers including packet loss. FIG. 8C shows an example of syntax of the Error Sample Box, where error_sample_number indicates the sample number of the sample in which the NAL unit data in the sample is missing due to packet loss. The error sample box is placed directly under stbl in trak in moov, and is placed directly under track fragment run box ('traf') in moof, but it can also be placed directly under other boxes. Good. Here, the Error Sample Box is created only when there is a sample with missing data in the media track, but even when there is no sample with missing data, the Error Sample Box whose entry is empty May be created. Note that when placing in the traf, error_sample_number indicates the number when the samples are counted in order, with the first sample number in the traf being 1. For example, when 10 samples are included in traf and the data of the third and fifth samples are missing due to packet loss, two entries with error_sample_number of 3 and 5 are created. To do. Alternatively, in the track fragment run box ('trun'), a flag indicating that data in the sample is missing due to packet loss is added to tr_flags, which is a field indicating flag information about the header information of each sample. It is good as well.

さらに、上記では、サンプル内のデータがパケットロスにより欠落しているかを示すこととしたが、サンプル内の特定NALユニットにおいてデータが欠落しているかどうかを示すこととしてもよい。例えば、MPEG−4 AVCにおいては、スライス、あるいは、SPS、PPSのNALユニットのデータにおいて、データが欠落しているかどうかを示す。これは、スライス、およびスライスが参照するパラメータセットが揃っていれば、正しい復号結果が得られるためである。より具体的には、パラメータセットのNALユニットについては、サンプル内のスライスデータを復号するために必要なSPS、あるいはPPSのデータが欠落しているかどうかを示してもよい。また、図8(d)に示すようなシンタックスとして、データが欠落しているNALユニットを特定するための情報を格納してもよい。図中のerror_nal_unit_numberは、データが欠落しているNALユニットを特定するための番号であり、例えば、サンプル内の2番目、および4番目のNALユニットがロストした際には、error_nal_unit_numberが2、および4である2つのエントリを作成する。エントリ内において、NALユニットタイプを示すこととしてもよい。さらに、error_nal_unit_numberは、MPEG−4 Visualにおけるビデオパケット、あるいはH.263におけるスライスを特定することとしてもよい。   Furthermore, in the above description, it is indicated that the data in the sample is missing due to the packet loss. However, it may be indicated whether the data is missing in the specific NAL unit in the sample. For example, in MPEG-4 AVC, it indicates whether or not data is missing in the data of slices or SPS or PPS NAL units. This is because a correct decoding result can be obtained if the slice and the parameter set referred to by the slice are prepared. More specifically, the NAL unit of the parameter set may indicate whether SPS or PPS data necessary for decoding the slice data in the sample is missing. Further, information for specifying the NAL unit in which data is missing may be stored as a syntax as shown in FIG. In the figure, error_nal_unit_number is a number for identifying the NAL unit in which data is missing. For example, when the second and fourth NAL units in the sample are lost, error_nal_unit_number is 2 and 4 Two entries are created. The NAL unit type may be indicated in the entry. Further, error_nal_unit_number is a video packet in MPEG-4 Visual or H.264. The slice in H.263 may be specified.

また、パケットロスだけでなく、ビット誤りについての情報を取得できる際には、サンプルデータにおいてビット誤りが含まれるサンプル、あるいはNALユニットを特定するための情報を格納してもよい。   In addition to packet loss, when information about bit errors can be acquired, samples that contain bit errors in sample data, or information for specifying NAL units may be stored.

次に、ステップ403、およびステップ404において、MP4ファイル内でサンプルデータとして格納するNALユニットデータを決定し、NALユニットの格納形式をNALサイズフォーマットに変換する際の動作について、図9のフローチャートを参照して説明する。まず、ステップ701において、AU内の各NALユニットにおいて有効なデータを決定し、分離する。ここで、パケットロス通知用のNALユニットが検出された際には、直前にNALユニットの開始位置が検出されたNALユニットにおいて有効なデータは、パケットロス通知用のNALユニットの直前までのデータとする。パケットロス通知用のNALユニット以降で、次にNALユニットの開始位置が検出されるまでのデータは無効となるが、これは、前記無効部分のデータが属するNALユニットが特定できない場合がある、あるいは、特定できたとしても、欠落したデータサイズが不明であるため、復号時に使用できないためである。パケットロス通知用のNALユニットが検出されなければ、NALユニットデータは全て有効なデータとみなす。なお、有効なデータとして分離されるNALユニットデータには、zero_byte、およびスタートコードプレフィックスは含めない。次に、ステップ702では、ステップ701において分離した有効なデータのサイズを取得する。ステップ703では、ステップ703において取得したサイズをもとに、前記有効なデータを含むNALユニットデータを、NALサイズフォーマットに変換する。ここで、NALサイズフォーマットにおいて、NALユニットのサイズを示すフィールドのサイズは、1から4バイトの間で可変であるが、フィールドサイズは予め与えられるものとする。次に、ステップ704において、当該NALユニットのデータが欠落していたかどうかを判定し、欠落していた際には、エラー通知用のNALユニットをNALサイズフォーマットとして挿入する。上記ステップ701からステップ705までの処理(ループA)を、サンプルの最終NALユニットの処理が終了するまで繰り返す。なお、サンプルのサイズは、サンプルの最終NALユニットのサイズが決定した時点で決定される。   Next, in steps 403 and 404, NAL unit data to be stored as sample data in the MP4 file is determined, and the operation when converting the storage format of the NAL unit to the NAL size format is described with reference to the flowchart of FIG. To explain. First, in step 701, valid data is determined and separated in each NAL unit in the AU. Here, when a NAL unit for packet loss notification is detected, the data valid in the NAL unit for which the start position of the NAL unit was detected immediately before is the data up to immediately before the NAL unit for packet loss notification. To do. After the NAL unit for packet loss notification, the data until the next start position of the NAL unit is detected becomes invalid. This is because the NAL unit to which the invalid part data belongs may not be specified, or This is because even if it can be specified, the missing data size is unknown and cannot be used at the time of decoding. If no NAL unit for packet loss notification is detected, all NAL unit data is regarded as valid data. The NAL unit data separated as valid data does not include zero_byte and the start code prefix. Next, in step 702, the size of valid data separated in step 701 is acquired. In step 703, NAL unit data including the valid data is converted into a NAL size format based on the size acquired in step 703. Here, in the NAL size format, the size of the field indicating the size of the NAL unit is variable between 1 and 4 bytes, but the field size is given in advance. Next, in step 704, it is determined whether or not the data of the NAL unit is missing. If it is missing, the NAL unit for error notification is inserted as a NAL size format. The processing from step 701 to step 705 (loop A) is repeated until the processing of the final NAL unit of the sample is completed. Note that the size of the sample is determined when the size of the final NAL unit of the sample is determined.

また、サンプルのデータが欠落しているかどうかは、moov、あるいはmoof内に格納されたエラー情報を示すBoxにおいてのみ示すこととし、mdatに格納されるサンプルデータには、パケットロス通知用のNALユニットは挿入しないこととしてもよい。このとき、ステップ704、およびステップ705は不要となる。   Whether or not sample data is missing is indicated only in moov or a box indicating error information stored in moof, and sample data stored in mdat includes a NAL unit for packet loss notification. May not be inserted. At this time, step 704 and step 705 are unnecessary.

また、上記で無効とされたデータを破棄せずに、TSパケットのペイロードに含まれていたNALユニットデータを全て格納してもよい。さらに、パケットロスにより欠落したデータのサイズが特定できる際には、欠落部分をスタッフィングする目的の特別なNALユニット(以後、パケットロス補完用のNALユニットと呼ぶ。)を挿入してもよい。パケットロス補完用のNALユニットでは、Unspecified領域であり、かつパケットロス通知用とは異なるNALユニットタイプを使用する。また、エラー情報はエラー通知用のNALユニットにおいてのみ示すこととして、Error Sample Boxは作成しないこととしてもよい。   Further, all NAL unit data included in the payload of the TS packet may be stored without discarding the invalidated data. Further, when the size of data lost due to packet loss can be specified, a special NAL unit (hereinafter referred to as a NAL unit for packet loss compensation) for stuffing the lost part may be inserted. In the NAL unit for complementing packet loss, a NAL unit type that is an Unspecified area and is different from that for packet loss notification is used. Also, error information may be indicated only in the NAL unit for error notification, and the Error Sample Box may not be created.

また、パケットロス通知用のNALユニットではなく、AU内のNALユニットデータにおけるパケットロス情報が別途提供される際には、ステップ701では、別途示される情報に基づいて、NALユニットにおいて有効なデータを決定する。   In addition, when packet loss information in the NAL unit data in the AU is provided separately instead of the packet loss notification NAL unit, in step 701, valid data in the NAL unit is obtained based on the separately indicated information. decide.

図10から図12は、有効なNALユニットデータを決定し、NALサイズフォーマットに変換する際の具体例を示すものである。各図において、SCP、Nal_len、ERR_NALUは、それぞれ、バイトストリームフォーマットにおけるスタートコードプレフィックス、NALサイズフォーマットにおいてNALユニットのサイズを示すフィールドのサイズ、エラー通知用のNALユニットを示すものとする。図10は、パケットロスによるNALユニットデータの欠落が、NALユニットの境界をまたがない例である。図10(a)は、変換前のAUデータを示す。AUは、NALU#1からNALU#4までの4つのNALユニットから構成され、3番目のNALユニットにおいてパケットロスが発生している。NALU#3は、本来、図中の受信1、ロスト、および受信2と示された領域のデータから構成されるが、パケットロスによりロスト領域が欠落しているため、受信1部分のデータ直後にERR_NALUが挿入されている。このとき、NALU#3において有効なデータと判定されるのは、受信1部分のデータのみであるため、mdatのサンプルデータとして格納されるのは、受信1部分のデータのみとなる。受信1部分のデータサイズは、size3_1であるため、NALU#3のデータをNALサイズフォーマットに変換する際には、Nal_lenフィールド値はsize3_1となる。次に、NALU#3の直後には、NALサイズフォーマットのERR_NALUが挿入される。図10(b)は、変換後に出力されるAUデータの構造を示す。なお、エラー通知用のNALユニットを挿入せずに、TSパケットのペイロードに含まれていたNALユニットデータを全て格納する際のAUのデータ構造は図10(c)に示すようになり、NALU#3のサイズは、size3_1とsize3_2(受信2部分のサイズ)との和になる。   FIGS. 10 to 12 show specific examples when valid NAL unit data is determined and converted to the NAL size format. In each figure, SCP, Nal_len, and ERR_NALU indicate the start code prefix in the byte stream format, the field size indicating the size of the NAL unit in the NAL size format, and the NAL unit for error notification, respectively. FIG. 10 shows an example in which the loss of NAL unit data due to packet loss does not cross the boundary of NAL units. FIG. 10A shows the AU data before conversion. The AU is composed of four NAL units from NALU # 1 to NALU # 4, and packet loss occurs in the third NAL unit. NALU # 3 is originally composed of data in the areas indicated as reception 1, lost, and reception 2 in the figure, but since the lost area is missing due to packet loss, immediately after the data in the reception 1 part. ERR_NALU has been inserted. At this time, only the data of the reception 1 portion is determined as valid data in NALU # 3, and therefore, only the data of the reception 1 portion is stored as the mdat sample data. Since the data size of the received 1 part is size3_1, when the data of NALU # 3 is converted to the NAL size format, the Nal_len field value is size3_1. Next, immediately after NALU # 3, ERR_NALU in NAL size format is inserted. FIG. 10B shows the structure of AU data output after conversion. Note that the data structure of the AU when storing all the NAL unit data included in the payload of the TS packet without inserting the NAL unit for error notification is as shown in FIG. The size of 3 is the sum of size3_1 and size3_2 (the size of the reception 2 part).

図11は、パケットロスによるNALユニットデータの欠落が、NALユニットの境界をまたぐ例である。図11(a)は、変換前のAUデータを示す。AUは、NALU#1からNALU#4までの4つのNALユニットから構成され、NALU#2の終端部分から、NALU#3の先頭部分にかけて、NALユニットをまたいでデータが欠落している(図中に、ロストと示した領域のデータ)。このとき、NALU#2において有効となるのは、図中の受信1部分のデータとなる。次に、NALU#3については、NALユニット開始位置が検出できなかったため、ERROR_NALUの直後から、NAUL#4の開始位置までのデータは無効となり、結果として、NALU#3のデータは、サンプルデータには格納されない。つまり、図中の受信2部分のデータが無効となる。図11(b)は、変換後に出力されるAUデータの構造を示す。   FIG. 11 shows an example in which the loss of NAL unit data due to packet loss crosses the boundary of NAL units. FIG. 11A shows AU data before conversion. The AU is composed of four NAL units from NALU # 1 to NALU # 4, and data is missing across the NAL units from the terminal part of NALU # 2 to the head part of NALU # 3 (in the figure). And the data in the area shown as lost). At this time, what is valid in NALU # 2 is the data of the reception 1 portion in the figure. Next, since the NAL unit start position could not be detected for NALU # 3, the data immediately after ERROR_NALU to the start position of NAUL # 4 becomes invalid. As a result, the data of NALU # 3 becomes sample data. Is not stored. That is, the data of the reception 2 part in the figure becomes invalid. FIG. 11B shows the structure of AU data output after conversion.

図12は、パケットロスによるNALユニットデータの欠落が、AUの境界をまたぐ例である。図12(a)は、変換前のAUデータを示す。AU#1からAU#3までの3つのAUデータは、それぞれ、NALU#1からNALU#4、NALU#5からNALU#8、およびNALU#9からNALU#12から構成されるが、NALU#4の途中からNALU#9の先頭部分にかけて、AU#2をまたいでデータが欠落している(図中に、ロストと示した領域のデータ)。AU#1からAU#3において有効なデータは、次のようになる。AU#1では、NALU#1からNALU#3までの全データ、およびNALU#4において取得したnal4_size分のデータが有効となる。AU#2のデータは全てロストしたため、有効となるデータは存在しない。このため、MP4ファイルにおいては、AU#1を格納するサンプルの次に、AU#3を格納するサンプルが格納される。このとき、AU#1を格納するサンプルの再生時間長としては、AU#1とAU#2の再生時間長の和を格納する。最後に、AU#3では、NALU#10からNALU#12までのデータが有効となる。ここで、NALU#10が、AU#3における先頭NALユニットでないことが特定できる際には、NALU#10の先頭にERR_NALUを挿入することとしてもよい。例えば、MPEG−2システム規格においては、AUの先頭に、Access Unit Delimiterと呼ばれるAU境界判別用のNALユニットを挿入することが規定されているため、NALU#10がAccess Unit DelimiterのNALユニットでなければ、AU#3の先頭NALユニットがロストしたと判定できる。図12(b)は、変換後に出力されるAUデータの構造を示す。図12(c)は、パケットロス補完用のNALユニットを使用する際に出力されるAUデータの構造例を示す。AU#1とAU#3の出力データは、図12(b)と同一であるが、この例では、AU#2のデータも出力することとしている。AU#2のデータには、パケットロス補完用のNALユニットのみが含まれ、パケットロス補完用のNALユニットのサイズは、MPEG‐4 AVCデータの符号化ビットレート、および、固定フレームレートであるかどうかの情報をもとに推定することができる。このように、パケットロス補完用のNALユニットを挿入することにより、ビデオデータが固定ビットレートで符号化されている際には、パケットロスによりデータが欠落した際にも、MP4におけるサンプルデータを、なるべく元の固定ビットレートを保持して格納することができる。また、ストリームが固定フレームレートである際には、パケットロス補完用のNALユニットから構成されるサンプルを作成することにより、サンプルの再生時間長が一定となり、結果として、サンプルの再生時間長を格納するテーブルのサイズを低減できる。   FIG. 12 shows an example in which the loss of NAL unit data due to packet loss crosses the AU boundary. FIG. 12A shows AU data before conversion. The three AU data from AU # 1 to AU # 3 are composed of NALU # 1 to NALU # 4, NALU # 5 to NALU # 8, and NALU # 9 to NALU # 12, respectively. The data is missing from AU # 2 from the middle to the beginning of NALU # 9 (data in the area shown as lost in the figure). Valid data in AU # 1 to AU # 3 is as follows. In AU # 1, all the data from NALU # 1 to NALU # 3 and the data for nal4_size acquired in NALU # 4 are valid. Since all AU # 2 data is lost, there is no valid data. Therefore, in the MP4 file, the sample for storing AU # 3 is stored after the sample for storing AU # 1. At this time, the sum of the reproduction time lengths of AU # 1 and AU # 2 is stored as the reproduction time length of the sample storing AU # 1. Finally, in AU # 3, data from NALU # 10 to NALU # 12 is valid. Here, when it is possible to specify that NALU # 10 is not the head NAL unit in AU # 3, ERR_NALU may be inserted at the head of NALU # 10. For example, since the MPEG-2 system standard stipulates that an AU boundary determination NAL unit called an Access Unit Delimiter is inserted at the beginning of an AU, NALU # 10 must be the NAL unit of the Access Unit Delimiter. For example, it can be determined that the head NAL unit of AU # 3 has been lost. FIG. 12B shows the structure of AU data output after conversion. FIG. 12C shows an example of the structure of AU data output when using a NAL unit for packet loss compensation. The output data of AU # 1 and AU # 3 are the same as in FIG. 12B, but in this example, the data of AU # 2 is also output. The AU # 2 data includes only a packet loss compensation NAL unit, and whether the packet loss compensation NAL unit size is the encoding bit rate of MPEG-4 AVC data and a fixed frame rate. It can be estimated based on the information of whether or not. In this way, by inserting a NAL unit for packet loss compensation, when video data is encoded at a fixed bit rate, sample data in MP4 can be obtained even when data is lost due to packet loss. It is possible to store the original fixed bit rate as much as possible. In addition, when the stream has a fixed frame rate, the sample playback time length is made constant by creating a sample composed of NAL units for packet loss compensation. As a result, the sample playback time length is stored. The table size to be reduced can be reduced.

また、AUのスライスデータが欠落している際には、復号順または表示順で直前のAUと同一のデータを格納する、あるいは、スライスなどの単位でエラー隠匿処理を行うことによりAUデータを再構成して記録してもよい。さらに、AUデータが再構成されていることを示す情報を別途示してもよい。   In addition, when AU slice data is missing, the same data as the previous AU is stored in decoding order or display order, or error concealment processing is performed in units of slices, etc. It may be configured and recorded. Further, information indicating that the AU data is reconfigured may be separately indicated.

なお、SEIメッセージ(Supplemental Enhancement Information)により、パケットロスに関する情報を格納してもよい。例えば、ユーザーデータ格納用のSEIメッセージが使用できる。   In addition, you may store the information regarding a packet loss with a SEI message (Supplemental Enhancement Information). For example, an SEI message for storing user data can be used.

なお、パケットロスにより欠落したデータの割合や、AU内のスライスのうち、データが欠落したスライスの割合、あるいはビット誤りの発生頻度などのエラー情報を、エラー通知用のNALユニットのペイロードやError Sample Boxに格納してもよい。また、エラー通知用のNALユニットのNALユニットタイプ、サイズ、あるいは、エラー通知用NALユニットのペイロードにエラー情報を記述する際には、記述するエラー情報の種類などを示すBoxを、moov、あるいはmoof内に格納してもよい。   It should be noted that error information such as the ratio of data lost due to packet loss, the ratio of slices in which data is lost among the slices in the AU, or the frequency of occurrence of bit errors, the NAL unit payload for error notification, and Error Sample You may store in Box. In addition, when describing error information in the NAL unit type and size of the NAL unit for error notification or in the payload of the NAL unit for error notification, a box indicating the type of error information to be described is included in moov or moof. May be stored.

なお、上記各動作は、サンプルデスクリプションボックス(stsd)内のサンプルエントリにおけるfrme_countフィールドを使用することにより、複数のAUを1サンプルとして格納する際にも適用できる。   Each of the above operations can also be applied when a plurality of AUs are stored as one sample by using the frme_count field in the sample entry in the sample description box (stsd).

さらに、エラー通知用のBoxを作成する、あるいはエラー通知用のNALユニットをサンプルデータ内に挿入する方法は、RTP(Real-time Transmission Protocol)パケットにより多重化しされた符号化メディアデータをMP4ファイルに変換する際にも適用できる。RTPパケットにおいては、RTPパケットのヘッダに付加されたシーケンス番号の連続性を調べることにより、パケットロスを判定できる。   Further, a method for creating a box for error notification or inserting a NAL unit for error notification into sample data includes encoding media data multiplexed by an RTP (Real-time Transmission Protocol) packet into an MP4 file. It can also be applied when converting. In the RTP packet, the packet loss can be determined by examining the continuity of the sequence numbers added to the header of the RTP packet.

また、本実施の形態では、トラック毎にError Sample Box等のエラー情報を付加しているが、これに限られるものではない。例えば、MP4ファイル単位にエラー情報を付加しても構わない。この場合、エラー情報は、moov直下に配置することができる。また、フラグメント使用時には、最終フラグメントのmoof、またはmfra内のBoxなどに配置することとしてもよい。これによって、再生時にMP4ファイル全体として、例えばサンプルデータの欠落率(欠落データ/全データ)や、全再生時間長のうちオーディオとビデオが共に再生できる時間長の割合等の情報をユーザに通知することが可能になる。   In this embodiment, error information such as Error Sample Box is added to each track, but the present invention is not limited to this. For example, error information may be added in units of MP4 files. In this case, the error information can be arranged directly under moov. Further, when using a fragment, it may be arranged in the moof of the final fragment or a box in mfra. As a result, the user is notified of information such as the missing rate of sample data (missing data / total data) and the ratio of the time length during which both audio and video can be played out of the total playback time length as the entire MP4 file during playback. It becomes possible.

また、例えば所定の再生区間が指定されるアイテムをリスト形式に複数有し、このアイテムを順に再生するプレイリストおいては、アイテム毎にエラー情報を付加しても構わない。このプレイリストとは、例えばオーディオデータであれば1つの曲をアイテムとして、ユーザによって選択された曲が選択された順に記載されるリストである。ここで、各再生区間は、同一ファイル内の異なる区間であってもよいし、異なるファイル、または異なるファイルの特定区間であってもよい。この場合、再生時には、プレイリスト参照するだけでアイテム毎の例えばサンプルデータの欠落率等の情報を取得することが可能になる。   In addition, for example, in a playlist in which a plurality of items for which a predetermined playback section is specified is provided in a list format and the items are played back in order, error information may be added for each item. This playlist is a list in which, for example, audio data is used as an item, and a song selected by the user is described in the order of selection. Here, each playback section may be a different section in the same file, a different file, or a specific section of a different file. In this case, at the time of reproduction, it is possible to acquire information such as the missing rate of sample data for each item simply by referring to the playlist.

(実施の形態2)
本発明の実施の形態2に係る多重化方式変換装置について図13、および図14を参照して説明する。多重化方式変換装置の構成は、実施の形態1に係る多重化方式変換装置と同一であり、Boxデータ決定部304において、シンクサンプルのテーブルであるstssを作成する際の動作のみが異なることから、stssの作成方法についてのみ説明する。
(Embodiment 2)
A multiplexing method conversion apparatus according to Embodiment 2 of the present invention will be described with reference to FIG. 13 and FIG. The configuration of the multiplexing system conversion apparatus is the same as that of the multiplexing system conversion apparatus according to the first embodiment, and only the operation at the time of creating stss that is a table of sync samples in the Box data determination unit 304 is different. Only the stss creation method will be described.

実施の形態1の多重化方式変換装置においては、サンプル内のデータが欠落しているかどうかに関わらず、IDR AUをシンクサンプルとしていた。しかしながら、シンクサンプルはランダムアクセスする際に復号を開始するサンプルとなるため、シンクサンプルが正常に復号化できないと、シーケンス内の以降のサンプルについても正常な復号結果が得られないことがあるという問題があった。そこで、本実施の形態の多重化方式変換装置では、データが欠落していないIDR AUのみをシンクサンプルとすることで、シンクサンプルから復号を開始した際に、少なくともシンクサンプルにおいては乱れのない復号結果を得ることができる。   In the multiplexing system conversion apparatus of the first embodiment, IDR AU is used as a sync sample regardless of whether data in the sample is missing. However, since the sync sample becomes a sample to start decoding at random access, if the sync sample cannot be decoded normally, a normal decoding result may not be obtained for the subsequent samples in the sequence. was there. Therefore, in the multiplexing system conversion apparatus according to the present embodiment, only the IDR AU in which no data is missing is used as a sync sample, so that decoding is not disturbed at least in the sync sample when decoding starts from the sync sample. The result can be obtained.

図13は、Boxデータ決定部304において、stssを作成する際の動作を示すフローチャートである。まず、ステップ801において、サンプルデータ内にIDRスライスのNALユニットが含まれているかどうか判定する。ここで、IDRスライスのNALユニットであるかどうかは、NALユニットタイプにより識別する。IDRスライスのNALユニットが含まれていない場合には、処理を終了し、含まれている際には、ステップ802の処理を行う。ステップ802において、サンプルデータ内に、パケットロスのためにデータが欠落したNALユニットが含まれるかどうかを、エラー情報生成部302において取得したサンプル毎のエラー情報に基づいて判定する。サンプルデータが欠落していると判定された際には、処理を終了し、欠落していないと判定された際には、ステップ803において、シンクサンプルの一覧を示すstssのテーブルに、当該サンプルのサンプル番号を追加する。以上、ステップ801からステップ803までの処理を、トラック内の最終サンプルまで繰り返すことにより、stssを作成する。なお、IDRスライスのNALユニットを含み、データが欠落していないサンプルを全てシンクサンプルとせずに、例えば、シンクサンプル間の再生開始時間の差分値がなるべく一定となるようにシンクサンプルを決定してもよい。また、IDRスライスを含むAUにおいて、スライス、あるいは、SPS、PPSのNALユニットにおいてデータが欠落していなければ、シンクサンプルとしてもよい。より具体的には、サンプル内のスライスデータを復号するために必要なSPS、あるいはPPSのデータが当該サンプル内、あるいは復号時刻が前のサンプルから取得できる場合にのみシンクサンプルとしてもよい。   FIG. 13 is a flowchart showing an operation when creating stss in the Box data determination unit 304. First, in step 801, it is determined whether the NAL unit of the IDR slice is included in the sample data. Here, whether or not the NAL unit is an IDR slice is identified by the NAL unit type. If the NAL unit of the IDR slice is not included, the process ends. If included, the process of step 802 is performed. In step 802, it is determined based on the error information for each sample acquired by the error information generation unit 302 whether the sample data includes a NAL unit whose data is lost due to packet loss. When it is determined that the sample data is missing, the process is terminated. When it is determined that the sample data is not missing, in step 803, the sample data is displayed in the stss table indicating a list of sync samples. Add a sample number. As described above, stss is created by repeating the processing from step 801 to step 803 up to the final sample in the track. It should be noted that the sync sample is determined so that the difference value of the reproduction start time between sync samples is as constant as possible without including all the samples including the NAL unit of the IDR slice and lacking data as sync samples. Also good. In addition, in the AU including the IDR slice, if no data is missing in the slice or the SPS or PPS NAL unit, it may be a sync sample. More specifically, the SPS or PPS data necessary for decoding the slice data in the sample may be set as the sync sample only when the sample or the decoding time can be acquired from the previous sample.

図14は、図13のフローチャートに示した動作によりstssを作成する際の具体例を示す。図14(a)は、サンプル番号順にサンプルを並べたものであり、サンプル番号が1、11、21、および31のサンプルが、IDRスライスのNALユニットを含むが、21番目のサンプルにおいては、サンプルデータ内のデータが欠落している。このとき、ステップ801では、1、11、21、および31番目のサンプルがシンクサンプルの候補とされるが、ステップ802において、21番目のサンプルはシンクサンプルとしないと決定されるため、結果として、ステップ803において1、11、および31番目のサンプルがstssのテーブルに追加される(図14(b))。   FIG. 14 shows a specific example when stss is created by the operation shown in the flowchart of FIG. FIG. 14A shows samples arranged in the order of sample numbers. Samples with sample numbers 1, 11, 21, and 31 include NAL units of IDR slices. Data in the data is missing. At this time, in step 801, the first, eleventh, twenty-first, and thirty-first samples are set as sync sample candidates. However, in step 802, the twenty-first sample is determined not to be a sync sample. In step 803, the first, eleventh, and thirty-first samples are added to the stss table (FIG. 14B).

なお、mfraに登録するランダムアクセス可能なサンプルも、同様の方法で決定できる。
なお、stssを上記の方法により作成することと、Error Sample Boxを作成するとは独立に選択できるとし、例えば、上記の方法でstssを作成し、Error Sample Boxは作成しなくてもよい。
A randomly accessible sample registered in mfra can be determined in the same manner.
Note that stss is created by the above method and creating an Error Sample Box can be selected independently. For example, stss is created by the above method, and the Error Sample Box does not have to be created.

(実施の形態3)
本発明の実施の形態3に係る多重化方式変換装置について図15から図17を参照して説明する。多重化方式変換装置の構成は、実施の形態1に係る多重化方式変換装置と同一であり、エラー情報生成部302において、図5のステップ402の動作によりサンプルのエラー情報を示すBoxを作成する際の動作のみが異なるため、この部分の動作について説明する。本多重化方式変換装置では、シンクサンプルから復号を開始した際に、シンクサンプル以降の何番目のサンプルまでが正しく復号できるかどうかを示すBoxを作成する。本多重化方式変換装置で作成したMP4ファイルを再生する際には、このBoxを参照することにより、正しく復号できることが保証されるサンプルを特定した後に、表示するサンプルを決定できる。
(Embodiment 3)
A multiplexing scheme conversion apparatus according to Embodiment 3 of the present invention will be described with reference to FIGS. The configuration of the multiplexing system conversion apparatus is the same as that of the multiplexing system conversion apparatus according to Embodiment 1, and the error information generation unit 302 creates a box indicating the error information of the sample by the operation of step 402 in FIG. Since only the operation at this time is different, the operation of this part will be described. In this multiplexing system conversion apparatus, when decoding is started from a sync sample, a box indicating whether or not up to what number of samples after the sync sample can be correctly decoded is created. When playing back an MP4 file created by the multiplexing system conversion apparatus, by referring to this Box, it is possible to determine a sample to be displayed after identifying a sample that is guaranteed to be correctly decoded.

図15は、エラー情報を示すBoxを作成する際の動作を示すフローチャートである。err_free_flagは、シーケンスの開始するサンプルから、当該サンプルまでのサンプルにおいて、データの欠落が発生していないことを示すフラグであり、初期値は0とする。ステップ901では、サンプル内にIDRスライスのNALユニットが含まれるかどうかを判定し、含まれる際には、ステップ902においてerr_free_flagを1にセットする。ステップ903では、err_free_flagが1であるかどうか判定し、1である際にはステップ904の処理を行い、0である際には以降の処理ステップをスキップし、次サンプルの処理を行う。ステップ904では、サンプルを構成するNALユニットのデータが欠落しているかどうかを判定する。なお、スライス、あるいは、SPS、PPSのNALユニットデータが欠落していなければ、ステップ904において、データが欠落していないと判定してもよい。データの欠落したNALユニットが存在する際には、ステップ905において、エラーフリー区間の最終サンプルの一覧を示すテーブルに、直前サンプルのサンプル番号を追加する。ここで、エラーフリー区間とは、復号順で配置される当該区間のサンプルにおいて、データの欠落が発生しないことが保証される区間である。ランダムアクセスする際には、シンクサンプルから復号が開始され、さらに、シンクサンプルはIDRスライスのNALユニットを含むサンプルであるため、エラーフリー区間の開始サンプルはシンクサンプルとなる。なお、IDRスライスのNALユニットを含むサンプルにおいてデータが欠落している際には、当該サンプルに対するエラーフリー区間は定義されない。したがって、ステップ905はスキップされる。以上、ステップ901からステップ905までの処理をトラックの最終サンプルの処理が完了するまで繰り返す。ここで、データの欠落が発生しないことを保証するというのは、TSパケットのcontinuity_counter値からはエラーが検出できなかったことを示すものであり、必ずしも、データの欠落が全く発生していないことを保証するものではない。なお、continuity_counter以外のパケットロス情報により、より正確にパケットロスを検出できる際には、当該情報を利用してエラーを検出してもよい。   FIG. 15 is a flowchart showing an operation when creating a box indicating error information. err_free_flag is a flag indicating that no data is missing in the samples from the sample at which the sequence starts to the sample. The initial value is 0. In Step 901, it is determined whether or not the NAL unit of the IDR slice is included in the sample. When included, err_free_flag is set to 1 in Step 902. In step 903, it is determined whether or not err_free_flag is 1. When it is 1, the processing of step 904 is performed, and when it is 0, the subsequent processing steps are skipped and the processing of the next sample is performed. In step 904, it is determined whether data of the NAL unit constituting the sample is missing. If no slice or SPS / PPS NAL unit data is missing, it may be determined in step 904 that no data is missing. If there is a NAL unit with missing data, in step 905, the sample number of the immediately preceding sample is added to the table showing the list of the last samples in the error-free section. Here, the error-free section is a section in which it is guaranteed that no data is lost in the samples of the section arranged in the decoding order. In random access, decoding is started from sync samples, and since the sync sample is a sample including the NAL unit of the IDR slice, the start sample in the error-free section is a sync sample. Note that, when data is missing in a sample including an NAL unit of an IDR slice, an error free section for the sample is not defined. Therefore, step 905 is skipped. As described above, the processing from step 901 to step 905 is repeated until the processing of the final sample of the track is completed. Here, guaranteeing that no data loss will occur means that no error was detected from the continuity_counter value of the TS packet, and that no data loss has occurred at all. It is not guaranteed. When packet loss can be detected more accurately by packet loss information other than continuity_counter, an error may be detected using the information.

なお、エラーフリー区間を示すことができれば、エラーフリー区間に含まれるサンプル数を示すなど、最終サンプル以外の情報を用いてもよい。   If an error free section can be indicated, information other than the final sample may be used, such as indicating the number of samples included in the error free section.

図16は、図15のフローチャートに示した動作により、エラー情報を格納するBoxを作成する際の具体例を示す。図16(a)は、それぞれ10個のサンプルから構成される、連続する2つのシーケンスを示す。シーケンス#1は、1番目のサンプルから開始し、7番目、および9番目のサンプルのデータが欠落しており、シーケンス#2は、11番目のサンプルから開始し、16番目のサンプルのデータが欠落している。エラーフリー区間を決定する際の手順を以下に説明する。まず、1番目のサンプルにおいて、err_free_flagが1にセットされる。6番目のサンプルまでは、ステップ904において、サンプルデータが欠落していないと判定されるため、ステップ905、およびステップ906の処理はスキップされ、err_free_flagの値は1のまま保持される。次に、7番目のサンプルでは、ステップ904において、サンプルデータが欠落していると判定されるため、ステップ905において、エラーフリー区間の最終サンプルを格納するテーブルにエントリが追加され、1つ手前のサンプルである6番目のサンプルを示すサンプル番号が格納される。10番目のサンプルまでは、err_free_flagの値は0のままである。続いて、11番目のサンプルにおいて、再びerr_free_flagが1にセットされ、シーケンス#1と同様にして、15番目のサンプルが、エラーフリー区間の最終サンプルとしてテーブルに追加される。図16(b)は、シンクサンプルテーブルを示す。図16(b)は、エラーフリー区間の最終サンプルのテーブルを示す。図16(b)、および図16(c)の2つのテーブルから、シーケンス#1におけるエラーフリー区間は、サンプル番号が1から6までのサンプルであり、シーケンス#2におけるエラーフリー区間は、サンプル番号が11から15までのサンプルであることが示される。図16(d)は、エラーフリー区間の最終サンプルの一覧を示すBoxであるError Free End Sample Boxのシンタックス例であり、end_sample_numberは、エラーフリー区間の最終サンプルのサンプル番号を示す。Error Free End Sample Boxは、moovにおいては、trak内のstbl直下に配置することとし、moofにおいては、トラックフラグメントランボックス('traf')直下に配置するが、他のBoxの直下に配置してもよい。   FIG. 16 shows a specific example when a box for storing error information is created by the operation shown in the flowchart of FIG. FIG. 16 (a) shows two consecutive sequences each consisting of 10 samples. Sequence # 1 starts with the first sample and the 7th and 9th sample data is missing, and sequence # 2 starts with the 11th sample and the 16th sample data is missing doing. The procedure for determining the error-free section will be described below. First, err_free_flag is set to 1 in the first sample. Up to the sixth sample, since it is determined in step 904 that sample data is not missing, the processing in step 905 and step 906 is skipped, and the value of err_free_flag is held at 1. Next, since it is determined in step 904 that the sample data is missing in the seventh sample, in step 905, an entry is added to the table storing the final sample in the error-free section, and the previous sample is added. A sample number indicating the sixth sample which is a sample is stored. Until the 10th sample, the value of err_free_flag remains zero. Subsequently, in the eleventh sample, err_free_flag is set to 1 again, and the 15th sample is added to the table as the final sample of the error-free section in the same manner as in sequence # 1. FIG. 16B shows a sync sample table. FIG. 16B shows a table of the last sample in the error free section. From the two tables of FIG. 16B and FIG. 16C, the error free section in sequence # 1 is a sample with sample numbers 1 to 6, and the error free section in sequence # 2 is a sample number. Are 11 to 15 samples. FIG. 16D is a syntax example of an Error Free End Sample Box that is a box indicating a list of final samples in the error-free section, and end_sample_number indicates the sample number of the last sample in the error-free section. The Error Free End Sample Box is placed directly under stbl in trak in moov, and placed directly under the track fragment run box ('traf') in moof, but placed directly under other boxes. Also good.

なお、ステップ901では、サンプル内にIDRスライスのNALユニットが含まれるかどうかを判定し、err_free_flagをセットすることとしたが、IDRスライスのNALユニットが含まれるサンプルを必ずしもシンクサンプルとはしない場合には、stssに示されるシンクサンプル一覧とError Free End Sample Boxを用いてエラーフリー区間を特定することができない。そこで、ステップ901において、当該サンプルがシンクサンプルであるかどうかを判定し、シンクサンプルであればerr_free_flagをセットすることとしてもよい。また、エラーフリー区間の最終サンプルではなく、先頭サンプルを示すこととしてもよい。例えば、図16(a)において、シーケンス#1の6番目から10番目までのサンプルのデータが完全に揃っている際には、エラーフリー区間の先頭サンプルを6とすることにより、6番目のサンプルから、シーケンス2の先頭サンプルである11番目のサンプルまでがエラーフリー区間であると示すことができる。   In step 901, it is determined whether or not the sample includes the NAL unit of the IDR slice, and err_free_flag is set. However, when the sample including the NAL unit of the IDR slice is not necessarily the sync sample Cannot specify an error-free section using the list of sync samples shown in stss and the Error Free End Sample Box. Therefore, in step 901, it is determined whether or not the sample is a sync sample. If the sample is a sync sample, err_free_flag may be set. Moreover, it is good also as showing the head sample instead of the last sample of an error free area. For example, in FIG. 16A, when the data of the 6th to 10th samples of sequence # 1 are completely prepared, the 6th sample is obtained by setting the top sample of the error free section to 6. To the 11th sample which is the first sample of the sequence 2 can be shown to be an error free section.

なお、MP4では、ランダムアクセス可能なサンプルとして、シンクサンプルの他に、Gradual Decoder Refreshポイントを指定することができる。Gradual Decoder Refreshポイントとは、当該サンプルにおいては正しい復号結果が得られないものの、復号順で後続のサンプルを指定された個数だけ復号すれば、正しい復号結果が得られるようになるサンプルを指す。あるいは、あるサンプルにおいて正しい復号結果を得るためには、復号順で指定された個数だけ前のサンプルから復号を開始する必要がある際の、復号開始サンプルを指すこともできる。例えば、復号順でM番目のサンプルから復号を開始した際に、正しい復号結果が得られるのはN番目(N>M)のサンプルからである場合に、MP4ファイルにおいては、NとMの差分値を示す情報が示される。そのため、エラーフリー区間の先頭サンプルとして、Gradual Decoder Refreshポイントに相当するサンプルも使用してよい。   In MP4, a Gradual Decoder Refresh point can be designated in addition to a sync sample as a randomly accessible sample. The Gradual Decoder Refresh point refers to a sample in which a correct decoding result cannot be obtained for the sample, but a correct decoding result can be obtained by decoding a specified number of subsequent samples in the decoding order. Alternatively, in order to obtain a correct decoding result in a certain sample, it is possible to indicate a decoding start sample when it is necessary to start decoding from the number of previous samples specified in the decoding order. For example, when decoding starts from the Mth sample in decoding order, the correct decoding result is obtained from the Nth (N> M) sample, and in the MP4 file, the difference between N and M Information indicating the value is shown. Therefore, a sample corresponding to the Gradual Decoder Refresh point may be used as the first sample in the error-free section.

なお、シンクサンプルと対応付けることなしにエラーフリー区間を特定できるように、エラーフリー区間の先頭サンプルと最終サンプルを共に示すこととしてもよい。   In addition, it is good also as showing both the head sample and the last sample of an error free area so that an error free area can be specified without making it match | combine with a sync sample.

上記では、エラーフリー区間の最終サンプルの一覧を示すこととしたが、データの欠落したサンプルがシーケンス内に含まれるかどうかを示すこととしてもよい。以下、図17に例を示して説明する。図17(a)は、それぞれが10個のサンプルから構成される、連続する6つのシーケンスを示す。ここで、シーケンス#1、シーケンス#3、シーケンス#4、およびシーケンス#6の4つのシーケンスについては、シーケンス内の全てのサンプルデータが完全に揃っており、シーケンス#2、およびシーケンス#5においては、データの欠落したサンプルが含まれるものとする。図17(c)は、シーケンス内の全てのサンプルデータが完全に揃っているシーケンスにおける先頭サンプルの一覧である。図17(b)は、各シーケンスの先頭サンプルをシンクサンプルとした際のシンクサンプルの一覧であり、図17(b)と図17(c)の2つのテーブルを参照することにより、シーケンス内でデータの欠落が発生しているシーケンスは、サンプル番号が11、および41のシンクサンプルから開始するシーケンスであり、発生していないシーケンスはサンプル番号が1、21、31、51のシンクサンプルから開始するシーケンスであることが分かる。なお、IDRスライスのNALユニットが含まれるサンプルを必ずしもシンクサンプルとはしない場合には、連続する2つのシンクサンプル間のサンプルデータに欠落が発生しているかどうかを示してもよい。図17(d)は、シーケンス内でデータの欠落が発生していないシーケンスの先頭サンプルの一覧を示すError Free Sequence Boxのシンタックス例である。シンタックス内のsequence_start_sample_numberは、シーケンスの先頭サンプルのサンプル番号を示す。なお、シーケンスの先頭サンプル番号以外にも、シーケンスにおける欠落データの割合などに応じて、シーケンスを再生した際の再生画像の品質を示すパラメータとして、Good、Medium、Badなどの指標を示すこととしてもよい。例えば、欠落データの割合、画面内符号化されたAUの頻度、イントラマクロブロックの割合などに応じて品質を決定することができる。さらに、シーケンス内で正しく復号できるサンプルを示すための情報を格納することとしてもよい。具体的には、サンプル間の参照関係と、各サンプルにおけるスライスデータ、SPS、あるいはPPSのNALユニットにおいてデータの欠落しているどうか、を示すことにより、サンプルを復号する際に、参照先サンプルのデータが欠落しているかが分かるため、当該サンプルを正しく復号できるかどうか判定することができる。Error Free Sequence Boxは、moovにおいては、trak内のstbl直下に配置することとし、moofにおいては、トラックフラグメントランボックス('traf')直下に配置することするが、他のBoxの直下に配置してもよい。   In the above description, a list of the last samples in the error-free section is shown. Hereinafter, an example will be described with reference to FIG. FIG. 17 (a) shows six consecutive sequences each consisting of ten samples. Here, for the four sequences of sequence # 1, sequence # 3, sequence # 4, and sequence # 6, all the sample data in the sequence is completely aligned. In sequence # 2 and sequence # 5, Suppose that samples with missing data are included. FIG. 17 (c) is a list of head samples in a sequence in which all sample data in the sequence are completely prepared. FIG. 17B is a list of sync samples when the first sample of each sequence is a sync sample. By referring to the two tables in FIG. 17B and FIG. A sequence in which data loss occurs is a sequence that starts from sync samples with sample numbers 11 and 41, and a sequence that does not occur starts from sync samples with sample numbers 1, 21, 31, and 51 It turns out that it is a sequence. In addition, when the sample including the NAL unit of the IDR slice is not necessarily a sync sample, it may indicate whether or not the sample data between two consecutive sync samples is missing. FIG. 17D shows a syntax example of the Error Free Sequence Box that shows a list of the top samples of sequences in which no data is missing in the sequence. The sequence_start_sample_number in the syntax indicates the sample number of the first sample in the sequence. In addition to the first sample number of the sequence, an index such as Good, Medium, or Bad may be indicated as a parameter indicating the quality of the reproduced image when the sequence is reproduced according to the ratio of missing data in the sequence. Good. For example, the quality can be determined according to the ratio of missing data, the frequency of intra-coded AUs, the ratio of intra macroblocks, and the like. Furthermore, information for indicating samples that can be correctly decoded in the sequence may be stored. Specifically, when the sample is decoded, the reference relationship between the samples and the slice data, SPS, or PPS NAL unit in each sample indicate whether or not the data is missing. Since it is known whether or not data is missing, it can be determined whether or not the sample can be correctly decoded. The error free sequence box is placed directly under stbl in trak in moov, and is placed directly under track fragment run box ('traf') in moof, but is placed directly under other boxes. May be.

また、実施の形態1から実施の形態3において説明したError Sample Box、Error Free End Sample Box、およびError Free Sequence Boxの各Boxは、組み合わせて使用してもよい。例えば、Error Sample BoxとError Free End Sample Boxを組み合わせることにより、エラーフリー区間に含まれないサンプルにおいて、どのサンプルのデータが欠落しているかを特定し、復号するサンプルを決定することができる。   In addition, the Error Sample Box, Error Free End Sample Box, and Error Free Sequence Box described in Embodiments 1 to 3 may be used in combination. For example, by combining the Error Sample Box and the Error Free End Sample Box, it is possible to identify which sample data is missing in the samples not included in the error free section and determine the sample to be decoded.

また、正しく復号できるサンプル、あるいは、データが欠落したサンプルの割合などからトラックの再生品質を決定し、再生品質を示す情報を格納したBoxを、trak直下に配置してもよいし、オーディオ、ビデオ、あるいはテキストデータのトラックを同時に再生した際の再生品質を示すBoxをmoov直下に配置してもよい。   In addition, the playback quality of a track may be determined based on the percentage of samples that can be correctly decoded or the data is missing, and a box storing information indicating the playback quality may be placed directly under the trak, or may be audio or video. Alternatively, a Box indicating the reproduction quality when the text data track is reproduced at the same time may be arranged immediately below the moov.

なお、上記各実施の形態において、バイトストリームフォーマットからNALサイズフォーマットに変換する部分と、データの欠落を示す情報を付加する処理とは別々に実施してもよい。例えば、NALサイズフォーマットや、RTP(Real Time Transmission Protocol)などインターネットの動画配信で使用されるフォーマットにより伝送されたNALユニットのデータに対して、データの欠落情報を付加できる。   In each of the above embodiments, the part for converting from the byte stream format to the NAL size format and the process of adding information indicating the lack of data may be performed separately. For example, data missing information can be added to NAL unit data transmitted in a format used for moving image distribution over the Internet, such as a NAL size format or RTP (Real Time Transmission Protocol).

また、MPEG−4 AVCの符号化データを多重化する際にも、AU形式変換部303を使用できる。例えば、MPEG−4 AVCの符号化処理を簡略化するために符号化データのフォーマットをバイトストリームフォーマットに統一できるが、このとき、当該符号化部から出力された符号化データをTSやMP4など、符号化データの格納形式が異なる多重化方式で多重化する際に、AU形式変換部303の処理を適用できる。ここで、符号化時はストリームにエラーが存在しないため、データの欠落を補償する処理は省略できる。なお、AU形式変換部303では、バイトストリームフォーマットからNALサイズフォーマットへ変換したが、符号化時の出力がNALサイズフォーマットに統一される際には、NALサイズフォーマットからバイトストリームフォーマットへ変換してもよい。   The AU format converter 303 can also be used when multiplexing MPEG-4 AVC encoded data. For example, in order to simplify the encoding process of MPEG-4 AVC, the format of the encoded data can be unified to the byte stream format. At this time, the encoded data output from the encoding unit is TS, MP4, etc. The processing of the AU format conversion unit 303 can be applied when multiplexing is performed using multiplexing systems having different encoded data storage formats. Here, since there is no error in the stream at the time of encoding, the process of compensating for data loss can be omitted. In the AU format conversion unit 303, the byte stream format is converted to the NAL size format. However, when the output at the time of encoding is unified to the NAL size format, the NAL size format may be converted to the byte stream format. Good.

(実施の形態4)
本発明の実施の形態4に係る逆多重化装置について図18から図20を参照して説明する。本逆多重化装置は、実施の形態1から実施の形態3に係る多重化方式変換装置により作成されたMP4ファイルを入力して、AUデータを分離して、復号、表示するものであるが、Error Sample Boxなどに示されるエラー情報を参照することにより、復号、あるいは表示動作を決定する。このため、シーケンス内に正しく復号できないサンプルが多数含まれる際には、次のシーケンスまでスキップするなどの動作をファイルフォーマットレベルの情報から決定することができ、結果として、正しく復号できないサンプルを復号、表示することによる再生品質の低下を防ぐことができる。また、ファイルフォーマットレベルの情報により復号、表示動作を決定することにより、エラー隠匿処理の異なる復号部、あるいは表示部を用いた際にも、同一の出力結果を得ることができる。なお、逆多重化装置に入力されるMP4ファイルでは、サンプルにおけるデータの欠落を示す際には、エラー情報(欠落情報)を示すBoxが必ず付加されているものとする。以下では、MPEG−4 AVCのトラックを再生する際の動作について説明するが、再生するトラックはMPEG−4 AVCに限定されるものではなく、H.263やMPEG−4 Visualなどのビデオ符号化データ、あるいはMPEG−4 AACやAMRなどのオーディオ符号化データであってもよいし、ビデオとオーディオのトラックを同時に再生するものであってもよい。
(Embodiment 4)
A demultiplexing apparatus according to Embodiment 4 of the present invention will be described with reference to FIGS. This demultiplexer inputs the MP4 file created by the multiplexing method converter according to the first to third embodiments, separates the AU data, decodes and displays it. The decoding or display operation is determined by referring to the error information shown in the Error Sample Box or the like. For this reason, when there are many samples that cannot be decoded correctly in the sequence, operations such as skipping to the next sequence can be determined from the information of the file format level. It is possible to prevent a reduction in reproduction quality due to display. Also, by determining the decoding and display operations based on the file format level information, the same output result can be obtained even when a decoding unit or a display unit with different error concealment processing is used. In the MP4 file input to the demultiplexer, it is assumed that a box indicating error information (missing information) is always added when data missing in a sample is indicated. In the following, the operation when reproducing an MPEG-4 AVC track will be described. However, the reproduced track is not limited to MPEG-4 AVC. It may be video encoded data such as H.263 or MPEG-4 Visual, or audio encoded data such as MPEG-4 AAC or AMR, or a video and audio track may be reproduced simultaneously.

図18は、逆多重化装置の構成を示すブロック図である。本装置は、ヘッダ分離部401、ヘッダメモリ402、mdatメモリ403、サンプル取得部404、エラー情報解析部405、および復号再生部406とから構成され、外部から入力される再生開始時間をトリガとして再生処理を開始する。ファイル先頭から開始する際には、再生開始時間は0秒となり、先頭から10秒の位置から開始する際には、10秒となる。ただし、シンクサンプルから復号・再生を開始する際には、入力された再生開始時間に一致する再生開始時間をもつシンクサンプルが存在しないことがあり、この場合は、入力された再生開始時間より前、あるいは後で最も再生開始時間が近いシンクサンプルから復号・再生を開始する。なお、シンクサンプルではなく、Gradual Decoder Refreshポイントとして示されるサンプルから再生を開始することとしてもよい。   FIG. 18 is a block diagram illustrating a configuration of the demultiplexer. This apparatus is composed of a header separation unit 401, a header memory 402, an mdat memory 403, a sample acquisition unit 404, an error information analysis unit 405, and a decoding / playback unit 406, and plays back using a playback start time input from the outside as a trigger. Start processing. When starting from the beginning of the file, the playback start time is 0 seconds, and when starting from the position 10 seconds from the beginning, it is 10 seconds. However, when decoding / playback is started from a sync sample, there may not be a sync sample having a playback start time that matches the input playback start time. In this case, there is no time before the input playback start time. Alternatively, decoding / reproduction is started from a sync sample whose reproduction start time is closest later. Note that playback may be started from a sample indicated as a Gradual Decoder Refresh point instead of a sync sample.

ヘッダ分離部401は、MP4ファイルからmoov、およびmoofを含むヘッダ部と、mdatから成るデータ部を分離し、ヘッダ部のデータをヘッダメモリ402に出力し、mdatのデータをmdatメモリ403に出力する。サンプル取得部404は、外部から入力された再生開始時間に基づいて、復号を開始するシンクサンプルを決定する。以降のサンプルについては、シンクサンプルについてのヘッダ情報を取得する際に、当該シンクサンプルのサンプル番号をエラー情報解析部405に出力する。エラー情報解析部405では、サンプル取得部404から入力されたシンクサンプル番号から開始するシーケンスにおけるエラー情報を、Error Sample Box、Error Free End Sample Box、あるいはError Free Sequence Boxから取得して、解析し、シーケンス内で復号するサンプルを決定した後に、復号すると決定したサンプルの一覧をサンプル取得部404に出力する。また、エラー情報解析部405は、取得した欠落情報を復号表示部406の欠落情報通知部406cに出力する。また、スライスのNALユニット毎の欠落情報が取得できる際には、サンプルにおいて復号するスライスを示す情報を出力してもよい。なお、復号するサンプルの決定をシンクサンプル毎に行わずに、予め決められた個数のサンプル毎に行うこととしてもよい。サンプル取得部404は、moovあるいはmoofを解析して、エラー情報解析部により復号すると決定されたサンプルのデータ、および表示時間を取得して、復号表示部406に出力する。ここで、moovあるいはmoofはヘッダメモリ402から取得し、サンプルのデータは、mdatメモリ403から取得する。なお、復号時間と表示時間とが異なる際には、両者をともに復号表示部406に出力してもよい。   The header separation unit 401 separates the header part including moov and moof from the MP4 file and the data part composed of mdat, outputs the header part data to the header memory 402, and outputs the mdat data to the mdat memory 403. . The sample acquisition unit 404 determines a sync sample to start decoding based on the playback start time input from the outside. For the subsequent samples, the sample number of the sync sample is output to the error information analysis unit 405 when the header information about the sync sample is acquired. In the error information analysis unit 405, error information in the sequence starting from the sync sample number input from the sample acquisition unit 404 is acquired from the Error Sample Box, Error Free End Sample Box, or Error Free Sequence Box, analyzed, After determining the samples to be decoded in the sequence, a list of samples determined to be decoded is output to the sample acquisition unit 404. Further, the error information analysis unit 405 outputs the acquired missing information to the missing information notification unit 406c of the decoding display unit 406. Further, when missing information for each NAL unit of a slice can be acquired, information indicating a slice to be decoded in a sample may be output. Note that the samples to be decoded may be determined for each predetermined number of samples without being determined for each sync sample. The sample acquisition unit 404 analyzes moov or moof, acquires the data of the sample determined to be decoded by the error information analysis unit, and the display time, and outputs them to the decoding display unit 406. Here, moov or moof is acquired from the header memory 402, and sample data is acquired from the mdat memory 403. When the decoding time and the display time are different, both may be output to the decoding display unit 406.

最後に、復号表示部406は、復号部406a、サンプル表示部406b、および欠落情報通知部406cを備えている。復号部406aは、サンプルデータを復号する。サンプル表示部406bは、復号されたサンプルデータを表示時間に従って表示する。欠落情報通知部406cは、欠落情報に基づいて例えばサンプルデータの欠落率(欠落データ/全データ)等の情報をユーザに通知し、MP4ファイルを再生するか否かの問い合わせを行う。また、欠落情報通知部406cは、サンプルデータの欠落率等の情報によりユーザが再生を許可した場合の再生許可信号を受け付けると、サンプル取得部404に再生指示信号を出力する。なお、エラー情報解析部405においては復号するサンプルを決定せずに、データが欠落しているサンプル、あるいはエラーフリー区間の情報などのエラー情報を、復号表示部406に出力し、復号表示部において、入力されたエラー情報、あるいはサンプルデータに挿入されたエラー通知用のNALユニットにより示される情報に基づいて、復号するサンプル、あるいはスライスデータを決定してもよい。このとき、復号サンプルの一覧はサンプル取得部404には出力しない。   Finally, the decoding display unit 406 includes a decoding unit 406a, a sample display unit 406b, and a missing information notification unit 406c. The decoding unit 406a decodes the sample data. The sample display unit 406b displays the decoded sample data according to the display time. The missing information notification unit 406c notifies the user of information such as the missing rate (missing data / all data) of the sample data based on the missing information, and inquires whether or not to play the MP4 file. The missing information notification unit 406c outputs a reproduction instruction signal to the sample acquisition unit 404 when receiving a reproduction permission signal when the user permits reproduction based on information such as the missing rate of sample data. The error information analysis unit 405 outputs the error information such as the missing data or the error free section information to the decoding display unit 406 without determining the sample to be decoded. The sample or slice data to be decoded may be determined based on the input error information or the information indicated by the error notification NAL unit inserted in the sample data. At this time, the list of decoded samples is not output to the sample acquisition unit 404.

次に、上記のように構成された逆多重化装置において、MP4ファイルを再生する際の動作について説明する。図19は、MP4ファイルを再生する際の動作を示すフローチャートである。   Next, an operation when playing back an MP4 file in the demultiplexer configured as described above will be described. FIG. 19 is a flowchart showing an operation when reproducing an MP4 file.

欠落情報通知部406cは、エラー情報解析部405によってヘッダ情報(moov)から取得されたMP4ファイルまたはトラック単位の欠落情報をユーザに通知するとともに、ユーザに対してMP4ファイルを再生するか否かの問い合わせを行う(ステップ1001)。次に、問い合わせに対してユーザが再生を指示したか否かを判定する(ステップ1002)。この結果、再生が指示されていれば(ステップ1002でyes)、欠落情報通知部406cは、サンプル取得部404に再生指示信号を出力することで、再生を指示する(ステップ1004)。入力された再生開始時間から再生を開始し、最終サンプルまたはユーザから再生終了が指示されるまでサンプルを復号し、再生する(ステップ1005)。一方、再生が指示されていなければ(ステップ1002でno)、MP4ファイルを再生しない旨をユーザに通知する(ステップ1003)。   The missing information notification unit 406c notifies the user of the missing information in MP4 file or track unit acquired from the header information (moov) by the error information analysis unit 405, and determines whether or not to reproduce the MP4 file to the user. An inquiry is made (step 1001). Next, it is determined whether or not the user has instructed reproduction in response to the inquiry (step 1002). As a result, if reproduction is instructed (yes in step 1002), the missing information notification unit 406c instructs the reproduction by outputting a reproduction instruction signal to the sample acquisition unit 404 (step 1004). Playback is started from the input playback start time, and the sample is decoded and played back until the last sample or the end of playback is instructed by the user (step 1005). On the other hand, if reproduction is not instructed (no in step 1002), the user is notified that the MP4 file is not reproduced (step 1003).

次に、ステップ1005において、サンプルを再生する際の手順について説明する。図20は、ステップ1005の動作を示すフローチャートである。まず、ステップ1101において、入力された再生開始時間に基づいて、復号を開始するシンクサンプルを決定する。ステップ1101の処理終了後、ループBの処理を行う。ループBは、ステップ1102からステップ1106までの処理を繰り返すループ処理であり、復号時に新規のシンクサンプルを検出する度に繰り返される。ステップ1102では、Error Sample Box、Error Free End Sample Box、あるいはError Free Sequence Boxから、次シンクサンプルまでの間のサンプルにおいて、データが欠落しているかどうかなどのエラー情報を取得する。ステップ1103では、ステップ1102において取得したエラー情報に基づいて、当該シーケンス内で復号するサンプルを決定し、復号するサンプルのサンプル番号の一覧をテーブルに格納する。ステップ1103の終了後、ループAの処理において、ステップ1103において作成されたテーブルにより、復号すると決定されたサンプルを順に復号し、表示する。ループAは、ステップ1104からステップ1106までの処理から構成され、再生時に復号する最終サンプルの処理が終了するまで繰り返す。ステップ1104では、moovあるいはmoofを解析してサンプルデータ、およびサンプルの表示時間を取得する。ステップ1105では、ステップ1104において取得したサンプルデータを復号し、ステップ1106では、ステップ1104において取得した表示時間に基づいて、ステップ1105で復号されたサンプルデータを表示する。   Next, a procedure for reproducing a sample in step 1005 will be described. FIG. 20 is a flowchart showing the operation of Step 1005. First, in step 1101, a sync sample for starting decoding is determined based on the input reproduction start time. After the processing of step 1101, the processing of loop B is performed. Loop B is a loop process in which the processes from step 1102 to step 1106 are repeated, and is repeated each time a new sync sample is detected during decoding. In step 1102, error information such as whether or not data is missing is obtained from the error sample box, error free end sample box, or error free sequence box until the next sync sample. In step 1103, based on the error information acquired in step 1102, samples to be decoded in the sequence are determined, and a list of sample numbers of samples to be decoded is stored in a table. After the end of step 1103, in the process of loop A, the samples determined to be decoded are sequentially decoded and displayed by the table created in step 1103. Loop A is composed of the processing from step 1104 to step 1106, and is repeated until the processing of the final sample to be decoded at the time of reproduction ends. In step 1104, sample data and sample display time are acquired by analyzing moov or moof. In step 1105, the sample data acquired in step 1104 is decoded. In step 1106, the sample data decoded in step 1105 is displayed based on the display time acquired in step 1104.

以下に、ステップ1102において、Error Sample Box、Error Free End Sample Box、およびError Free Sequence Boxの各Boxを参照して、復号するサンプルを決定する際の手順について順に説明する。   Hereinafter, in step 1102, a procedure for determining a sample to be decoded with reference to each box of the Error Sample Box, Error Free End Sample Box, and Error Free Sequence Box will be described in order.

まず、Error Sample Boxを参照する際は、データが欠落していることが示されるサンプルは復号しないと決定する。なお、スライスのNALユニット単位でのデータ欠落情報が取得できる際には、サンプル内のスライスNALユニット単位で復号するかどうかを決定してもよい。また、サンプル内のスライスNALユニットを復号する際に参照するスライスNALユニットのデータが欠落しているかどうかが示される際には、参照先のスライスNALユニットのデータが完全に揃っている場合にのみ、当該スライスNALユニットのデータを復号するとしてもよい。例えば、各サンプルを構成するスライスNALユニットの符号化タイプが周期的に変化する際には、周期構造が既知であれば、スライスNALユニットが参照するサンプルのデータを特定することができる。一例として、符合化タイプの周期が15サンプルであり、周期内の各サンプルにおけるスライスNALユニットの符号化タイプが、復号順でIBBPBBPBBPBBPBBであるとする。ここで、Iはイントラスライス、あるいはIDRスライスから構成されるサンプル、Bは双予測のスライスから構成されるサンプル、Pは一方向予測のスライスから構成されるサンプルを示す。このとき、Bサンプルは、復号順で直前にあるBサンプル以外の2つのサンプル、Pサンプルは、復号順で直前にあるBサンプル以外のサンプルを参照すると、Bサンプル、およびPサンプルのスライスデータが参照するサンプルを特定することができる。   First, when referring to the Error Sample Box, it is determined that a sample indicating that data is missing is not decoded. Note that when data loss information in units of NAL units of slices can be acquired, whether to decode in units of slice NAL units in a sample may be determined. In addition, when it is indicated whether or not the data of the slice NAL unit referred to when decoding the slice NAL unit in the sample is missing, only when the data of the slice NAL unit of the reference destination is completely prepared The data of the slice NAL unit may be decoded. For example, when the coding type of the slice NAL unit constituting each sample changes periodically, if the periodic structure is known, the data of the sample referred to by the slice NAL unit can be specified. As an example, it is assumed that the period of the coding type is 15 samples, and the coding type of the slice NAL unit in each sample in the period is IBBPBBPBBPBBPBB in decoding order. Here, I is a sample composed of an intra slice or IDR slice, B is a sample composed of a bi-prediction slice, and P is a sample composed of a unidirectional prediction slice. At this time, if the B sample refers to two samples other than the B sample immediately preceding in the decoding order, and the P sample refers to a sample other than the B sample immediately preceding in the decoding order, the slice data of the B sample and the P sample is The sample to be referenced can be specified.

次に、Error Free End Sample Boxを参照して復号するサンプルを決定する際には、エラーフリー区間に含まれないサンプルは復号しないと決定する。   Next, when determining the samples to be decoded with reference to the Error Free End Sample Box, it is determined that the samples not included in the error free section are not decoded.

最後に、Error Free Sequence Boxを参照して復号するサンプルを決定する際には、連続した2つのシンクサンプル間にデータの欠落したサンプルが含まれる際には、最初のシンクサンプルのみ復号する。   Finally, when determining a sample to be decoded with reference to the Error Free Sequence Box, if a sample with missing data is included between two consecutive sync samples, only the first sync sample is decoded.

なお、Error Sample Box、Error Free End Sample Box、およびError Free Sequence Boxが2つ以上同時に使用されている際には、使用されているBoxに応じて、復号するサンプルの決定方法を変更することとしてもよい。例えば、Error Sample BoxとError Free End Sample Boxが同時に使用されている際には、エラーフリー区間に含まれないサンプルについても、Error Sample Boxの情報により、正しく復号できるサンプルが示される。このときは、エラーフリー区間外のサンプルを復号することとしてもよい。Error Sample BoxとError Free Sequence Boxが同時に使用されている際も、同様である。   When two or more Error Sample Boxes, Error Free End Sample Boxes, and Error Free Sequence Boxes are used at the same time, the method for determining the sample to be decoded is changed according to the Box used. Also good. For example, when the Error Sample Box and the Error Free End Sample Box are used at the same time, samples that can be correctly decoded are indicated by the information in the Error Sample Box even for samples that are not included in the error free section. At this time, samples outside the error-free interval may be decoded. The same applies when the Error Sample Box and Error Free Sequence Box are used simultaneously.

また、本実施の形態では、欠落情報通知部406cは、ユーザに対してMP4ファイルを再生するか否かの問い合わせを行っているが、これに限られるものではない。例えば、欠落情報通知部406cは、ユーザに対してMP4ファイルを再生するか否かの問い合わせを行わずに、単にサンプルデータの欠落率等の情報をユーザに通知するだけであっても構わない。また、欠落情報通知部406cは、例えばサンプルデータの欠落率等の情報を所定の閾値で判定し、条件を満たした場合にサンプル取得部404に再生指示信号を出力するようにしても構わない。さらに、欠落情報通知部406cは、例えばサンプルデータの欠落率等の情報を所定の閾値で判定し、条件を満たさない場合にだけユーザに対してMP4ファイルを再生するか否かの問い合わせを行っても構わない。   In the present embodiment, the missing information notification unit 406c makes an inquiry to the user as to whether or not to reproduce the MP4 file. However, the present invention is not limited to this. For example, the missing information notification unit 406c may simply notify the user of information such as the missing rate of sample data without inquiring the user whether or not to play the MP4 file. The missing information notification unit 406c may determine information such as the missing rate of sample data with a predetermined threshold, and output a reproduction instruction signal to the sample acquisition unit 404 when the condition is satisfied. Furthermore, the missing information notification unit 406c determines information such as the missing rate of sample data with a predetermined threshold, and inquires of the user whether or not to play the MP4 file only when the condition is not satisfied. It doesn't matter.

なお、本多重化装置は、従来のMP4ファイルも再生できる。   The multiplexing apparatus can also play back conventional MP4 files.

(実施の形態5)
本発明の実施の形態5に係る逆多重化装置について図21を参照して説明する。本逆多重化装置は、実施の形態1から実施の形態3に係る多重化方式変換装置により作成されたMP4ファイルを入力して、AUデータを分離して、復号、表示するものであるが、サンプルデータに挿入されたエラー通知用のNALユニットに示されるエラー情報を参照することにより、復号、あるいは表示動作を決定する。なお、逆多重化装置に入力されるMP4ファイルにおいては、エラー情報を示すBoxは付加されていなくてもよい。以下では、MPEG−4 AVCのトラックを再生する際の動作について説明するが、再生するトラックはMPEG−4 AVCに限定されるものではなく、H.263やMPEG−4 Visualなどのビデオ符号化データ、あるいはMPEG−4 AACやAMRなどのオーディオ符号化データであってもよいし、ビデオとオーディオのトラックを同時に再生するものであってもよい。
(Embodiment 5)
A demultiplexing apparatus according to Embodiment 5 of the present invention will be described with reference to FIG. This demultiplexer inputs the MP4 file created by the multiplexing method converter according to the first to third embodiments, separates the AU data, decodes and displays it. The decoding or display operation is determined by referring to the error information indicated in the error notification NAL unit inserted in the sample data. In the MP4 file input to the demultiplexer, a box indicating error information may not be added. In the following, the operation when reproducing an MPEG-4 AVC track will be described. However, the reproduced track is not limited to MPEG-4 AVC. It may be video encoded data such as H.263 or MPEG-4 Visual, or audio encoded data such as MPEG-4 AAC or AMR, or a video and audio track may be reproduced simultaneously.

本逆多重化装置の構成は、図18に示した実施の形態4の逆多重化装置においてエラー情報解析部405を除いた構成と同一であるため、説明を省略する。図21は、本逆多重化装置の動作を示すフローチャートである。まず、ステップ1101において、入力された再生開始時間に基づいて、復号を開始するシンクサンプルを決定する。ステップ1101の処理終了後、ループAの処理を行う。ループAは、ステップ1102からステップ1005までの処理を繰り返すループ処理であり、再生時に復号する最終サンプルの処理が終了するまで繰り返す。ステップ1102では、復号するサンプルのデータを取得する。以降、ステップ1103からステップ1105までの処理は、復号表示部406における処理となる。ステップ1103では、ステップ1102において取得したサンプルデータにおいて、エラー通知用のNALユニット、あるいはサンプルを特定し、サンプルが正しく復号できないと示される際には、サンプルの復号を行わない。続いて、ステップ1104では、ステップ1103において復号すると決定されたスライスNALユニットのデータを復号し、ステップ1105では、復号されたサンプルデータを表示時間に基づいて表示する。   The configuration of the present demultiplexing apparatus is the same as that of the demultiplexing apparatus according to the fourth embodiment shown in FIG. 18 except for the error information analysis unit 405, and thus the description thereof is omitted. FIG. 21 is a flowchart showing the operation of the present demultiplexer. First, in step 1101, a sync sample for starting decoding is determined based on the input reproduction start time. After the process of step 1101, the process of loop A is performed. Loop A is a loop process in which the processes from step 1102 to step 1005 are repeated, and is repeated until the process of the final sample to be decoded at the time of reproduction ends. In step 1102, sample data to be decoded is acquired. Henceforth, the process from step 1103 to step 1105 becomes a process in the decoding display part 406. FIG. In step 1103, in the sample data acquired in step 1102, an error notification NAL unit or sample is specified, and when it is indicated that the sample cannot be correctly decoded, the sample is not decoded. Subsequently, in step 1104, the data of the slice NAL unit determined to be decoded in step 1103 is decoded, and in step 1105, the decoded sample data is displayed based on the display time.

(実施の形態6)
ここで、上記実施の形態1から実施の形態5で示した多重化方式変換装置、および逆多重化装置を用いたシステムを説明する。
(Embodiment 6)
Here, a system using the multiplexing method conversion apparatus and the demultiplexing apparatus shown in the first to fifth embodiments will be described.

図22は、放送、および通信によるコンテンツ配信サービスを実現するシステムの全体構成を示すブロック図である。まず、放送データを受信するケースについて述べる。携帯電話ex105、あるいはDVDレコーダなどのディスクレコーダex104は、デジタル化された符号化メディアデータが多重化されたTSパケット列を受信する。携帯電話ex105では、受信したTSパケット列を、本発明に係る多重化方式変換装置によってMP4に変換してからSDカードex106に記録する。記録したMP4ファイルは、本発明に係る逆多重化装置を備えた携帯電話ex105、ディスクレコーダex104、あるいは図示しないパーソナルコンピュータなどで視聴することができる。また、MP4ファイルを電子メールに添付して、携帯電話ex105から無線基地局ex107を経由して、本発明に係る逆多重化装置を備えた別の携帯電話ex108に送信し、携帯電話ex108においてMP4ファイルを視聴することもできる。さらに、メール添付ではなく、HTTP(Hyper Text Transport Protocol)およびTCP(Transmission Control Protocol)などのプロトコルを使用して、携帯電話ex105から携帯電話ex108にダウンロード、あるいは擬似ストリーミング配信してもよい。   FIG. 22 is a block diagram showing an overall configuration of a system that realizes a content distribution service by broadcasting and communication. First, a case where broadcast data is received will be described. A cellular phone ex105 or a disk recorder ex104 such as a DVD recorder receives a TS packet sequence in which digitized encoded media data is multiplexed. In the mobile phone ex105, the received TS packet sequence is converted into MP4 by the multiplexing system conversion device according to the present invention, and then recorded on the SD card ex106. The recorded MP4 file can be viewed on a mobile phone ex105, a disk recorder ex104, or a personal computer (not shown) equipped with the demultiplexer according to the present invention. In addition, the MP4 file is attached to an e-mail and transmitted from the mobile phone ex105 via the radio base station ex107 to another mobile phone ex108 equipped with the demultiplexing device according to the present invention. You can also watch the file. Furthermore, instead of mail attachment, download may be performed from the mobile phone ex105 to the mobile phone ex108 or pseudo-streaming distribution using a protocol such as HTTP (Hyper Text Transport Protocol) and TCP (Transmission Control Protocol).

ディスクレコーダex104においても、受信したTSパケット列を本発明に係る多重化方式変換装置によってMP4に変換し、SDカード、DVDなどの光ディスク、あるいはハードディスクに記録することができる。また、記録したMP4ファイルを、携帯電話や図示しないパーソナルコンピュータに対してダウンロード、あるいは擬似ストリーミング配信してもよい。なお、SDカードにはTSパケット列を記録し、配信時にMP4に変換することとしてもよい。   Also in the disk recorder ex104, the received TS packet sequence can be converted into MP4 by the multiplexing system conversion apparatus according to the present invention and recorded on an optical disk such as an SD card or a DVD, or a hard disk. The recorded MP4 file may be downloaded to a mobile phone or a personal computer (not shown) or pseudo-streamed. Note that a TS packet sequence may be recorded on the SD card and converted to MP4 at the time of distribution.

コンテンツサーバex102からインターネット経由で配信されたTSパケット列を携帯電話ex105、あるいはディスクレコーダex104において受信する際にも、上記放送データを受信した際と同様にMP4ファイルを使用することができる。   When receiving the TS packet sequence distributed from the content server ex102 via the Internet at the mobile phone ex105 or the disc recorder ex104, the MP4 file can be used in the same manner as when the broadcast data is received.

(実施の形態7)
上記各実施の形態で示した多重化方式変換装置における多重化方式変換方法、および逆多重化装置における逆多重化方法を実現するためのプログラムを、フレキシブルディスク等の記憶媒体に記録するようにすることにより、上記各実施の形態で示した処理を、独立したコンピュータシステムにおいて簡単に実施することが可能となる。
(Embodiment 7)
A program for realizing the multiplexing method conversion method in the multiplexing method conversion device and the demultiplexing method in the demultiplexing device described in each of the above embodiments is recorded on a storage medium such as a flexible disk. As a result, the processing described in each of the above embodiments can be easily performed in an independent computer system.

図23は、上記各実施の形態の多重化方式変換装置における多重化方式変換方法、および逆多重化装置における逆多重化方法を、フレキシブルディスク等の記録媒体に記録されたプログラムを用いて、コンピュータシステムにより実施する場合の説明図である。   FIG. 23 is a diagram illustrating a method of performing the multiplexing method conversion method in the multiplexing method conversion device and the demultiplexing method in the demultiplexing device according to each embodiment described above using a program recorded on a recording medium such as a flexible disk. It is explanatory drawing in the case of implementing by a system.

図23(b) は、フレキシブルディスクの正面からみた外観、断面構造、及びフレキシブルディスクを示し、図23(a) は、記録媒体本体であるフレキシブルディスクの物理フォーマットの例を示している。フレキシブルディスクFDはケースF内に内蔵され、該ディスクの表面には、同心円状に外周からは内周に向かって複数のトラックTrが形成され、各トラックは角度方向に16のセクタSeに分割されている。従って、上記プログラムを格納したフレキシブルディスクでは、上記フレキシブルディスクFD上に割り当てられた領域に、上記プログラムが記録されている。   FIG. 23B shows an external appearance, a cross-sectional structure, and a flexible disk when viewed from the front of the flexible disk, and FIG. 23A shows an example of a physical format of the flexible disk that is a recording medium body. The flexible disk FD is built in the case F, and on the surface of the disk, a plurality of tracks Tr are formed concentrically from the outer periphery toward the inner periphery, and each track is divided into 16 sectors Se in the angular direction. ing. Therefore, in the flexible disk storing the program, the program is recorded in an area allocated on the flexible disk FD.

また、図23(c) は、フレキシブルディスクFDに上記プログラムの記録再生を行うための構成を示す。多重化方式変換装置における多重化方式変換方法、および逆多重化装置における逆多重化方法を実現する上記プログラムをフレキシブルディスクFDに記録する場合は、コンピュータシステムCsから上記プログラムをフレキシブルディスクドライブを介して書き込む。また、フレキシブルディスク内のプログラムにより上記各実施の形態の多重化方式変換装置における多重化方式変換方法、および逆多重化装置における逆多重化方法をコンピュータシステム中に構築する場合は、フレキシブルディスクドライブによりプログラムをフレキシブルディスクから読み出し、コンピュータシステムに転送する。   FIG. 23C shows a configuration for recording and reproducing the program on the flexible disk FD. When the above-described program for realizing the multiplexing method conversion method in the multiplexing method conversion device and the demultiplexing method in the demultiplexing device is recorded on the flexible disk FD, the program is transferred from the computer system Cs via the flexible disk drive. Write. In addition, when a multiplexing system conversion method in the multiplexing system conversion apparatus of each of the above embodiments and a demultiplexing method in the demultiplexing apparatus are constructed in a computer system by a program in the flexible disk, a flexible disk drive is used. Read the program from the flexible disk and transfer it to the computer system.

なお、上記説明では、記録媒体としてフレキシブルディスクを用いて説明を行ったが、光ディスクを用いても同様に行うことができる。また、記録媒体はこれに限らず、ICカード、ROMカセット等、プログラムを記録できるものであれば同様に実施することができる。   In the above description, a flexible disk is used as the recording medium, but the same can be done using an optical disk. Further, the recording medium is not limited to this, and any recording medium such as an IC card or a ROM cassette capable of recording a program can be similarly implemented.

本発明に係る多重化方式変換装置は、TSにより送信されたMPEG−4 AVCなどの符号化データを、MP4に変換して記録、あるいは送信する機器全般に適用することができ、特にデジタル放送を受信する携帯電話などに有効である。   The multiplexing system conversion apparatus according to the present invention can be applied to all devices that convert and record or transmit encoded data such as MPEG-4 AVC transmitted by a TS to MP4, particularly digital broadcasting. This is effective for receiving mobile phones.

本発明の実施の形態1に係る多重化方式変換装置の全体構成を示すブロック図である。It is a block diagram which shows the whole structure of the multiplexing system converter which concerns on Embodiment 1 of this invention. 本発明の実施の形態1に係る多重化方式変換装置における変換部103の構成を示すブロック図である。It is a block diagram which shows the structure of the conversion part 103 in the multiplexing system converter which concerns on Embodiment 1 of this invention. 本発明の実施の形態1に係る多重化方式変換装置の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the multiplexing system converter which concerns on Embodiment 1 of this invention. 本発明の実施の形態1に係る多重化方式変換装置におけるBoxデータ決定部の構成を示すブロック図である。It is a block diagram which shows the structure of the Box data determination part in the multiplexing system converter which concerns on Embodiment 1 of this invention. 本発明の実施の形態1に係る多重化方式変換装置におけるBox作成部205の動作を示すフローチャートである。It is a flowchart which shows the operation | movement of the Box creation part 205 in the multiplexing system converter which concerns on Embodiment 1 of this invention. 本発明の実施の形態1に係る多重化方式変換装置のBox作成部205においてMP4のヘッダ部の作成動作を示すフローチャートである。It is a flowchart which shows the production | generation operation | movement of the header part of MP4 in the Box production | generation part 205 of the multiplexing system converter concerning Embodiment 1 of this invention. 本発明の実施の形態1に係る多重化方式変換装置におけるError Sample Boxの作成動作を示すフローチャートである。It is a flowchart which shows the production | generation operation | movement of Error Sample Box in the multiplexing system converter which concerns on Embodiment 1 of this invention. 本発明の実施の形態1に係る多重化方式変換装置におけるError Sample Boxの作成動作の例である。It is an example of the production | generation operation | movement of Error Sample Box in the multiplexing system converter which concerns on Embodiment 1 of this invention. 本発明の実施の形態1に係る多重化方式変換装置におけるサンプルデータの決定方法を示すフローチャートである。It is a flowchart which shows the determination method of the sample data in the multiplexing system converter which concerns on Embodiment 1 of this invention. 本発明の実施の形態1に係る多重化方式変換装置において、パケットロスがNALユニットをまたがない場合のサンプルデータ変換例である。In the multiplexing system conversion apparatus according to the first embodiment of the present invention, it is an example of sample data conversion when the packet loss does not cross the NAL unit. 本発明の実施の形態1に係る多重化方式変換装置において、パケットロスがNALユニットをまたぐ場合のサンプルデータ変換例である。In the multiplexing system conversion apparatus according to the first embodiment of the present invention, it is an example of sample data conversion when the packet loss crosses the NAL unit. 本発明の実施の形態1に係る多重化方式変換装置において、パケットロスがAU境界をまたぐ場合のサンプルデータ変換例である。5 is an example of sample data conversion when a packet loss crosses an AU boundary in the multiplexing system conversion apparatus according to Embodiment 1 of the present invention. 本発明の実施の形態2に係る多重化方式変換装置におけるシンクサンプルボックスの作成方法を示すフローチャートである。It is a flowchart which shows the preparation method of the sync sample box in the multiplexing system converter which concerns on Embodiment 2 of this invention. 本発明の実施の形態2に係る多重化方式変換装置におけるシンクサンプルボックスの作成例である。It is a creation example of the sync sample box in the multiplexing system converter which concerns on Embodiment 2 of this invention. 本発明の実施の形態3に係る多重化方式変換装置におけるError Free End Sample Boxの作成動作を示すフローチャートである。It is a flowchart which shows the production | generation operation | movement of Error Free End Sample Box in the multiplexing system converter which concerns on Embodiment 3 of this invention. 本発明の実施の形態3に係る多重化方式変換装置におけるError Free End Sample Boxの作成動作の例である。It is an example of the production | generation operation | movement of Error Free End Sample Box in the multiplexing system converter which concerns on Embodiment 3 of this invention. 本発明の実施の形態3に係る多重化方式変換装置におけるError Free Sequence Boxの作成動作の例である。It is an example of the production | generation operation | movement of Error Free Sequence Box in the multiplexing system converter which concerns on Embodiment 3 of this invention. 本発明の実施の形態4に係る逆多重化装置の構成を示すブロック図である。It is a block diagram which shows the structure of the demultiplexing apparatus which concerns on Embodiment 4 of this invention. 本発明の実施の形態4に係る逆多重化装置におけるMP4ファイルを再生する際の動作を示すフローチャートである。It is a flowchart which shows the operation | movement at the time of reproducing | regenerating MP4 file in the demultiplexing apparatus which concerns on Embodiment 4 of this invention. 本発明の実施の形態4に係る逆多重化装置の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the demultiplexing apparatus which concerns on Embodiment 4 of this invention. 本発明の実施の形態5に係る逆多重化装置の動作を示すフローチャート図である。It is a flowchart figure which shows operation | movement of the demultiplexing apparatus which concerns on Embodiment 5 of this invention. 本実施の形態6における多重化方式変換装置の使用例を示す図である。It is a figure which shows the usage example of the multiplexing system converter in this Embodiment 6. FIG. 上記各実施の形態の多重化方式変換装置における多重化方式変換方法、および逆多重化装置における逆多重化方法をコンピュータシステムにより実現するためのプログラムを格納するための記憶媒体についての説明図である。It is explanatory drawing about the storage medium for storing the program for implement | achieving the multiplexing system conversion method in the multiplexing system converter of each said embodiment, and the demultiplexing method in a demultiplexing apparatus by a computer system. . MPEG−4 AVCにおけるAUのデータ構造を示す図である。It is a figure which shows the data structure of AU in MPEG-4 AVC. PESパケット、およびTSパケットのデータ構造を示す図である。It is a figure which shows the data structure of a PES packet and TS packet. MP4のBox構造を示す図である。It is a figure which shows the Box structure of MP4. MP4におけるmoovの階層構造を示す図である。It is a figure which shows the hierarchical structure of moov in MP4. MP4におけるmoofの使用方法を示す図である。It is a figure which shows the usage method of moof in MP4. 従来の多重化方式変換装置の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the conventional multiplexing system converter. 従来の多重化方式変換装置におけるMP4ファイルの作成動作を示すフローチャートである。It is a flowchart which shows the creation operation of the MP4 file in the conventional multiplexing system converter.

符号の説明Explanation of symbols

101 データI/O部
102 メモリ
103 変換部
201 TSペイロード分離部
202 パケットロス判定部
203 PES分離解析部
204 AU分離部
205 PESヘッダ解析部
206 Box作成部
207 連結部
301 AU解析部
302 エラー情報生成部
303 AU形式変換部
304 Boxデータ決定部
401 ヘッダ分離部
402 ヘッダメモリ
403 mdatメモリ
404 サンプル取得部
405 エラー情報解析部
406 復号再生部
406a 復号部
406b サンプル表示部
406c 欠落情報通知部
DESCRIPTION OF SYMBOLS 101 Data I / O part 102 Memory 103 Conversion part 201 TS payload separation part 202 Packet loss determination part 203 PES separation analysis part 204 AU separation part 205 PES header analysis part 206 Box creation part 207 Connection part 301 AU analysis part 302 Error information generation Unit 303 AU format conversion unit 304 box data determination unit 401 header separation unit 402 header memory 403 mdat memory 404 sample acquisition unit 405 error information analysis unit 406 decoding reproduction unit 406a decoding unit 406b sample display unit 406c missing information notification unit

Claims (17)

第1の方式によりパケット多重化された符号化メディアデータを前記第1の方式と異なる第2の方式によりパケット多重化して出力する多重化方式変換装置であって、
前記第1の方式によりパケット多重化された符号化メディアデータにおけるパケットロスの有無を判定するパケットロス判定手段と、
前記パケットロス判定手段でパケットロスが有と判定された場合に、前記符号化メディアデータにおけるデータが欠落した位置に基づいて、データ欠落に関する欠落情報を生成する欠落情報生成手段と、
前記欠落情報生成手段で生成された欠落情報を前記第2の方式のパケットに格納するとともに、前記符号化メディアデータを前記第2の方式によりパケット多重化する多重化手段と
を備えることを特徴とする多重化方式変換装置。
A multiplexing method conversion apparatus for multiplexing and outputting encoded media data packet-multiplexed by a first method according to a second method different from the first method,
Packet loss determination means for determining presence or absence of packet loss in the encoded media data packet-multiplexed by the first method;
When the packet loss determination means determines that there is a packet loss, based on the position where the data in the encoded media data is lost, missing information generation means for generating missing information regarding data loss;
Multiplex means for storing the missing information generated by the missing information generating means in the packet of the second scheme and for multiplexing the encoded media data by the second scheme. Multiplexing system conversion device.
前記多重化方式変換装置は、さらに、
前記第1の方式によりパケット多重化された符号化メディアデータのパケットからヘッダとペイロードを分離するパケット分離手段
を備えることを特徴とする請求項1記載の多重化方式変換装置。
The multiplexing method converter further includes:
2. The multiplexing method conversion apparatus according to claim 1, further comprising: a packet separation unit that separates a header and a payload from a packet of encoded media data packet-multiplexed by the first method.
前記パケットロス判定手段は、前記パケット分離手段で分離された前記ヘッダに基づいてパケットロスの有無を判定する
ことを特徴とする請求項2記載の多重化方式変換装置。
The multiplexing system conversion apparatus according to claim 2, wherein the packet loss determination unit determines whether or not there is a packet loss based on the header separated by the packet separation unit.
前記多重化方式変換装置は、さらに、
前記パケット分離手段で分離された前記ペイロードから前記符号化メディアデータのフレーム境界を検出してフレームを分離するフレーム分離手段を備え、
前記欠落情報生成手段は、前記パケットロス判定手段でパケットロスが有と判定された場合に、前記符号化メディアデータにおけるデータが欠落した位置に基づいて、データ欠落に関する欠落情報をフレーム単位で生成し、
前記多重化手段は、前記欠落情報生成手段で生成された前記フレーム単位での欠落情報を前記第2の方式のパケットに格納する
ことを特徴とする請求項2記載の多重化方式変換装置。
The multiplexing method converter further includes:
Frame separation means for detecting a frame boundary of the encoded media data from the payload separated by the packet separation means and separating frames;
The missing information generating means generates missing information on data loss in units of frames based on a position where the data in the encoded media data is lost when the packet loss determining means determines that there is a packet loss. ,
The multiplexing method conversion apparatus according to claim 2, wherein the multiplexing means stores the missing information in units of frames generated by the missing information generating means in the packet of the second method.
前記欠落情報生成手段は、復号に必須なデータが欠落していないフレームが復号順で1枚以上連続する区間を示す情報を前記欠落情報として生成する
ことを特徴とする請求項4記載の多重化方式変換装置。
5. The multiplexing according to claim 4, wherein the missing information generation unit generates information indicating a section in which one or more frames in which decoding essential data is not lost in a decoding order are continued as the missing information. Method conversion device.
前記欠落情報生成手段は、前記区間を示す情報として前記区間の先頭フレームの情報を生成する
ことを特徴とする請求項5記載の多重化方式変換装置。
6. The multiplexing method conversion apparatus according to claim 5, wherein the missing information generation unit generates information of a head frame of the section as information indicating the section.
前記欠落情報生成手段は、前記区間を示す情報として前記区間の最終フレームの情報を生成する
ことを特徴とする請求項5記載の多重化方式変換装置。
6. The multiplexing method conversion apparatus according to claim 5, wherein the missing information generation unit generates information of a last frame of the section as information indicating the section.
前記多重化方式変換装置は、さらに、
ランダムアクセス可能であるフレームを登録するためのテーブルを作成する作成手段を備え、
前記多重化手段は、前記符号化メディアデータのランダムアクセス可能であるフレームを前記テーブルへ登録する際に、前記符号化メディアデータにおけるデータが欠落した位置に基づいて、前記フレームにおいて復号に必須なデータが欠落しているか否かを判定し、前記フレームにおいて復号に必須なデータが欠落していれば、前記フレームをランダムアクセス可能なフレームとして前記テーブルへ登録しない
ことを特徴とする請求項4記載の多重化方式変換装置。
The multiplexing method converter further includes:
A creation means for creating a table for registering a frame that can be randomly accessed is provided.
The multiplexing means, when registering a random accessible frame of the encoded media data in the table, data essential for decoding in the frame based on the position where the data in the encoded media data is missing The frame is not registered in the table as a randomly accessible frame if data essential for decoding is missing in the frame. Multiplexing system converter.
前記多重化方式変換装置は、さらに、
前記符号化メディアデータの格納形式を変換する変換手段
を備えることを特徴とする請求項4記載の多重化方式変換装置。
The multiplexing method converter further includes:
5. The multiplexing method conversion apparatus according to claim 4, further comprising conversion means for converting a storage format of the encoded media data.
前記フレームが1以上のサブフレーム単位から構成され、
前記変換手段は、サブフレーム単位の先頭に前記サブフレームのサイズ情報を付加して前記格納形式を変換する際には、前記符号化メディアデータにおけるデータが欠落した位置に基づいて、前記第2の方式のパケットに格納するサブフレームデータ、およびサブフレームデータのサイズを決定する
ことを特徴とする請求項9記載の多重化方式変換装置。
The frame is composed of one or more subframe units;
The converting means adds the size information of the subframe to the head of each subframe and converts the storage format based on the position where the data is missing in the encoded media data. The multiplexing system conversion apparatus according to claim 9, wherein the subframe data stored in the system packet and the size of the subframe data are determined.
前記フレームが1以上のサブフレーム単位から構成され、
前記変換手段は、前記符号化メディアデータにおけるデータが欠落した位置に、データの欠落を示すサブフレーム単位を挿入した上で、前記符号化メディアデータを前記第2の方式によりパケット多重化する
ことを特徴とする請求項9記載の多重化方式変換装置。
The frame is composed of one or more subframe units;
The converting means inserts a subframe unit indicating data loss at a position where data in the encoded media data is lost, and packet-multiplexes the encoded media data by the second method. The multiplexing system conversion apparatus according to claim 9, wherein:
前記欠落情報生成手段は、所定単位の復号に必須なデータが欠落しているか否かを示す情報を前記欠落情報として生成する
ことを特徴とする請求項1記載の多重化方式変換装置。
The multiplexing system conversion apparatus according to claim 1, wherein the missing information generating unit generates, as the missing information, information indicating whether or not data essential for decoding in a predetermined unit is missing.
符号化メディアデータがパケット多重化された多重化データを復号する逆多重化装置であって、
前記多重化データからデータ欠落に関する欠落情報を抽出する欠落情報抽出手段と、
前記欠落情報抽出手段で抽出された前記欠落情報に基づいて前記符号化メディアデータの中で復号するデータを決定する欠落情報解析手段と、
前記欠落情報解析手段で復号すると決定された前記データを復号する復号手段と
を備えることを特徴とする逆多重化装置。
A demultiplexer that decodes multiplexed data in which encoded media data is packet-multiplexed,
Missing information extracting means for extracting missing information related to missing data from the multiplexed data;
Missing information analyzing means for determining data to be decoded in the encoded media data based on the missing information extracted by the missing information extracting means;
And a decoding means for decoding the data determined to be decoded by the missing information analyzing means.
前記逆多重化装置は、さらに、
前記欠落情報抽出手段で抽出された前記欠落情報に基づいて再生品質をユーザに通知する欠落情報通知手段
を備えることを特徴とする請求項13記載の逆多重化装置。
The demultiplexer further comprises:
The demultiplexing apparatus according to claim 13, further comprising missing information notifying means for notifying a user of reproduction quality based on the missing information extracted by the missing information extracting means.
前記欠落情報通知手段は、前記通知に基づくユーザの指示を受け付ける
ことを特徴とする請求項14記載の逆多重化装置。
The demultiplexing apparatus according to claim 14, wherein the missing information notification unit receives a user instruction based on the notification.
第1の方式によりパケット多重化された符号化メディアデータを前記第1の方式と異なる第2の方式によりパケット多重化して出力する多重化方式変換方法であって、
前記第1の方式によりパケット多重化された符号化メディアデータにおけるパケットロスの有無を判定するパケットロス判定ステップと、
前記パケットロス判定ステップにおいてパケットロスが有と判定された場合に、前記符号化メディアデータにおけるデータが欠落した位置に基づいて、データ欠落に関する欠落情報を生成する欠落情報生成ステップと、
前記欠落情報生成ステップにおいて生成された欠落情報を前記第2の方式のパケットに格納するとともに、前記符号化メディアデータを前記第2の方式によりパケット多重化する多重化ステップと
を含むことを特徴とする多重化方式変換方法。
A multiplexing method conversion method for multiplexing and outputting encoded media data packet-multiplexed according to a first method by packet multiplexing according to a second method different from the first method,
A packet loss determination step for determining the presence or absence of a packet loss in the encoded media data packet-multiplexed by the first method;
A missing information generating step for generating missing information regarding data loss based on a position where data is missing in the encoded media data when it is determined that there is a packet loss in the packet loss determining step;
Storing the missing information generated in the missing information generating step in the packet of the second scheme, and a multiplexing step of multiplexing the encoded media data by the second scheme. Multiplexing method conversion method.
第1の方式によりパケット多重化された符号化メディアデータを前記第1の方式と異なる第2の方式によりパケット多重化して出力するためのプログラムであって、
前記第1の方式によりパケット多重化された符号化メディアデータにおけるパケットロスの有無を判定するパケットロス判定ステップと、
前記パケットロス判定ステップにおいてパケットロスが有と判定された場合に、前記符号化メディアデータにおけるデータが欠落した位置に基づいて、データ欠落に関する欠落情報を生成する欠落情報生成ステップと、
前記欠落情報生成ステップにおいて生成された欠落情報を前記第2の方式のパケットに格納するとともに、前記符号化メディアデータを前記第2の方式によりパケット多重化する多重化ステップとをコンピュータに実行させる
ことを特徴とするプログラム。
A program for multiplexing and outputting encoded media data packet-multiplexed according to a first method by packet multiplexing according to a second method different from the first method,
A packet loss determination step for determining the presence or absence of a packet loss in the encoded media data packet-multiplexed by the first method;
A missing information generating step for generating missing information regarding data loss based on a position where data is missing in the encoded media data when it is determined that there is a packet loss in the packet loss determining step;
Storing the missing information generated in the missing information generating step in the packet of the second scheme, and causing the computer to execute a multiplexing step of packet multiplexing the encoded media data by the second scheme. A program characterized by
JP2005005731A 2004-01-15 2005-01-12 Multiplexing conversion device Pending JP2005229587A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005005731A JP2005229587A (en) 2004-01-15 2005-01-12 Multiplexing conversion device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004007817 2004-01-15
JP2005005731A JP2005229587A (en) 2004-01-15 2005-01-12 Multiplexing conversion device

Publications (2)

Publication Number Publication Date
JP2005229587A true JP2005229587A (en) 2005-08-25
JP2005229587A5 JP2005229587A5 (en) 2008-01-17

Family

ID=35003921

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005005731A Pending JP2005229587A (en) 2004-01-15 2005-01-12 Multiplexing conversion device

Country Status (1)

Country Link
JP (1) JP2005229587A (en)

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007034634A1 (en) * 2005-09-20 2007-03-29 Pioneer Corporation Digital broadcast receiver
WO2008085013A1 (en) * 2007-01-12 2008-07-17 University-Industry Cooperation Group Of Kyung Hee University Packet format of network abstraction layer unit, and algorithm and apparatus for video encoding and decoding using the format, qos control algorithm and apparatus for ipv6 label switching using the format
JP2009010934A (en) * 2007-06-27 2009-01-15 Lianfa Science & Technology Co Ltd Apparatus and method for processing bitstream
JP2009509390A (en) * 2005-09-19 2009-03-05 エヌエックスピー ビー ヴィ Apparatus and method for error correction in mobile wireless applications incorporating multi-level adaptive erasure data
JP2009530881A (en) * 2006-03-17 2009-08-27 テールズ Multimedia data protection method using an additional network abstraction layer (NAL)
JP2009534892A (en) * 2006-04-18 2009-09-24 フランス テレコム ソシエテ アノニム Notification method for audio signal transfer defects
JP2010539834A (en) * 2007-09-19 2010-12-16 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン Apparatus and method for storing and reading a file having a media data container and a metadata container
JP2012175608A (en) * 2011-02-24 2012-09-10 Nec Personal Computers Ltd Converter, information distribution device, communication system, control method, and program
WO2014002618A1 (en) * 2012-06-27 2014-01-03 ソニー株式会社 Image decoding device, image decoding method, image encoding device, and image encoding method
JP2015097386A (en) * 2013-11-15 2015-05-21 パナソニック株式会社 File generation method and file generation apparatus
WO2015072127A1 (en) * 2013-11-15 2015-05-21 パナソニック株式会社 File generation method and file generation apparatus
JP2015515192A (en) * 2012-03-16 2015-05-21 アルカテル−ルーセント Enabling delivery of protected content using an unsecured delivery service
JP2015133696A (en) * 2014-01-10 2015-07-23 パナソニックIpマネジメント株式会社 File generating method, file generating device, and recording medium
WO2015178112A1 (en) * 2014-05-19 2015-11-26 ソニー株式会社 Information processing device, information generation device, information recording medium, information processing method, and program
WO2016031589A1 (en) * 2014-08-29 2016-03-03 ソニー株式会社 Reception device and reception method
JP2017034664A (en) * 2015-08-03 2017-02-09 パナソニックIpマネジメント株式会社 Transmission method, reception method, transmission device, and reception device.
JP2017073761A (en) * 2015-10-07 2017-04-13 パナソニックIpマネジメント株式会社 Reception device and reception method
WO2017090463A1 (en) * 2015-11-27 2017-06-01 ソニー株式会社 Receiving device and method, and communication system
JP2018170791A (en) * 2011-09-29 2018-11-01 サムスン エレクトロニクス カンパニー リミテッド Method and apparatus for transmitting and receiving content
JP2021508977A (en) * 2018-05-29 2021-03-11 北京字節跳動網絡技術有限公司Beijing Bytedance Network Technology Co., Ltd. Metadata container analysis method, equipment and storage medium
US11095934B2 (en) 2015-10-07 2021-08-17 Panasonic Intellectual Property Management Co., Ltd. Receiving device and receiving method

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001148853A (en) * 1999-03-12 2001-05-29 Toshiba Corp Video encoding device and decoding device
JP2003319389A (en) * 2002-04-26 2003-11-07 Matsushita Electric Ind Co Ltd Image data decoding apparatus and structure of image data
JP2004032225A (en) * 2002-06-25 2004-01-29 Hitachi Ltd Two-way communication system
JP2004159015A (en) * 2002-11-05 2004-06-03 Matsushita Electric Ind Co Ltd Data multiplexing method, data demultiplexing method
JP2004297710A (en) * 2003-03-28 2004-10-21 Sony Corp Signal processing apparatus and method, recording medium, and program
JP2005123907A (en) * 2003-10-16 2005-05-12 Matsushita Electric Ind Co Ltd Data reconstruction device

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001148853A (en) * 1999-03-12 2001-05-29 Toshiba Corp Video encoding device and decoding device
JP2003319389A (en) * 2002-04-26 2003-11-07 Matsushita Electric Ind Co Ltd Image data decoding apparatus and structure of image data
JP2004032225A (en) * 2002-06-25 2004-01-29 Hitachi Ltd Two-way communication system
JP2004159015A (en) * 2002-11-05 2004-06-03 Matsushita Electric Ind Co Ltd Data multiplexing method, data demultiplexing method
JP2004297710A (en) * 2003-03-28 2004-10-21 Sony Corp Signal processing apparatus and method, recording medium, and program
JP2005123907A (en) * 2003-10-16 2005-05-12 Matsushita Electric Ind Co Ltd Data reconstruction device

Cited By (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009509390A (en) * 2005-09-19 2009-03-05 エヌエックスピー ビー ヴィ Apparatus and method for error correction in mobile wireless applications incorporating multi-level adaptive erasure data
WO2007034634A1 (en) * 2005-09-20 2007-03-29 Pioneer Corporation Digital broadcast receiver
JPWO2007034634A1 (en) * 2005-09-20 2009-03-19 パイオニア株式会社 Digital broadcast receiver
JP2009530881A (en) * 2006-03-17 2009-08-27 テールズ Multimedia data protection method using an additional network abstraction layer (NAL)
JP2009534892A (en) * 2006-04-18 2009-09-24 フランス テレコム ソシエテ アノニム Notification method for audio signal transfer defects
US11374861B2 (en) 2007-01-12 2022-06-28 University-Industry Cooperation Group Of Kyung Hee University Packet format of network abstraction layer unit, and algorithm and apparatus for video encoding and decoding using the format, QOS control algorithm and apparatus for IPv6 label
US9344362B2 (en) 2007-01-12 2016-05-17 University-Industry Cooperation Group Of Kyung Hee University Packet format of network abstraction layer unit, and algorithm and apparatus for video encoding and decoding using the format, QOS control algorithm and apparatus for IPV6 label switching using the format
US10728148B2 (en) 2007-01-12 2020-07-28 University-Industry Cooperation Group of Kyung Hee University Kyunghee Univ. (Suwon Campus) Packet format of network abstraction layer unit, and algorithm and apparatus for video encoding and decoding using the format, QoS control algorithm and apparatus for IPv6 label switching using the format
US11743185B2 (en) 2007-01-12 2023-08-29 University-Industry Cooperation Group Of Kyung Hee University Packet format of network abstraction layer unit, and algorithm and apparatus for video encoding and decoding using the format, QOS control algorithm and apparatus for IPV6 label switching using the format
US9853893B2 (en) 2007-01-12 2017-12-26 University-Industry Cooperation Group of Kyung Hee University Kyunghee Univ. (Suwon Campus) Packet format of network abstraction layer unit, and algorithm and apparatus for video encoding and decoding using the format, QoS control algorithm and apparatus for IPv6 label switching using the format
WO2008085013A1 (en) * 2007-01-12 2008-07-17 University-Industry Cooperation Group Of Kyung Hee University Packet format of network abstraction layer unit, and algorithm and apparatus for video encoding and decoding using the format, qos control algorithm and apparatus for ipv6 label switching using the format
US11848864B2 (en) 2007-01-12 2023-12-19 University-Industry Cooperation Group Of Kyung Hee University Packet format of network abstraction layer unit, and algorithm and apparatus for video encoding and decoding using the format, QOS control algorithm and apparatus for IPv6 label switching using the format
US12063158B2 (en) 2007-01-12 2024-08-13 University—Industry Cooperation Group Of Kyung Hee University Packet format of network abstraction layer unit, and algorithm and apparatus for video encoding and decoding using the format, QOS control algorithm and apparatus for IPv6 label switching using the format
US12224935B2 (en) 2007-01-12 2025-02-11 University-Industry Cooperation Group Of Kyung Hee University Packet format of network abstraction layer unit, and algorithm and apparatus for video encoding and decoding using the format, QOS control algorithm and apparatus for IPV6 label switching using the format
US12289236B2 (en) 2007-01-12 2025-04-29 University-Industry Cooperation Group Of Kyung Hee University Packet format of network abstraction layer unit, and algorithm and apparatus for video encoding and decoding using the format, QoS control algorithm and apparatus for IPV6 label switching using the format
JP2009010934A (en) * 2007-06-27 2009-01-15 Lianfa Science & Technology Co Ltd Apparatus and method for processing bitstream
JP2010539834A (en) * 2007-09-19 2010-12-16 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン Apparatus and method for storing and reading a file having a media data container and a metadata container
US8849778B2 (en) 2007-09-19 2014-09-30 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for storing and reading a file having a media data container and a metadata container
JP2012175608A (en) * 2011-02-24 2012-09-10 Nec Personal Computers Ltd Converter, information distribution device, communication system, control method, and program
US11082479B2 (en) 2011-09-29 2021-08-03 Samsung Electronics Co., Ltd. Method and apparatus for transmitting and receiving content
US10659519B2 (en) 2011-09-29 2020-05-19 Samsung Electronics Co., Ltd. Method and apparatus for transmitting and receiving content
US11647071B2 (en) 2011-09-29 2023-05-09 Samsung Electronics Co., Ltd. Method and apparatus for transmitting and receiving content
JP2018170791A (en) * 2011-09-29 2018-11-01 サムスン エレクトロニクス カンパニー リミテッド Method and apparatus for transmitting and receiving content
US9948695B2 (en) 2012-03-16 2018-04-17 Alcatel Lucent Enabling delivery of protected content using unprotected delivery services
JP2015515192A (en) * 2012-03-16 2015-05-21 アルカテル−ルーセント Enabling delivery of protected content using an unsecured delivery service
WO2014002618A1 (en) * 2012-06-27 2014-01-03 ソニー株式会社 Image decoding device, image decoding method, image encoding device, and image encoding method
WO2015072127A1 (en) * 2013-11-15 2015-05-21 パナソニック株式会社 File generation method and file generation apparatus
JP2015097386A (en) * 2013-11-15 2015-05-21 パナソニック株式会社 File generation method and file generation apparatus
CN105210365A (en) * 2013-11-15 2015-12-30 松下电器产业株式会社 File generation method and file generation apparatus
EP3094083A4 (en) * 2014-01-10 2016-11-16 Panasonic Ip Man Co Ltd File generation method, file generation device and recording medium
JP2015133696A (en) * 2014-01-10 2015-07-23 パナソニックIpマネジメント株式会社 File generating method, file generating device, and recording medium
US10535369B2 (en) 2014-05-19 2020-01-14 Sony Corporation Information processing device, information generation device, information recording medium, information processing method, and program
JPWO2015178112A1 (en) * 2014-05-19 2017-04-20 ソニー株式会社 Information processing apparatus, information generation apparatus, information recording medium, information processing method, and program
WO2015178112A1 (en) * 2014-05-19 2015-11-26 ソニー株式会社 Information processing device, information generation device, information recording medium, information processing method, and program
JPWO2016031589A1 (en) * 2014-08-29 2017-06-29 ソニー株式会社 Receiving apparatus and receiving method
WO2016031589A1 (en) * 2014-08-29 2016-03-03 ソニー株式会社 Reception device and reception method
JP2017034664A (en) * 2015-08-03 2017-02-09 パナソニックIpマネジメント株式会社 Transmission method, reception method, transmission device, and reception device.
JP7429895B2 (en) 2015-10-07 2024-02-09 パナソニックIpマネジメント株式会社 receiving device
JP2022016499A (en) * 2015-10-07 2022-01-21 パナソニックIpマネジメント株式会社 Receiving device and receiving method
JP7209234B2 (en) 2015-10-07 2023-01-20 パナソニックIpマネジメント株式会社 Receiving device and receiving method
JP2023029431A (en) * 2015-10-07 2023-03-03 パナソニックIpマネジメント株式会社 receiver
US11095934B2 (en) 2015-10-07 2021-08-17 Panasonic Intellectual Property Management Co., Ltd. Receiving device and receiving method
JP2017073761A (en) * 2015-10-07 2017-04-13 パナソニックIpマネジメント株式会社 Reception device and reception method
JP2024028530A (en) * 2015-10-07 2024-03-04 パナソニックIpマネジメント株式会社 How to send
US10631043B2 (en) 2015-11-27 2020-04-21 Sony Corporation Receiving device and method, and communicating system
WO2017090463A1 (en) * 2015-11-27 2017-06-01 ソニー株式会社 Receiving device and method, and communication system
JPWO2017090463A1 (en) * 2015-11-27 2018-09-27 ソニー株式会社 Receiving apparatus and method, and communication system
JP7174762B2 (en) 2018-05-29 2022-11-17 北京字節跳動網絡技術有限公司 METADATA CONTAINER ANALYSIS METHOD, APPARATUS AND STORAGE MEDIUM
JP2021508977A (en) * 2018-05-29 2021-03-11 北京字節跳動網絡技術有限公司Beijing Bytedance Network Technology Co., Ltd. Metadata container analysis method, equipment and storage medium

Similar Documents

Publication Publication Date Title
KR101073777B1 (en) Converting apparatus of multiplexed system
JP2005229587A (en) Multiplexing conversion device
JP4614991B2 (en) Moving picture stream generation apparatus, moving picture stream generation method, moving picture decoding apparatus, moving picture decoding method, and recording method
KR101549760B1 (en) Signaling random access points for streaming video data
KR101421390B1 (en) Signaling video samples for trick mode video representations
US7558296B2 (en) Multiplexer and demultiplexer
US20050193138A1 (en) Storage medium storing multimedia data, and method and apparatus for reproducing the multimedia data
JP4541962B2 (en) Multiplexer, playback device
JP2005123907A (en) Data reconstruction device
WO2023133365A1 (en) Dynamic resolution change hints for adaptive streaming
JP2004282703A (en) Data processing device
JP2006270463A (en) Packet stream receiver
JP2006238003A (en) Demultiplexer
JP3792770B2 (en) Recording / playback device
JP4114868B2 (en) Multiplexer and multiplexing method
JP2004312713A (en) Data transmission device
HK40009764A (en) Segment types as delimiters and addressable resource identifiers
WO2004043065A1 (en) Data processing device
KR20120058373A (en) Video transmission and device playing system based on http streaming using svc server

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071121

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071121

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100909

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100921

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110308

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110628