Gyakorlati tippek

M3U8 átalakítása MP4-re: FFmpeg, VLC és gyakori hibák

M3U8-fájl vagy URL mentése MP4-ként: streammásolás, H.264/AAC, VLC, valamint hozzáférési és hanghibák ellenőrzése.

Frissítve

Az M3U8 lejátszási lista, az MP4 videót és hangot tároló konténer.

Az átnevezett MP4-et sem nyitja meg a szerkesztő? Előbb ellenőrizze a hivatkozott médiaszegmenseket. Az útmutató befejezett HLS-forráshoz készült, amelyet birtokol vagy jogosult elmenteni.

Különítse el a listát a médiaszegmensektől

Az M3U8 rendszerint HLS-szegmensek szöveges listája, nem maga a videó. Más minőségek vagy külön hanglisták címét is tartalmazhatja. Az .mp4-re átnevezés nem hoz létre médiát.

A lista és hivatkozott fájljai legyenek elérhetők. Helyben .ts-, .m4s- és inicializáló fájlok is kellenek. Relatív utaknál őrizze meg a mappaszerkezetet. Az útmutató befejezett forrásról szól, nem élő felvételről.

Először próbálja a streammásolást FFmpeggel

Először futtassa az ffmpeg -version parancsot új terminálban. Ha nem található, ellenőrizze a telepítést és a program elérési útját. A példa az első videót és hangot választja, nem feltétlenül a legjobb minőséget vagy nyelvet. Hang nélküli videóból néma MP4 lesz. Csak hangot tartalmazó listához más parancs kell; felirat és további sáv nem kerül bele.

A -c copy újrakódolás nélkül csomagol át, elkerülve egy újabb kódolási generációt. Nem pótol hiányzó szegmenst és nem javít MP4-hez nem illő kodeket. Csak engedélyezett utat vagy URL-t adjon meg; a szóközök és paraméterek maradjanak idézőjelben. A +faststart az MP4 metaadatait előre helyezi a lejátszás indításához. Nem növeli a hálózati letöltés sebességét.

  1. Nyisson terminált a célmappában. Helyi lejátszási listánál készítsen másolatot a szegmensekkel, az eredeti mappaszerkezet megtartásával.
  2. Cserélje a bemenetet a valódi útra vagy URL-re, és válasszon új kimeneti nevet.
  3. Futtassa a másolást, majd ellenőrizze a hibákat és lejátszást.
MP4 mentése újrakódolás nélkül
ffmpeg -i "input.m3u8" -map 0:v:0 -map "0:a:0?" -c copy -movflags +faststart "output.mp4"

Kompatibilitáshoz újrakódolás vagy VLC

Ha a másolat nem játszható le, próbáljon H.264-et és AAC-t. A parancshoz libx264 és AAC kell az FFmpegben. Az újrakódolás időt igényel, a minőség és méret változhat; tartsa meg az eredetit. Ez hagyományos SDR-példa; a HDR–SDR tónusleképezéshez külön beállítások kellenek.

Újrakódolás a kompatibilitásért: H.264 és AAC
ffmpeg -i "input.m3u8" -map 0:v:0 -map "0:a:0?" -c:v libx264 -crf 20 -preset medium -pix_fmt yuv420p -c:a aac -b:a 128k -movflags +faststart "output-compatible.mp4"

Windows alatt a VLC szokásos útja Media → Convert/Save, Network, profil és cél. A profil neve lehet H.264 + MP3 (MP4); az AAC és a nevek verziónként eltérnek. macOS-en más a menü.

  1. Keresse a Media → Convert/Save és Network lapot.
  2. Adja meg az M3U8-URL-t, majd válassza a Convert lehetőséget.
  3. Ellenőrizze az MP4-profilt és válasszon új .mp4-célt.
  4. Start után nyissa meg a fájlt; eltérő felületnél nézze a verzió hivatalos súgóját.

Külön vizsgálja a 403-at, 404-et és a hanghiányt

403-nál jogosultságot és lejáratot, 404-nél megváltozott vagy eltűnt címet keressen. Egy szegmens hibájánál az útját és inicializálását is nézze meg. Mappamozgatás is törhet hivatkozást. Újrakódolás nem pótol hiányzó médiát.

Hanghiánynál ellenőrizze az audiostreamet, külön listát és a kijelölt sávot. Az első nem feltétlenül a kívánt nyelv. Engedélyezett aktuális forrást vagy hivatalos letöltést használjon. DRM és korlátozás esetén a szolgáltatás támogatott mentését válassza.

Mobil, feltöltés és a kész fájl ellenőrzése

Telefonon először hivatalos letöltést vagy offline módot keressen. Online konverternél nézze meg, kell-e szegmens is, és fájl vagy URL kerül-e szerverre. Privát videó és hitelesített link előtt olvassa el a kezelés és tárolás feltételeit.

Játssza le az elejét, közepét és végét hanggal, és hasonlítsa össze a hosszt. Végjel nélküli élő lista nem feltétlenül áll meg, a törölt régi szegmens nem tér vissza. Befejezett VOD-ot válasszon. A demó saját rövid, lezárt HLS-példánk.

Kimenet vizsgálata: streamek és időtartam Az output.mp4 helyére a ténylegesen mentett fájlnevet írja. Az újrakódolási példa output-compatible.mp4 fájlt készít.
ffprobe -v error -show_entries format=duration:stream=codec_type,codec_name,width,height -of json "output.mp4"
Ez az MP4 saját rövid HLS-példánkból készült. Lejátszva ellenőrizze a hosszát és a hangot.

Hasonlítsa össze a hosszát, majd játssza le az elejét, közepét és végét hanggal. A vizsgált MP4-et ossza meg, a listát és szegmenseket a vizsgálat végéig őrizze meg.

Eszközök

Források

Nyilvános dokumentáció alapján; nem teljes körű funkcionális vagy biztonsági ellenőrzés.

Összes útmutató →