首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Brew >

为何IMedia播放不了视频格式.该如何解决

2012-01-19 
为何IMedia播放不了视频格式.IMedia接口播放视频文件,和播放声音文件有什么特别地方要注意吗,为何我的这段

为何IMedia播放不了视频格式.
IMedia接口播放视频文件,和播放声音文件有什么特别地方要注意吗,
为何我的这段程序,只能播放声音文件,换做视频文件时,IMEDIAUTIL_CreateMedia(pMe->pIMediaUtil,&music,&pMe->pMedia),总是创建不了对象,
代码如下:

C/C++ code
// lab 2static void PlayMusic(mymedia* pMe){      AEEMediaData  music;      AEERect       rect;            music.clsData = MMD_FILE_NAME;      music.pData = "1.mp4";//这里改成视频格式的文件就播不了,MP3的没问题.      music.dwSize = 0;    if(SUCCESS != ISHELL_CreateInstance(pMe->pIShell,AEECLSID_MEDIAUTIL,(void **)&pMe->pIMediaUtil))        return;    if(SUCCESS != IMEDIAUTIL_CreateMedia(pMe->pIMediaUtil,&music,&pMe->pMedia))        return ;      //if(ISHELL_CreateInstance(pMe->pIShell,AEECLSID_MEDIAMIDI,(void**)&pMe->pMedia) != SUCCESS)     //  return;      SETAEERECT(&rect,0,0,50,50);      IMEDIA_SetRect(pMe->pMedia,&rect,&rect);      IMEDIA_SetMediaData(pMe->pMedia,&music);      IMEDIA_EnableFrameCallback(pMe->pMedia, TRUE);      IMEDIA_RegisterNotify(pMe->pMedia,(PFNMEDIANOTIFY)CApp_MediaEventNotify,pMe);      IMEDIA_Play(pMe->pMedia);}static void CApp_MediaEventNotify(mymedia *pme, AEEMediaCmdNotify *pcn){switch (pcn->nStatus)    {    case MM_STATUS_FRAME:        {            IBitmap * pFrame;            AEEBitmapInfo bi;            IMEDIA_GetFrame(pme->pMedia, &pFrame);            IBITMAP_GetInfo(pFrame, &bi, sizeof(bi));            IDISPLAY_BitBlt(pme->a.m_pIDisplay, 0, 0, bi.cx, bi.cy,            pFrame, 0, 0, AEE_RO_COPY);            IDISPLAY_Update(pme->a.m_pIDisplay);            IBITMAP_Release(pFrame);            break;        }    }}


[解决办法]
需要安装相关的DLL和头文件吧
[解决办法]
我也是这个问题,后来发现返回内存不够的错误!
[解决办法]
保险的办法是先
handler = ISHELL_GetHandler(pShell,AEECLSID_MediaVideo, “MP4”) ;
然后
ISHELL_CreateInstance(pShell,handler, (void **)&pIMedia);
看看pIMedia 能否创建成功



[解决办法]
来学习一下!
[解决办法]
呵呵,学习了,
[解决办法]
学习下!

热点排行