一、介绍
DreamCamera2的视频尺寸修改在media_profiles.xml文件中完成,不同芯片的media_profiles.xml文件的路径不一样,请根据芯片类型修改,对路径不清楚的可以请教驱动的同事
文件参考路径:sprdroid10_trunk_19c/device/sprd/sharkl5Pro/common/media_profiles.xml
二、案例
案例一:下面是添加h264视频格式480p视频的修改方案。
<EncoderProfile quality="timelapsecif" fileFormat="mp4" duration="60">
<Video codec="m4v"
bitRate="512000"
width="352"
height="288"
frameRate="30" />
<!-- audio setting is ignored -->
<Audio codec="amrnb"
bitRate="12200"
sampleRate="8000"
channels="1" />
</EncoderProfile>
+ <EncoderProfile quality="480p" fileFormat="mp4" duration="60">
+ <Video codec="h264"
+ bitRate="4000000"
+ width="640"
+ height="480"
+ frameRate="30" />
+ <Audio codec="aac"
+ bitRate="64000"
+ sampleRate="44100"
+ channels="1" />
+ </EncoderProfile>
+
+ <EncoderProfile quality="timelapse480p" fileFormat="mp4" duration="60">
+ <Video codec="h264"
+ bitRate="4000000"
+ width="640"
+ height="480"
+ frameRate="30" />
+ <!-- audio setting is ignored -->
+ <Audio codec="aac"
+ bitRate="64000"
+ sampleRate="44100"
+ channels="1" />
+ </EncoderProfile>
<ImageEncoding quality="95" />
<ImageEncoding quality="80" />
<ImageEncoding quality="70" />
<ImageDecoding memCap="20000000" />
</CamcorderProfiles>
可以针对特定模式的设置视频尺寸
案例二:针对前摄(cameraId=“1”)添加1080p尺寸
<CamcorderProfiles cameraId="1">
<EncoderProfile quality="cif" fileFormat="mp4" duration="60">
<Video codec="h264"
bitRate="512000"
width="352"
height="288"
frameRate="15" />
<Audio codec="amrnb"
bitRate="12200"
sampleRate="8000"
channels="1" />
</EncoderProfile>
…………………………………
<EncoderProfile quality="timelapse720p" fileFormat="mp4" duration="60">
<Video codec="h264"
bitRate="8000000"
width="1280"
height="720"
frameRate="30" />
<!-- audio setting is ignored -->
<Audio codec="aac"
bitRate="96000"
sampleRate="44100"
channels="1" />
</EncoderProfile>
+
+ <EncoderProfile quality="1080p" fileFormat="mp4" duration="60">
+ <Video codec="h264"
+ bitRate="16000000"
+ width="1920"
+ height="1080"
+ frameRate="30" />
+ <Audio codec="aac"
+ bitRate="96000"
+ sampleRate="44100"
+ channels="1" />
+ </EncoderProfile>
+
+ <EncoderProfile quality="timelapse1080p" fileFormat="mp4" duration="60">
+ <Video codec="h264"
+ bitRate="16000000"
+ width="1920"
+ height="1080"
+ frameRate="30" />
+ <!-- audio setting is ignored -->
+ <Audio codec="aac"
+ bitRate="96000"
+ sampleRate="44100"
+ channels="1" />
+ </EncoderProfile>
<ImageEncoding quality="95" />
<ImageEncoding quality="80" />
<ImageEncoding quality="70" />
<ImageDecoding memCap="20000000" />
</CamcorderProfiles>
三、注意事项
需要注意的是:
① 设置的视频尺寸,hal层的SprdCamera3Setting.cpp文件必须支持,SprdCamera3Setting.cpp参考路径:sprdroid10_trunk_19c/vendor/sprd/modules/libcamera/hal3_2v6/SprdCamera3Setting.cpp
② 设置的视频尺寸,sensor必须支持,如sensor尺寸为200万(1200×1600),设置1080p(1920×1080)将会出错,因为1200×1600 = 1920000 < 1920×1080 = 2073600
③ 目前平台支持的视频格式设置包括:1080p(1920×1080),720p(1080×720),480p(720×480),CIF(352×288)。