2016-12-26 54 views

回答

0

沒有簡單的方法通過Media Foundation接收器流式傳輸視頻,因爲它沒有實現網絡流傳輸協議。但是,有兩個接收器可用於此目的 - ASF和MP4。 ASF格式爲Microsoft格式,可用於Microsoft平臺MFCreateASFStreamingMediaSink之間的流媒體視頻 - 它需要類對象和IMFByteStream接口作爲參數 - 可以從接收器捕獲ASF字節口袋並通過任何網絡協議發送。目前,MP4格式在視頻中比較常見,可以用於幾乎所有計算機平臺的視頻流媒體。 Media Foundation包含兩種版本的MP4格式 - 在最終文件中包含媒體信息,在開始文件中包含媒體信息 - 是這些格式用於將視頻寫入文件,但是如果您搜索接收片段格式 - 媒體信息在開始MFCreateFMPEG4MediaSink - 你會發現它也需要帶有IMFByteStream接口的類對象作爲參數 - 它有可能獲得用於流式傳輸的MP4格式的字節口袋。當然,視頻格式協議還不足以滿足流媒體傳輸的需要 - 它需要在字節包周圍編寫流媒體協議。但是,以簡單的方式,可以通過直接呼叫通過MP4播放器元素通過HTML5播放MP4碎片格式。幾個月前,我寫了這麼簡單的服務器 - 它已經聽取了連接,並且在收到來自HTML5的請求後,MP4播放器元素髮送了MP4字節的口袋。無論如何,它有可能寫入流沉,但並不容易 - 這不是簡單的代碼解決方案。順便說一下,該程序被稱爲WPFScreenStreamer - 它將Windows桌面的屏幕視頻和揚聲器的音頻流式傳輸到支持TCP的HTML5瀏覽器中。

相關問題