Introduction
This project introduces you to use Microsoft Media Player SDK to write a simple video player for Pocket PC 2002
Background
Using the code
- First, download the SDK and install to the system. It would be in the directory C:\WMSDK\WMPktPC\
- Open the sample project: C:\WMSDK\WMPktPC\Samples\MediaBookmarker\MediaBookmarker.vcw
The sample project present how to play a video file locally. To play a video through http we must use the additional functions provided in PlayerOCX.h. First look at the CMediaBookmaker.h to see the variables
CComPtr<IWMP> m_spWMPPlayer;
To play an video file we can use the function Play()
like this
m_spWMPPlayer->Play();
Second, create a text box for user enter the URL
LRESULT CMediaBookmarker::OnCreate(UINT uMsg,
WPARAM wParam, LPARAM lParam, BOOL& bHandled)
{
..........
..........
..........
h_editURL=CreateWindow(TEXT("EDIT"),
TEXT("http://www.somewhere.com/video.wmv"),
WS_CHILD | WS_VISIBLE | ES_AUTOHSCROLL| BS_TEXT,
0, 20, 220, 20, m_hWnd, (HMENU)IDB_TXT_ADDRESS, hInst, NULL);
CreateWindow(TEXT("BUTTON"), TEXT("Go"),
WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON,
220, 20, 20, 20, m_hWnd, (HMENU)IDB_GO, hInst, NULL);
h_btnAbout=CreateWindow(TEXT("BUTTON"), TEXT("MediaBookmarker"),
WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON,
0, 40, 240, 20, m_hWnd, (HMENU)IDB_ABOUT, hInst, NULL);
..........
..........
}
The variable h_editURL
was declared in the CMediaBookmaker.h
HWND h_editURL;
Then we create the function that handle the action click on the button Go (CMediaBookmaker.h )
BEGIN_MSG_MAP(CMediaBookmarker)
.....
.....
.....
COMMAND_ID_HANDLER( IDB_GO, OnGoURL)
.....
.....
END_MSG_MAP()
LRESULT OnGoURL( WORD wNotifyCode, WORD wID,
HWND hWndCtl, BOOL& bHandled);
Then back to the CMediaBookmarker.cpp to edit the function OnGoURL
LRESULT CMediaBookmarker::OnGoURL(WORD wNotifyCode, WORD wID,
HWND hWndCtl, BOOL& bHandled)
{
CHAR *m_strURL="";
SendMessage(h_editURL,WM_GETTEXT,256,(LPARAM)m_strURL);
SendMessage(h_btnAbout,WM_SETTEXT,256,(LPARAM)m_strURL);
m_spWMPPlayer->put_FileName((unsigned short*)m_strURL);
m_spWMPPlayer->Play();
return 0;
}
Points of Interest
This code was tested on the Acer n10 Pocket PC 2003 using SENAO wireless card. We can play the file remotely in the web server.
I am just a new comer. I have many difficulties when doing the video project on Pocket PC. Now I find this code is interesting and would like to share with you. Finally, thanks for your concerns !