Konwersja pliku M3U8 na MP4?

21

Czy plik wideo M3U8 można przekonwertować na MP4? Nie miałem szczęścia znaleźć konwertera plików, który może to zrobić, ponieważ plik M3U8 jest tak naprawdę listą audio z wieloma mniejszymi plikami w folderze.

Rick Jones
źródło
4
M3U to format listy odtwarzania. Co dokładnie chcesz uzyskać? Pojedynczy duży plik audio?
Daniel B
Czy możesz nam powiedzieć, czego próbowałeś i jakich rezultatów oczekujesz?
Dariusz
Właśnie pobrałem film z rozszerzeniem m3u8. Nie mogę pobrać go do mojej aplikacji odtwarzacza wideo Iphone przez udostępnianie plików, ponieważ plik jest folderem mniejszych plików. Sugerowane jest użycie mp4. Mam nadzieję uzyskać wideo m3u8 w formacie MP4.
Rick Jones
Ponieważ m3u8 nie jest standardowym i znanym formatem wideo, musisz podać więcej informacji na temat pliku. Skąd go pobrałeś? Jak duży jest plik? Czy w ogóle masz więcej szczegółów na temat pliku?
Mokubai
Jak podejrzewano, m3u8 nie jest rzeczywistym plikiem wideo, ale listą odtwarzania służącą do łączenia ze sobą plików wideo: developer.apple.com/library/ios/documentation/... stackoverflow.com/questions/19782389/... Ludzie sugerują, abyś używał mp4, ponieważ nie masz pliku wideo, to lista odtwarzania, która łączy ze sobą przesyłane strumieniowo pliki wideo.
Mokubai

Odpowiedzi:

31

Aby to zrobić, możesz użyć ffmpeg ...

Oto przykład:

ffmpeg -i "http://host/folder/file.m3u8" -bsf:a aac_adtstoasc -vcodec copy -c copy -crf 50 file.mp4
John E.
źródło
2
To wygląda jak adres IP sieci lokalnej, co oznacza, że ​​tylko ludzie w tej samej sieci mogą korzystać z tego łącza. Czy potrafisz posprzątać i dodać więcej informacji do swojej odpowiedzi?
Cfinley,
Masz rację, to jest serwer lokalny. Jednak przełączniki wiersza polecenia nadal obowiązują, aby móc przekonwertować strumień HLS na MP4
John E
Nie działa z ssl
jjxtra 30.09.15
Czy można dołączyć podpisy lub ścieżki napisów? Wydaje się, że niewiele na ten temat można znaleźć.
Justin
Tak, zobacz, jak wyeksportować podpisy trac.ffmpeg.org/wiki/HowToBurnSubtitlesIntoVideo
John E
3

M3U to plik listy odtwarzania, jak wspomniano wcześniej. Użyj odtwarzacza VLC, aby je otworzyć, a następnie użyj kreatora (Plik → Kreator przesyłania strumieniowego / transkodowania) do konwersji / transkodowania.

Jeśli otworzysz M3U w Notatniku, zobaczysz adres URL miejsca, w którym plik jest faktycznie przechowywany.

askmematt
źródło
Działa (użyj adresu URL pliku M3U). do testu możesz odtworzyć plik M3U za pomocą odtwarzacza VLC.
M-Razavi
1

Jak zauważył @Daniel B, M3U jest formatem listy odtwarzania . Jest to bardzo mały plik, który zawiera łącza do rzeczywistych multimediów. M3U8 to wersja Unicode, co oznacza, że ​​obsługuje łącza z literami i symbolami z dowolnego języka.

Ponieważ jest to zwykły plik tekstowy, możesz go otworzyć za pomocą Notatnika lub innego prostego edytora tekstu i spróbować skopiować z niego linki, a następnie ręcznie pobrać każdy film za pomocą przeglądarki.

Jeśli nie jest to bezpośredni link HTTP (S) do filmu, ale technologia przesyłania strumieniowego, taka jak RTMP, konieczne może być pobranie specjalnego programu do nagrania. Na przykład służy to do zapisywania strumieni RTMP .

Społeczność
źródło
1

Niedawno pobrałem plik wideo xxxx-ad .m3u8 i próbowałem rozwiązać ten sam problem (pobrany z Apowersoft ze strumienia online). Plik miał tylko 201b i do gry potrzebował połączenia z Internetem.

Użyłem formatfactory . Na początku nie mogłem otworzyć tego pliku za pomocą FF. Nie możesz użyć przycisku Otwórz.

Ale jeśli wskażesz i klikniesz plik i przeniesiesz go do okna FF, możesz go dodać, wybrać format i zgrać. Wynikiem jest klasyczny plik wideo, który można odtwarzać offline. To samo działa, jeśli chcesz tylko plik audio, taki jak mp3.

cieszyć się

użytkownik520477
źródło
0

Przynajmniej w najnowszych wersjach Internet Download Managera powinieneś dostać .tsplik zamiast .m3u8(chyba że skopiujesz .m3u8link i spróbujesz dodać go jako pobieranie ręcznie 0, ponieważ obsługuje on .m3u8prawidłowe pobieranie strumieni HLS ( ). Możesz odtworzyć ten plik bezpośrednio w niektórych odtwarzacze. Jeśli chcesz .mp4plik, możesz użyć narzędzia takiego jak My MP4Box GUI (lub FFmpeg, zobacz odpowiedź JohnE i po prostu wstaw .tsścieżkę do pliku -izamiast linku).

nyuszika7h
źródło
0

Możesz także użyć youtube-dldo pobrania filmu z adresu URL m3u8, na przykład:

$ youtube-dl --hls-prefer-native "http://host/folder/file.m3u8"
[generic] playlist: Requesting header
[generic] playlist: Downloading m3u8 information
[hlsnative] Downloading m3u8 manifest
[hlsnative] Total fragments: 275
[download] Destination: file-file.mp4
[download] 100% of 123.19MiB in 01:02
[ffmpeg] Fixing malformed AAC bitstream in "file-file.mp4"

Aby zainstalować / zaktualizować youtube-dl, musisz wpisać:

$ sudo -H $(which pip3) install -U youtube-dl
[sudo] password for xyztabcd:              
Requirement already up-to-date: youtube-dl in /usr/local/miniconda3/lib/python3.6/site-packages (2019.4.7)
SebMa
źródło
-2

Zmiana rozszerzenia działała dla mnie.
Pobrałem film za pomocą internetowego menedżera pobierania w formacie .m3u8, zmieniłem rozszerzenie na .mp4
POOF informatyka w pracy - udało mi się odtworzyć plik.

Cray-Z.Guy
źródło
1
Myślę, że to działa tylko wtedy, gdy host przechowuje również plik mp4, więc wystarczyło pobrać ten plik. Nie działało to dla mnie.
Sridhar Sarnobat