VODemo源码阅读(1)

来源:互联网 发布:mac专用win7 iso 编辑:程序博客网 时间:2024/06/05 10:50

VODemo的代码看了很久了,以前把框架梳理过一遍,现在要改写它并加入一些功能,于是又重新阅读源码。

程序进行CVODServerDlg::OnInitDialog()

 OnInitDialog中加入了一些界面初始化代码,如对在静态控件中显示IP,在CListCtrl中SetExtendedStyle及InsertColumn等。这里对CListCtrl加入了4列,即"file","type","size",pid"等。之后调用LoadProgramList导入媒体列表:

在LoadProgramList中

  long count = 0;
  ar >> count;

读入媒体个数,也即CListCtrl的item数,之后用一个for循环来导入每一分媒体文件的"file","type","size",pid"

 

 

server端打开媒体--程序执行流程

 

上面的SetMediaInfo是将media变量与AddDlg的mMedia相关联。

程序执行到dlg.DoModal之后,AddDlg的初始化函数InitDialog开始执行

这里就确定了媒体的

 char mFilePath[MAX_FILE_PATH];
 long mProgramId;
 long mFileType;
 long mFileSize;
 long mCheckSize;     //用于格式校验的数据量
 long mCheckOffset2; //额外的格式数据在文件中的偏移量 // Meaningful to AVI

这样一些变量。

 

OnInitDialog中的

  if (IDOK == dlg.DoModal())
  {
   //这里获得mMedia的成员变量值,mFilePath,mFileSize,mFileType
   isSourceOK = mMedia->SetFilePath(dlg.GetPathName());
  }

设置媒体路径及其它一些参数

 

 

原创粉丝点击