1 /*
2  * Copyright 2011 Sebastian Annies, Hamburg
3  *
4  * Licensed under the Apache License, Version 2.0 (the License);
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *     http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an AS IS BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package com.googlecode.mp4parser.boxes.mp4;
18 
19 /**
20  * This object contains an Object Descriptor or an Initial Object Descriptor.
21  * There are a number of possible file types based on usage, depending on the descriptor:
22  * <ul>
23  * <li>Presentation, contains IOD which contains a BIFS stream (MP4 file);
24  * <li>Sub-part of a presentation, contains an IOD without a BIFS stream (MP4 file);</li>
25  * <li>Sub-part of a presentation, contains an OD (MP4 file);</li>
26  * <li>Free-form file, referenced by MP4 data references (free-format);</li>
27  * <li>Sub-part of a presentation, referenced by an ES URL.</li>
28  * </ul>
29  * NOTE: <br/>
30  * The first three are MP4 files, a file referenced by a data reference is not necessarily an MP4 file, as it is
31  * free-format. Files referenced by ES URLs, by data references, or intended as input to an editing process, need not have
32  * an Object Descriptor Box. <br/>
33  * An OD URL may point to an MP4 file. Implicitly, the target of such a URL is the OD/IOD located in the 'iods'
34  * atom in that file.</br/>
35  * If an MP4 file contains several object descriptors, only the OD/IOD in the 'iods' atom can be addressed using
36  * an OD URL from a remote MPEG-4 presentation.
37  */
38 public class ObjectDescriptorBox extends AbstractDescriptorBox {
39     public static final String TYPE = "iods";
40 
ObjectDescriptorBox()41     public ObjectDescriptorBox() {
42         super(TYPE);
43     }
44 
45 
46 }
47