EasyRTMP做爲TISNGSEE青犀視頻開發的視頻推流組件,其功能穩定可靠,通過多年項目實戰,多種複雜環境運行,長期在線檢驗,已經可以在手機直播、桌面直播、攝像機直播、課堂直播等方面實現優秀的推流功能。ide
在用戶的使用過程當中,建立一個推流後,也有隨時監控推流狀態的需求,如何獲取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...\n"); break; case EASY_RTMP_STATE_CONNECTED: TRACE_LOG(pChannel->fLogHandle, "Connected\n"); break; case EASY_RTMP_STATE_CONNECT_FAILED: TRACE_LOG(pChannel->fLogHandle, "Connect failed\n"); break; case EASY_RTMP_STATE_CONNECT_ABORT: TRACE_LOG(pChannel->fLogHandle, "Connect abort\n"); break; case EASY_RTMP_STATE_DISCONNECTED: TRACE_LOG(pChannel->fLogHandle, "Disconnect.\n"); 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, /* 斷開鏈接 */code
EasyRTMP組件具有簡單易用,運行高效等特色,能很是靈活地讓用戶自定義延時和緩衝區的大小,便於用戶的調整和開發。做爲TSINGSEE青犀視頻開發產品的一份子,EasyRTMP固然也是支持測試的,歡迎瞭解。
視頻