資源簡介
這個示例工程可以完整的展示:如何使用libmp4v2將原始的音視頻數據幀存儲為mp4文件。可以幫助流媒體開發人員快速存儲mp4文件。

代碼片段和文件信息
/******************************************************
?*?浩一科技,提供云錄播、云監控的全平臺無插件解決方案。
?*?支持按需直播,多點布控,分布式海量存儲,動態擴容;
?*?支持微信掃碼登錄,全平臺帳號統一,關聯微信小程序;
?*?支持多種數據輸入:攝像頭IPC、rtmp、rtsp、MP4文件;
?*?支持全實時、全動態、全網頁管理,網頁前后臺兼容IE8;
?*?支持多終端無插件自適應播放,flvjs/hls/rtmp自動適配;
?******************************************************
?*?官方網站?=>?https://myhaoyi.com
?*?技術博客?=>?http://blog.csdn.net/haoyitech
?*?開源代碼?=>?https://github.com/HaoYiTech/
?*?云監控群?=>?483663026(QQ群)
?*?云錄播群?=>?630379661(QQ群)
?******************************************************
?*?VS2010自動生成的App類實現代碼
?******************************************************/
#include?“stdafx.h“
#include?“sample_save_mp4.h“
#include?“sample_save_mp4Dlg.h“
#ifdef?_DEBUG
#define?new?DEBUG_NEW
#endif
BEGIN_MESSAGE_MAP(Csample_save_mp4App?CWinApp)
ON_COMMAND(ID_HELP?&CWinApp::onhelp)
END_MESSAGE_MAP()
Csample_save_mp4App::Csample_save_mp4App()
{
m_dwRestartManagerSupportFlags?=?AFX_RESTART_MANAGER_SUPPORT_RESTART;
}
Csample_save_mp4App?theApp;
BOOL?Csample_save_mp4App::InitInstance()
{
//?如果一個運行在?Windows?XP?上的應用程序清單指定要
//?使用?ComCtl32.dll?版本?6?或更高版本來啟用可視化方式,
//則需要?InitCommonControlsEx()。否則,將無法創建窗口。
INITCOMMONCONTROLSEX?InitCtrls;
InitCtrls.dwSize?=?sizeof(InitCtrls);
//?將它設置為包括所有要在應用程序中使用的
//?公共控件類。
InitCtrls.dwICC?=?ICC_WIN95_CLASSES;
InitCommonControlsEx(&InitCtrls);
CWinApp::InitInstance();
AfxEnableControlContainer();
//?創建?shell?管理器,以防對話框包含
//?任何?shell?樹視圖控件或?shell?列表視圖控件。
CShellManager?*pShellManager?=?new?CShellManager;
//?標準初始化
//?如果未使用這些功能并希望減小
//?最終可執行文件的大小,則應移除下列
//?不需要的特定初始化例程
//?更改用于存儲設置的注冊表項
//?TODO:?應適當修改該字符串,
//?例如修改為公司或組織名
SetRegistryKey(_T(“應用程序向導生成的本地應用程序“));
Csample_save_mp4Dlg?dlg;
m_pMainWnd?=?&dlg;
INT_PTR?nResponse?=?dlg.DoModal();
if?(nResponse?==?IDOK)
{
//?TODO:?在此放置處理何時用
//??“確定”來關閉對話框的代碼
}
else?if?(nResponse?==?IDCANCEL)
{
//?TODO:?在此放置處理何時用
//??“取消”來關閉對話框的代碼
}
//?刪除上面創建的?shell?管理器。
if?(pShellManager?!=?NULL)
{
delete?pShellManager;
}
//?由于對話框已關閉,所以將返回?FALSE?以便退出應用程序,
//??而不是啟動應用程序的消息泵。
return?FALSE;
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????15810??2018-03-16?19:53??sample_save_mp4Dlg.cpp
?????文件???????1813??2018-03-16?19:33??sample_save_mp4Dlg.h
?????文件????????148??2018-03-16?18:24??stdafx.cpp
?????文件???????1678??2018-03-16?18:34??stdafx.h
?????文件????????234??2018-03-16?18:24??targetver.h
?????文件????1611239??2018-03-16?13:53??bin\sample.mp4
?????文件???????2600??2018-03-14?10:32??common\GMError.h
?????文件???????2661??2018-03-14?10:32??common\HYDefine.h
?????文件??????13167??2018-03-14?10:39??common\Hyperli
?????文件???????3248??2018-03-14?10:39??common\Hyperli
?????文件???????2936??2018-03-14?10:32??common\OSThread.cpp
?????文件???????2272??2018-03-14?10:32??common\OSThread.h
?????文件???????8945??2018-03-16?19:36??common\ReadSPS.cpp
?????文件???????1770??2018-03-16?19:36??common\ReadSPS.h
?????文件???????9097??2018-03-14?10:32??common\Socket.cpp
?????文件???????2821??2018-03-14?10:32??common\Socket.h
?????文件??????12514??2018-03-14?10:32??common\SocketUtils.cpp
?????文件???????3691??2018-03-14?10:32??common\SocketUtils.h
?????文件??????12718??2018-03-14?10:32??common\StrPtrLen.cpp
?????文件???????2881??2018-03-14?10:32??common\StrPtrLen.h
?????文件??????38127??2018-03-14?15:03??common\tinyxm
?????文件??????57050??2018-03-14?15:02??common\tinyxm
?????文件???????2595??2018-03-14?15:03??common\tinyxm
?????文件??????37345??2018-03-14?15:02??common\tinyxm
?????文件??????17051??2018-03-14?10:33??common\UDPSocket.cpp
?????文件???????3324??2018-03-14?10:33??common\UDPSocket.h
?????文件??????20842??2018-03-14?10:33??common\UtilTool.cpp
?????文件???????4236??2018-03-14?10:33??common\UtilTool.h
?????文件???????6264??2017-06-13?11:24??libmp4v2\chapter.h
?????文件??????14987??2017-06-13?11:24??libmp4v2\file.h
............此處省略34個文件信息
評論
共有 條評論