2011-11-10 17 views
10

Jestem nowy w ffmpeg i próbowałem dowiedzieć się, jak przekonwertować plik audio lub wideo z jednego formatu na inny. Nie chcę używać CLI, chcę tylko wiedzieć, czy mogę użyć ffmpeg jako biblioteki i wywołać funkcję konwersji pliku z jednego formatu na inny. Przeszedłem przez dokumentację i znalazłem funkcje, ale nie jest jasne, jak mogę to wykorzystać do konwersji. Samouczek lub przykład będzie bardzo pomocny.Użycie ffmpeg przekonwertować plik z jednego formatu na inny

Odpowiedz

9

zwykle robię to poprzez linię poleceń

ffmpeg -i input.mp4 -vcodec copy -acodec copy out.mkv 

tutaj I/P jest input.mp4 plik, który zostanie przekształcony out.mkv z konieczności sam kodek całego strumienia podstawowego

UWAGA: górne polecenie będzie działało tylko wtedy, gdy wszystkie kodeki wejściowe pliku input.mp4 będą obsługiwane przez kontener .mkv.

a jeśli nie są problemem z kodekiem następnie użyć

ffmpeg -i input.mp4 out.mkv 

będzie konwertować mp4 do MKV (jeśli konieczne będzie też zmienić kodek formatu wyjściowego)

+3

to 'CLI' Command Line interfejsu sposób konwertowania;) Planuję wywołać funkcję zdefiniowaną w bibliotece 'ffmpeg' z mojego programu, jeśli to możliwe. – Pannu

+0

hej człowiek fajna odpowiedź .. jednak nie jestem pewien, jak rozwiązać ten kodek ... zwykle nie określam formatu kodeków (tzn. Po prostu robię 'ffmpeg -i inputFile outputFile', ale teraz, gdy konwertuję od mp4 do mp3 .. Otrzymuję ten błąd: 'Nie znaleziono kodera (kodeku) dla strumienia wyjściowego # 0: 0' .. zobacz pełne polecenie i dziennik błędów [tutaj] (https://gist.github.com/abbood/7702597) – abbood

+0

@abbood dzięki człowiekowi .. Minęły 2 lata odkąd pracowałem nad ffmpeg, więc nie wiem zbyt wiele szczegółów, ale wygląda na to, że format kontenera outputfile obsługiwany przez bibliotekę koderów kodeków nie jest zainstalowany lub nie jest obsługiwany w twój ffmpeg, więc musisz to zainstalować lub podać kodowaną nazwę kodeku, aby zakodować strumień przez CLI –