diff options
Diffstat (limited to 'isoparser/src/main/java/com/googlecode/mp4parser/boxes/mp4/.svn')
5 files changed, 325 insertions, 0 deletions
diff --git a/isoparser/src/main/java/com/googlecode/mp4parser/boxes/mp4/.svn/all-wcprops b/isoparser/src/main/java/com/googlecode/mp4parser/boxes/mp4/.svn/all-wcprops new file mode 100644 index 0000000..b552219 --- /dev/null +++ b/isoparser/src/main/java/com/googlecode/mp4parser/boxes/mp4/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 82 +/svn/!svn/ver/770/trunk/isoparser/src/main/java/com/googlecode/mp4parser/boxes/mp4 +END +ESDescriptorBox.java +K 25 +svn:wc:ra_dav:version-url +V 103 +/svn/!svn/ver/377/trunk/isoparser/src/main/java/com/googlecode/mp4parser/boxes/mp4/ESDescriptorBox.java +END +AbstractDescriptorBox.java +K 25 +svn:wc:ra_dav:version-url +V 109 +/svn/!svn/ver/507/trunk/isoparser/src/main/java/com/googlecode/mp4parser/boxes/mp4/AbstractDescriptorBox.java +END +ObjectDescriptorBox.java +K 25 +svn:wc:ra_dav:version-url +V 107 +/svn/!svn/ver/377/trunk/isoparser/src/main/java/com/googlecode/mp4parser/boxes/mp4/ObjectDescriptorBox.java +END diff --git a/isoparser/src/main/java/com/googlecode/mp4parser/boxes/mp4/.svn/entries b/isoparser/src/main/java/com/googlecode/mp4parser/boxes/mp4/.svn/entries new file mode 100644 index 0000000..be8f9d8 --- /dev/null +++ b/isoparser/src/main/java/com/googlecode/mp4parser/boxes/mp4/.svn/entries @@ -0,0 +1,136 @@ +10 + +dir +778 +http://mp4parser.googlecode.com/svn/trunk/isoparser/src/main/java/com/googlecode/mp4parser/boxes/mp4 +http://mp4parser.googlecode.com/svn + + + +2012-08-31T05:20:57.236953Z +770 +michael.stattmann@gmail.com + + + + + + + + + + + + + + +7decde4b-c250-0410-a0da-51896bc88be6 + +ESDescriptorBox.java +file + + + + +2012-09-14T17:27:51.127228Z +3938742e971cd377b37592461870d872 +2012-03-05T23:28:24.666173Z +377 +Sebastian.Annies@gmail.com + + + + + + + + + + + + + + + + + + + + + +1021 + +objectdescriptors +dir + +AbstractDescriptorBox.java +file + + + + +2012-09-14T17:27:51.127228Z +3361124b1437f844ab4727c8dea81e3d +2012-04-21T22:05:38.425329Z +507 +Sebastian.Annies@gmail.com + + + + + + + + + + + + + + + + + + + + + +2487 + +samplegrouping +dir + +ObjectDescriptorBox.java +file + + + + +2012-09-14T17:27:51.127228Z +b81e2d3876ef2af7ba17bf2d8bd6e504 +2012-03-05T23:28:24.666173Z +377 +Sebastian.Annies@gmail.com + + + + + + + + + + + + + + + + + + + + + +1983 + diff --git a/isoparser/src/main/java/com/googlecode/mp4parser/boxes/mp4/.svn/text-base/AbstractDescriptorBox.java.svn-base b/isoparser/src/main/java/com/googlecode/mp4parser/boxes/mp4/.svn/text-base/AbstractDescriptorBox.java.svn-base new file mode 100644 index 0000000..7d614e2 --- /dev/null +++ b/isoparser/src/main/java/com/googlecode/mp4parser/boxes/mp4/.svn/text-base/AbstractDescriptorBox.java.svn-base @@ -0,0 +1,84 @@ +/* + * Copyright 2011 castLabs, Berlin + * + * Licensed under the Apache License, Version 2.0 (the License); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.googlecode.mp4parser.boxes.mp4; + +import com.googlecode.mp4parser.AbstractFullBox; +import com.googlecode.mp4parser.boxes.mp4.objectdescriptors.BaseDescriptor; +import com.googlecode.mp4parser.boxes.mp4.objectdescriptors.ObjectDescriptorFactory; + +import java.io.IOException; +import java.nio.ByteBuffer; +import java.util.logging.Level; +import java.util.logging.Logger; + +/** + * ES Descriptor Box. + */ +public class AbstractDescriptorBox extends AbstractFullBox { + private static Logger log = Logger.getLogger(AbstractDescriptorBox.class.getName()); + + + public BaseDescriptor descriptor; + public ByteBuffer data; + + public AbstractDescriptorBox(String type) { + super(type); + } + + @Override + protected void getContent(ByteBuffer byteBuffer) { + writeVersionAndFlags(byteBuffer); + data.rewind(); // has been fforwarded by parsing + byteBuffer.put(data); + } + + @Override + protected long getContentSize() { + return 4 + data.limit(); + } + + public BaseDescriptor getDescriptor() { + return descriptor; + } + + public String getDescriptorAsString() { + return descriptor.toString(); + } + + public void setData(ByteBuffer data) { + this.data = data; + } + + @Override + public void _parseDetails(ByteBuffer content) { + parseVersionAndFlags(content); + data = content.slice(); + content.position(content.position() + content.remaining()); + try { + data.rewind(); + descriptor = ObjectDescriptorFactory.createFrom(-1, data); + } catch (IOException e) { + log.log(Level.WARNING, "Error parsing ObjectDescriptor", e); + //that's why we copied it ;) + } catch (IndexOutOfBoundsException e) { + log.log(Level.WARNING, "Error parsing ObjectDescriptor", e); + //that's why we copied it ;) + } + + } + +} diff --git a/isoparser/src/main/java/com/googlecode/mp4parser/boxes/mp4/.svn/text-base/ESDescriptorBox.java.svn-base b/isoparser/src/main/java/com/googlecode/mp4parser/boxes/mp4/.svn/text-base/ESDescriptorBox.java.svn-base new file mode 100644 index 0000000..5d9d591 --- /dev/null +++ b/isoparser/src/main/java/com/googlecode/mp4parser/boxes/mp4/.svn/text-base/ESDescriptorBox.java.svn-base @@ -0,0 +1,36 @@ +/* + * Copyright 2011 castLabs, Berlin + * + * Licensed under the Apache License, Version 2.0 (the License); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.googlecode.mp4parser.boxes.mp4; + +import com.googlecode.mp4parser.boxes.mp4.objectdescriptors.ESDescriptor; + +/** + * ES Descriptor Box. + */ +public class ESDescriptorBox extends AbstractDescriptorBox { + public static final String TYPE = "esds"; + + public ESDescriptorBox() { + super(TYPE); + } + + public ESDescriptor getEsDescriptor() { + return (ESDescriptor) super.getDescriptor(); + } + + +} diff --git a/isoparser/src/main/java/com/googlecode/mp4parser/boxes/mp4/.svn/text-base/ObjectDescriptorBox.java.svn-base b/isoparser/src/main/java/com/googlecode/mp4parser/boxes/mp4/.svn/text-base/ObjectDescriptorBox.java.svn-base new file mode 100644 index 0000000..c9e7493 --- /dev/null +++ b/isoparser/src/main/java/com/googlecode/mp4parser/boxes/mp4/.svn/text-base/ObjectDescriptorBox.java.svn-base @@ -0,0 +1,46 @@ +/* + * Copyright 2011 Sebastian Annies, Hamburg + * + * Licensed under the Apache License, Version 2.0 (the License); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.googlecode.mp4parser.boxes.mp4; + +/** + * This object contains an Object Descriptor or an Initial Object Descriptor. + * There are a number of possible file types based on usage, depending on the descriptor: + * <ul> + * <li>Presentation, contains IOD which contains a BIFS stream (MP4 file); + * <li>Sub-part of a presentation, contains an IOD without a BIFS stream (MP4 file);</li> + * <li>Sub-part of a presentation, contains an OD (MP4 file);</li> + * <li>Free-form file, referenced by MP4 data references (free-format);</li> + * <li>Sub-part of a presentation, referenced by an ES URL.</li> + * </ul> + * NOTE: <br/> + * The first three are MP4 files, a file referenced by a data reference is not necessarily an MP4 file, as it is + * free-format. Files referenced by ES URLs, by data references, or intended as input to an editing process, need not have + * an Object Descriptor Box. <br/> + * An OD URL may point to an MP4 file. Implicitly, the target of such a URL is the OD/IOD located in the 'iods' + * atom in that file.</br/> + * If an MP4 file contains several object descriptors, only the OD/IOD in the 'iods' atom can be addressed using + * an OD URL from a remote MPEG-4 presentation. + */ +public class ObjectDescriptorBox extends AbstractDescriptorBox { + public static final String TYPE = "iods"; + + public ObjectDescriptorBox() { + super(TYPE); + } + + +} |