2013-08-17 16 views
14

mam miejsce udostępniania wideo i konwersja wideo z ffmpeg ale to zajmie dużo czasu do konwersji. jak to zrobić szybko i bezpiecznie? Myślę, że gdy ffmpeg pasuje do GPU, pomaga mi, ale nie znajduję dobrego odniesienia do użycia. Które zastosowanie lub odniesienie może mi pomóc, które mają dobrą wydajność.Konwersja wideo z ffmpeg za pomocą GPU

+0

Co próbowałeś? Będziesz mieć większą szansę na uzyskanie pomocy, jeśli podasz kod, który wypróbowałeś. –

+0

Nigdy nie słyszałem o kodeku zoptymalizowanym dla GPU w ffmpeg .... Moim zdaniem nie ma opcji z ./configure do obsługi cusa, opencl lub innych. Przepraszam! – alexbuisson

+0

Format konwersji h264 używa akceleracji VDPAU, ale nie wiem, jak ją włączyć i używać. – sdnaghdi

Odpowiedz

10

Aktualizacja Q4 2017. Od czasu mojej oryginalnej odpowiedzi kodowanie oparte na GPU stało się szeroko dostępne. Jeśli masz nowoczesny model NVIDIA video card and can compile ffmpeg, powinieneś być gotowy. Dzięki Dmytro Dzyubak za wskazanie FFmpeg docs stwierdzające, że rzeczywiście "kodowanie oparte na procesorze generalnie zapewnia lepszą jakość niż kodowanie oparte na GPU."

- kodowanie oparte

GPU jest specyficzne dla standardu obliczeniowej kodeka/GPU (CUDA, OpenCL), więc trzeba by określić, jakie używasz w twojej sprawie. ffmpeg to między innymi otoki dla popularnych kodeków, takich jak x264 i VP8 dla wideo.

Korzystanie x264 wszystkie próby jak dotąd przyniosły mieszane rezultaty w najlepszym wypadku. Nic, co mogłoby zostać przekazane do produkcji, nie ujrzało światła dziennego.

Główna koncepcja oferuje SDK, który może być używany do kodowania opartego H264 GPU. Możesz przeczytać tutaj dla more information. Nie widziałem tagu cenowego dla ich SDK, ale może to być kosztowne, jak sądzę.

W zależności od używanego kodeka jesteś lepiej dostosowując ustawienia kodowania na kompromis jakości pod względem szybkości. Na marginesie kodowanie oparte na procesorze ma tendencję do wytwarzania lepszej jakości niż kodowanie oparte na GPU.

+25

„kodowanie oparte CPU daje lepszą jakość niż kodowania opartego na GPU”. - wymagany cytat. – Julius

+2

"Enkodery sprzętowe zwykle generują wyjście o znacznie niższej jakości niż dobre kodery programowe, takie jak x264" - https://trac.ffmpeg.org/wiki/HWAccelIntro –

Powiązane problemy