Gặp lỗi: Bộ mã hóa không xác định 'libvo_aacenc'


3

Tôi mới làm quen ffmpeg, chỉ cố gắng xây dựng một tệp SDP để phát trực tuyến. Tôi đang gặp lỗi khi chạy lệnh

ffmpeg -re -i "sample.mp4" -f rtp rtp://127.0.0.1:10000 -flags +global_header -c:a libvo_aacenc -vn -map 0:1 -f rtp rtp://127.0.0.1:10002 > 10000.sdp

Lỗi là:

Unknown encoder 'libvo_aacenc'

Làm thế nào để tôi giải quyết điều này?


Bạn cần bao gồm đầu ra giao diện điều khiển ffmpeg hoàn chỉnh xuất hiện sau khi bạn nhập lệnh ffmpeg.
llogan

Câu trả lời:


9

Ffmpeg của bạn có thể không được cấu hình với --enable-libvo-aacenc. Tuy nhiên, có những bộ mã hóa AAC chất lượng cao khác có thể được sử dụng với ffmpeg. ffmpeg -codecssẽ liệt kê tất cả các bộ mã hóa đã được cấu hình cho mỗi codec được hỗ trợ; hãy tìm dòng "aac" và các bộ mã hóa được liệt kê trên dòng đó. Nếu bạn không có bất kỳ bộ mã hóa AAC nào khác, bạn luôn có thể sử dụng bộ mã hóa AAC thử nghiệm được tích hợp sẵn cho ffmpeg ( -strict experimental -c:a aac) hoặc xây dựng ffmpeg của riêng bạn với bộ mã hóa AAC yêu thích của bạn. Để được hướng dẫn chọn bộ mã hóa AAC, hãy xem Hướng dẫn mã hóa AAC ffmpeg .

Cập nhật: Kể từ FFmpeg 3.0 (Tháng 2 năm 2016), libvo-aac đã bị xóa khỏi FFmpeg vì bộ mã hóa AAC tích hợp có chất lượng vượt trội và không còn thử nghiệm. Thay vào đó, nên sử dụng bộ mã hóa tích hợp ( -c:a aac) hoặc libfdk-aac ( -c:a libfdk_aac).


libfaac là dòng tiếp theo để loại bỏ.
llogan

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.