JP2005229587A - Multiplexing conversion device - Google Patents
Multiplexing conversion device Download PDFInfo
- 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
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
ここで、携帯端末において受信した放送データを、携帯電話から電子メールに添付して送信するケースを考えてみる。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の処理が完了した時点で作成が完了する。
放送される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
図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
図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
図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
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
以下に、パケットロスのために、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
図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
次に、ステップ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
さらに、上記では、サンプル内のデータがパケットロスにより欠落しているかを示すこととしたが、サンプル内の特定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
また、サンプルのデータが欠落しているかどうかは、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
図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
図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のスライスデータが欠落している際には、復号順または表示順で直前の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
実施の形態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
図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
なお、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
図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
なお、エラーフリー区間を示すことができれば、エラーフリー区間に含まれるサンプル数を示すなど、最終サンプル以外の情報を用いてもよい。 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.
なお、ステップ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
なお、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
また、実施の形態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
また、正しく復号できるサンプル、あるいは、データが欠落したサンプルの割合などからトラックの再生品質を決定し、再生品質を示す情報を格納した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
(実施の形態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
図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
ヘッダ分離部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
最後に、復号表示部406は、復号部406a、サンプル表示部406b、および欠落情報通知部406cを備えている。復号部406aは、サンプルデータを復号する。サンプル表示部406bは、復号されたサンプルデータを表示時間に従って表示する。欠落情報通知部406cは、欠落情報に基づいて例えばサンプルデータの欠落率(欠落データ/全データ)等の情報をユーザに通知し、MP4ファイルを再生するか否かの問い合わせを行う。また、欠落情報通知部406cは、サンプルデータの欠落率等の情報によりユーザが再生を許可した場合の再生許可信号を受け付けると、サンプル取得部404に再生指示信号を出力する。なお、エラー情報解析部405においては復号するサンプルを決定せずに、データが欠落しているサンプル、あるいはエラーフリー区間の情報などのエラー情報を、復号表示部406に出力し、復号表示部において、入力されたエラー情報、あるいはサンプルデータに挿入されたエラー通知用のNALユニットにより示される情報に基づいて、復号するサンプル、あるいはスライスデータを決定してもよい。このとき、復号サンプルの一覧はサンプル取得部404には出力しない。
Finally, the
次に、上記のように構成された逆多重化装置において、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
次に、ステップ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
以下に、ステップ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
なお、本多重化装置は、従来の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
本逆多重化装置の構成は、図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
(実施の形態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.
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
Claims (17)
前記第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.
ことを特徴とする請求項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.
前記変換手段は、サブフレーム単位の先頭に前記サブフレームのサイズ情報を付加して前記格納形式を変換する際には、前記符号化メディアデータにおけるデータが欠落した位置に基づいて、前記第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.
前記変換手段は、前記符号化メディアデータにおけるデータが欠落した位置に、データの欠落を示すサブフレーム単位を挿入した上で、前記符号化メディアデータを前記第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の方式によりパケット多重化された符号化メディアデータにおけるパケットロスの有無を判定するパケットロス判定ステップと、
前記パケットロス判定ステップにおいてパケットロスが有と判定された場合に、前記符号化メディアデータにおけるデータが欠落した位置に基づいて、データ欠落に関する欠落情報を生成する欠落情報生成ステップと、
前記欠落情報生成ステップにおいて生成された欠落情報を前記第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の方式によりパケット多重化された符号化メディアデータにおけるパケットロスの有無を判定するパケットロス判定ステップと、
前記パケットロス判定ステップにおいてパケットロスが有と判定された場合に、前記符号化メディアデータにおけるデータが欠落した位置に基づいて、データ欠落に関する欠落情報を生成する欠落情報生成ステップと、
前記欠落情報生成ステップにおいて生成された欠落情報を前記第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
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)
| 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)
| 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 |
-
2005
- 2005-01-12 JP JP2005005731A patent/JP2005229587A/en active Pending
Patent Citations (6)
| 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)
| 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 |