本人不是技術背景的,體驗過很多內容聚合類的 app,如「即刻」、「豌豆莢一覽」等,但是這些內容的形式都屬於非即時的。
請問,技術上可否實現自動且實時的拉取其它人家的直播 app 裡的內容,並在自己的產品框架下去播放(不交互)?不透過談判合作,自己透過科技是否可以實現?
另外,想知道,這個問題的答案對於手機 app 或 web 是否有區別。
謝謝,希望我的描述能讓勉強各位聽明白。
回覆內容:
這其實就是一種盜播。這種做法的核心特點是:
自己不花流量費,用戶觀看影片時直接請求目標平台的伺服器——這也是為什麼叫「盜播」而不是「轉播」的原因,你是用別人的錢給自己發家致富,而「轉播」則是自己掏流量費,只是內容來自外部(當然轉播也應當合法才行)。所以很容易理解如果第三方平台發現你這麼做他們會有多憤怒。
道德方面不評價,單從技術上來說是可行的,但也存在一些限制。
可行的原因是:
- 目前大部分直播平台的技術底層使用的都是RTMP(Real-Time Messaging Protocol) 協議來實現直播流的發送(主播方)與接收(觀眾方)
- 為了在行動裝置Web 環境下實現直播觀看,這些直播平台還會額外使用HLS(HTTP Live Streaming)協議
- 上述兩種協議,都是開放的。 RTMP 協定源自 Adobe 公司,技術規格請參考:Real-Time Messaging Protocol (RTMP) specification 。而HLS 協議則源自Apple 公司,技術規格請參考:https://developer.apple.com/streaming/developer.apple.com/streaming/
-
- 主要是三部分:
-
採集——主播使用OBS 之類的軟體來錄製視頻,並能夠將數據發送向伺服器
轉播——伺服器使用SRS/Red5 之類的軟體實現接收採集端發來的資料並轉發給回放端(觀眾)
回放——實質上就是指播放器,通常嵌入在Web 頁面或App 裡,觀眾透過它們來觀看
對於盜播方,只需要實現回放功能即可。而回放怎麼實現呢?其實你很容易就可以找到一個開源的播放器,支援 RTMP 和 HLS 協定。那麼剩下的最後一步,就是抓取到那些直播平台的節目的播放位址了。注意這不是指直播節目的網頁位址,而是指節目底層協定規定的位址,例如RTMP 協定規定每個節目都有一個rtmp:// 開頭的位址,而HLS 則是每個節目都有一個http: // 開頭的位址(HLS 實際上是基於HTTP 協定的,因此其節目位址就是一個普通的網址)- 是的,只要你能抓取到那些直播節目的視訊串流位址,再找一個播放器,就能直接播放了。這種方案基本上能夠盜播國內絕大多數平台的視訊資源。
- 但也有少數平台做了防範,基本上有幾類防範手法:
-
- 不使用RTMP 和HLS 而是基於自研的未公開協議,這大大提高了盜播難度(雖然這些平台原本並不是要防盜播,而是為了實現P2P、低延遲等)
透過技術手段阻撓你獲得直播視訊的串流地址(有一定效果,但也存在很多疏漏)
透過分析請求方是從哪個平台發起請求的,判斷是否盜播(類似HTTP 協議的referer 防盜鏈機制,可以阻斷低水平盜播)
通過檢查登陸令牌的方式阻止盜播(對於許多登錄才能看的移動端直播APP 來說這可以說是防盜播的殺手鐧,但是對於鬥魚熊貓之類不需要登入就能看的平台來說,這種效果不佳)
🎜技術方面大致的情況就是這樣。
抖個機靈…🎜🎜嵌入一個 指定直播的IFRAME頁面 即可🎜🎜安全可靠無公害…
理論可以 實際上很難🎜你看過qq第三方客戶端有嗎 或有了活得久的沒
市場上已經有此類app了