打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
一个基于JRTPLIB的轻量级RTSP客户端(myRTSPClient)——解码篇:(三)一个简单的...

该篇内容简单的将前两篇内容组合在一起,创建了2个线程,分别播放音频和视频。

1 int main(int argc, char * argv[]) 2 { 3 RtspClient Client; 4 pthread_t audio_th; 5 pthread_t video_th; 6 7 if(argc != 2) { 8 cout <>'Usage: ' <>0] <>' ' endl; 9 cout <>'For example: ' endl;10 cout <>0] <>' rtsp://127.0.0.1/ansersion' endl;11 return 1;12 } 13 signal(SIGINT , sigterm_handler); /* Interrupt (ANSI). */14 signal(SIGTERM, sigterm_handler); /* Termination (ANSI). */15 rtspClientRequest(&Client, argv[1]);16 av_register_all();17 if(SDL_Init(SDL_INIT_VIDEO | SDL_INIT_AUDIO | SDL_INIT_TIMER)) {18 fprintf(stderr, 'Could not initialize SDL - %s\n', SDL_GetError());19 Client.DoTEARDOWN();20 exit(1);21 } 22 pthread_create(&audio_th, NULL, audio_thread, (void *)&Client);23 pthread_create(&video_th, NULL, video_thread, (void *)&Client);24 25 pthread_join(audio_th, NULL);26 pthread_join(video_th, NULL);27 Client.DoTEARDOWN();28 29 return 0;30 }

至此,“解码篇”内容告一段落,接下来将介绍myRTSPClient的具体实现,以便可以更好的理解音视频的传输机制。

 

注:

1, 示例源码编译需要SDL和ffmpeg,具体可参见解码视频的附录二;

2, 博主编译环境为 x86_64位ubuntu 16.04,以供参考。

 

myRtspClient-1.2.3

ffmpeg-2.8.5

下载源码以及Makefile

 

编译、配置和运行同上一篇:用ffmpeg解码视频

 

上一篇                    回目录

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
什么是SDL渲染器?
Linux C 实现多线程同步的四种方式(超级详细)
linux 下 条件变量实现生产者消费者问题
SDL入门教程(二):3、中途装载与退出,SDL错误信息
ffmpeg+sdl2.0编写最简单的视频播放器
Linux下pthread的读写锁的优先级问题
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服