zoukankan      html  css  js  c++  java
  • 互联网视频直播&点播平台RTMP推流组件EasyRTMP如何获取当前推流状态 ?

    EasyRTMP作为TISNGSEE青犀视频开发的视频推流组件,其功能稳定可靠,经过多年项目实战,多种复杂环境运行,长期在线检验,已经能够在手机直播、桌面直播、摄像机直播、课堂直播等方面实现优秀的推流功能。

     

    在用户的使用过程中,创建一个推流后,也有随时监控推流状态的需求,如何获取EasyRTMP当前的推流状态?这个需要根据回调函数来进行判定。EasyRTMP回调函数定义如下:

    int __EasyRTMP_Callback(int _frameType, char *pBuf, EASY_RTMP_STATE_T _state, void *_userPtr)
    {
    	_channel_info* pChannel = (_channel_info*)_userPtr;
    	switch(_state)
    	{
    	case EASY_RTMP_STATE_CONNECTING:
    		TRACE_LOG(pChannel->fLogHandle, "Connecting...
    ");
    		break;
    	case EASY_RTMP_STATE_CONNECTED:
    		TRACE_LOG(pChannel->fLogHandle, "Connected
    ");
    		break;
    	case EASY_RTMP_STATE_CONNECT_FAILED:
    		TRACE_LOG(pChannel->fLogHandle, "Connect failed
    ");
    		break;
    	case EASY_RTMP_STATE_CONNECT_ABORT:
    		TRACE_LOG(pChannel->fLogHandle, "Connect abort
    ");
    		break;
    	case EASY_RTMP_STATE_DISCONNECTED:
    		TRACE_LOG(pChannel->fLogHandle, "Disconnect.
    ");
    		break;
    	default:
    		break;
    	}
    	return 0;
    }
    

      

    根据回调函数我们可以获取当前推流的状态,具体的函数释义如下:

    EASY_RTMP_STATE_CONNECTING = 1, /* 连接中 * /
    EASY_RTMP_STATE_CONNECTED, /* 连接成功 * /
    EASY_RTMP_STATE_CONNECT_FAILED, /* 连接失败 * /
    EASY_RTMP_STATE_CONNECT_ABORT, /* 连接异常中断 * /
    EASY_RTMP_STATE_PUSHING, /* 推流中 * /
    EASY_RTMP_STATE_DISCONNECTED, /* 断开连接 */

    EasyRTMP组件具备简单易用,运行高效等特点,能非常灵活地让用户自定义延时和缓冲区的大小,便于用户的调整和开发。作为TSINGSEE青犀视频开发产品的一份子,EasyRTMP当然也是支持测试的,欢迎了解。


  • 相关阅读:
    css 渐变动画
    div 画园
    sql server中使用xp_cmdshell
    (0.2.3)Mysql安装——二进制安装
    (0.2.2)如何下载mysql数据库(二进制、RPM、源码、YUM源)
    (0.2.1)mysql数据库环境-操作系统配置
    (0.2)linux下Mysql的安装配置与管理入门(目录篇)
    行列转换之——多行转多列,多列转多行实践版
    sql server数据库状态监控
    【bat】bat批处理异备文件、压缩文件(net use)
  • 原文地址:https://www.cnblogs.com/TSINGSEE/p/14688461.html
Copyright © 2011-2022 走看看