客制化一个录像size是18:9 1280*640
此客制化只适合国内不需要测试GMS 标准的手机,出口国外的手机一律进行GMS认证,这不否和GMS标准
1、android架构图流程,主要这四层,任何改动基于此框架
app -framework-hal-driver
2、hal 层 setting文件里面,配置支持的18:9 1280*640的录像 size
3、media_profiles.xml 和media_profiles_turnkey.xml
注意:media_profile.xml 添加正常录像/慢录/快录 必须和framework层的改动一致
<EncoderProfile quality="1280640P" fileFormat="mp4" duration="30">//720P 与
<Video codec="h264"
bitRate="12000000"
width="1280"
height="640"
frameRate="30" />
<Audio codec="aac"
bitRate="96000"
sampleRate="48000"
channels="1" />
</EncoderProfile>
4、framework C++
路径:/frameworks/av/media/libmedia/include/media/MediaProfiles.h
CAMCORDER_QUALITY_1280640P = 12,
CAMCORDER_QUALITY_TIME_LAPSE_1280640P = 1012,
CAMCORDER_QUALITY_HIGH_SPEED_1280640P = 2012,
路径:/frameworks/av/media/libmedia/MediaProfiles.cpp
const MediaProfiles::NameToTagMap MediaProfiles::sCamcorderQualityNameMap[] = {
{"1280640P", CAMCORDER_QUALITY_1280640
//这里的改动与 xml文件 <EncoderProfile quality="1280640P" fileFormat="mp4" duration="30">保持一样
{"timelapse1280640P", CAMCORDER_QUALITY_TIME_LAPSE_1280640P},
{"highspeed1280640P", CAMCORDER_QUALITY_HIGH_SPEED_1280640P},
}
5、framework JAVA
路径:/frameworks/base/media/java/android/media/CamcorderProfile.java
public static final int QUALITY_1280640P = 12
private static final int QUALITY_LIST_END = QUALITY_1280640P;
public static final int QUALITY_TIME_LAPSE_1280640P = 1012;
private static final int QUALITY_TIME_LAPSE_LIST_END = QUALITY_TIME_LAPSE_1280640P;
public static final int QUALITY_HIGH_SPEED_1280640P = 2012;
private static final int QUALITY_HIGH_SPEED_LIST_END = UALITY_HIGH_SPEED_1280640P;