ffmpeg และข้อผิดพลาด 'ไม่สามารถค้นหาเอาต์พุตที่เหมาะสม'


18

ฉันพยายามแปลง MKV ขนาดใหญ่เป็นไฟล์ AVI แบบเก่า

ฉันพยายามทำสิ่งนี้:

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

แต่ฉันได้รับ

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

ข้อความยาวของ 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

ความคิดใด ๆ ที่เกิดขึ้น?

แก้ไข: ฉันตั้งใจจะใช้ ffmpeg หลังจาก DivX Converter - ทั้งบน Mac และ Windows - จะล้มเหลวในหลาย ๆ จุดที่พยายามแปลงรหัสวิดีโอเป็นโปรไฟล์ DivX Home Theatre สิ่งที่ฉันได้ใกล้ที่สุดคือคำตอบของ shlck มันโยนคำเตือนเท่านั้น (แทนที่จะเป็นข้อผิดพลาด) ไม่ว่าในกรณีใดฉันไม่สามารถให้วิดีโอเล่นบนเครื่องเล่นดีวีดีได้ (มันจะหยุดทุก 10 วินาทีเป็นเวลาประมาณ 6 วินาที) หากคุณพบคำถามนี้ในขณะที่พยายามค้นคว้าการสร้างวิดีโอที่รองรับโปรไฟล์ DivX Home Theatre คุณอาจใช้สตริงนี้เป็นจุดเริ่มต้นในการค้นหาว่ามีอะไรผิดปกติและโพสต์คำถามติดตามใหม่ไปที่ 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

(ในที่สุดฉันก็ให้เครื่องเล่นดีวีดีเก่าออกไป)


-s คือการระบุขนาดของการส่งออก รูปแบบคือ -swxh โดยที่ w และ h คือความกว้างและความสูงของเอาต์พุต
Vineet Menon

ขอบคุณ แต่ถ้าคุณอ่านการแก้ไขของฉันหรือคำตอบและความคิดเห็นโดย slhck ที่ฉันยอมรับคุณจะเห็นว่านั่นเป็นสิ่งแรกที่ได้รับการแก้ไข
iceequal

ใช่! ฉันเห็นคำถามที่แก้ไขแล้วของคุณช้าไปหน่อย
Vineet Menon

คำตอบ:


14

คุณมี-sตัวเลือกที่โดดเดี่ยว มันคิดถึงการโต้แย้ง

คุณควรระบุขนาดที่คุณต้องการหรือปล่อยให้มันหมด - มิฉะนั้นมันจะตีความไม่-codec:vถูกต้องและถือว่าmpeg4เป็นชื่อไฟล์ของคุณ

นอกจากนี้ให้ใช้-b:vแทนเพียง-b- มันคลุมเครือ

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

ขอบคุณ! ฉันใส่ -s 720x406 แต่ตอนนี้ได้รับ: [mpeg4 @ 0x7fc13a813800] อัตราส่วนพิกเซลที่ไม่ถูกต้อง 406/405, ขีด จำกัด คือ 255/255 ลด / [mpeg4 @ 0x7fc13a813800] gop ปิดที่มีการตรวจจับการเปลี่ยนแปลงที่เกิดขึ้นยังไม่ได้กำหนดเกณฑ์เป็น 1000000000 (... ) / ข้อผิดพลาดขณะเปิดตัวเข้ารหัสสำหรับเอาต์พุตสตรีม # 0: 0 - อาจเป็นพารามิเตอร์ที่ไม่ถูกต้องเช่น bit_rate, อัตรา, ความกว้างหรือความสูง / ฉันใช้ความละเอียดที่แอพพลิเคชั่น DivX Converter แนะนำสำหรับ 'โฮมเธียเตอร์' โปรไฟล์ที่ได้รับไฟล์อินพุตเดียวกัน (ตัวแปลง DivX มีข้อผิดพลาดร้ายแรงของตนเอง) ความคิดใดจะไปจากที่นี่ w / ffmpeg?
iceequal

(ฉันยังแก้ไขตัวเลือก -b)
iceequal

ลบ-flags cgopหากคุณไม่ต้องการ หรือเพิ่ม-sc_threshold 1000000000เป็นตัวเลือก
slhck

-sc_threshold 1000000000อนุญาต ffmpeg ให้แปลงไฟล์อย่างน้อย สำหรับใครก็ตามที่พยายามสร้างวิดีโอที่รองรับโปรไฟล์ DivX Home Theatre ให้อ้างอิงคำถามที่แก้ไขแล้วของฉันด้านบน (คุณจะต้องถาม / วิจัยเพิ่มเติม)
iceequal
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.