Jak odtworzyć plik wideo w OpenGL?

9

Czy istnieje biblioteka, która pozwoli mi załadować plik filmu i odtworzyć go w aplikacji OpenGL? A może po prostu próbka kodu, którą ktoś leży? Używam również GLUT, jeśli to robi różnicę. Wydaje mi się, że format pliku nie ma znaczenia, chociaż obecnie mój film jest w formacie AVI.

Jimmy Miller
źródło
Chciałbym zobaczyć trochę lib, który używa ffmpeg i obsługuje jak dosłownie wszystko.
akaltar

Odpowiedzi:

4

Cóż, jest ten bardzo starożytny samouczek, który odtwarza wideo AVI przy użyciu stałej funkcji GL i Windows API.

Nie polecam korzystania z tej konfiguracji, ponieważ jest ona bardzo przestarzała, ale koncepcja jest zasadniczo poprawna. Pobierz każdą klatkę wideo i użyj jej do zaktualizowania tekstury OpenGL. Tak proste.

Jeśli wystąpią problemy z wydajnością, możesz zacząć myśleć o optymalizacji za pomocą takich obiektów, jak obiekty buforów pikseli .

glampert
źródło
Szczerze mówiąc, „Windows” nie wystarczy. Jeśli ktoś nie obsługuje wszystkich platform, krzywdzi wszystkich, dając Microsoft moc, na którą nie zasługuje.
Lolums,
@Lolums, zakładając, że jesteś w 100% zaangażowany w platformę, to myślę, że możesz używać interfejsu API specyficznego dla systemu. Ale tak, pisanie przenośnego kodu powinno być domyślnym. Nawet jeśli używasz interfejsu API platformy, napisz przynajmniej cienkie opakowanie, aby uniknąć wycieku szczegółów implementacji i ułatwić przyszłe potrzeby przenoszenia.
glampert
1

Jeśli z przyjemnością używasz formatu ogg theora, możesz użyć biblioteki TheoraPlay. Jest tutaj w pełni działająca wtyczka do silnika Duality, z której można skorzystać w celach informacyjnych - https://github.com/Andrea/DualityOgvPlayerPlugin . Działa z OpenGL.

BraveSirAndrew
źródło