AppleDataRateBox.java revision dd9eb897ee7c7b507cbdcf80263bb4b5de6966bf
1/* 2 * Copyright 2009 castLabs GmbH, Berlin 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 17package com.coremedia.iso.boxes.apple; 18 19import com.coremedia.iso.IsoTypeReader; 20import com.coremedia.iso.IsoTypeWriter; 21import com.googlecode.mp4parser.AbstractFullBox; 22 23import java.nio.ByteBuffer; 24 25public class AppleDataRateBox extends AbstractFullBox { 26 public static final String TYPE = "rmdr"; 27 private long dataRate; 28 29 public AppleDataRateBox() { 30 super(TYPE); 31 } 32 33 protected long getContentSize() { 34 return 8; 35 } 36 37 @Override 38 public void _parseDetails(ByteBuffer content) { 39 parseVersionAndFlags(content); 40 dataRate = IsoTypeReader.readUInt32(content); 41 } 42 43 @Override 44 protected void getContent(ByteBuffer byteBuffer) { 45 writeVersionAndFlags(byteBuffer); 46 IsoTypeWriter.writeUInt32(byteBuffer, dataRate); 47 } 48 49 50 public long getDataRate() { 51 return dataRate; 52 } 53} 54