Tôi đã thử googling một cách để đặt ngôn ngữ của luồng phụ đề bằng ffmpeg và tìm tùy chọn -slang. Vì vậy, tôi đã thử các lệnh sau nhưng ngay lập tức nhận được một lỗi:Đặt ngôn ngữ phụ đề bằng cách sử dụng ffmpeg
ffmpeg -i input.avi -i subs.srt -c:a copy -c:s mov_text -slang eng -c:v libx264 -profile:v high -level:v 4.0 output.mp4
ffmpeg version 1.1 Copyright (c) 2000-2013 the FFmpeg developers
built on Jul 18 2013 23:00:53 with Apple clang version 4.0 (tags/Apple/clang-421.0.60) (based on LLVM 3.1svn)
libavutil 52. 13.100/52. 13.100
libavcodec 54. 86.100/54. 86.100
libavformat 54. 59.106/54. 59.106
libavdevice 54. 3.102/54. 3.102
libavfilter 3. 32.100/3. 32.100
libswscale 2. 1.103/2. 1.103
libswresample 0. 17.102/0. 17.102
libpostproc 52. 2.100/52. 2.100
Unrecognized option 'slang'.
Error splitting the argument list: Option not found
Sau hơn googling tôi tìm thấy một cách khác để làm điều đó bằng cách sử dụng lệnh -metadata:
ffmpeg -i input.mp4 -i subs.srt -c:a copy -c:v copy -c:s mov_text -metadata:s:s:0 language=eng output.mp4
Và làm việc hoàn toàn tốt . Nhưng điều này không được đề cập trong trang người dùng ffmpeg, trong khi -slang là, điều đó làm cho tôi nghĩ rằng lệnh -metadata có lẽ đã lỗi thời hoặc theo một cách khác không tốt bằng -slang.
- Sự khác biệt giữa việc sử dụng hai phương pháp trên (-slang vs -metadata) là gì?
- Tại sao lệnh -slang của tôi đưa ra lỗi? Tôi đã sử dụng nó không chính xác?
Bạn nên bao gồm các cạnh tranh ffmpeg console đầu ra cho mỗi lệnh ffmpeg của bạn. – LordNeckbeard