FFMPEG mp4 từ tệp m3u8 phát trực tiếp http? [đóng cửa]


85

Làm cách nào để giải nén mp4 từ tệp m3u8 phát trực tiếp của http? Tôi đã thử lệnh này bên dưới:

ffmpeg -i {input file} -f rawvideo -bsf h264_mp4toannexb -vcodec copy out.mp4

Tôi đã mắc lỗi này:

[NULL @ 0000000002f07060] Tiêu đề gói không có trong ngoại dữ liệu chung, luồng bị hỏng hoặc luồng bit MP4 / AVCC không hợp lệ Không mở được bộ lọc luồng bit h264_mp4toannexb cho luồng 0 với bản sao codec: I


1
bạn có thể sử dụng tiện ích này chrome.google.com/webstore/detail/hls-downloader/…
regisbsb

Câu trả lời:


195

Lệnh của bạn hoàn toàn không chính xác. Các định dạng đầu ra không phải là rawvideovà bạn không cần bộ lọc bitstream h264_mp4toannexbđược sử dụng khi bạn muốn chuyển đổi h264chứa trong một mp4cho Annex Bđịnh dạng được sử dụng bởi MPEG-TSmột ví dụ. Những gì bạn muốn sử dụng thay thế là aac_adtstoasccho các AACluồng.

ffmpeg -i http://.../playlist.m3u8 -c copy -bsf:a aac_adtstoasc output.mp4

Xin chào, Câu trả lời này đã giúp tôi ghi lại luồng trực tiếp từ url m3u8 và video cũng được lưu trong output.mp4. Câu hỏi của tôi là chúng ta có thể chỉ định thời gian tính bằng giây / phút trong lệnh này để video được lưu trong thời gian được chỉ định hay không. Hiện tại nó vẫn tiếp tục ghi và dừng cho đến khi tôi nhấn q trong bảng điều khiển. Cảm ơn trước
Mayuri Ruparel

1
@Mayuri -t <time>sau khi nhập bằng s hoặc hms.ms
aergistal

hey có bất kỳ một sự giúp đỡ cho tôi để có được tiến trình download fore trường hợp tương tự
Shivam Parmar

17

Câu trả lời của Aergistal hoạt động, nhưng tôi thấy rằng chuyển đổi sang mp4 có thể làm cho một số video m3u8 bị hỏng. Nếu bạn gặp sự cố này, hãy thử chuyển đổi chúng sang mkv và chuyển đổi chúng sang mp4 sau đó.


32
Tôi thấy rằng nó ffmpeg -i http://...m3u8 -c copy live.mkvhoạt động rất tốt. Chỉ cần có ai đó đến và đọc nó.
rwenz3l

@blackmiacool: Làm cách nào để đạt được điều này theo chương trình?
Vineesh TP

.tscũng hoạt động yên tĩnh tốt đối với một số suối
Honza R

1
Nếu bạn có địa chỉ https: //, hãy thay đổi nó thành http: // nếu không, bạn sẽ gặp lỗi "HTTP error 403". Để chuyển đổi MKV sang MP4, bạn chỉ cần sử dụng ffmpeg -i file.mkv file.mp4nhưng tại sao phải làm như vậy?
Erich Kuester

3
Trong trường hợp địa phương m3u8tập tin, tôi cũng đã có thêm một danh sách trắng ở phía trước, như:ffmpeg -protocol_whitelist file,http,https,tcp,tls,crypto -i 02.m3u8 -c copy 02.mkv
Bill Kotsias
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.