ไม่มีไฟล์หรือไดเรกทอรีดังกล่าวใน FFmpeg


11

ฉันพยายามใช้ FFmpeg เพื่อแยกเสียงออกจาก mp4 และฉันยังคงพบข้อผิดพลาดนี้:

CFileffmpegvideo.mp4: No such file or directory exist. 

ฉันอยู่ในพร้อมท์คำสั่ง (ใน Windows 7) และมีเส้นทางเป็นC:\Files\ffmpeg(โดยที่ ffmpeg คือ)

ฉันเรียกใช้บรรทัดคำสั่งนี้

ffmpeg -i C: \ Files \ ffmpeg \ video.mp4 -f mp3 -ab 320000 -vn music.mp3

ไฟล์อยู่ในโฟลเดอร์เดียวกับ ffmpeg ฉันรู้ว่าฉันขาดอะไรง่ายๆที่นี่ แต่มันคืออะไร

นี่คือวิดีโอสั้น ๆ ที่แสดงถึงกระบวนการที่แน่นอน

ภาพหน้าจอแสดงข้อผิดพลาด


คุณมี "file-name.mp4" จริง ๆ ในบรรทัดคำสั่งหรือไม่ ฉันไม่ได้มีความหมายกับคำพูด แต่ฉันหมายถึงชื่อไฟล์เฉพาะและที่แน่นอน? และ ... คุณมีไฟล์ mp4 ชื่อ "file-name.mp4" ในไดเรกทอรี C: \ Files \ ffmpeg หรือไม่?
Bon Gart

@BonGart - ใช่ฉันทำได้
L84

ใช่ฉันทำเพื่อทั้งสอง? หมายความว่าคุณกำลังใช้ประโยคที่แน่นอนนั้นและคุณมีไฟล์ mp4 ที่มีชื่อสามัญของ "file-name.mp4" ในไดเรกทอรีเฉพาะนั้นหรือไม่ เพราะนั่นคือสิ่งที่ข้อผิดพลาดกำลังบอกเรา ... ว่าไม่มีชื่อไฟล์ในไดเรกทอรีนั้น
Bon Gart

@BonGart - ฉันโพสต์ภาพหน้าจอสองสามรายการที่แสดงไดเรกทอรีและหน้าจอพร้อมรับคำสั่งที่มีข้อผิดพลาด
L84

ตกลง. ดังนั้นคำตอบคือไม่ .. คุณไม่ได้ใช้วลี "file-name.mp4" ที่แน่นอนในบรรทัดคำสั่งและคุณไม่มีไฟล์ที่เรียกว่า "file-name.mp4" ในไดเรกทอรีนั้น สิ่งที่คุณควรทำคือลบ "c: \ Files \ ffmpeg" ออกจากบรรทัดคำสั่งแล้วลองอีกครั้ง เนื่องจากไฟล์ที่คุณกำลังแปลงอยู่ในไดเรกทอรีเดียวกับ ffmpeg คุณไม่จำเป็นต้องใช้พา ธ สัมบูรณ์
Bon Gart

คำตอบ:


4

ฉันสร้างสถานการณ์ของคุณขึ้นมาใหม่บนคอมพิวเตอร์เครื่องนี้หลังจากที่ฉันดูวิดีโอ ฉันดาวน์โหลด ffmpeg รุ่นเดียวกัน (ไม่รู้เกี่ยวกับบิลด์เนื่องจากฉันถูก จำกัด ให้ใช้รุ่น 32 บิต) คัดลอกไฟล์ที่เรียกใช้จากโฟลเดอร์ bin ไปยังไฟล์หลักใส่ไฟล์ mp4 ที่เรียกว่า "video.mp4" ใน มีและใช้พารามิเตอร์บรรทัดคำสั่งที่แน่นอนของคุณลบเส้นทางที่แน่นอน ...

ffmpeg -i video.mp4 -f mp3 -ab 320000 -vn music.mp3

ป้อนคำอธิบายรูปภาพที่นี่

.. และมันทำงานได้อย่างสมบูรณ์แบบสำหรับฉัน ตอนนี้ฉันไม่ได้ทำจากโครงสร้างไดเรกทอรีเดียวกับที่คุณตั้งค่าไว้ (c: \ files \ ffmpeg) คุณมี ffmpeg ติดตั้งที่อื่นในคอมพิวเตอร์หรือไม่? คุณเคยลองสร้างรุ่น / ก่อนหน้านี้หรือไม่? ประมาณ 32 บิตกับ 64 บิต ... หรือกลับกันล่ะ? นี่เป็นครั้งแรกที่คุณใช้ ffmpeg รุ่นนี้หรือไม่ หรือ ... มันใช้งานได้อย่างสมบูรณ์แบบจนถึงตอนนี้? คุณลองเปลี่ยนชื่อไฟล์อินพุต (งี่เง่าฉันรู้แล้ว) หรือยัง


ขอบคุณสำหรับความช่วยเหลือของคุณ. ฉันถ่ายวิดีโอสั้น ๆ ซึ่งแสดงขั้นตอนที่แน่นอน ไม่มีโชค. นี่คือลิงค์: screencast.com/t/f50qR5eWq2B
L84

@Lynda ฉันแก้ไขคำตอบของฉันเล็กน้อยรวมถึงความเป็นไปได้บางส่วนที่ด้านล่างอัพเกรด ffmpeg เป็นรุ่นเดียวกับที่คุณแสดง ...
Bon Gart

ฉันจะต้องลองสร้างที่แตกต่างฉันเดา ฉันได้ลองเปลี่ยนชื่อสั่งซื้อระบบไฟล์ ฯลฯ และยังคงผลลัพธ์เดียวกัน นี่เป็นที่เดียวที่ฉันได้ติดตั้ง และฉันลอง ffmpeg บนคอมพิวเตอร์เครื่องเก่าที่มีผลลัพธ์เดียวกันและหยุดพยายามเพราะคอมพิวเตอร์มีปัญหา นี่เป็นคอมพิวเตอร์เครื่องอื่นที่ไม่มีปัญหาเรื่องอื่นและภาพนิ่งและผลลัพธ์ ฉันจะลองอีกรุ่นที่ฉันเดา
L84

14

คุณอาจมีนามสกุลไฟล์เป็นสองเท่า "video.mp4" ของคุณเป็นจริง "video.mp4.mp4" (ดูที่หน้าจอของโฟลเดอร์ Windows ของคุณ README.txt ซ่อนนามสกุล)


3

ค้นหาปัญหา

หากคุณพิมพ์ dir ในหน้าต่างพรอมต์ ff ให้ตรวจสอบว่า FOLDER นั้นอ้างอิงอะไร

สำหรับฉันแล้วมันคือการอ้างอิงโฟลเดอร์ bin ไม่ใช่โฟลเดอร์ที่ไฟล์แบตช์ ffmpeg อยู่

ฉันใส่ไฟล์วิดีโอในโฟลเดอร์ "bin" และพบว่าไม่มีปัญหา


นี่คือคำตอบที่ถูกต้องอย่างถูกต้อง!
papajo

0

ดูเหมือนว่า ffmpeg กำลังมีปัญหากับชื่อไฟล์สัมบูรณ์ของคุณ ฉันเดาว่าเนื่องจากมันมีสมาธิมากกว่าในสภาพแวดล้อมที่คล้าย Unix มันจึงใช้ \ as escape character ลองใช้ฟอร์เวิร์ดสแลชแทน


0

ทำการค้นหา DIR ของไดเรกทอรีเพื่อดูว่าชื่อไฟล์ไม่ถูกเปลี่ยนเป็น "File.mp4.mp4" หรือคล้ายกัน นั่นเป็นปัญหาของฉันในการใช้ Windows Vista และ 7


0

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

แก้ไขคำสั่งนี้ด้วยค่าที่เหมาะสมและคัดลอก / วางไปยังพรอมต์คำสั่ง:

C:\ReplaceThisWithFFMpegInstallFolder\ffmpeg.exe -i "C:\ReplaceThisWithSourceFolder\ReplaceThisWithVideoFileName.mp4" -f mp3 -ab 320000 -vn "C:\ReplaceThisWithDestinationFolder\ReplaceThisWithAudioFileName.mp3"



0

ฉันมีปัญหาแบบนี้กับ Win64 build ผ่าน Cygwin ฉันคิดว่าการแปลงพา ธ อัตโนมัตินั้นเป็นข้อผิดพลาดและฉันต้องการให้มันทำงานได้ในหลาย ๆ สถานการณ์เช่นเดียวกับพา ธ สไตล์ * NIX

สิ่งนี้จะเกิดขึ้นเมื่อฉันเรียก cygpath ด้วยตนเองเมื่อทำการไพพ์ข้อมูลพา ธ จากคลิปบอร์ด

ฉันคิดว่าเส้นทางสไตล์ Windows เป็นปัญหาในตอนแรก แต่นั่นเป็นเพราะเมื่อฉันเปลี่ยน + คลิกขวาเพื่อคัดลอกเส้นทางของพวกเขาใน file explorer มันเพิ่มเครื่องหมายคำพูดรอบ ๆ พวกเขา

ฉันพยายามใช้วิธีนี้: ffmpeg -v error -i file.avi -f null - https://superuser.com/a/100290/175686

ดังนั้นผลลัพธ์ที่ได้จึงไม่ใช่แบบพา ธ ของ Windows

ลิงก์อื่นที่ดี: /unix/77016/ffmpeg-pattern-type-glob-not-loading-files-in-cort-th-


0

ฉันมีข้อผิดพลาดนี้เพราะชื่อไฟล์ของฉันมีช่องว่างอยู่ในนั้น เพื่อแก้ปัญหานั้น 1) กำหนดไดเรกทอรีการทำงานด้วยPushd 2) ใส่ชื่อไฟล์ของคุณไว้ในเครื่องหมายคำพูด""

ดูตัวอย่างการทำงานที่นี่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.