• 大小: 6.53MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-09-25
  • 语言: 其他
  • 标签: Directshow  播放器  

资源简介

该播放器基于Directshow框架,调用的解码器来自于开源的LAVFilters。支持的所有常见的多媒体格式播放。

资源截图

代码片段和文件信息


#include “stdafx.h“
#include “Resource.h“
#include “FullScreenVideoWnd.h“
//#include “bitmap.h“

#define GET_WM_COMMAND_ID(wp lp)               LOWORD(wp)

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif



/////////////////////////////////////////////////////////////////////////////
// CFullScreenVideoWnd

int  CFullScreenVideoWnd:: CreateViewer(CWnd * pParentWnd LPRECT lpRect )
{
LPCTSTR pszClassName = AfxRegisterWndClass(0);

m_pParentWnd = pParentWnd ;

DWORD dwstyle = 
//WS_OVERLAPPEDWINDOW |
//WS_CAPTION |
        WS_POPUP |
        //WS_MINIMIZEBOX |
        //WS_MAXIMIZEBOX |
//WS_MAXIMIZE     | 
WS_CLIPCHILDREN |
WS_VISIBLE;

int cx = GetSystemMetrics(SM_CXSCREEN);
int cy = GetSystemMetrics(SM_CYSCREEN);

return CreateEx(
0 pszClassName
_T(“Video Preview“)
dwstyle
    0 0 cx cy
NULL NULL NULL);

}

void CFullScreenVideoWnd:: UpdateSize()
{
int cx = GetSystemMetrics(SM_CXSCREEN);
int cy = GetSystemMetrics(SM_CYSCREEN);
  ::SetWindowPos(m_hWnd HWND_NOTOPMOST 00 cx cy SWP_SHOWWINDOW);
}

CFullScreenVideoWnd::~CFullScreenVideoWnd()
{
}


BEGIN_MESSAGE_MAP(CFullScreenVideoWnd CWnd)
//{{AFX_MSG_MAP(CFullScreenVideoWnd)
//}}AFX_MSG_MAP
ON_WM_RBUTTONUP()
ON_WM_PAINT()
ON_WM_KEYDOWN()
END_MESSAGE_MAP()


/////////////////////////////////////////////////////////////////////////////
// CFullScreenVideoWnd message handlers

BOOL CFullScreenVideoWnd::OnCommand(WPARAM wParam LPARAM lParam) 
{

//int id = GET_WM_COMMAND_ID(wParam lParam);

return CWnd::OnCommand(wParam lParam);
}

void CFullScreenVideoWnd::onkeydown(UINT nChar UINT nRepCnt UINT nFlags) 
{
if (nChar == VK_ESCAPE) // Escape key
{
OutputDebugString(“CFullScreenVideoWnd::onkeydown \n“);

ShowWindow(0);
if (m_pParentWnd)
{
::PostMessage(m_pParentWnd->m_hWnd WM_RESTORE_WINDOW 0 0);
}
return;
}

CWnd::onkeydown(nChar nRepCnt nFlags);
}




void CFullScreenVideoWnd::OnRButtonUp(UINT nFlags CPoint point)
{
POINT pt;
GetCursorPos(&pt);


CMenu menu;
menu.CreatePopupMenu();
menu.AppendMenu(MF_STRING ID_MENU_RESTORE_WINDOW  “恢复窗口播放“);

menu.TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON pt.x pt.y (m_pParentWnd != NULL) ? m_pParentWnd : this);

    CWnd::OnRButtonUp(nFlags point);
}


void CFullScreenVideoWnd::OnPaint()
{
CPaintDC dc(this);

//if (pWC)
//{
// HRESULT hr = pWC->RepaintVideo(m_hWnd dc.m_hDC);
// if (FAILED(hr))
// {
// ASSERT(0);
// }
//}
//else
{
       CBrush br(RGB(000));
   CRect rc;
   GetClientRect(&rc);
     dc.FillRect(rc &br);
}
}




 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2019-10-17 16:29  SimplePlayer\
     目录           0  2019-10-17 16:27  SimplePlayer\AsfPlaySDK\
     文件        9635  2019-10-17 16:14  SimplePlayer\AsfPlaySDK\AsfPlaySDK.cpp
     文件        3281  2018-02-23 15:25  SimplePlayer\AsfPlaySDK\AsfPlaySDK.h
     文件         880  2015-09-13 17:08  SimplePlayer\AsfPlaySDK\AsfPlaySDK.sln
     文件         909  2011-10-03 17:55  SimplePlayer\AsfPlaySDK\AsfPlaySDK.sln.old
     文件       33792  2019-10-17 16:26  SimplePlayer\AsfPlaySDK\AsfPlaySDK.suo
     文件        8704  2013-09-29 07:04  SimplePlayer\AsfPlaySDK\AsfPlaySDK.suo.old
     文件        6087  2019-10-17 16:12  SimplePlayer\AsfPlaySDK\AsfPlaySDK.vcproj
     文件        1383  2019-10-17 16:26  SimplePlayer\AsfPlaySDK\AsfPlaySDK.vcproj.x64-PC.x64.user
     文件       21522  2019-10-17 16:25  SimplePlayer\AsfPlaySDK\CDXGraph.cpp
     文件        3607  2013-09-29 07:03  SimplePlayer\AsfPlaySDK\CDXGraph.h
     目录           0  2019-10-17 16:27  SimplePlayer\AsfPlaySDK\debug\
     文件      721920  2019-10-17 16:26  SimplePlayer\AsfPlaySDK\debug\AsfPlaySDK.dll
     文件        7962  2019-10-17 16:26  SimplePlayer\AsfPlaySDK\debug\AsfPlaySDK.lib
     文件       20594  2012-01-06 16:14  SimplePlayer\AsfPlaySDK\dshowutil.cpp
     文件        2500  2002-11-12 19:11  SimplePlayer\AsfPlaySDK\dshowutil.h
     文件        4234  2012-06-19 11:28  SimplePlayer\AsfPlaySDK\GlobalDef.h
     文件        4079  2012-01-06 16:15  SimplePlayer\AsfPlaySDK\GlobalUtil.cpp
     文件         366  2012-01-06 16:15  SimplePlayer\AsfPlaySDK\GlobalUtil.h
     文件       34097  2009-06-17 03:33  SimplePlayer\AsfPlaySDK\moreuuids.h
     文件        1291  2011-10-03 17:55  SimplePlayer\AsfPlaySDK\ReadMe.txt
     目录           0  2019-10-17 16:27  SimplePlayer\AsfPlaySDK\release\
     文件      116736  2019-10-17 16:25  SimplePlayer\AsfPlaySDK\release\AsfPlaySDK.dll
     文件        7962  2019-10-17 16:25  SimplePlayer\AsfPlaySDK\release\AsfPlaySDK.lib
     文件       25600  2019-10-17 16:07  SimplePlayer\AsfPlaySDK\release\MoviePlayer.exe
     文件         214  2011-10-03 17:55  SimplePlayer\AsfPlaySDK\stdafx.cpp
     文件         349  2014-07-08 06:52  SimplePlayer\AsfPlaySDK\stdafx.h
     文件        2767  2019-05-02 08:50  SimplePlayer\FullScreenVideoWnd.cpp
     文件        1466  2018-05-26 10:23  SimplePlayer\FullScreenVideoWnd.h
     目录           0  2011-10-05 17:01  SimplePlayer\res\
............此处省略59个文件信息

评论

共有 条评论