ffmpeg và lỗi 'không thể tìm thấy đầu ra phù hợp'


17

Tôi đang cố gắng chuyển đổi một MKV lớn thành một tệp AVI trường học cũ.

Tôi đang thử cái này:

ffmpeg -i video.mkv -s -codec:v mpeg4 -bf 1 -b 2567k -mbd 2 -g 300 -flags cgop -acodec copy video.avi

nhưng tôi hiểu

[NULL @ 0x7fa0d901e600] Unable to find a suitable output format for 'mpeg4' mpeg4: Invalid argument

Phiên bản dài của tin nhắn của ffmpeg ...

ffmpeg version 2.1.3 Copyright (c) 2000-2013 the FFmpeg developers
  built on Feb  4 2014 17:53:32 with Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/2.1.3 --enable-shared     --enable-pthreads --enable-gpl --enable-version3 --enable-nonfree --enable-     hardcoded-tables --enable-avresample --enable-vda --cc=clang --host-cflags=        --host-ldflags= --enable-libx264 --enable-libfaac --enable-libmp3lame --enable-libxvid
  libavutil      52. 48.101 / 52. 48.101
  libavcodec     55. 39.101 / 55. 39.101
  libavformat    55. 19.104 / 55. 19.104
  libavdevice    55.  5.100 / 55.  5.100
  libavfilter     3. 90.100 /  3. 90.100
  libavresample   1.  1.  0 /  1.  1.  0
  libswscale      2.  5.101 /  2.  5.101
  libswresample   0. 17.104 /  0. 17.104
  libpostproc    52.  3.100 / 52.  3.100
Input #0, matroska,webm, from ‘video.mkv':
  Metadata:
    creation_time   : 2011-05-11 09:25:47
  Duration: 00:49:01.35, start: 0.000000, bitrate: 2851 kb/s
    Stream #0:0(eng): Video: h264 (High), yuv420p(tv, bt709), 1280x720, SAR 1:1 DAR 16:9, 23.98 fps, 23.98 tbr, 1k tbn, 47.95 tbc (default)
    Stream #0:1(eng): Audio: ac3, 48000 Hz, 5.1(side), fltp, 384 kb/s (default) (forced)
    Stream #0:2(eng): Subtitle: subrip
[NULL @ 0x7fa0d901e600] Unable to find a suitable output format for 'mpeg4' 
mpeg4: Invalid argument

Có ai biết cái gì đang xảy ra không?

EDIT: Tôi dự định sử dụng ffmpeg sau DivX Converter - cả trên Mac và Windows - sẽ thất bại ở nhiều điểm khi cố gắng chuyển mã video sang hồ sơ DivX Home Theater. Gần nhất tôi nhận được là câu trả lời của shlck. Nó chỉ đưa ra các cảnh báo (chứ không phải lỗi.) Trong mọi trường hợp, tôi không thể tải video để phát trên đầu DVD (nó sẽ đóng băng cứ sau 10 giây trong khoảng 6 giây). Nếu bạn đã tìm thấy câu hỏi này trong khi cố gắng nghiên cứu tạo video tương thích với hồ sơ DivX Home Theater, bạn có thể sử dụng chuỗi này làm điểm bắt đầu để tìm hiểu điều gì sai và đăng câu hỏi tiếp theo mới lên SU:

ffmpeg -i video.mkv -s 720x406 -codec:v mpeg4 -bf 1 -b:v 2567k -mbd 2 -g 300 -flags cgop -sc_threshold 1000000000 -acodec copy video.avi

(Cuối cùng tôi đã cho đầu DVD cũ đi).


-s là chỉ định kích thước của đầu ra. Định dạng là -swxh, trong đó w và h là chiều rộng và chiều cao của đầu ra.
Vineet Menon

Cảm ơn nhưng nếu bạn đọc bản chỉnh sửa của tôi, hoặc câu trả lời và nhận xét của slhck mà tôi đã chấp nhận, bạn sẽ thấy đó là điều đầu tiên được sửa.
tảng băng

vâng tôi thấy câu hỏi chỉnh sửa của bạn hơi muộn.
Vineet Menon

Câu trả lời:


14

Bạn có một -slựa chọn cô đơn ở đó. Nó bỏ lỡ lập luận của nó.

Bạn nên chỉ định kích thước bạn muốn hoặc loại bỏ hoàn toàn - nếu không nó sẽ không diễn giải -codec:vchính xác và giả sử mpeg4là tên tệp đầu ra của bạn.

Ngoài ra, sử dụng -b:vthay vì chỉ -b- nó mơ hồ.

ffmpeg -i video.mkv -s 1280x720 -codec:v mpeg4 -bf 1 -b:v 2567k -mbd 2 -g 300 -flags cgop -acodec copy video.avi

Cảm ơn! Tôi đã đặt -x 720x406 nhưng bây giờ nhận được: [mpeg4 @ 0x7fc13a813800] Tỷ lệ khung hình pixel không hợp lệ 406/405, giới hạn là 255/255 giảm / [mpeg4 @ 0x7fc13a813800] gop đóng với phát hiện thay đổi cảnh chưa được hỗ trợ 1000000000 (...) / Lỗi khi mở bộ mã hóa cho luồng đầu ra # 0: 0 - có thể là các tham số không chính xác như bit_rate, tốc độ, chiều rộng hoặc chiều cao / Tôi đang sử dụng độ phân giải mà ứng dụng DivX Converter gợi ý cho 'Rạp hát tại nhà' hồ sơ được cung cấp cùng một tệp đầu vào (trình chuyển đổi DivX có lỗi nghiêm trọng của chính nó). Bất cứ ý tưởng đi đâu từ đây w / ffmpeg?
Iceequal

(Tôi cũng đã sửa tùy chọn -b)
iceequal 4/214

Hủy bỏ -flags cgopnếu bạn không nhất thiết cần nó. Hoặc thêm -sc_threshold 1000000000dưới dạng tùy chọn.
slhck

-sc_threshold 1000000000cho phép ffmpeg ít nhất chuyển mã tập tin. Đối với bất kỳ ai đang cố gắng tạo video tương thích với hồ sơ DivX Home Theater, hãy tham khảo câu hỏi đã chỉnh sửa của tôi ở trên (bạn sẽ cần phải hỏi thêm / nghiên cứu).
Iceequal
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.