解决MP4视频(Video)文件出现 在音乐播放器(Music Player)列表中...
时间:10-02
整理:3721RD
点击:
[DESCRIPTION]
有些时候MP4视频文件会出现在音乐播放器列表中,比如视频文件的分辨率超过支持的Spec时,或Video本身不能解码,但Audio可以解码的时候。但也有一些客户不希望视频文件出现在音乐播放器中,修改方法即参考本条FAQ。
[SOLUTION]
MP4视频文件被扫到音频里面去,主要是因为它里面有不能播放的VideoTrack,如果不希望显示到音乐播放器中,则可
以通过下面的修改来避免(将下面红色部分的audio修改为其它字串,如null即可):
php?mod=tag&id=6090" target="_blank" class="relatedlink">Frameworks\av\media\libstagefright\MPEG4Extractor.cpp
status_tMPEG4Extractor::readMetaData()
{
#ifndefandroid_DEFAULT_CODE
if(mHasAudio&&!mHasVideo){
int32_tisOtherBrand=0;
if(mFileMetaData->findInt32(kKeyIs3gpBrand,&isOtherBrand)&&isOtherBrand)
{
LOGD("FileTypeisaudio/3gpp");
mFileMetaData->setCString(kKeyMIMEType,"audio/3gpp");//audio换成null即可。
}
#ifdefQUICKTIME_SUPPORT
elseif(mFileMetaData->findInt32(kKeyIsQTBrand,&isOtherBrand)&&isOtherBrand)
{
LOGD("FileTypeisaudio/quicktime");
mFileMetaData->setCString(kKeyMIMEType,"audio/quicktime");//audio换成null即可。
}
#endif
else
{
LOGD("FileTypeisaudio/mp4");
mFileMetaData->setCString(kKeyMIMEType,"audio/mp4");//audio换成null即可。
}
}else{
... ...
}
#else
if(mHasVideo){
mFileMetaData->setCString(kKeyMIMEType,"video/mp4");
}else{
mFileMetaData->setCString(kKeyMIMEType,"audio/mp4");//audio换成null即可。
}
#endif
}
有些时候MP4视频文件会出现在音乐播放器列表中,比如视频文件的分辨率超过支持的Spec时,或Video本身不能解码,但Audio可以解码的时候。但也有一些客户不希望视频文件出现在音乐播放器中,修改方法即参考本条FAQ。
[SOLUTION]
MP4视频文件被扫到音频里面去,主要是因为它里面有不能播放的VideoTrack,如果不希望显示到音乐播放器中,则可
以通过下面的修改来避免(将下面红色部分的audio修改为其它字串,如null即可):
php?mod=tag&id=6090" target="_blank" class="relatedlink">Frameworks\av\media\libstagefright\MPEG4Extractor.cpp
status_tMPEG4Extractor::readMetaData()
{
#ifndefandroid_DEFAULT_CODE
if(mHasAudio&&!mHasVideo){
int32_tisOtherBrand=0;
if(mFileMetaData->findInt32(kKeyIs3gpBrand,&isOtherBrand)&&isOtherBrand)
{
LOGD("FileTypeisaudio/3gpp");
mFileMetaData->setCString(kKeyMIMEType,"audio/3gpp");//audio换成null即可。
}
#ifdefQUICKTIME_SUPPORT
elseif(mFileMetaData->findInt32(kKeyIsQTBrand,&isOtherBrand)&&isOtherBrand)
{
LOGD("FileTypeisaudio/quicktime");
mFileMetaData->setCString(kKeyMIMEType,"audio/quicktime");//audio换成null即可。
}
#endif
else
{
LOGD("FileTypeisaudio/mp4");
mFileMetaData->setCString(kKeyMIMEType,"audio/mp4");//audio换成null即可。
}
}else{
... ...
}
#else
if(mHasVideo){
mFileMetaData->setCString(kKeyMIMEType,"video/mp4");
}else{
mFileMetaData->setCString(kKeyMIMEType,"audio/mp4");//audio换成null即可。
}
#endif
}
沙发专用组