Hadret’s.Blog

Ateista, linuksiarz i przyszły filolog (;

Łączenie kilku plików avi w jeden

Zdarza się, że używając programu dvd::rip ustawiam opcję ripowania każdego chaptera do osobnego pliku. Ma to kilka zalet, a za największą uważam fakt, że mogę sobie pojedynczą scenę edytować w programie avidemux i dopieścić od pierwszych do ostatnich sekund jej trwania. Drobny szkopuł pojawia się w momencie, gdy wszystkie sceny są już gotowe i chciałbym je połączyć w jeden, duży plik. Jak to zrobić?

Google zna sporo odpowiedzi na to pytanie. Odfiltrowałem kilka z nich i przyjrzałem im się bliżej. Pierwsza jest przeznaczona do połączenia kilku plików avi i wypalenia ich formacie DVD – to drugie mnie nie interesowało, ale łączenie taką metodą zadziałało:

cat *.avi > jedynak.avi
mencoder -o finalowy.avi -noidx -oac copy -ovc copy jedynak.avi

Najpierw połączenie przez użycie polecenia cat, a resztę doprawia mencoder. Zalety są powszechnie znane, jakie są wady? W MPlayerze nie ma możliwości przewijania w przód i tył – kulawo. Gxine poradził sobie z przewijaniem, ale synchronizacja z dźwiękiem poszła się ciąć. Przyjrzałem się bliżej opcji -noidx i to ona jest odpowiedzialna za brak przewijania. Spróbowałem zamienić -noaidx na -forceaidx i mogłem już przesuwać w przód i tył również w MPlayerze, ale synchronizacja obrazu z dźwiękiem znów się „rozmyła”.

Drugi sposób pojawił się w komentarzach. Ktoś zasugerował użycie programu avimerge (z pakietu transcode), który – jak sama nazwa wskazuje – jest stworzony do łączenia plików avi. Pomyślałem: „to je to!”:

avimerge -c -o wynikowy.avi -i skladowy1.avi skladowy2.avi

-c miało zapewnić, nawet kosztem ucięcia kilku klatek obrazu, synchronizację dźwięku – niestety, u mnie nie zdało egzaminu.

Nie poddawałem się. Google w ruch i jadę z koksem. Wreszcie znalazłem trzeci sposób:

mencoder -oac copy -ovc copy skladowy1.avi skladowy2.avi skladowy3.avi -o wynikowy.avi

I? Działa. Sprawdzałem, przewijałem w jedną i drugą w MPlayerze i Gxine – dźwięk trzyma się idealnie, zero obsuwy.

6 Odpowiedzi

  1. Mencoder wymiata :)
    A znasz może jakieś narzędzie (może być konsolowe, nawet lepiej) pozwalające na edycję plików ogg? Pozwalający np. zmienić liczbę fps czy poziom kompresji.

    Odpowiedz

  2. Pobaw się pakietem vorbis-tools (;

    Odpowiedz

  3. Vorbis to kodek audio a mi chodziło o video :)
    Znalazłem coś takiego jak ffmpeg2theora. Jednak przy przeskalowywaniu nowe wymiary muszą być wielokrotnością 8 i nigdzie nie widzę opcji zmiany ilości klatek na sekundę.

    Odpowiedz

  4. nic dziwnego ze w pierwszym przykladzie nie dziala ci to w mplayerze skoro dales opcje -noidx czyli bez indeksowania pliku.

    Odpowiedz

    Hadret

    Jak też rozwinąłem myśl dalej, użyłem także z opcją -forceidx, ale obraz zaczął _rozmywać się_ z dźwiękiem, więc i jedna, i druga opcja była nieskuteczna.

    Swoją drogą, obecnie używam do łączenia plików Avidemuksa (:

    Odpowiedz

Trackbacki

  1. O ripowaniu i prostej obróbce audio/video at Hadret’s.Blog

Zostaw odpowiedź