//使用方法:启动线程

HANDLE hThread1 = (HANDLE)_beginthreadex(NULL, 0, ThreadStreamFuc, NULL, 0, NULL); 
if( hThread1 != NULL )   
{      
  CloseHandle(hThread1);   
}

unsigned __stdcall ThreadStreamFuc( PVOID pvParm )   
{     
// /* :sout-all :sout-keep这两个参数不能带,带了会解码失败*/
// //sout="#transcode{vcodec=theo,vb=800,acodec=vorb,ab=128,channels=2,samplerate=44100}:http{mux=ogg,dst=:8080/stream} :sout-all :sout-keep";
//
// /*
// cvlc -vvv rtsp://admin:admin12345@192.168.0.3:554/MPEG-4/ch1/main/av_stream 
// --sout "#transcode{vcodec=theo,vb=800,fps=25,scale=1,acodec=h264,ab=128,channels=2,samplerate=44100}:http{mux=ogg,dst=:10001/stream}" 
// --sout-keep
// */
// 
// //sout="#transcode{vcodec=h264,acodec=mpga,ab=128,channels=2,samplerate=44100}:file{dst=e:\\\\my.mp4,no-overwrite}";
// //Screen Capture
// //url = "screen://";

//取RTP H264视频流转为OGG推送到HTTP。
const char *sout="#transcode{vcodec=theo,vb=800,acodec=vorb,ab=128,channels=2,samplerate=44100}:http{mux=ogg,dst=:8080/stream}";
if (url == NULL)
{
url = "E:\\dfb_work\\VS2008\\FFMPEGTEST\\Debug\\my110.h264";//从文件取流
url = "rtp://@10.3.241.53:5004";//从RTP取流。//
url = "rtp://@239.1.1.1:5004";
url = "rtp_ps.sdp";//RDP需要的SDP文件
}
const char *media_name = url;
vlc = libvlc_new(0, NULL);
libvlc_vlm_add_broadcast(vlc, media_name, url, sout, 0, NULL, true, false);
libvlc_vlm_play_media(vlc, media_name);

cout<<"\nvlc play media loop\n"<<endl;
bool blExit = false;

bool blSipExit = false;
while(1)
{
EnterCriticalSection(&s_Lock);//处理退出  一般在SIP停止接收后退出。
blExit = s_blExit;
blSipExit = s_blSipExit;
LeaveCriticalSection(&s_Lock);
if (blExit && blSipExit)//待SIP退出服务后再退出。这样最后就可以销毁工作了。
{
break;
}

Sleep(10);
}
libvlc_vlm_stop_media(vlc, media_name);
libvlc_vlm_release(vlc);

cout<<"\nvlc play media =====end========\n"<<endl;
vlc = NULL;
return 0;

}

/*

SDP文件内容:

v=0   
o=- 20140233 20140238 IN IP4 10.3.240.155 //#1    IP为接收RTP流的计算机IP
s=rtp PS stream   
i=N/A   
c=IN IP4 10.3.240.155 //#2  IP为接收RTP流的计算机IP
t=0 0   
a=tool:ACME RTSP server   
a=recvonly  
a=type:broadcast  
a=charset:UTF-8  
a=framerate:16  
m=video 6000 RTP/AVP 96 //#3 ,端口要是偶数  
b=RR:0  
a=rtpmap:96 MP2P/90000

*/

VLC接收RTP的H264流串流成OGGT向HTTP发送,可以直接用HTML5播放相关推荐

  1. live555增强版--支持串流mp4格式

    live555目前最新版(0.75)的mediaServer只支持".m4e"格式的Elementary Stream fie,但并不支持串流mp4封装格式的文件,要串流mp4格式 ...

  2. VLC接收网络串流缓冲时间的计算

    VLC版本2.0.1 最近研究IP-STB音视频同步问题,发现方案自带的自动STC在网络延时过大时,不能成功同步音视频.在参考了VLC的串流播放机制后,以为适当缓冲可以解决此问题,可惜最终结果是稍有缓 ...

  3. vlc linux将摄像头串流,vlc的应用之九:用vlc串流摄像头

    版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://jeremiah.blog.51cto.com/539865/24550 ...

  4. vlc的应用之九:用vlc串流摄像头

    0. 环境搭建 Jeremiah这次主要是用的vlc-1.0.0(英文版)进行讲解.首先需要准备摄像头,Jeremiah用的是一个普通摄像头(以前钓MM用的,嘻嘻),驱动安装好后,在"我的电 ...

  5. 使用vlc串流http视频链接

    使用vlc串流http视频链接 使用windowsGUI 使用windows命令行 使用linux命令行 使用windowsGUI 媒体---->打开网络串流 填入链接 下拉播放按钮,点击串流 ...

  6. VLC -- 使用VLC串流播放视频

    VLC -- VLC串流播放视频方式 打开VLC后,在"媒体"菜单选择"流"选项,并添加一个即将要串流的视频文件: 然后点击串流按钮,进入如下页面: 该页面显示 ...

  7. FFMPEG API函数根据SDP文件接收RTP媒体流

    背景 版本ffmpeg 3.3.3:使用 FFmpeg实时接收rtp 音频和视频流,并生成视频文件. 在网上查阅了大量资料,基本上都是使用命令行来接收rtp媒体流的,由于项目中不得不使用ffmpeg接 ...

  8. VLC电脑串流视频到手机播放

    目标 用电脑把电脑本地的视频文件串流出去,手机上接收播放. 缺点是手机上不能拖动进度条. 条件 手机和电脑处在同一局域网 知道电脑和手机的IP地址 电脑上安装VLC播放器,手机安装支持串流的APP,例 ...

  9. 【嵌入式开发】用 VLC 显示 树莓派摄像头 H264 裸流

    首先树莓派连上网络,并和电脑在同一网段. 树莓派的IP是: 192.168.3.13 电脑的IP是: 192.168.3.6 1.在树莓派上采集 H264裸流,并用UDP发送到电脑. pi@Neil- ...

  10. VLC设置串流的TTL值

    VLC设置串流的TTL值 在用vlc播放组播时发现,直接网线连通的两台电脑可以正常的看组播视频,而通过路由器转发就不行了,后面发现是ttl出了问题 设置VLC的TTL 工具->偏好设置-> ...

最新文章

  1. MySQL使用sql备份文件恢复数据库
  2. C#教程4:数据类型
  3. 第一次听人用男女关系讲 N(Non-Blocking)I(进)O(出),涨姿势了
  4. 初识ABP vNext(3):vue对接ABP基本思路
  5. nginx root与alias区别
  6. 5G学习-3GPP协议入门
  7. HTML+CSS系列实战之表格
  8. LabVIEW自动整理程序框图
  9. 小程序如何跳转到第三方H5页面
  10. 概率问题的求解 —— 样本空间
  11. ./bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file:
  12. GoLang-4(switch)
  13. matlab仿真plant函数,(整理)matlab预测控制工具箱函数.
  14. HDU 4545-魔法串
  15. Rodney Brooks: 我们需要更理性看待人工智能技术
  16. 蛙跳差分格式(非恒定流)
  17. 基于jsp的新闻发布系统(论文)
  18. Magics分割拆分模型方法
  19. android 在线颜色转换工具,颜色转换器下载_v1.3.1安卓客户端_MDPDA手机网
  20. NetBeans 生成代码调用webService调用sopa

热门文章

  1. 一本通 3.1 例 1」黑暗城堡
  2. 学妹问我: 如何提高编程能力
  3. 数据库LATEST DETECTED DEADLOCK
  4. vxworks点滴记录
  5. uni-app实现本地打包安卓APK
  6. 人体工程学枕头行业调研报告 - 市场现状分析与发展前景预测
  7. 腾达路由器显示远程服务器无响应,腾达路由器设置及可能出现的问题
  8. Android开发什么该做、什么不该做,你真的知道吗?
  9. Datagrid Bind DropDownlist.....
  10. 【人生苦短,我学 Python】基础篇——字典(Day10)