RootEncoder簡介

      在〈RootEncoder簡介〉中尚無留言

RootEncoder 好用且功能強大,但在網路上幾乎找不到相關教學文章,甚至連官網也沒啥範例可供參考,所以撰寫此專案說明。

簡介

RootEncoder for Android (rtmp-rtsp-stream-client-java) 是個功能非常完備的串流編碼器,可使用 RTMP、RTSP、SRT、UDP 等通訊協定將視訊和音訊推送到媒體伺服器,比如 SRS。

該 SDK 全部使用 Java 及 Kotlin 寫成,為 Android 應用程式提供廣泛的多媒體串流傳輸功能。此 SDK 採用 Apache2.0 授權模式,原始碼請參照如下

https://github.com/pedroSG94/RootEncoder/tree/master

用途

以上專有名詞有看也沒有懂,所以就用白話文來說明。

編寫一個 Camera App 非常複雜,Google 的 SDK 有 Camera1、Camera2、CameraX,光要啟動相機預覽就非常麻煩,更何況還有拍照,錄影等功能。

RootEncoder 可以簡化如下需求

1. 基本功能 : 只須幾行代碼就可以啟動相機、預覽、拍照、錄影
2. 進階功能 : 對影像進行濾鏡處理,比如模糊,下雪…,最重要的是加上目前時間文字
3. 超級強項 : RootEncoder 主攻網路即時傳送,也就是 RTMP,推播影像到伺服器

RootEncoder 傳送 RTMP 給 SRS 伺服器,而 RTMP影片 其實約有 2 秒的延遲,但 SRS 有一個很神奇的功能 rtmp_to_rtc,可以將 RTMP 影像轉成 WebRTC 格式讓片少於 0.4 秒的延遲。

直播功能

真播就是要讓延遲縮到最短時間,考慮了 WebRtc、RootEncoder 這二款,有以下的結論

即時且能在伺服器存檔 : 只能是 RootEncoder,傳送 rtmp 再由 SRS 轉成 rtc 格式達到即時功能,而 SRS 伺服器可以儲存 rtmp 格式影像。
視訊會議 : WebRtc peer to peer 是首選,但就是無法在 SRS 伺服器儲存 rtc 影像。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *