Nie spodziewałem się, że w dzisiejszych czasach pliki w formacie 3gp cały czas mogą jeszcze sprawiać problemy.
Ostatnio zacząłem używać w moim smartfonie (Android, HTC Desire HD) programu AutoGuard, który działa jak czarna skrzynka w samochodzie. Rejestruje prędkość, dźwięk oraz oczywiście obraz wideo. Program ma opcję zapisu w plikach avi, mpeg oraz 3gp.
Jednak, z niewiadomych mi przyczyn, zapisywanie obrazu w plikach mpeg oraz avi powoduje ich uszkodzenie.
Pozostał mi format 3gp. Z formatem tym, jako takim, nie ma problemu, Telefon rejestruje i odtwarza 3gp bez zająknięcia.
Problem powstał, gdy zechciałem umieścić na swojej stronie jedynie fragment z zapisu ciekawej sytuacji drogowej. Do edycji wideo zawsze używam programu VirtualDub. Jednak, obsługuje on jedynie formaty MPEG oraz AVI.
Cóż więc za problem przekonwertować 3gp do AVI? A jednak, okazuje się, że problem jest. Nie wiem, czy jest to wina kodeków w Androidzie, czy samego programu AutoGuard, jednak kilka pobranych z sieci przeze mnie programów nie potrafiło prawidłowo przekonwertować plików 3gp do AVI. Były one bez dźwięku… Jednak śledztwo wykazało, że na 99% winne były kodeki video.
Rozwiązanie problemu
Należy pobrać z sieci darmowy program konwetrtujący, który nazywa się MediaProSoft Free 3GP Video Converter, dostępny na stronie http://www.coolfreestudio.com/free3gpvideoconverter/index.html.
Program jest tak prosty, że nie powinien sprawiać żadnych problemów w obsłudze.
Niestety, sprawia problemy z czymś innym… Nie potrafi przekonwertować plików 3gp bezpośrednio do AVI. W logach są błędy mówiące coś o nieprawidłowych ramkach i bitrate (piszę z pamięci, nie potrafię dokładnie przytoczyć komunikatu).
Proszę także nie myśleć, że skoro VirtualDub umie czytać pliki MPEG, to rozwiązaniem będzie konwersja do MPEG!!! Niestety, konwersja się udaje, standardowe playery potrafią czytać wygenerowane pliki, jednak próba otwarcia pliku MPEG w VirtualDub kończy się komunikatem: “no vidoes frames found in mpeg file”…
Na szczęście MediaProSoft Free 3GP Video Converter posiada opcję konwersji do plików flasha FLV. I to ratuje nam tyłki.
Konwertujemy! Mój około 18 minutowy film z pliku 3gp 662MB przekonwertował się do pliku FLV o rozmiarze 242MB, co trwało około 50 minut.
Co dalej? Plik FLV musi zostać przekonwertowany do formatu rozumianego przez VirtualDub’a. Kolejną konwersję przeprowadziłem za pomocą darmowego, nie wymagającego instalacji programu Pazera Free FLV to AVI Converter.
Ale i tu nie może być zbyt prosto. VirtualDub zaakceptuje tylko i wyłącznie kodek Motion JPEG. Ustawiamy go w programie Pazera Free FLV to AVI Converter w lewym dolnym rogu, o ile taki jest dostępny w systemie!!!
Jeśli nie masz takiego kodeka, sprobuj go pobrać lub spróbować inne kodeki, u mnie jako jedyny zadziałał akurat ten 🙁
Konwersja z FLV do AVI trwa dla mojego pliku około 8 minut, plik wynikowy ma 500MB i co najważniejsze, VirtualDub otwiera go i obrabia 🙂
Jak już wspomnialem, nie wiem, gdzie leży problem, dlaczego telefon (czy program AutoGuard?!) nie umie zapisywać plików bezpośrednio do formatu AVI, nie wiem także, co jest przyczyną problemów z bezpośrednią konwersja 3gp do AVI, wiem jedno – próbowałem wielu paczek kodeków i nic nie było pomocne. Jedynie powyższe rozwiązanie, które jest efektem kilku zmarnowanych godzin, działa – VirtualDub otwiera pliki.
Zdaję sobie sprawę, że na pewno istnieje jakieś lepsze rozwiązanie – jeśli je znasz – daj mi proszę znać.
Zdaję sobie także sprawę, że wielokrotna konwersja na pewno pozbawia pliki video jakości, ale nie miałem po prostu wyboru 🙁
Miłego konwertowania 🙂