• 大小: 11.73MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-07-29
  • 语言: C/C++
  • 标签:

资源简介

运用视频编解码、RTP、线程等技术做的,可以实时传输多路视频。

资源截图

代码片段和文件信息

#include “stdafx.h“
#include “baseThread.h“

using namespace MobileVideoServer;

CbaseThread::CbaseThread() :
_thread_handle(NULL)
_parent_ptr(NULL)
_joined(false)
{
//...
}

CbaseThread::~CbaseThread()
{
//...
}

void CbaseThread::initialize()
{
//...
}

void CbaseThread::start(void* parent)
{
unsigned int id(0);

_parent_ptr = parent;//看文件CThreadTestDlg.cpp中start()的参数this

on_start();  //on_start要在最开始调用

_thread_handle = (HANDLE)_beginthreadex( 
NULL  //安全属性,NULL为默认安全属性
   0  //指定线程堆栈的大小。如果为0,则线程堆栈大小和创建它的线程的相同。一般用0
  _entry  //第3个参数:指定线程函数的地址,也就是线程调用执行的函数地址(用函数名称即可,函数名称就表示地址)
 (void*)this  //传递给线程的参数的指针,可以通过传入对象的指针,在线程函数中再转化为对应类的指针
   0  //线程初始状态,0:立即运行;CREATE_SUSPEND:suspended(悬挂)
 &id   //用于记录线程ID的地址
 );

SuspendThread(_thread_handle);//暂停(挂起)线程 
SetThreadPriority(_thread_handle THREAD_PRIORITY_HIGHEST);//设置线程优先级
ResumeThread(_thread_handle);//恢复线程运行

_joined = false;
}

void CbaseThread::shutdown()
{
_joined = true;

join();

on_close();  //on_close要在最终调用
}

void CbaseThread::join()
{
    DWORD theErr = ::WaitForSingleobject(_thread_handle INFINITE);//等待,直到函数有返回值,即等待关闭线程
}

unsigned int WINAPI CbaseThread::_entry(LPVOID inThread)
{
    CbaseThread* theThread = (CbaseThread*)inThread;

if(NULL == theThread)
return -1;

while(false == theThread->_joined)
{

theThread->entry();
}

    return 0;
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件    3691580  2013-01-11 11:51  C++多路视频传输\lib\ffmpeg.lib

     文件    4229288  2013-01-08 15:53  C++多路视频传输\lib\jrtplib.lib

     文件      54444  2013-01-08 15:53  C++多路视频传输\lib\jthread.lib

     文件       8652  2013-01-11 10:57  C++多路视频传输\lib\Packetframe.lib

     文件    3373542  2012-12-29 11:15  C++多路视频传输\lib\x264.lib

     文件       1078  2012-12-13 11:10  C++多路视频传输\res\Send.ico

     文件        396  2012-12-13 11:10  C++多路视频传输\res\Send.rc2

     文件   11404800  2012-08-31 19:10  C++多路视频传输\akiyo_qcif.yuv

     文件       1714  2013-03-05 11:50  C++多路视频传输\baseThread.cpp

     文件        996  2013-02-25 20:22  C++多路视频传输\baseThread.h

     文件       1237  2013-01-18 11:30  C++多路视频传输\h264decode.h

     文件        413  2012-12-30 20:25  C++多路视频传输\h264encode.h

     文件       1576  2012-09-19 14:54  C++多路视频传输\h264packframe.h

     文件       4367  2013-01-08 15:53  C++多路视频传输\Jrtplib.h

     文件   11404800  2012-08-31 19:10  C++多路视频传输\news_qcif.yuv

     文件       3543  2012-12-13 11:10  C++多路视频传输\ReadMe.txt

     文件       1366  2013-02-20 10:44  C++多路视频传输\Resource.h

     文件      22732  2013-02-26 16:24  C++多路视频传输\Send.aps

     文件       1191  2012-12-17 11:19  C++多路视频传输\Send.clw

     文件       2035  2012-12-13 11:10  C++多路视频传输\Send.cpp

     文件       4123  2012-12-13 11:10  C++多路视频传输\Send.dsp

     文件        516  2012-12-13 11:25  C++多路视频传输\Send.dsw

     文件       1302  2012-12-13 11:10  C++多路视频传输\Send.h

     文件       1453  2013-01-15 19:17  C++多路视频传输\Send.idc

     文件   10193920  2013-03-05 11:50  C++多路视频传输\Send.ncb

     文件      48640  2012-12-17 11:19  C++多路视频传输\Send.opt

     文件        518  2012-12-17 11:19  C++多路视频传输\Send.plg

     文件       5960  2013-02-20 17:03  C++多路视频传输\Send.rc

     文件        872  2012-12-20 10:13  C++多路视频传输\Send.sln

     文件       7992  2013-01-25 09:47  C++多路视频传输\Send.vcproj

............此处省略15个文件信息

评论

共有 条评论

相关资源