WO2009146998A1 - Method and apparatus for generating or cutting or changing a frame based bit stream format file including at least one header section, and a corresponding data structure - Google Patents
Method and apparatus for generating or cutting or changing a frame based bit stream format file including at least one header section, and a corresponding data structure Download PDFInfo
- Publication number
- WO2009146998A1 WO2009146998A1 PCT/EP2009/055663 EP2009055663W WO2009146998A1 WO 2009146998 A1 WO2009146998 A1 WO 2009146998A1 EP 2009055663 W EP2009055663 W EP 2009055663W WO 2009146998 A1 WO2009146998 A1 WO 2009146998A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- frame
- file
- frames
- decoding
- bit stream
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 30
- 238000011156 evaluation Methods 0.000 claims description 11
- 238000013507 mapping Methods 0.000 claims description 4
- 125000004122 cyclic group Chemical group 0.000 claims description 3
- 230000000977 initiatory effect Effects 0.000 claims description 3
- 108091006146 Channels Proteins 0.000 description 21
- 238000012545 processing Methods 0.000 description 21
- 230000001427 coherent effect Effects 0.000 description 11
- 239000000523 sample Substances 0.000 description 8
- 238000011084 recovery Methods 0.000 description 5
- 230000015572 biosynthetic process Effects 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 2
- 241001137251 Corvidae Species 0.000 description 1
- 241001362574 Decodes Species 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 235000015108 pies Nutrition 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10527—Audio or video recording; Data buffering arrangements
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/16—Vocoder architecture
- G10L19/167—Audio streaming, i.e. formatting and decoding of an encoded audio signal representation into a data stream for transmission or storage purposes
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/005—Correction of errors induced by the transmission channel, if related to the coding algorithm
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/00166—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised contents recorded on or reproduced from a record carrier, e.g. music or software
- G11B20/00181—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised contents recorded on or reproduced from a record carrier, e.g. music or software using a content identifier, e.g. an international standard recording code [ISRC] or a digital object identifier [DOI]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/12—Formatting, e.g. arrangement of data block or words on the record carriers
- G11B20/1262—Formatting, e.g. arrangement of data block or words on the record carriers with more than one format/standard, e.g. conversion from CD-audio format to R-DAT format
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00007—Time or data compression or expansion
- G11B2020/00014—Time or data compression or expansion the compressed signal being an audio signal
- G11B2020/00021—Time or data compression or expansion the compressed signal being an audio signal lossless audio compression
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00007—Time or data compression or expansion
- G11B2020/00014—Time or data compression or expansion the compressed signal being an audio signal
- G11B2020/00057—MPEG-1 or MPEG-2 audio layer III [MP3]
Definitions
- the invention relates to a frame-based data format with changeable format, the frames containing encoded signal data which for decoding of a current frame require access to pre ⁇ vious frame data.
- MPEGl Audio Layer III bit stream with its bit reservoir technique, where data for a current frame is stored in previous frames. The position of the data is indicated in the bit stream by a pointer to the position in byte of the beginning of the main-data in the previous frame. If the decoder did not receive the required previous frame, decoding of the current mp3 frame is skipped.
- the MPEGl Audio Layer III bit stream does not have a bit stream header field for enabling sample-exact cutting.
- the present invention can be applied for a data format or structure where an extension data stream provides lossless extension for a lossy base layer data stream for e.g. an audio signal, e.g. the hd3 audio file format for lossless ex ⁇ tension of an mp3 bit stream, wherein decoding of a frame requires decoding of more than one previous frame and the bit stream format offers an archival mode and a streaming mode, as well as a sample-exact cutting feature of the bit stream .
- an extension data stream provides lossless extension for a lossy base layer data stream for e.g. an audio signal, e.g. the hd3 audio file format for lossless ex ⁇ tension of an mp3 bit stream, wherein decoding of a frame requires decoding of more than one previous frame and the bit stream format offers an archival mode and a streaming mode, as well as a sample-exact cutting feature of the bit
- ⁇ Archival mode' means that a file includes a single bit stream header and successive frames of encoded or decoded signal samples or coefficients (in particular audio sam- pies) , whereby decoding must start at the beginning of the file, i.e. with the frame following the bit stream header.
- ⁇ Streaming mode' means that a coherent bit stream is sepa ⁇ rated into more than one package of data, each package starting with a single bit stream header followed by several frames, whereby decoding can start at each package.
- Sample-exact cutting means generating as a new bit stream a partial section from an existing bit stream, thereby encoding or decoding only a subset of samples of that existing bit stream, wherein the first and the last decodable sample can be chosen arbitrarily.
- the problem to be solved by the invention is to disclose a bit stream format that facilitates the initialisation of the decoder states at the beginning of a cut file or a streaming package. Depending on the frame, the number of previous frames involved in the decoder states recovery is different. A streaming mode file or a cut file can start at each frame and therefore the required number of previous frames for the decoder state recovery is missing.
- This problem is solved by the methods disclosed in claims 1 and 3 and by the data structure disclosed in claim 2. An ap ⁇ paratus that utilises the method of claim 3 is disclosed in claim 4.
- the inventive bit stream format can be generated or used at encoder side as well as at decoder side.
- the invention is related to a corresponding decoder processing and the required bit stream header fields for initialising the decoder states at the beginning of the cut file or the stream package.
- the bit stream it is signalised in the bit stream how many frames are required for initialising the decoder states. This is performed explicitly by signalising within the bit stream header the number of frames required for the decoder status recovery. These frames are used for decoder initialisation but not for decoding samples or coefficients. For the sample-exact cutting, for the frame at which the cut shall occur, the number of samples or coeffi ⁇ cients to be muted is indicated in the bit stream header, for enabling a sample-exact cutting beyond the frame bor- ders .
- the invention can be used e.g. in an hd3 encoder in order to allow two bit stream modes and sample-exact cutting of the bit stream. It is a specific solution because decoding of a frame of the second layer of the hd3 encoder bit stream re ⁇ quires more then one decoded frame of the first layer, whereas in most known frame-based audio formats each frame can be decoded independently from the other frames. Coders that make use of backward adaptive prediction tech- niques can not use the inventive processing because it re ⁇ quires that all previously decoded samples are known for re ⁇ covering the prediction states. Therefore such known bit streams include the prediction states for initialisation of the decoder after a defined number of coded samples, which is not true for the present invention.
- the inventive method is suited for generating a frame based bit stream format file including at least one bit stream header section, said frames including encoded signal data, wherein data required for a decoding or an evaluation of data of a current frame can be contained in one or more previous frames, and wherein in said header in ⁇ formation items are arranged representing:
- the number of initial frames to mute while decoding states are initialised, and optionally, for a sample-exact cutting feature, the number of samples to mute in the corresponding frame;
- said file includes a single bit stream header section and successive ones of said frames, and a decoding of said encoded signal data is to start with the first one of said frames, and wherein in said streaming mode said bit stream contains more than one super frame, each one of said super frames starting with a single bit stream header section followed by several ones of said frames, and a decoding of said encoded signal data can be initialised at each one of said super frames, and wherein said information item regarding the number of initial frames to mute signalises how many ones of initial frames in a current super frame are required for establish ⁇ ing data for initialising states of a decoding of said signal data before actually starting decoding of encoded signal data from the following frame or frames of said current su- per frame, such initial frames not being used for decoding the encoded signal data contained therein.
- the inventive data structure is suited for a frame based bit stream format file including at least one bit stream header section, said frames including encoded signal data, wherein data required for a decoding or an evaluation of data of a current frame can be contained in one or more previous frames, and wherein in said header in ⁇ formation items are arranged representing: - total number of samples per channel for said file;
- the number of initial frames to mute while decoding states are initialised, and optionally, for a sample-exact cutting feature, the number of samples to mute in the corresponding frame;
- said file includes a single bit stream header section and successive ones of said frames, and a decoding of said encoded signal data is to start with the first one of said frames, and wherein in said streaming mode said bit stream contains more than one super frame, each one of said super frames starting with a single bit stream header section followed by several ones of said frames, and a decoding of said encoded signal data can be initialised at each one of said super frames, and wherein said information item regarding the number of initial frames to mute signalises how many ones of initial frames in a current super frame are required for establish ⁇ ing data for initialising states of a decoding of said signal data before actually starting decoding of encoded signal data from the following frame or frames of said current su ⁇ per frame, such initial frames not being for use for decod ⁇ ing the encoded signal data contained therein.
- one inventive method is suited for cutting a section out of a frame based bit stream format file includ ⁇ ing a bit stream header section, said frames including encoded signal data, wherein data required for a decoding or an evaluation of data of a current frame can be contained in one or more previous frames, and wherein said header in- eludes information items representing:
- a decoding of said encoded signal data is to start at the first frame of said file, wherein in said archival mode, said file includes a single bit stream header section and successive ones of said frames, said method including the step of forming a cutting file by taking the required frames data from said bit stream and ar ⁇ ranging a cutting header in front of these frames data, wherein said cutting header is derived from said header and in said cutting header:
- said information item regarding decoding of said encoded signal data is to start at the first frame of said file is changed to decoding of said encoded signal data is to start later in said file; - an information item is added regarding the number of initial frames to mute while decoding states are initialised.
- one inventive apparatus is suited for cutting a section out of a frame based bit stream format file includ- ing a bit stream header section, said frames including encoded signal data, wherein data required for a decoding or an evaluation of data of a current frame can be contained in one or more previous frames, and wherein said header in ⁇ cludes information items representing: - total number of samples per channel for said file; an 'archival mode' for said file; a decoding of said encoded signal data is to start at the first frame of said file, wherein in said archival mode, said file includes a single bit stream header section and successive ones of said frames, said apparatus including means being adapted for forming a cutting file by taking the required frames data from said bit stream and arranging a cutting header in front of these frames data, wherein said cutting header is derived from said header, and in said cutting header:
- one inventive method is suited for changing a frame based bit stream file format, said bit stream includ ⁇ ing a header section, said frames including encoded signal data, wherein data required for a decoding or an evaluation of data of a current frame can be contained in one or more previous frames, and wherein said header includes informa ⁇ tion items representing:
- a decoding of said encoded signal data is to start at the first frame of said file, wherein in said archival mode, said file includes a single bit stream header section and successive ones of said frames, said method including the step of generating from said archival mode file a 'streaming mode' bit stream by forming from every successive group of frames of said archival mode file a super frame of said streaming mode bit stream by tak- ing the required frame data from said archival mode file and arranging a super frame header at the beginning of each su- per frame, wherein these super frame headers are derived from said header and in the first one of said super frame headers :
- an information item is added regarding the number of samples to mute in the frame where decoding of said encoded signal data is to begin, which number is '0';
- one inventive apparatus is suited for changing a frame based bit stream file format, said bit stream in ⁇ cluding a header section, said frames including encoded signal data, wherein data required for a decoding or an evalua ⁇ tion of data of a current frame can be contained in one or more previous frames, and wherein said header includes in ⁇ formation items representing: - total number of samples per channel for said file;
- a decoding of said encoded signal data is to start at the first frame of said file, wherein in said archival mode, said file includes a single bit stream header section and successive ones of said frames, said apparatus including means being adapted for generating from said archival mode file a 'streaming mode' bit stream by forming from every successive group of frames of said ar ⁇ chival mode file a super frame of said streaming mode bit stream by taking the required frame data from said archival mode file and arranging a super frame header at the beginning of each super frame, wherein these super frame headers are derived from said header and in the first one of said super frame headers :
- an information item is added regarding the number of samples to mute in the frame where decoding of said encoded signal data is to begin, which number is
- the last-mentioned method can be used for de ⁇ coding said streaming mode bit stream, further including the steps of: - when starting decoding of said streaming mode bit stream at said first super frame, the decoding of the encoded signal data starts at the first frame of that super frame using default decoder states;
- a number x muteFrames' of frames corresponding to said information item regarding the number of initial frames to mute is used for initialising the decoding states, and the decoding of encoded signal data starts at frame number muteFrames+1 of the current super frame using these decoding states;
- the following description provides the corresponding bit stream information and the decoder processing for having one bit stream format that supports a streaming mode as well as an archival mode and that facilitates sample-exact cutting.
- FIG. 1 Structure of an archival mode bit stream
- FIG. 2 Structure of a cut archival mode bit stream
- Fig. 4 Dependencies of the n-th frame, whereby decoding of frame n _4 requires data stored in a previous super frame, and therefore it is invalid for stand-alone decoding of the super frame.
- Frame n _3, frame n _2 and frame n _]_ are required for initialising the decoder states of frame n ;
- Fig. 5 Decoder flow chart for the processing of archival mode, cutting mode and streaming mode of the inventive bit stream format;
- Fig. 6 Simplified HD3 file format.
- the invention was made during the hd3 codec development. Therefore, the description is applicable to the current ver- sion of the hd3 bit stream format. However, the invention can be applied correspondingly to all frame based file for- mats that require knowledge of a number of previous frames for decoding a frame and wherein number is written into the bit stream header for initialising the decoder states, or for achieving sample-exact cutting by indicating the number of samples to mute of the decoded frame.
- the hd3 codec processing enables storage, in a single file, of an mp3 file plus extension data for the bit-exact repre ⁇ sentation of the source of the mp3 file.
- the first version of the hd3 bit stream format was an archival format with one file header and successive data frames Frame ⁇ , Frame]_, ... Frame n , as shown in Fig. 1.
- the different layers of the hd3 codec are not depicted here, and it is assumed that the described coder requires a number of previously decoded frames to decode the current frame.
- the archival mode bit stream as shown in Fig. 1 consists of one file header at the beginning of the file, followed by signal data divided into frames, wherein each frame repre ⁇ sents code representing a segment of L coded signal samples or coefficients.
- the archival mode bit stream decoding can start only at the first frame because only there the decoder states are known (they are defined in every decoding standard) .
- the be ⁇ low-mentioned Main_Data_Begin_Pointer in mp3 is set to zero for the first frame.
- the decoder states get initialised and a correct de- coding of the samples is obtained.
- a main characteristic of the described format is that not all but only k, with 0 ⁇ k ⁇ K, previously decoded frames are required to achieve correct results, wherein K is the maximal number of required decoded frames and K is a constant value that is known in the en- coder and in the decoder.
- K is the maximal number of required decoded frames
- K is a constant value that is known in the en- coder and in the decoder.
- decoding of the required information from the previous frames without knowledge of other frames needs to be feasible.
- the hd3 codec provides such feature by the independently de- codable mp3 frames.
- the reconstruction of the bit- exact replica i.e. lossless reconstruction
- the MPEGl Audio Layer III standard ISO/IEC ISO/IEC
- 11172-3 includes the above-mentioned bit reservoir technique that allows storage of main data in previous frames.
- a main data begin pointer is used that points to the beginning of the main data located in a previous frame.
- decoding of single mp3 frames requires information from previous frames as well.
- the frames n-3 to n-1 can not be decoded cor ⁇ rectly because their decoder states are not initialised cor ⁇ rectly due to the missing data from the previous frames.
- the correct decoder states of the following frame can be reconstructed in a decoder states initialisa ⁇ tion step/stage DSI by performing the mapping process de ⁇ scribed in EP08102308.7.
- the first frame with correctly ini ⁇ tialised decoder states is Framen '
- some extra information items are added to the bit stream header depicted in the following table. Based on these additional information items the decoder can decide if the processing will start with known default decoder states or with unknown decoder states:
- Table 1 Section of the header of the inventive bit stream format
- the x MuteIfFirstSuperFrame' field of the bit stream header indicates whether or not decoding of the following frames requires an additional initialisation of the decoder states, If true (i.e. the flag is set) , further information items are inserted into the bit stream header, which will be dis ⁇ cussed in the following examples for cutting and streaming.
- the bit stream header for the archival mode uses the X OFI/ , 'FileMode' and 'MutelfFirstSuperFrame' data fields only, wherein the values x FileMode' and x MuteIfFirstSuperFrame' are set to zero (or the corresponding flags are cleared) to indicate a non-cut archival file.
- Cutting is used at decoding side to separate a short sub ⁇ section from a received or replayed complete coherent bit stream in archival mode.
- the bit stream mode of the cut file is equal to that of the archival mode format.
- Fig. 2 depicts a cut file produced from the archival mode file format shown in Fig. 1. Cutting can be used, for example, to get a short preview of the complete file. Instead of decoding and newly encoding the desired section, the required frames are just cut out from the input file and a new header is inserted in front of these cut-out data frames.
- the problem with cutting is that for the decoding of the first frame of the cut-out data frames the data from the re ⁇ quired previous frames are missing in case the preview or the cut-out section, respectively, does not start at the be- ginning of the complete bit stream. Therefore the cut file evaluates the x MuteIfFirstSuperFrame' data field of the bit stream header indicating that the processing of the first frames merely initialises the decoder states and that the decoded samples of these frames are to be muted.
- the number of frames that are to be muted is indicated in the bit stream header in the x muteFrames' field, and the number x muteSamples' of samples that are to be muted is indicated in the header to enable sample-exact cutting instead of pure frame-exact cutting.
- OFL orig Total length of the input file in samples per channel
- OFL cut Total length of the cut file in samples per chan- nel
- Frame va i ld First decodable frame with known decoder states
- Frame st art First decoded frame of the cut file Create the cut file opy the header followed by the frames Frame sta rt to Frame en d
- x FileMode' is set to x 0' and 'MutelfFirstSuperFrame' is set to ⁇ l' .
- the cut file must start with the frame that holds the data of the first frame involved in the decoder state recovery of x Frame va i ld ' .
- the obtained number of previous frames is written into the 'muteFrame' field of the bit stream header, such that the decoder knows that these frames are to be used only for ini ⁇ tialisation of the decoder states and not for decoding samples .
- an additional number of 'samples per channel to mute' can be indi ⁇ cated in the header as well. These samples will be decoded correctly by the decoder but will not be presented to the user. Therefore the decoded presented signal can start with a sample located anywhere within the frame, instead of starting at the beginning of the frame.
- X OFI/ is the number of samples per channel that can be decoded with known decoder states. This is ex ⁇ plained in more detail in the following Streaming bit stream mode section. Therefore the samples of the initialisation frames are to be added to the actual number of samples of the cut file. The decoder will automatically subtract these additional samples from the X OFL' value in the decoder proc ⁇ ess. Further details are described in the Decoding process ⁇ ing section.
- the archival bit stream mode can be transformed at decoding side into a streaming bit stream mode.
- 'Streaming mode' means that the frames of the archival bit stream are separated into successive packages, whereby each one of these packages is called a 'super frame' (SF) and has the same structure as an archival bit stream.
- SF 'super frame'
- the x FileMode' data field of the bit stream header of each super frame carries the value x l' indicating the streaming mode, in which the decoder must decode several successive super frames in order to reconstruct all samples of the en ⁇ coded file.
- the first super frame of a streaming mode stream is basically identical to the beginning of an archival mode file, but in the bit stream header the data fields xFileMode' and X OFL' carry values different than in an ar ⁇ chival mode header.
- the decoder starts decoding of the first super frame, the default decoder states are used and the first frame can be decoded directly without requiring any further information items.
- a streaming mode bit stream can be replayed or decoded starting at each one of its super frames.
- AND decoding starts at the beginning of a new coherent bit stream in streaming mode.
- the default decoder states are used and the decoding of the samples can start directly at the first frame of the super frame .
- the first 'muteFrame' frames of the current super frame are used for initialising the decoder states, and the decoding of samples can start at frame number ('muteFrames' +1) .
- the x StreamingCheckSum' data field of the header is used. Its value is obtained from the data of the previous super frame and is written into the 'Stream- ingCheckSum' data field of the following super frame, so that successive super frames can be identified. For example, a Cyclic Redundancy Check sum (CRC) or a hash value of frames, e.g. the last frame, of the previous super frame can be used.
- CRC Cyclic Redundancy Check sum
- the decoder computes the CRC of the previous super frame and compares it with the value stored in the header of the current super frame.
- the decoder states are to be re ⁇ initialised using the first x muteFrames' number of frames of the next super frame. Decoding of samples starts at frame number ('muteFrames' +1) .
- the x StreamingCheckSum' data field is not used in the first super frame of a coherent streaming mode bit stream because previous frames are not required and therefore the consis ⁇ tency check is superfluous.
- the decoder status of the previously decoded super frame can be used to decode the frames of the next super frame .
- a typical streaming processing starts with an initialisation phase followed by several decoding phases.
- the 'muteFrame' information is not used because the decoder states are initialised correctly by corresponding data from the previous super frame, and the data to which the x Main_Data_Begin_Pointer' is pointing is available in the previous super frame.
- OFL or -j_g Total length of the input file in samples per chan ⁇ nel M: Number of super frames with M ⁇ ceil (OFL or -j_g/L)
- M mean : Average number of frames per super frame
- NumFrames ceil (OFL or -j_g/L) , wherein x ceil' returns a value representing the smallest integer that is greater equal the argument of the ceil function.
- Copy frames number x 0' to (M mean -1) Copy frames number x 0' to (M mean -1) .
- Compute x StreamingCheckSum' compute the Cyclic Redundancy Check sum of a defined part of the previous super frame and store the result in data field ⁇ StreamingCheckSuir ⁇ p' .
- Step/stage 1 the input file or bit stream is available for reading the required data.
- Step/stage 2 finds and reads the first header of the file or bit stream, i.e. the header information items of Table 1 are set, stored or loaded.
- Step/stage 3 sets the variable x Sam- plesToMute' to its default value zero.
- X I/ is the number of samples that are decoded from one frame, which is a known decoder constant.
- Step/stage 6 decodes all received frames which includes also the first x muteFrames' frames. Hence X OFI/ decoded samples are passed to the next step/stage.
- the first x SamplesToMute' samples are invalid, they are used for initialising the de ⁇ coder states.
- step/stage 7 removes the invalid x Sam- plesToMute' samples and returns only the remaining samples to step/stage 8.
- the number of remaining samples is the dif ⁇ ference between the value x SamplesToMute' and the total num ⁇ ber OFL of decoded samples. In case that x SamplesToMute' is greater than OFL, zero samples are returned to step/stage 8. This can happen in the streaming-mode if the number of frames per super frame is less than the number of frames to mute .
- MuteNextSF SamplesToMute - OFL is calculated in step/stage 9 in order to store the number of samples to mute in the next super frame .
- step/stage 10 the decoding processing is finished 11 for an archival mode file or bit stream or a cut file bit stream because all OFL samples of the file have been decoded.
- step/stage 10 checks the x FileMode' and proceeds to END step 11 for stopping the archival mode decoding process. Otherwise, decoding of the streaming-mode bit stream is to be continued. Therefore the x StreamingCheckSum' , for example a CRC, is computed from the frame data of the currently decoded frame in step/stage 12. The processing and the data used for the x StreamingCheckSum' computation must produce identical results in the encoder and the decoder. Furthermore, the x StreamingCheckSum' should represent a clear identification of the current frame because it is used for verifying the consistency of the decoder states of the next super frame. Therefore the used data should diversify from super frame to super frame and represent the coded data of the super frame.
- the x StreamingCheckSum' for example a CRC
- step/stage 13 Upon switching to the next super frame, step/stage 13 searches and reads the header of the next super frame. This step/stage re-initialises all bit stream header variables so that the former header information is lost. Upon reaching the end of the file, or in case no valid bit stream header has been found, the decoder will proceed to step 11 and stop the decoding.
- a streaming mode bit stream file can consists of two or more successive coherent bit streams. Therefore it is to be checked whether the following super frame is the first super frame of a new coherent bit stream, because in such case the current decoder states belong to a different bit stream and are to be reset to the default values.
- Step/stage 15 checks variable x FirstSuperFrame' whether a new coherent bit stream is starting. If true, step/stage 17 resets the decoder states and starts decoding of the next super frame at step/stage 3. This is identical to starting decoding of a new file, and is also identical to the decoder initialisation phase 1 of the streaming-mode section in this description. Otherwise the next super frame belongs to the same coherent bit stream and the processing continues in step/stage 16.
- the x StreamingCheckSum' value of the current super frame bit stream header is compared with the x Streaming-
- step/stage 17 is used to reset the decoder states and then decoding of the next super frame starts at step/stage 3. Therefore the processing is in the decoder initialisation phase 3 of the streaming-mode section in this description and the decoding is started with default decoder states, which leads to the decoder initialisation phase 2 in step/stage 4.
- step/stage 18 which sets the x MuteIfFirstSuper- Frame' variable to zero. Therefore step/stage 4 will not lead to step/stage 8 and the x muteFrames' value of the cur ⁇ rent super frame will not be used.
- decoding of the current super frame must start at step/stage 4 in order to omit the re-initialisation of x SamplesToMute' in step/stage 3. If in step/stage 19 parameter MuteNextSF ⁇ 0, there are no remaining samples to mute and the decoder states are correct and the decoding of the current super frame can start di ⁇ rectly with the first frame. The number of samples to mute is set to zero in step/stage 3. In Streaming mode the decoding of successive super frames is repeated until step/stage 13 does no more find a bit stream header, and the decoding processing is stopped in step 11.
- the invention facilitates processing of a frame based bit stream format in archival mode bit stream or streaming mode bit stream, and enables a sample-exact cutting of the archival mode bit stream, even if decoding of one frame re ⁇ quires information from previous frames.
- inventive decoding processing is used in a hd3 decoder implementation and is tested successfully.
- a HD3 file in it simplest format has three mandatory data sections shown in Fig. 6, and up to four optional data sec ⁇ tions.
- the mandatory hd3lD data section provides file-mode, length, and CRC information.
- This hd3lD section is encapsulated in an ancillary data section (silence PCM) of an mp3 frame.
- Such ancillary data section of an mp3 frame may also contain a Xing- or VBRi-compliant variable bit rate header in front of the hd3lD information.
- the mandatory mp3-data section encapsulates the mp3 data stream or parts thereof.
- the synchronisation words of the mp3 stream may be scrambled.
- the mandatory cd-data section provides the lossless exten ⁇ sion to the mp3 data for reconstructing a mathematically lossless copy of the original music with one or two audio channels having a temporal resolution corresponding to 32 kHz, 44.1 kHz or 48 kHz and an amplitude resolution of 16 bit/sample.
- An unsynchronisation scheme can be used that avoids the occurrence of mp3 sync headers.
- An optional hd-data section (not depicted) enables lossless reconstruction of high-definition studio formats with up to 24 bit/sample and sampling rates of 192 kHz.
- the optional ID3/ID3v2 data section stores metadata relating to the embedded mp3 encoded and the lossless reconstruction encoded music. There may also be an optional ID3vl tag at the very end of the HD3 file (not depicted) .
- the invention can also be used for other codecs or bit streams like AAC, and in mp3 where the additional data (e.g. the headers) are arranged in mp3 ancillary data fields, which a corresponding mp3 decoder can evaluate.
- additional data e.g. the headers
- mp3 ancillary data fields which a corresponding mp3 decoder can evaluate.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Acoustics & Sound (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Television Signal Processing For Recording (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Time-Division Multiplex Systems (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Communication Control (AREA)
- Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Description
Claims
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AT09757381T ATE545281T1 (en) | 2008-06-02 | 2009-05-11 | METHOD AND DEVICE FOR PRODUCING OR FOR CUTTING OR MODIFYING A FRAME BASED FILE IN BIT STREAM FORMAT WITH AT LEAST ONE HEAD PART AND CORRESPONDING DATA STRUCTURE |
JP2011510935A JP5774983B2 (en) | 2008-06-02 | 2009-05-11 | Method and apparatus for generating, cutting or modifying a frame-based bitstream format file including at least one header section and corresponding data structure |
ES09757381T ES2379321T3 (en) | 2008-06-02 | 2009-05-11 | Method and apparatus for generating or cutting or changing a frame-based bit stream format file that includes at least one header section, and a corresponding data structure |
CN200980120515.2A CN102047336B (en) | 2008-06-02 | 2009-05-11 | Method and apparatus for generating or cutting or changing a frame based bit stream format file including at least one header section, and a corresponding data structure |
EP09757381A EP2289245B1 (en) | 2008-06-02 | 2009-05-11 | Method and apparatus for generating or cutting or changing a frame based bit stream format file including at least one header section, and a corresponding data structure |
US12/737,007 US8731946B2 (en) | 2008-06-02 | 2009-05-11 | Method and apparatus for generating or cutting or changing a frame based bit stream format file including at least one header section, and a corresponding data structure |
PL09757381T PL2289245T3 (en) | 2008-06-02 | 2009-05-11 | Method and apparatus for generating or cutting or changing a frame based bit stream format file including at least one header section, and a corresponding data structure |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP08157417.0 | 2008-06-02 | ||
EP08157417A EP2131590A1 (en) | 2008-06-02 | 2008-06-02 | Method and apparatus for generating or cutting or changing a frame based bit stream format file including at least one header section, and a corresponding data structure |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2009146998A1 true WO2009146998A1 (en) | 2009-12-10 |
Family
ID=40193935
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/EP2009/055663 WO2009146998A1 (en) | 2008-06-02 | 2009-05-11 | Method and apparatus for generating or cutting or changing a frame based bit stream format file including at least one header section, and a corresponding data structure |
Country Status (10)
Country | Link |
---|---|
US (1) | US8731946B2 (en) |
EP (2) | EP2131590A1 (en) |
JP (1) | JP5774983B2 (en) |
KR (1) | KR20110026445A (en) |
CN (1) | CN102047336B (en) |
AT (1) | ATE545281T1 (en) |
ES (1) | ES2379321T3 (en) |
PL (1) | PL2289245T3 (en) |
TW (1) | TWI469134B (en) |
WO (1) | WO2009146998A1 (en) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1881485A1 (en) * | 2006-07-18 | 2008-01-23 | Deutsche Thomson-Brandt Gmbh | Audio bitstream data structure arrangement of a lossy encoded signal together with lossless encoded extension data for said signal |
EP2395505A1 (en) | 2010-06-11 | 2011-12-14 | Thomson Licensing | Method and apparatus for searching in a layered hierarchical bit stream followed by replay, said bit stream including a base layer and at least one enhancement layer |
JP5749462B2 (en) * | 2010-08-13 | 2015-07-15 | 株式会社Nttドコモ | Audio decoding apparatus, audio decoding method, audio decoding program, audio encoding apparatus, audio encoding method, and audio encoding program |
KR20120074059A (en) * | 2010-12-27 | 2012-07-05 | 삼성전자주식회사 | Method and apparatus for outputting audio data |
CN102522088B (en) * | 2011-11-25 | 2013-10-23 | 展讯通信(上海)有限公司 | Decoding method and device of audio frequency |
EP2863386A1 (en) | 2013-10-18 | 2015-04-22 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio decoder, apparatus for generating encoded audio output data and methods permitting initializing a decoder |
CA3109616C (en) * | 2015-01-20 | 2023-01-03 | Sharp Kabushiki Kaisha | Service guide encapsulation |
EP3438976A4 (en) * | 2016-03-31 | 2019-04-24 | Sony Corporation | Information processing device and method |
US10135899B1 (en) * | 2016-12-16 | 2018-11-20 | Amazon Technologies, Inc. | Dynamic archiving of streaming content |
CN109584891B (en) * | 2019-01-29 | 2023-04-25 | 乐鑫信息科技(上海)股份有限公司 | Audio decoding method, device, equipment and medium in embedded environment |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020097272A1 (en) * | 2001-01-24 | 2002-07-25 | Mitsumasa Tanaka | Image editing apparatus and image editing method |
WO2003038814A2 (en) * | 2001-10-31 | 2003-05-08 | Thomson, Licensing. S. A. | Changing a playback speed for video presentation recorded in a modified film format |
EP1830575A2 (en) * | 2006-03-01 | 2007-09-05 | Sony Corporation | Compressed video data processing apparatus and method |
US20070280438A1 (en) * | 2006-05-17 | 2007-12-06 | Recording For The Blind & Dyslexic, Incorporated | Method and apparatus for converting a daisy format file into a digital streaming media file |
US20080125891A1 (en) * | 2006-11-29 | 2008-05-29 | Matsushita Electric Industrial Co., Ltd. | Audio reproduction apparatus, audio reproduction method, program, and data management method |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5677918A (en) * | 1995-07-28 | 1997-10-14 | Motorola, Inc. | Method and device for efficient error correction in a packet-switched communication system |
GB0007870D0 (en) * | 2000-03-31 | 2000-05-17 | Koninkl Philips Electronics Nv | Methods and apparatus for making and replauing digital video recordings, and recordings made by such methods |
EP1215663A1 (en) * | 2000-12-15 | 2002-06-19 | BRITISH TELECOMMUNICATIONS public limited company | Encoding audio signals |
JP3871210B2 (en) * | 2002-09-19 | 2007-01-24 | ソニー株式会社 | CONVERTING APPARATUS, CONVERTING METHOD, PROGRAM, AND DATA STRUCTURE |
EP1647010B1 (en) * | 2003-07-21 | 2017-09-06 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio file format conversion |
US8233462B2 (en) * | 2003-10-15 | 2012-07-31 | Qualcomm Incorporated | High speed media access control and direct link protocol |
US8131134B2 (en) * | 2004-04-14 | 2012-03-06 | Microsoft Corporation | Digital media universal elementary stream |
KR100846781B1 (en) * | 2004-06-01 | 2008-10-27 | 삼성전자주식회사 | Service display control method using a Fast Information Channel in DAB receiver, and apparatus thereof |
US7672743B2 (en) * | 2005-04-25 | 2010-03-02 | Microsoft Corporation | Digital audio processing |
JP2006317575A (en) * | 2005-05-11 | 2006-11-24 | Matsushita Electric Ind Co Ltd | Audio decoding device |
KR100754197B1 (en) * | 2005-12-10 | 2007-09-03 | 삼성전자주식회사 | Video service providing and receiving method in DAB system, and apparatus thereof |
EP1855436A1 (en) * | 2006-05-12 | 2007-11-14 | Deutsche Thomson-Brandt Gmbh | Method and apparatus for encrypting encoded audio signal |
JP2008185769A (en) * | 2007-01-30 | 2008-08-14 | Oki Electric Ind Co Ltd | Compressed audio reproduction device |
US7778839B2 (en) * | 2007-04-27 | 2010-08-17 | Sony Ericsson Mobile Communications Ab | Method and apparatus for processing encoded audio data |
-
2008
- 2008-06-02 EP EP08157417A patent/EP2131590A1/en not_active Withdrawn
-
2009
- 2009-05-11 JP JP2011510935A patent/JP5774983B2/en not_active Expired - Fee Related
- 2009-05-11 WO PCT/EP2009/055663 patent/WO2009146998A1/en active Application Filing
- 2009-05-11 PL PL09757381T patent/PL2289245T3/en unknown
- 2009-05-11 KR KR1020107029770A patent/KR20110026445A/en not_active Application Discontinuation
- 2009-05-11 US US12/737,007 patent/US8731946B2/en not_active Expired - Fee Related
- 2009-05-11 ES ES09757381T patent/ES2379321T3/en active Active
- 2009-05-11 AT AT09757381T patent/ATE545281T1/en active
- 2009-05-11 EP EP09757381A patent/EP2289245B1/en not_active Not-in-force
- 2009-05-11 CN CN200980120515.2A patent/CN102047336B/en not_active Expired - Fee Related
- 2009-06-02 TW TW98118097A patent/TWI469134B/en not_active IP Right Cessation
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020097272A1 (en) * | 2001-01-24 | 2002-07-25 | Mitsumasa Tanaka | Image editing apparatus and image editing method |
WO2003038814A2 (en) * | 2001-10-31 | 2003-05-08 | Thomson, Licensing. S. A. | Changing a playback speed for video presentation recorded in a modified film format |
EP1830575A2 (en) * | 2006-03-01 | 2007-09-05 | Sony Corporation | Compressed video data processing apparatus and method |
US20070280438A1 (en) * | 2006-05-17 | 2007-12-06 | Recording For The Blind & Dyslexic, Incorporated | Method and apparatus for converting a daisy format file into a digital streaming media file |
US20080125891A1 (en) * | 2006-11-29 | 2008-05-29 | Matsushita Electric Industrial Co., Ltd. | Audio reproduction apparatus, audio reproduction method, program, and data management method |
Also Published As
Publication number | Publication date |
---|---|
ES2379321T3 (en) | 2012-04-24 |
US8731946B2 (en) | 2014-05-20 |
EP2289245B1 (en) | 2012-02-08 |
JP2011523090A (en) | 2011-08-04 |
CN102047336A (en) | 2011-05-04 |
TW200951941A (en) | 2009-12-16 |
EP2131590A1 (en) | 2009-12-09 |
US20110158326A1 (en) | 2011-06-30 |
CN102047336B (en) | 2014-05-07 |
JP5774983B2 (en) | 2015-09-09 |
PL2289245T3 (en) | 2012-05-31 |
KR20110026445A (en) | 2011-03-15 |
EP2289245A1 (en) | 2011-03-02 |
TWI469134B (en) | 2015-01-11 |
ATE545281T1 (en) | 2012-02-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2009146998A1 (en) | Method and apparatus for generating or cutting or changing a frame based bit stream format file including at least one header section, and a corresponding data structure | |
EP1444689B1 (en) | Determination of the presence of additional coded data in a data frame | |
US7974837B2 (en) | Audio encoding apparatus, audio decoding apparatus, and audio encoded information transmitting apparatus | |
JP5249214B2 (en) | Bitstream data of lossy encoded signal and audio bitstream data structure arrangement of lossless extended encoded data of the above signal | |
US8428941B2 (en) | Method and apparatus for lossless encoding of a source signal using a lossy encoded data stream and a lossless extension data stream | |
JP2004046179A (en) | Audio decoding method and device for decoding high frequency component by small calculation quantity | |
US20080288263A1 (en) | Method and Apparatus for Encoding/Decoding | |
KR100904626B1 (en) | Trick play for MP3 | |
JP4359499B2 (en) | Editing audio signals | |
AU2004292190A1 (en) | Frame based audio transmission/storage with overlap to facilitate smooth crossfading | |
JP4470122B2 (en) | Speech coding apparatus, speech decoding apparatus, speech coding program, and speech decoding program | |
JP2002368722A (en) | Encoder and decoder | |
KR20080010980A (en) | Method and apparatus for encoding/decoding | |
JP2009134115A (en) | Decoder | |
JP2001175285A (en) | Encoded sound reproduction device and encoded sound reproduction method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 200980120515.2 Country of ref document: CN |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 09757381 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2009757381 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2011510935 Country of ref document: JP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 20107029770 Country of ref document: KR Kind code of ref document: A |