ffmpeg เพื่อแปลงจาก flac เป็น wav


1

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

นอกจากนี้ยังมีวิธีการป้องกันข้อมูลเมตาที่จะเขียนลงในไฟล์เอาต์พุตหรือไม่

แก้ไข: เห็นได้ชัดว่านี่เป็นปัญหา XY ฉันขอโทษฉันใหม่ที่นี่ ปัญหาของฉันคือฉันไม่ต้องการติดตั้ง flac บน OS X ของฉันเพราะฉันพยายามที่จะแซนด์บ็อกซ์ทุกสิ่งที่ฉันใช้ดังนั้นฉันต้องการไฟล์ที่ปฏิบัติการได้หนึ่งไฟล์เช่น ffmpeg ฉันจะลองใช้ข้อเสนอแนะของ @ slhck และตรวจสอบว่าอัตราตัวอย่างและการเปลี่ยนแปลงความลึกบิต

แก้ไข: ffmpeg รักษาอัตราตัวอย่างเท่านั้น ต้องตั้งค่าความลึกบิตด้วยตนเอง


ทำไมคุณต้องการใช้ ffmpeg สำหรับงาน? ฟังดูเหมือน ปัญหา XY ถึงฉัน.
a CVn

@ MichaelKjörlingไม่แน่ใจว่าฉันใช้ ffmpeg เป็นการส่วนตัวทุกอย่างแม้ว่าจะมี flac เครื่องมือ CLI หรือ x264 เอ็นโค้ดเดอร์ CLI ฯลฯ มันไม่สมเหตุสมผลที่จะสมมติว่ามีคนต้องการใช้ ffmpeg แม้ว่าจะมีเครื่องมือ "เนทีฟ"
slhck

@slhck ฉันเห็นด้วยกับจุดที่คุณทำ แต่ในกรณีนี้ฉันไม่เห็นอะไรเลยในคำถามเพื่อระบุว่าทำไมโซลูชันที่ไม่ใช่ ffmpeg ไม่ตรงกับความต้องการของ OP ("แปลง flac เป็น wav โดยไม่เปลี่ยนอัตราตัวอย่างและความลึกบิต ") คำถามไม่ชัดเจนว่าการใช้ ffmpeg นั้นเป็นสิ่งจำเป็น มันเป็นเพียงนัยในชื่อคำถาม ฉันคิดว่าการถามเหตุผลของการกล่าวถึง ffmpeg นั้นสมเหตุสมผล
a CVn

นี่คือวิธีการแปลง FLAC เป็น WAV จาก [stackoverflow] [1] [1]: stackoverflow.com/questions/23333678/...

คำตอบ:


3

ffmpeg จะไม่เปลี่ยนความลึกของบิตและอัตราตัวอย่างจนกว่าคุณจะแจ้งให้ทราบ (หรือเอาท์พุทตัวแปลงสัญญาณไม่รองรับ แต่ก็อาจจะล้มเหลว) ดังนั้นควรจะเพียงพอ:

ffmpeg -i input.flac output.wav

สำหรับการลบข้อมูลเมตาดู ตัดข้อมูลเมตาจากทุกรูปแบบด้วย FFmpeg - คุณเพียงแค่เพิ่ม -map_metadata -1 ตัวเลือก


นี่เป็นสิ่งใดก็ตามที่ด้อยกว่า flac -d flacfile.flac?
Rajib

1
@Rajib ไม่ใช่ว่าฉันรู้แล้วไม่ แต่ฉันยังไม่ได้ทดสอบดังนั้นฉันจึงไม่สามารถให้คำตอบที่เชื่อถือได้ที่นี่
slhck

3

ในขณะที่ไม่ได้ใช้ ffmpeg ตามที่คุณระบุในชื่อที่คุณต้องการจะทำเพื่อแปลงไฟล์ FLAC เป็น. wav คุณสามารถผ่านมันได้ flac ใช้ --decode ( -d ) สวิตซ์.

flac --decode input.flac จะผลิต input.wav เป็นเอาท์พุทที่มีข้อมูลเสียงเดียวกัน

คุณสามารถเพิ่ม --no-keep-foreign-metadata เพื่อให้ Flac โยนข้อมูลที่ไม่ใช่เสียงใด ๆ ในอินพุต (มันเป็นสิ่งที่ตรงกันข้าม - เก็บเมตาดาต้าต่างประเทศบันทึก / กู้คืน WAVE หรือ AIFF ที่ไม่มีเสียง .)

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