如何 - 1.獲取音頻/視頻軌道的當前幀位置? 2.如何去一個軌道的特定幀位置? 使用vlcj sdk。 任何代碼片斷將不勝感激!如何在vlcj中獲取/設置幀位置?
2
A
回答
0
VLCJ並不是真正爲這種逐幀訪問而設置的 - 您可以在mediaplayer對象上使用setTime()
和getTime()
,但這會從毫秒開始返回時間而不是幀。當然,如果你知道幀速率,那麼從一個幀轉換到另一個相對來說是相當微不足道的。
如果您需要比VLCJ提供的更低級別的操作,那麼您可能需要查看Xuggler。
0
其實你可以用一點數學來做到這一點。這不是最乾淨的方式,但它很容易理解。
VLCj允許您使用.getLength()
來獲取媒體的長度。但是請注意,這會以毫秒爲單位返回媒體的長度。此外,您可以使用.getFPS()
獲取媒體的幀數/秒。
所以,現在你可以得到幀的總數爲:
total_frames = .getFPS * .getLength() /1000;
然後你可以使用.getPosition()
找出您當前所在毫秒,然後你可以轉換,要一幀。這以百分比形式返回。
current_frame = .getPosition() * total_frames;
現在,如果你想去一個特定的幀假設這個desired_frame
。您可以使用佔用百分比的.setPosition()
。因此,您需要確定代表您要跳轉到的幀的總數的百分比。
.setPosition((float)desired_frame/total_frames);
相關問題
- 1. 如何在silverlight文本框中獲取/設置插入位置?
- 2. 獲取設備位置並在地圖上設置位置
- 3. 如何在java中設置2幀的位置
- 4. 獲取設置位的位置C
- 5. 如何在轉換後獲取UIView幀位置?
- 6. Android:如何等待LocationService在獲取位置之前設置GlobalVars
- 7. 如何在gcmbaseintentservice中獲取位置
- 8. 如何在DataGridView中獲取CurrentCell位置
- 9. 如何在android中獲取位置?
- 10. 如何在Emacs中保存幀位置?
- 11. JavaScript'contenteditable' - 獲取/設置插入位置
- 12. 獲取並設置頂級位置
- 13. 動態獲取並設置位置
- 14. 如何獲取行位置?
- 15. 如何獲取位置--php
- 16. 如何獲取cmd位置?
- 17. 如何設置AVCaptureVideoDataOutput捕獲幀大小?
- 18. 如何在MKMapView中設置PlaceMark位置?
- 19. 如何在Powershell中設置FromFile位置?
- 20. 從位置獲取位置
- 21. 如何使用位圖數據設置視頻幀捕獲
- 22. 如何在RTSPserver中設置幀速率
- 23. 在ListView中獲取位置
- 24. 在android中獲取位置
- 25. 在onCreateViewHolder中獲取位置
- 26. 如何在iPhone中獲取設備位置名稱?
- 27. 如何在matlab中獲取鼠標在我的設置軸上的位置?
- 28. 在JavaScript中的幀位置
- 29. 獲取一個位的位置,如果它被設置
- 30. cocos2d:CocosBuilder:如何獲取動畫關鍵幀的位置