现在的位置: 首页 > 综合 > 正文

媒体播放器更新媒体库时无法找到文件名很长的rmvb文件

2013年10月31日 ⁄ 综合 ⁄ 共 856字 ⁄ 字号 评论关闭

通过函数 FS_FindFirstN和函数FS_FindNextN搜索flash中的所有视频文件,如果文件名比较长,获得的就是该文件的短文件名;而rmvb的短文件名的扩展名是.rmv,.rmv会被过滤掉,所以最终无法找到;  
方法1:让rmv不被过滤 
(1) 文件PlstSrvpls.h, 枚举:srv_plst_support_format_enum 
中添加: SRV_PLST_FORMAT_RMV 
 (2)文件PlstSrvpls.c 数组srv_plst_support_format[] 中的宏 
#ifdef __RM_DEC_SUPPORT__  
#endif 中添加 {SRV_PLST_FORMAT_RMV, L”RMV”} 
 (3) 函数pls_db_util_get_if_video() 添加: 
#ifdef __RM_DEC_SUPPORT__ 
 if(file_type == SRV_PLST_FORMAT_RM || file_type == SRV_PLST_FORMAT_RV 
 || file_type == SRV_PLST_FORMAT_RMVB || file_type == SRV_PLST_FORMAT_RMV) 
 { 
 is_video = MMI_TRUE; 
 } 
#endif 
方法二: 让函数FS_FindNextN 和 函数FS_FindFirstN 能够读取更长的文件名 
 int FS_FindNextN(FS_HANDLE Handle,FS_Pattern_Struct * PatternArray, kal_uint32 PatternNum,
                 kal_uint8 ArrayMask,FS_DOSDirEntry * FileInfo, WCHAR * FileName, kal_uint32 MaxLength,
                 kal_uint32 Flag) 
增加filename 对应的buffer 大小,增加MaxLength的大小 
增加宏 SRV_PLST_MAX_TEMP_FILE_LENGTH 对应的值即可;

抱歉!评论已关闭.