android 添加或者取消对于某种媒体文件格式的支持

一、添加某些格式
以rmvb格式为例,由于lisence问题,将一个rmvb格式视频文件拷贝到手机的SD卡上,该文件无法显示为视频文件;若贵司有预装第三方apk来支持播放该格式视频,可以按照下面的方法,添加对rmvb格式的支持。
在frameworks\base\media\java\android\media\MediaFile.java中:约270行左右,添加RMVB格式的mimeType:
 
addFileType("AVI", FILE_TYPE_AVI, "video/avi");
addFileType("MOV", FILE_TYPE_QUICKTIME_VIDEO, "video/quicktime");
addFileType("QT", FILE_TYPE_QUICKTIME_VIDEO, "video/quicktime");
addFileType("RMVB", FILE_TYPE_RMVB, "video/x-pn-realvideo");//添加RMVB
 
然后编译framework/base模块,将生成的framework.jar和secondary-framework.jar给push到手机中,然后重启手机:
adb push framework.jar system/framework
adb push secondary-framework.jar system/framework
adb reboot
 
二、取消某种格式
以WMA/WMV格式为例,若贵司希望取消对于该种格式的支持,可以按下面步骤修改:
第一步 该种格式的mime type原本为video\audio改为未知
修改frameworks\base\media\java\android\media\MediaFile.java
//addFileType(“WMV”, FILE_TYPE_WMV, “video/x-ms-wmv” , MtpConstants.FORMAT_WMV);
//addFileType(“ASF”, FILE_TYPE_ASF, “video/x-ms-asf”);
//addFileType("WMA", FILE_TYPE_WMA, "audio/x-ms-wma", MtpConstants.FORMAT_WMA);
 
若希望彻底去掉对应的video codec,可继续第二、三步。
第二步 查找下面文件是否有宏MTK_ASF_PLAYBACK_SUPPORT(JB2,JB3,JB5)或者MTK_WMV_PLAYBACK_SUPPORT和MTK_WMA_PLAYBACK_SUPPORT(JB9,kk)
alps\mediatek\config\Project Name\ProjectConfig.mk
alps\mediatek\config\Platform Name\ProjectConfig.mk
alps\mediatek\config\commone\ProjectConfig.mk
若有,
请将MTK_ASF_PLAYBACK_SUPPORT置为no;
请将MTK_WMV_PLAYBACK_SUPPORT置为no;
请将MTK_WMA_PLAYBACK_SUPPORT置为no;
 
第三步 修改media_codecs.xml文件
mediatek\config\common\media_codecs.xml
mediatek\config\Platform Name\media_codec.xml
去掉:
<MediaCodec name=”OMX.MTK.VIDEO.DECODER.VC1” type=”video/x-ms-wmv”>
<MediaCodec name="OMX.MTK.AUDIO.DECODER.WMA" type="audio/x-ms-wma" />
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值