• 大小: 9.2MB
    文件类型: .7z
    金币: 1
    下载: 0 次
    发布日期: 2023-10-08
  • 语言: C/C++
  • 标签: ffplay  mfc  ffmpeg  

资源简介

自己做的FFPLAY移植到VC下的开源工程:ffplay for MFC。 本工程将ffmpeg项目中的ffplay播放器(ffplay.c)移植到了VC的环境下。并且使用MFC做了一套简单的界面。它可以完成一个播放器播放视频的基本流程:解协议,解封装,视频/音频解码,视音频同步,视音频输出。此外还包含一些控制功能:播放,暂停/继续,前进,后退,停止,逐帧播放,全屏等功能。通过本程序可以学习视频播放器原理,以及SDL和Windows消息机制等。代码中包含了比较详细的注释。

资源截图

代码片段和文件信息

/* 
 * FFplay for MFC
 *
 * 雷霄骅 Lei Xiaohua
 * leixiaohua1020@126.com
 * 中国传媒大学/数字电视技术
 * Communication University of China / Digital TV Technology
 *
 * http://blog.csdn.net/leixiaohua1020
 * 
 * 本工程将ffmpeg项目中的ffplay播放器(ffplay.c)移植到了VC的环境下。
 * 并且使用MFC做了一套简单的界面。
 * This software transplant ffplay to Microsoft VC++ environment. 
 * And use MFC to build a simple Graphical User Interface. 
 */

#include “stdafx.h“
#include “ffplaymfc.h“
#include “AudiodecodeDlg.h“
#include “afxdialogex.h“


// AudiodecodeDlg 对话框

IMPLEMENT_DYNAMIC(AudiodecodeDlg CDialogEx)

AudiodecodeDlg::AudiodecodeDlg(CWnd* pParent /*=NULL*/)
: CDialogEx(AudiodecodeDlg::IDD pParent)
{

}

AudiodecodeDlg::~AudiodecodeDlg()
{
}

void AudiodecodeDlg::DoDataExchange(CDataExchange* pDX)
{
CDialogEx::DoDataExchange(pDX);
DDX_Control(pDX IDC_AUDIODECODE_LIST m_audiodecodelist);
}


BEGIN_MESSAGE_MAP(AudiodecodeDlg CDialogEx)

END_MESSAGE_MAP()


BOOL AudiodecodeDlg::OnInitDialog()
{
CDialogEx::OnInitDialog();
//整行选择;有表格线;表头;单击激活
DWORD dwExstyle=LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES|LVS_EX_HEADERDRAGDROP|LVS_EX_ONECLICKACTIVATE;

//多国语言支持
CString resloader;
resloader.LoadString(IDS_AUDIODECODE);
SetWindowText(resloader);

m_audiodecodelist.Modifystyle(0LVS_SINGLESEL|LVS_REPORT|LVS_SHOWSELALWAYS);
m_audiodecodelist.SetExtendedstyle(dwExstyle);

resloader.LoadString(IDS_AUDIODECODE_NUM);
m_audiodecodelist.InsertColumn(0resloaderLVCFMT_CENTER500);
resloader.LoadString(IDS_AUDIODECODE_SIZE);
m_audiodecodelist.InsertColumn(1resloaderLVCFMT_CENTER500);
resloader.LoadString(IDS_AUDIODECODE_PTS);
m_audiodecodelist.InsertColumn(2resloaderLVCFMT_CENTER500);
resloader.LoadString(IDS_AUDIODECODE_DTS);
m_audiodecodelist.InsertColumn(3resloaderLVCFMT_CENTER500);

return TRUE;
}





评论

共有 条评论