2011-12-22 78 views
1

我試圖用「-1」速率參數倒帶視頻文件。 它倒退一段時間,然後停止播放。最後玩家被殺死。 但是,對於相同的視頻文件快進的工作正常。我用「2x」和「4x」速度測試了它。如果我只是在一定的時間內向後尋找(速率爲「1.0」),它會轉到該時間戳並按預期開始播放。Gstreamer:快速倒帶視頻文件

據我瞭解,尋求事件在管道的分路器元件,其中處理:

  1. 它刷新當前排隊流數據
  2. 創建一個新段從尋求更新的值事件。
  3. 一旦新的分段準備好了新的流數據,就開始播放。 從此處開始回放將基於在新段中設置的新參數開始。

對於反向回放,我無法確定管道實際上被阻塞的位置。 我能夠看到分流器元件正在獲取數據並將其推送到新的分段上。 任何人都可以提出或指出問題可能在哪裏?

回答

3

在這裏可能無法正確實現反向播放。請提交錯誤,提供有關格式的詳細信息(例如,使用gst-discoverer),如果可能的話鏈接到文件。

+0

我試過這個的格式是MKV。在某些情況下,取回功能取決於發送查找事件時使用的查找標誌。 例如:如果我使用GstSeekFlags :: GST_SEEK_FLAG_KEY_UNIT或GST_SEEK_FLAG_NONE倒帶作品(顯示屏上沒有可見的關鍵幀更新。但是播放時間會用向後值更新,當播放重新開始時,它會在倒帶後從實際位置開始播放。) The倒帶失敗,如果我使用GstSeekFlags :: GST_SEEK_FLAG_FLUSH 你可以請建議我在哪裏需要查看,以便至少我可以在倒帶過程中顯示關鍵幀? – 2012-01-12 04:57:24

+0

對於擦洗(或任何情況下,您發送很多尋找事件)_KEY_UNIT是一個好主意,好像不會浪費時間解碼並丟棄幀以獲取確切的位置。當改變速度時,沖洗會簡單地排出不需要的管線。 – ensonic 2012-02-25 21:38:56