Skip to content

Commit

Permalink
Updated media codecs and profiles
Browse files Browse the repository at this point in the history
  • Loading branch information
C3C0 committed Jan 8, 2013
1 parent 8ea2ffb commit fe7c0f7
Show file tree
Hide file tree
Showing 2 changed files with 100 additions and 34 deletions.
70 changes: 52 additions & 18 deletions media_codecs.xml
Expand Up @@ -20,55 +20,89 @@
-->
<CodecList>
<Encoders>
<!-- Audio Hardware -->
<MediaCodec name="OMX.google.aac.encoder" type="audio/mp4a-latm" />
<MediaCodec name="OMX.google.flac.encoder" type="audio/flac" />

<!-- Audio Software -->
<MediaCodec name="AACEncoder" type="audio/mp4a-latm" />
<MediaCodec name="OMX.google.amrnb.encoder" type="audio/3gpp" />
<MediaCodec name="OMX.google.amrwb.encoder" type="audio/amr-wb" />

<!-- Video Hardware -->
<MediaCodec name="OMX.qcom.video.encoder.avc" type="video/avc" >
<Quirk name="requires-allocate-on-input-ports" />
<Quirk name="requires-allocate-on-output-ports"/>
<Quirk name="requires-allocate-on-output-ports" />
<Quirk name="requires-loaded-to-idle-after-allocation" />
</MediaCodec>
<MediaCodec name="OMX.qcom.video.encoder.mpeg4" type="video/mp4v-es" >
<Quirk name="requires-allocate-on-input-ports" />
<Quirk name="requires-allocate-on-output-ports" />
<Quirk name="requires-loaded-to-idle-after-allocation"/>
</MediaCodec>
<MediaCodec name="OMX.qcom.video.encoder.h263" type="video/3gpp" >
<Quirk name="requires-allocate-on-input-ports" />
<Quirk name="requires-allocate-on-output-ports"/>
<Quirk name="requires-loaded-to-idle-after-allocation"/>
<Quirk name="requires-allocate-on-output-ports" />
<Quirk name="requires-loaded-to-idle-after-allocation" />
</MediaCodec>
<MediaCodec name="OMX.google.amrnb.encoder" type="audio/3gpp" />
<MediaCodec name="AACEncoder" type="audio/mp4a-latm" />
<MediaCodec name="OMX.google.amrwb.encoder" type="audio/amr-wb" />
<MediaCodec name="OMX.google.aac.encoder" type="audio/mp4a-latm" />
<MediaCodec name="OMX.google.flac.encoder" type="audio/flac" />
<MediaCodec name="OMX.google.h263.encoder" type="video/3gpp" />

<!-- Video Software -->
<MediaCodec name="OMX.google.h264.encoder" type="video/avc" />
<MediaCodec name="OMX.google.mpeg4.encoder" type="video/mp4v-es" />
<MediaCodec name="OMX.google.h263.encoder" type="video/3gpp" />
</Encoders>
<Decoders>
<!-- Audio Hardware -->
<MediaCodec name="OMX.qcom.audio.decoder.wma" type="audio/x-ms-wma" >
<Quirk name="requires-global-flush" />
<Quirk name="requires-wma-pro-component" />
</MediaCodec>
<MediaCodec name="OMX.qcom.audio.decoder.wmaLossLess" type="audio/x-ms-wma" >
<Quirk name="requires-global-flush" />
<Quirk name="requires-wma-pro-component" />
</MediaCodec>
<MediaCodec name="OMX.qcom.audio.decoder.wma10Pro" type="audio/x-ms-wma" >
<Quirk name="requires-global-flush" />
<Quirk name="requires-wma-pro-component" />
</MediaCodec>

<!-- Audio Software -->
<MediaCodec name="OMX.google.vorbis.decoder" type="audio/vorbis" />
<MediaCodec name="OMX.google.mp3.decoder" type="audio/mpeg" />
<MediaCodec name="MP3Decoder" type="audio/mpeg" />
<MediaCodec name="OMX.google.amrnb.decoder" type="audio/3gpp" />
<MediaCodec name="OMX.google.amrwb.decoder" type="audio/amr-wb" />
<MediaCodec name="OMX.google.aac.decoder" type="audio/mp4a-latm" />
<MediaCodec name="AACDecoder" type="audio/mp4a-latm" />
<MediaCodec name="OMX.google.g711.alaw.decoder" type="audio/g711-alaw" />
<MediaCodec name="OMX.google.g711.mlaw.decoder" type="audio/g711-mlaw" />

<!-- Video Hardware -->
<MediaCodec name="OMX.qcom.video.decoder.avc" type="video/avc" >
<Quirk name="requires-allocate-on-input-ports" />
<Quirk name="requires-allocate-on-output-ports"/>
<Quirk name="defers-output-buffer-allocation"/>
<Quirk name="requires-allocate-on-output-ports" />
<Quirk name="defers-output-buffer-allocation" />
</MediaCodec>
<MediaCodec name="OMX.qcom.video.decoder.mpeg2" type="video/mpeg2" >
<Quirk name="requires-allocate-on-input-ports" />
<Quirk name="requires-allocate-on-output-ports"/>
<Quirk name="defers-output-buffer-allocation"/>
<Quirk name="requires-allocate-on-output-ports" />
<Quirk name="defers-output-buffer-allocation" />
</MediaCodec>
<MediaCodec name="OMX.qcom.video.decoder.mpeg4" type="video/mp4v-es" >
<Quirk name="requires-allocate-on-input-ports" />
<Quirk name="requires-allocate-on-output-ports"/>
<Quirk name="defers-output-buffer-allocation"/>
<Quirk name="requires-allocate-on-output-ports" />
<Quirk name="defers-output-buffer-allocation" />
</MediaCodec>
<MediaCodec name="OMX.qcom.video.decoder.h263" type="video/3gpp" >
<Quirk name="requires-allocate-on-input-ports" />
<Quirk name="requires-allocate-on-output-ports"/>
<Quirk name="defers-output-buffer-allocation"/>
<Quirk name="requires-allocate-on-output-ports" />
<Quirk name="defers-output-buffer-allocation" />
</MediaCodec>

<!-- Video Software -->
<MediaCodec name="OMX.google.h264.decoder" type="video/avc" />
<MediaCodec name="OMX.google.mpeg4.decoder" type="video/mpeg4" />
<MediaCodec name="OMX.google.mpeg4.decoder" type="video/mp4v-es" />
<MediaCodec name="OMX.google.h263.decoder" type="video/3gpp" />
<MediaCodec name="OMX.google.vpx.decoder" type="video/x-vnd.on2.vp8" />
</Decoders>
</CodecList>
64 changes: 48 additions & 16 deletions media_profiles.xml
Expand Up @@ -22,11 +22,12 @@
AudioDecoderCap)>
<!ELEMENT CamcorderProfiles (EncoderProfile+, ImageEncoding+, ImageDecoding, Camera)>
<!ELEMENT EncoderProfile (Video, Audio)>
<!ATTLIST EncoderProfile quality (high|low) #REQUIRED>
<!ATTLIST EncoderProfile quality (high|low|timelapsehigh|timelapselow) #REQUIRED>
<!ATTLIST EncoderProfile fileFormat (mp4|3gp) #REQUIRED>
<!ATTLIST EncoderProfile duration (30|60) #REQUIRED>
<!ATTLIST EncoderProfile cameraId (0|1) #REQUIRED>
<!ELEMENT Video EMPTY>
<!ATTLIST Video codec (h263|m4v) #REQUIRED>
<!ATTLIST Video codec (h264|h263|m4v) #REQUIRED>
<!ATTLIST Video bitRate CDATA #REQUIRED>
<!ATTLIST Video width CDATA #REQUIRED>
<!ATTLIST Video height CDATA #REQUIRED>
Expand All @@ -41,11 +42,10 @@
<!ELEMENT ImageDecoding EMPTY>
<!ATTLIST ImageDecoding memCap CDATA #REQUIRED>
<!ELEMENT Camera EMPTY>
<!ATTLIST Camera previewFrameRate CDATA #REQUIRED>
<!ELEMENT EncoderOutputFileFormat EMPTY>
<!ATTLIST EncoderOutputFileFormat name (mp4|3gp) #REQUIRED>
<!ELEMENT VideoEncoderCap EMPTY>
<!ATTLIST VideoEncoderCap name (h263|m4v|wmv) #REQUIRED>
<!ATTLIST VideoEncoderCap name (h264|h263|m4v) #REQUIRED>
<!ATTLIST VideoEncoderCap enabled (true|false) #REQUIRED>
<!ATTLIST VideoEncoderCap minBitRate CDATA #REQUIRED>
<!ATTLIST VideoEncoderCap maxBitRate CDATA #REQUIRED>
Expand All @@ -56,7 +56,7 @@
<!ATTLIST VideoEncoderCap minFrameRate CDATA #REQUIRED>
<!ATTLIST VideoEncoderCap maxFrameRate CDATA #REQUIRED>
<!ELEMENT AudioEncoderCap EMPTY>
<!ATTLIST AudioEncoderCap name (amrnb|amrwb|aac|wma) #REQUIRED>
<!ATTLIST AudioEncoderCap name (amrnb|amrwb|aac) #REQUIRED>
<!ATTLIST AudioEncoderCap enabled (true|false) #REQUIRED>
<!ATTLIST AudioEncoderCap minBitRate CDATA #REQUIRED>
<!ATTLIST AudioEncoderCap maxBitRate CDATA #REQUIRED>
Expand All @@ -71,11 +71,11 @@
-->
<MediaSettings>
<!-- Each camcorder profile defines a set of predefined configuration parameters -->
<CamcorderProfiles>
<CamcorderProfiles cameraId="0">

<EncoderProfile quality="high" fileFormat="mp4" duration="60">
<Video codec="h263"
bitRate="3000000"
bitRate="2000000"
width="640"
height="480"
frameRate="15" />
Expand All @@ -97,16 +97,37 @@
channels="1" />
</EncoderProfile>

<EncoderProfile quality="timelapsehigh" fileFormat="mp4" duration="60">
<Video codec="h263"
bitRate="2000000"
width="640"
height="480"
frameRate="15" />
<Audio codec="aac"
bitRate="156000"
sampleRate="48000"
channels="1" />
</EncoderProfile>

<EncoderProfile quality="timelapselow" fileFormat="3gp" duration="30">
<Video codec="m4v"
bitRate="256000"
width="176"
height="144"
frameRate="15" />
<Audio codec="amrnb"
bitRate="12200"
sampleRate="8000"
channels="1" />
</EncoderProfile>

<ImageEncoding quality="90" />
<ImageEncoding quality="80" />
<ImageEncoding quality="70" />
<ImageDecoding memCap="20000000" />

<Camera previewFrameRate="0" />

</CamcorderProfiles>


<EncoderOutputFileFormat name="3gp" />
<EncoderOutputFileFormat name="mp4" />

Expand All @@ -116,22 +137,33 @@
or query the capabilities of the codec at all if it is disabled
-->

<VideoEncoderCap name="h264" enabled="true"
minBitRate="64000" maxBitRate="4000000"
minFrameWidth="176" maxFrameWidth="1280"
minFrameHeight="144" maxFrameHeight="720"
minFrameRate="15" maxFrameRate="30" />

<VideoEncoderCap name="h263" enabled="true"
minBitRate="64000" maxBitRate="6000000"
minBitRate="64000" maxBitRate="2000000"
minFrameWidth="176" maxFrameWidth="800"
minFrameHeight="144" maxFrameHeight="480"
minFrameRate="15" maxFrameRate="30" />

<VideoEncoderCap name="m4v" enabled="true"
minBitRate="64000" maxBitRate="8000000"
minFrameWidth="176" maxFrameWidth="1280"
minFrameHeight="144" maxFrameHeight="720"
minBitRate="64000" maxBitRate="2000000"
minFrameWidth="176" maxFrameWidth="864"
minFrameHeight="144" maxFrameHeight="480"
minFrameRate="15" maxFrameRate="30" />

<AudioEncoderCap name="aac" enabled="true"
minBitRate="8192" maxBitRate="128000"
minBitRate="8000" maxBitRate="96000"
minSampleRate="8000" maxSampleRate="48000"
minChannels="1" maxChannels="1" />

<AudioEncoderCap name="amrwb" enabled="true"
minBitRate="6600" maxBitRate="23050"
minSampleRate="16000" maxSampleRate="16000"
minChannels="1" maxChannels="2" />
minChannels="1" maxChannels="1" />

<AudioEncoderCap name="amrnb" enabled="true"
minBitRate="5525" maxBitRate="12200"
Expand Down

0 comments on commit fe7c0f7

Please sign in to comment.