Forums | developer.brewmp.com Forums | developer.brewmp.com

Developer

Forums

Forums:

Has anybody successfully gotten mpeg4 video to work on any phone?

I have written a simple application that uses the IMEDIA interface for the vx8000, however when I run it on the phone it will not play my video... When i print out dbg info trying to catch the errors I may be receiving, everything comes back as a success. It even returns returns a call back notifying that it is "done" playing it. The strangest part is, that I can send it any file, mp4 or not, and it still returns a sucess!

Any suggestions would be greatly appreciated! Thank you!

Ben

hi .
i have played video of MPEG4 file on LG 7000..
for that u have user creat instance function with class id of MPEG4 and the set the media data ( instead of creamedi_utility)..
this application will run only on device not on emulator..
hopefully it would solve ur problem
Vikas

hi .
i have played video of MPEG4 file on LG 7000..
for that u have user creat instance function with class id of MPEG4 and the set the media data ( instead of creamedi_utility)..
this application will run only on device not on emulator..
hopefully it would solve ur problem
Vikas

Thanks for the reply! I have been doing that, here is my source..
static boolean MovieTest_HandleEvent(IApplet * pi, AEEEvent eCode, uint16 wParam, uint32 dwParam)
{
MovieTest_t * pApp = (MovieTest_t *)pi;
AEERect rct;
int s = 200;
int started = 200;
switch (eCode)
{
case EVT_APP_START:
DBGPRINTF("I made it in here");
started = ISHELL_CreateInstance(pApp->a.m_pIShell, AEECLSID_MEDIAMPEG4, (void**)&pApp->m_pMedia);
if(started == SUCCESS)
{
DBGPRINTF("SUCCESS!!!!");
}
return(TRUE);
case EVT_KEY:
pApp->m_md.clsData = MMD_FILE_NAME;
pApp->m_md.pData = "test.mp4";
pApp->m_md.dwSize = 0;
s = IMEDIA_SetMediaData(pApp->m_pMedia,&pApp->m_md);
switch(s)
{
case SUCCESS:
DBGPRINTF("success in setting data");
break;
case MM_PENDING:
DBGPRINTF("MMPEND");
break;
case EBADPARM:
DBGPRINTF("EBADPARAM");
break;
case EBADSTATE:
DBGPRINTF("ebadstate");
case EUNSUPPORTED:
DBGPRINTF("unsupportted");
break;
default:
DBGPRINTF("default??? %d", s);
break;
}
s = IMEDIA_RegisterNotify(pApp->m_pMedia, (PFNMEDIANOTIFY)*MediaCallBack, pApp);
if(s == SUCCESS)
{
DBGPRINTF("register success");
}
else if(s == EBADSTATE)
DBGPRINTF("BADSTATE");
else DBGPRINTF("SHIT TO YOU TOO");
rct.x = 0;
rct.y = 0;
rct.dx = pApp->di.cxScreen;
rct.dy = pApp->di.cyScreen;
IMEDIA_SetRect(pApp->m_pMedia,&rct,NULL);
DBGPRINTF("I am here");
DBGPRINTF("made it");
s = IMEDIA_Play(pApp->m_pMedia);
switch(s)
{
case SUCCESS:
DBGPRINTF("success");
break;
case EBADPARM:
DBGPRINTF("EBADPARM");
break;
case EBADSTATE:
DBGPRINTF("EBADSTATE");
break;
case EITEMBUSY:
DBGPRINTF("EITEMBUSY");
break;
case EUNSUPPORTED:
DBGPRINTF("EUNSUPPORTED");
break;
}
IDISPLAY_Update(pApp->a.m_pIDisplay);
return (TRUE);
case EVT_APP_STOP:
// Add your code here .....
return TRUE;
default:
break;
}
return FALSE;

static void MediaCallBack(void * pUser, AEEMediaCmdNotify * pCmdNotify)
{
MovieTest_t * pApp = (MovieTest_t *)pUser;
switch (pCmdNotify->nStatus)
{
case MM_STATUS_DONE:
DBGPRINTF("Call back MM_STATUS_DONE");
break;
case MM_STATUS_ABORT:
DBGPRINTF("Call back MM_STATUS_ABORT");
break;
case MM_STATUS_START:
DBGPRINTF("Call back MM_STATUS_START");
break;
case MM_STATUS_MEDIA_SPEC:
DBGPRINTF("Call back MM_STATUS_MEDIA_SPEC");
break;
case MM_STATUS_TICK_UPDATE:
DBGPRINTF("Call back MM_STATUS_TICK_UPDATE");
break;
case MM_STATUS_DATA_IO_DELAY:
DBGPRINTF("Call back MM_STATUS_DATA_IO_DELAY");
break;
case MM_STATUS_SEEK:
DBGPRINTF("Call back MM_STATUS_SEEK");
break;
case MM_STATUS_SEEK_FAIL:
DBGPRINTF("Call back MM_STATUS_SEEK_FAIL");
break;
case MM_STATUS_PAUSE:
DBGPRINTF("Call back MM_STATUS_PAUSE");
break;
case MM_STATUS_PAUSE_FAIL:
DBGPRINTF("Call back MM_STATUS_PAUSE_FAIL");
break;
case MM_STATUS_RESUME_FAIL:
DBGPRINTF("Call back MM_STATUS_RESUME_FAIL");
break;
case MM_STATUS_REPEAT:
DBGPRINTF("Call back MM_STATUS_REPEAT");
break;
case MM_STATUS_SPACE_WARNING:
DBGPRINTF("Call back MM_STATUS_SPACE_WARNING");
break;
case MM_STATUS_SPACE_ERROR:
DBGPRINTF("Call back MM_STATUS_SPACE_ERROR");
break;
default:
DBGPRINTF("DEFUALT!");
break;
}
}
it seems quite simple, but still no dice! THanks again for the help

Thanks for the reply! I have been doing that, here is my source..
static boolean MovieTest_HandleEvent(IApplet * pi, AEEEvent eCode, uint16 wParam, uint32 dwParam)
{
MovieTest_t * pApp = (MovieTest_t *)pi;
AEERect rct;
int s = 200;
int started = 200;
switch (eCode)
{
case EVT_APP_START:
DBGPRINTF("I made it in here");
started = ISHELL_CreateInstance(pApp->a.m_pIShell, AEECLSID_MEDIAMPEG4, (void**)&pApp->m_pMedia);
if(started == SUCCESS)
{
DBGPRINTF("SUCCESS!!!!");
}
return(TRUE);
case EVT_KEY:
pApp->m_md.clsData = MMD_FILE_NAME;
pApp->m_md.pData = "test.mp4";
pApp->m_md.dwSize = 0;
s = IMEDIA_SetMediaData(pApp->m_pMedia,&pApp->m_md);
switch(s)
{
case SUCCESS:
DBGPRINTF("success in setting data");
break;
case MM_PENDING:
DBGPRINTF("MMPEND");
break;
case EBADPARM:
DBGPRINTF("EBADPARAM");
break;
case EBADSTATE:
DBGPRINTF("ebadstate");
case EUNSUPPORTED:
DBGPRINTF("unsupportted");
break;
default:
DBGPRINTF("default??? %d", s);
break;
}
s = IMEDIA_RegisterNotify(pApp->m_pMedia, (PFNMEDIANOTIFY)*MediaCallBack, pApp);
if(s == SUCCESS)
{
DBGPRINTF("register success");
}
else if(s == EBADSTATE)
DBGPRINTF("BADSTATE");
else DBGPRINTF("SHIT TO YOU TOO");
rct.x = 0;
rct.y = 0;
rct.dx = pApp->di.cxScreen;
rct.dy = pApp->di.cyScreen;
IMEDIA_SetRect(pApp->m_pMedia,&rct,NULL);
DBGPRINTF("I am here");
DBGPRINTF("made it");
s = IMEDIA_Play(pApp->m_pMedia);
switch(s)
{
case SUCCESS:
DBGPRINTF("success");
break;
case EBADPARM:
DBGPRINTF("EBADPARM");
break;
case EBADSTATE:
DBGPRINTF("EBADSTATE");
break;
case EITEMBUSY:
DBGPRINTF("EITEMBUSY");
break;
case EUNSUPPORTED:
DBGPRINTF("EUNSUPPORTED");
break;
}
IDISPLAY_Update(pApp->a.m_pIDisplay);
return (TRUE);
case EVT_APP_STOP:
// Add your code here .....
return TRUE;
default:
break;
}
return FALSE;

static void MediaCallBack(void * pUser, AEEMediaCmdNotify * pCmdNotify)
{
MovieTest_t * pApp = (MovieTest_t *)pUser;
switch (pCmdNotify->nStatus)
{
case MM_STATUS_DONE:
DBGPRINTF("Call back MM_STATUS_DONE");
break;
case MM_STATUS_ABORT:
DBGPRINTF("Call back MM_STATUS_ABORT");
break;
case MM_STATUS_START:
DBGPRINTF("Call back MM_STATUS_START");
break;
case MM_STATUS_MEDIA_SPEC:
DBGPRINTF("Call back MM_STATUS_MEDIA_SPEC");
break;
case MM_STATUS_TICK_UPDATE:
DBGPRINTF("Call back MM_STATUS_TICK_UPDATE");
break;
case MM_STATUS_DATA_IO_DELAY:
DBGPRINTF("Call back MM_STATUS_DATA_IO_DELAY");
break;
case MM_STATUS_SEEK:
DBGPRINTF("Call back MM_STATUS_SEEK");
break;
case MM_STATUS_SEEK_FAIL:
DBGPRINTF("Call back MM_STATUS_SEEK_FAIL");
break;
case MM_STATUS_PAUSE:
DBGPRINTF("Call back MM_STATUS_PAUSE");
break;
case MM_STATUS_PAUSE_FAIL:
DBGPRINTF("Call back MM_STATUS_PAUSE_FAIL");
break;
case MM_STATUS_RESUME_FAIL:
DBGPRINTF("Call back MM_STATUS_RESUME_FAIL");
break;
case MM_STATUS_REPEAT:
DBGPRINTF("Call back MM_STATUS_REPEAT");
break;
case MM_STATUS_SPACE_WARNING:
DBGPRINTF("Call back MM_STATUS_SPACE_WARNING");
break;
case MM_STATUS_SPACE_ERROR:
DBGPRINTF("Call back MM_STATUS_SPACE_ERROR");
break;
default:
DBGPRINTF("DEFUALT!");
break;
}
}
it seems quite simple, but still no dice! THanks again for the help

So, I dropped an MPEG4 with audio for this program, and the audio seems to play. However, I still do not get video! Is there some sort of display update I am missing? Does anybody have maybe an mpeg movie that they got successfully working that I can try? Please let me know! Thank you.
Ben

So, I dropped an MPEG4 with audio for this program, and the audio seems to play. However, I still do not get video! Is there some sort of display update I am missing? Does anybody have maybe an mpeg movie that they got successfully working that I can try? Please let me know! Thank you.
Ben

HI
as there is no diference in playing audio and video file..
for video file we have to set Image Rectangel .. that u have done..
can u please send me some sample mp4 file to test
i wanr some vide file fo test it .
thanks
Vikas

HI
as there is no diference in playing audio and video file..
for video file we have to set Image Rectangel .. that u have done..
can u please send me some sample mp4 file to test
i wanr some vide file fo test it .
thanks
Vikas

HI
as there is no diference in playing audio and video file..
for video file we have to set Image Rectangel .. that u have done..
thanks
Vikas

HI
as there is no diference in playing audio and video file..
for video file we have to set Image Rectangel .. that u have done..
thanks
Vikas

HI btripoli,
Iam also working on MPEG4...Did you get the solution for your problem....?Only audio is playing,there is no video...
If you solved the problem....then please give me the information.Iam trying to play video on LG-7000.
Thanks in Advance....
Ramakrishna

HI btripoli,
Iam also working on MPEG4...Did you get the solution for your problem....?Only audio is playing,there is no video...
If you solved the problem....then please give me the information.Iam trying to play video on LG-7000.
Thanks in Advance....
Ramakrishna

Yeah, I did get it fixed, but I don't completely remember how. From what I remember, the only thing I had to change in that source was the set rectangle. I believe I took that out because the set rectangle didn't react like you would think.. :-) Try taking it out and if that doens't work, try changing the coordinates of where you position the video. you might start to see parts of it pop up on the screen.
Ben

Yeah, I did get it fixed, but I don't completely remember how. From what I remember, the only thing I had to change in that source was the set rectangle. I believe I took that out because the set rectangle didn't react like you would think.. :-) Try taking it out and if that doens't work, try changing the coordinates of where you position the video. you might start to see parts of it pop up on the screen.
Ben

I think your error is MediaNotify function, here is it what I use, and it works ok.
/******************************/
static void VideoMPG4_MediaNotify(void * pUser, AEEMediaCmdNotify * pCmdNotify)
{
VideoMPG4 * pme = (VideoMPG4 *)pUser;
uint16 nTextID = 0;
switch (pCmdNotify->nStatus)
{
case MM_STATUS_SEEK_FAIL:
case MM_STATUS_PAUSE_FAIL:
case MM_STATUS_RESUME_FAIL:
DBGPRINTF("Error en MEDIA");
break;
}
if (pCmdNotify->nCmd == MM_CMD_PLAY || pCmdNotify->nCmd == MM_CMD_RECORD) // IMEDIA_Play/IMEDIA_Record events
{
switch (pCmdNotify->nStatus)
{
case MM_STATUS_START:
break;
case MM_STATUS_MEDIA_SPEC:
// pCmdNotify->pCmdData may point to media specs structure
// defined in AEEMediaFormats.h. Save this info.
break;
case MM_STATUS_TICK_UPDATE: // Typcally, one-second update
pme->m_dwPlayPos++;
if (!pme->m_dwTotalTime) // If no total time increase by 20!
pme->m_wPct = (pme->m_wPct + 20) % 100;
break;
case MM_STATUS_SEEK:
if (pCmdNotify->dwSize)
pme->m_dwPlayPos = (uint32)pCmdNotify->pCmdData / 1000;
break;
case MM_STATUS_PAUSE:
if (pCmdNotify->dwSize)
pme->m_dwPlayPos = (uint32)pCmdNotify->pCmdData / 1000;
break;
case MM_STATUS_RESUME:
if (pCmdNotify->dwSize)
pme->m_dwPlayPos = (uint32)pCmdNotify->pCmdData / 1000;
break;
case MM_STATUS_DONE: // playback done
case MM_STATUS_ABORT: // playback aborted
{
pme->m_dwPlayPos = 0;
pme->m_wPct = 0;
break;
}
}
} // MM_CMD_PLAY
else if (pCmdNotify->nCmd == MM_CMD_GETTOTALTIME)
{
if (pCmdNotify->nStatus == MM_STATUS_DONE || pCmdNotify->nStatus == MM_STATUS_ABORT)
{
pme->m_dwTotalTime = ((uint32)pCmdNotify->pCmdData) / 1000;
if (AEE_SUCCESS != IMEDIA_Play(pme->m_pMedia))
return;
}
} // MM_CMD_GETTOTALTIME
else if (pCmdNotify->nCmd == MM_CMD_SETMEDIAPARM)
{
if (pCmdNotify->nSubCmd == MM_PARM_VOLUME && pCmdNotify->nStatus == MM_STATUS_DONE)
{
if (SUCCESS == IMEDIA_GetMediaParm(pme->m_pMedia, MM_PARM_VOLUME, (int32 *)&pme->m_wVolume, NULL))
VideoMPG4_SendMediaNotify(pme, MM_CMD_GETMEDIAPARM, MM_PARM_VOLUME, MM_STATUS_DONE, (void *)(uint32)pme->m_wVolume, sizeof(pme->m_wVolume));
return;
}
} // MM_CMD_SETMEDIAPARM
else if (pCmdNotify->nCmd == MM_CMD_GETMEDIAPARM) // IMEDIA_GetMediaParm() events
{
if (pCmdNotify->nSubCmd == MM_PARM_VOLUME && pCmdNotify->nStatus == MM_STATUS_DONE)
pme->m_wVolume = (uint16)(uint32)pCmdNotify->pCmdData;
} // MM_CMD_GETMEDIAPARM

static void VideoMPG4_SendMediaNotify(VideoMPG4 * pme, int nCmd, int nSubCmd, int nStatus, void * pData, uint32 dwSize)
{
AEEMediaCmdNotify mcn;
AEECLSID cls;
IMEDIA_GetClassID(pme->m_pMedia, &cls);
mcn.clsMedia = cls;
mcn.pIMedia = pme->m_pMedia;
mcn.nCmd = nCmd;
mcn.nSubCmd = nSubCmd;
mcn.nStatus = nStatus;
mcn.pCmdData = pData;
mcn.dwSize = dwSize;
VideoMPG4_MediaNotify(pme, &mcn);

/***********************************************/
Good luck
Iñaki

I think your error is MediaNotify function, here is it what I use, and it works ok.
/******************************/
static void VideoMPG4_MediaNotify(void * pUser, AEEMediaCmdNotify * pCmdNotify)
{
VideoMPG4 * pme = (VideoMPG4 *)pUser;
uint16 nTextID = 0;
switch (pCmdNotify->nStatus)
{
case MM_STATUS_SEEK_FAIL:
case MM_STATUS_PAUSE_FAIL:
case MM_STATUS_RESUME_FAIL:
DBGPRINTF("Error en MEDIA");
break;
}
if (pCmdNotify->nCmd == MM_CMD_PLAY || pCmdNotify->nCmd == MM_CMD_RECORD) // IMEDIA_Play/IMEDIA_Record events
{
switch (pCmdNotify->nStatus)
{
case MM_STATUS_START:
break;
case MM_STATUS_MEDIA_SPEC:
// pCmdNotify->pCmdData may point to media specs structure
// defined in AEEMediaFormats.h. Save this info.
break;
case MM_STATUS_TICK_UPDATE: // Typcally, one-second update
pme->m_dwPlayPos++;
if (!pme->m_dwTotalTime) // If no total time increase by 20!
pme->m_wPct = (pme->m_wPct + 20) % 100;
break;
case MM_STATUS_SEEK:
if (pCmdNotify->dwSize)
pme->m_dwPlayPos = (uint32)pCmdNotify->pCmdData / 1000;
break;
case MM_STATUS_PAUSE:
if (pCmdNotify->dwSize)
pme->m_dwPlayPos = (uint32)pCmdNotify->pCmdData / 1000;
break;
case MM_STATUS_RESUME:
if (pCmdNotify->dwSize)
pme->m_dwPlayPos = (uint32)pCmdNotify->pCmdData / 1000;
break;
case MM_STATUS_DONE: // playback done
case MM_STATUS_ABORT: // playback aborted
{
pme->m_dwPlayPos = 0;
pme->m_wPct = 0;
break;
}
}
} // MM_CMD_PLAY
else if (pCmdNotify->nCmd == MM_CMD_GETTOTALTIME)
{
if (pCmdNotify->nStatus == MM_STATUS_DONE || pCmdNotify->nStatus == MM_STATUS_ABORT)
{
pme->m_dwTotalTime = ((uint32)pCmdNotify->pCmdData) / 1000;
if (AEE_SUCCESS != IMEDIA_Play(pme->m_pMedia))
return;
}
} // MM_CMD_GETTOTALTIME
else if (pCmdNotify->nCmd == MM_CMD_SETMEDIAPARM)
{
if (pCmdNotify->nSubCmd == MM_PARM_VOLUME && pCmdNotify->nStatus == MM_STATUS_DONE)
{
if (SUCCESS == IMEDIA_GetMediaParm(pme->m_pMedia, MM_PARM_VOLUME, (int32 *)&pme->m_wVolume, NULL))
VideoMPG4_SendMediaNotify(pme, MM_CMD_GETMEDIAPARM, MM_PARM_VOLUME, MM_STATUS_DONE, (void *)(uint32)pme->m_wVolume, sizeof(pme->m_wVolume));
return;
}
} // MM_CMD_SETMEDIAPARM
else if (pCmdNotify->nCmd == MM_CMD_GETMEDIAPARM) // IMEDIA_GetMediaParm() events
{
if (pCmdNotify->nSubCmd == MM_PARM_VOLUME && pCmdNotify->nStatus == MM_STATUS_DONE)
pme->m_wVolume = (uint16)(uint32)pCmdNotify->pCmdData;
} // MM_CMD_GETMEDIAPARM

static void VideoMPG4_SendMediaNotify(VideoMPG4 * pme, int nCmd, int nSubCmd, int nStatus, void * pData, uint32 dwSize)
{
AEEMediaCmdNotify mcn;
AEECLSID cls;
IMEDIA_GetClassID(pme->m_pMedia, &cls);
mcn.clsMedia = cls;
mcn.pIMedia = pme->m_pMedia;
mcn.nCmd = nCmd;
mcn.nSubCmd = nSubCmd;
mcn.nStatus = nStatus;
mcn.pCmdData = pData;
mcn.dwSize = dwSize;
VideoMPG4_MediaNotify(pme, &mcn);

/***********************************************/
Good luck
Iñaki

Hi Ben,
I adjusted the coordinates of rectangle,then video also played along with audio.But video is played vertically(rotated)...How can i resolve this problem.Iam trying to play on LG-7000 device...
Thanks for reply...
Ramakrishna

Hi Ben,
I adjusted the coordinates of rectangle,then video also played along with audio.But video is played vertically(rotated)...How can i resolve this problem.Iam trying to play on LG-7000 device...
Thanks for reply...
Ramakrishna

Hi Iñaki,
I tried your code,but i didn't get solution to my problem.
Thanks for reply...
Ramakrishna

Hi Iñaki,
I tried your code,but i didn't get solution to my problem.
Thanks for reply...
Ramakrishna

Hi Ramakrishna,
I also got the same problem with MPEG4 file foramt , If you convert the file in 3gpp format than it would be working fine .
The Vertically (rotated) display is problem with Brew SDK and got confirmation with Brew Tech support team also , they replied that that were able to reporduce this proble and working on it , and still i have got any response from BrewTech support , (It was there 3-months old response)
Hopefully it will solve ur problem
Cheer's Up
Vikas

Hi Ramakrishna,
I also got the same problem with MPEG4 file foramt , If you convert the file in 3gpp format than it would be working fine .
The Vertically (rotated) display is problem with Brew SDK and got confirmation with Brew Tech support team also , they replied that that were able to reporduce this proble and working on it , and still i have got any response from BrewTech support , (It was there 3-months old response)
Hopefully it will solve ur problem
Cheer's Up
Vikas

Hi Vikas,
I converted the mpeg4 format to 3gpp...now vedio is displayed normally...but movie runs very slowly...just one frame after another...is there any solution for this...
Thanks for your reply
Ramkrishna

Hi Vikas,
I converted the mpeg4 format to 3gpp...now vedio is displayed normally...but movie runs very slowly...just one frame after another...is there any solution for this...
Thanks for your reply
Ramkrishna

Hello Ramkrishna, what program do you use to convert from MPG4 to 3gpp
You have to check the fps, bit rate, size, etc.
I test Nokia Multimedia Converter and work´s perfect.
I´m testing on a Kyocera KX-2

Hello Ramkrishna, what program do you use to convert from MPG4 to 3gpp
You have to check the fps, bit rate, size, etc.
I test Nokia Multimedia Converter and work´s perfect.
I´m testing on a Kyocera KX-2

Hi all,
I am also working on playing mp4 files on the emulator. Does anyone know where I can get sample mp4 files so that I can test my program? If anyone has, could you please send it to me?
Thanks in advance.
Siddharth.

Hi all,
I am also working on playing mp4 files on the emulator. Does anyone know where I can get sample mp4 files so that I can test my program? If anyone has, could you please send it to me?
Thanks in advance.
Siddharth.

MP4 files will not play in the emulator since the emulator does not have the appropriate drivers for decoding them. You will need to test your source on a handset to make sure they work.

MP4 files will not play in the emulator since the emulator does not have the appropriate drivers for decoding them. You will need to test your source on a handset to make sure they work.

Hello btripoli,
Thankyou very much for informing me about this. I did not know that mp4 files could not be played on the emulator, and had been trying for quite some time.
Can you tell me in detail how I could connect a handset to the PC, and test programs? I have not done it before and I do not know about this at all.
One more doubt: Should I use the same handsets that are used in BREW 2.1, like Kyocera, LG, Samsung and Sharp?? Do the programs work on any other handsets? On which handset does mp4 play well?
Siddharth.

Hello btripoli,
Thankyou very much for informing me about this. I did not know that mp4 files could not be played on the emulator, and had been trying for quite some time.
Can you tell me in detail how I could connect a handset to the PC, and test programs? I have not done it before and I do not know about this at all.
One more doubt: Should I use the same handsets that are used in BREW 2.1, like Kyocera, LG, Samsung and Sharp?? Do the programs work on any other handsets? On which handset does mp4 play well?
Siddharth.

http://brew.qualcomm.com/brew_bnry/pdf/developer/resources/gs/starting_b...
For capabilities of specific handsets, check the DDS.

http://brew.qualcomm.com/brew_bnry/pdf/developer/resources/gs/starting_b...
For capabilities of specific handsets, check the DDS.

HI,
I am trying to play movie files on the cellphone. I need to know whether the emulator cannot play only mp4 files or all other movie file types, like .pmd, .avi, .qt, .ram etc... also!!
Thanks,
Siddharth.

HI,
I am trying to play movie files on the cellphone. I need to know whether the emulator cannot play only mp4 files or all other movie file types, like .pmd, .avi, .qt, .ram etc... also!!
Thanks,
Siddharth.

Without your own support dll, you will not be able to play AVI, RM, QT etc.

Without your own support dll, you will not be able to play AVI, RM, QT etc.

I believe if you check the data sheets for the phones, you will know if MPEG4 is supported or not.
From what I have seen, LX 7000, Samsung A890, VX 8000, and Audiovox 8940 do NOT support MPEG4 but they all support CMX (PNG) The file extension is pmd.
Hope this helps. Let me know if I am wrong here. Thanks.

I believe if you check the data sheets for the phones, you will know if MPEG4 is supported or not.
From what I have seen, LX 7000, Samsung A890, VX 8000, and Audiovox 8940 do NOT support MPEG4 but they all support CMX (PNG) The file extension is pmd.
Hope this helps. Let me know if I am wrong here. Thanks.

Hi ruben and sks,
Thankyou for your advice.
sks,
I will check the data sheets of the devices and will surely let you know. This will take some time.
Regards,
Siddharth.

Hi ruben and sks,
Thankyou for your advice.
sks,
I will check the data sheets of the devices and will surely let you know. This will take some time.
Regards,
Siddharth.