แยกแทร็กเสียง เพิ่มแทร็กเสียง

ในบทความนี้เราจะพยายามอธิบาย "บนนิ้ว" ว่า FFmpeg คืออะไรสำหรับผู้เริ่มต้น ผู้ใช้ลินุกซ์(และวินโดวส์ด้วย) FFmpeg คือชุดโปรแกรมและไลบรารียอดนิยมในหมู่นักพัฒนามัลติมีเดียและเว็บ จาก FFmpeg มีหลายโปรแกรมที่ถูกสร้างขึ้นเพื่อแปลงวิดีโอจากรูปแบบหนึ่งไปเป็นอีกรูปแบบหนึ่ง โปรแกรมนี้ได้รับความนิยมสูงมาก ทำไมเขาถึงได้รับความนิยม? ใช้บ่อยที่สุดเพื่ออะไร? จะติดตั้งอย่างไรและใช้งานอย่างไร?

ดังนั้น คุณสมบัติหลักของ FFmpeg ที่สามารถดึงดูดความสนใจของผู้ใช้ Linux ที่ไม่มีประสบการณ์ซึ่งเพิ่งเริ่มเรียนรู้ Ubuntu:

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

FFmpeg พร้อมใช้งานบน Linux, Windows, Mac Os และมันใช้งานได้เหมือนกันทุกที่ ดังนั้นหากคุณได้เรียนรู้ที่จะทำงานกับ FFmpeg บน Windows แล้วคุณจะต้องรันมันในลักษณะเดียวกันบน Linux และในทางกลับกัน

FFmpeg อย่างแน่นอน พึ่งตนเอง- ในการชมภาพยนตร์ ไม่จำเป็นต้องค้นหาอินเทอร์เน็ต ดาวน์โหลด และติดตั้งตัวแปลงสัญญาณ ไฟล์เดียว (ffplay.exe) ก็เพียงพอแล้ว ตัวแปลงสัญญาณทั้งหมดจะอยู่ภายในไฟล์นี้

FFmpeg - ฟรี(ลิขสิทธิ์ GPL 2.0 และ LGPL 2.1) และคุณสามารถใช้โค้ดในโครงการของคุณ ทั้งเชิงพาณิชย์และแจกจ่ายฟรี

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

แต่ก่อนอื่น เรามานิยามคำศัพท์กันก่อน เอฟเอฟ mpeg ย่อมาจาก เอฟเหมือนเดิม เอฟหรือ Mpeg เมื่อเราพูดถึง FFmpeg ว่าเป็นชุดของโปรแกรม ตัวอักษรสองตัวแรก “F” จะต้องเป็นตัวพิมพ์ใหญ่ (FF)

ดังนั้น FFmpeg จึงประกอบด้วยเครื่องมือดังต่อไปนี้: ffmpeg, ffplay, ffserver, ffprobe(หมายเหตุ ทุกอย่างเป็นตัวพิมพ์เล็ก) สำหรับ Windows สิ่งเหล่านี้เป็นเรื่องปกติ ไฟล์ exe- นอกจากนี้ขนาดยังน่าประทับใจมาก ประเด็นก็คือตัวแปลงสัญญาณวิดีโอและเสียงทั้งหมดอยู่ในนั้นแล้ว หากคุณต้องการชมภาพยนตร์ เพียงดาวน์โหลด ffplay.exe จากอินเทอร์เน็ต ไม่จำเป็นต้องทำอะไรอีก ไม่ต้องติดตั้ง ไม่ต้องใช้ตัวแปลงสัญญาณ ไม่ต้องใช้สิทธิ์ของผู้ดูแลระบบ ดาวน์โหลด แตกไฟล์แล้ว เริ่มดูหนังได้เลย

FFmpeg บน Windows ขนาดของแต่ละไฟล์คือ 38-39Mb ตัวแปลงสัญญาณทั้งหมดจะถูกคอมไพล์และเชื่อมโยง "ภายใน" ไฟล์ปฏิบัติการ

ffmpeg

ด้วยโปรแกรมนี้คุณสามารถแปลงวิดีโอจากรูปแบบหนึ่งไปเป็นอีกรูปแบบหนึ่งได้ ต่อวิดีโอหลายรายการให้เป็นวิดีโอเดียว แยกวิดีโอออกเป็นเฟรม (รูปภาพ) แยกกัน จากนั้นจึงรวมเข้าด้วยกัน เพิ่มความเร็ว/ช้าลง ซูม เพิ่มคำบรรยายและแทร็กเสียงหลายแทร็ก และการกระทำที่เป็นประโยชน์อีก 100,500 รายการ

รายการตัวเลือกที่ใช้ได้สำหรับคำสั่งนี้ครอบคลุม 203 หน้า:

น่าประทับใจใช่ไหม?

ffplay


เคยดูหนัง. หากคุณเริ่มคุ้นเคยกับ FFmpeg ด้วยการชมภาพยนตร์ ffplay คือสิ่งที่คุณต้องการ ในระยะเริ่มแรก แพ็คเกจ FFmpeg ทั้งหมดสำหรับผู้เริ่มต้นใช้งานเฉพาะโปรแกรมนี้เท่านั้น

ffserver


หากคุณต้องการสร้างโฮสต์วิดีโอของคุณเองที่คล้ายกับ YouTube ให้ใช้ ffserver

ffprobe


โปรแกรมมหัศจรรย์ที่จะบอกคุณทุกอย่างเกี่ยวกับภาพยนตร์ที่คุณดาวน์โหลด (รูปแบบ ระยะเวลา จำนวนแทร็กเสียง และอื่นๆ อีกมากมาย) มันจะแสดงข้อมูลมากมายเกี่ยวกับหนังเรื่องนี้จนต้องใช้เวลาครึ่งวันในการอ่านทั้งหมด

นอกเหนือจากสี่โปรแกรมแล้ว แพ็คเกจ FFmpeg ยังรวมถึงชุดของไลบรารีที่แจกจ่ายอย่างอิสระ (ซึ่งรวบรวมโปรแกรมข้างต้น):

  • libavutil— ชุดฟังก์ชันเสริม
  • libavcodec— ตัวแปลงสัญญาณเสียง/วิดีโอ
  • libavformat— ห้องสมุดสำหรับการทำงานกับคอนเทนเนอร์
  • อุปกรณ์ libav— การทำงานกับอุปกรณ์ที่จัดหาเนื้อหาสื่อ
  • libavfilter— ตัวกรองต่างๆ
  • libswscale— การปรับขนาดไลบรารี การทำงานกับปริภูมิสี
  • ตัวอย่าง libswresample— ไลบรารีการประมวลผลเสียง

โดยหลักการแล้ว เป็นเพราะไลบรารีเหล่านี้ที่โครงการ FFmpeg ทั้งหมดเริ่มต้นขึ้น และโปรแกรมต่างๆ ก็เป็นโบนัสอยู่แล้ว :)

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

เรื่องราว

ประวัติความเป็นมาของ FFmpeg นั้นเต็มไปด้วยเนื้อหา เริ่มต้นในปี 2000 และประสบความตกตะลึงครั้งใหญ่ในปี 2011 เมื่อนักพัฒนาบางรายตัดสินใจสร้างไลบรารีของตนเองเพื่อทำงานกับเนื้อหาสื่อ พวกเขาเรียกมันว่า Libav พวกเขาอธิบายความปรารถนาที่จะออกจากโครงการด้วยความไม่พอใจในการจัดทำโครงการ FFmpeg ซึ่งอำนาจทั้งหมดอยู่ในมือของคน ๆ เดียวและการตัดสินใจทั้งหมดนั้นกระทำโดยเขาเท่านั้น

ตอนนี้ Libav ไปตามทางของตัวเองและไม่ฟังใครเลย รหัสไม่ได้รับการอัพเดตบ่อยเท่ากับ FFmpeg การอัปเดตแต่ละครั้งได้รับการตรวจสอบอย่างรอบคอบ

FFmpeg ไม่เป็นหนี้ และทุกๆ สองวัน จะนำการเปลี่ยนแปลงในโค้ดที่ทำโดยทีม Libav เข้ามาแก้ไข :-)

ปัจจุบัน FFmpeg ยังคงพัฒนาอย่างต่อเนื่อง ดังที่เห็นได้จากภาพหน้าจอของที่เก็บซอร์สโค้ด:

การติดตั้ง

FFmpeg ได้รับความนิยมมากจนรวมอยู่ในค่าเริ่มต้นใน Linux หลายรุ่น หากคุณไม่ได้ติดตั้งทันทีด้วยเหตุผลบางประการ คุณสามารถทำได้ในภายหลังโดยใช้ตัวจัดการแพ็คเกจ การติดตั้ง FFmpeg สำหรับผู้เริ่มต้นไม่ควรก่อให้เกิดปัญหาใดๆ คุณจะต้องรันคำสั่งมาตรฐานจำนวนหนึ่ง ขึ้นอยู่กับการกระจาย Linux ของคุณ

Sudo add-apt-repository ppa:mc3man/trusty-media อัปเดต sudo apt-get sudo apt-get ติดตั้ง ffmpeg

ยำ -y ติดตั้ง ffmpeg ffmpeg-devel

openSuSe

ซิปติดตั้ง ffmpeg

สามารถดาวน์โหลด FFmpeg สำหรับ Windows เวอร์ชันล่าสุดได้จาก:

https://ffmpeg.zeranoe.com/builds/

FFmpeg สองประเภท

มีสองรูปแบบที่ FFmpeg มาสู่คอมพิวเตอร์ของคุณ:

1) สร้างแบบคงที่— ในกรณีนี้ ตัวแปลงสัญญาณ ตัวกรอง และยูทิลิตี้ทั้งหมดจะถูกคอมไพล์ "ภายใน" ffmpeg.exe (ffprobe.exe, ffplay.exe) และคุณจะต้องดาวน์โหลดไฟล์ใดไฟล์หนึ่งเหล่านี้เพื่อเริ่มดูภาพยนตร์ (ffplay.exe) ในกรณีนี้ ขนาดของโมดูลปฏิบัติการจะขยายใหญ่ขึ้นอย่างมาก (สูงสุด 39Mb) แต่มันสะดวกมาก

2) แบ่งปันสร้าง- ที่นี่ตัวแปลงสัญญาณ ตัวกรอง และโปรแกรมเสริมอื่นๆ เป็นไฟล์แยกอิสระที่ FFmpeg ค้นหาและโหลดตามต้องการ ในกรณีนี้ ขนาดของโมดูลที่ปฏิบัติการได้คือ 190Kb เท่านั้น

หากคุณติดตั้ง FFmpeg บน Linux มีโอกาส 99.9% ที่จะติดตั้ง shared-build

โดยส่วนตัวแล้วฉันชอบ static-build (ไม่ต้องคิดถึงไลบรารีอื่น) หากต้องการรับ static-build บน Linux คุณต้องสร้าง FFmpeg ด้วยตัวเองจากซอร์สโค้ด สำหรับผู้ใช้ Linux ใหม่ อาจเป็นเรื่องยาก

ดูหนังยังไง?

ทุกอย่างชัดเจน แต่จะดูหนังยังไง? ดังที่ได้กล่าวไว้ข้างต้น ffplay (ffplay.exe - สำหรับ Windows) คือ โปรแกรมคอนโซลนั่นคือไม่มีอินเทอร์เฟซแบบกราฟิก หากต้องการดูวิดีโอคุณต้องรันบนบรรทัดคำสั่ง:

Ffmpeg.exe film.avi

หลังจากนั้นหนังก็เริ่มเล่นทันที:

สำหรับผู้ใช้มือใหม่ วิธีการเปิดภาพยนตร์นี้อาจดูผิดปกติ แต่นี่คือพลังทั้งหมดของ ffplay มีตัวเลือกมากมายเช่นเดียวกับ ffmpeg ซึ่งจะช่วยให้คุณปรับแต่งภาพสำหรับผู้ชื่นชอบภาพยนตร์ที่ต้องการมากที่สุด

หากคุณรู้สึกไม่แน่ใจเมื่อทำงานกับบรรทัดคำสั่งของ Windows คุณสามารถใช้ได้ ดังต่อไปนี้- หยิบภาพยนตร์ด้วยเมาส์แล้วลากไปที่ ffplay.exe ภาพยนตร์จะเริ่มเล่นทันที

การควบคุมการเล่น (รายการคำสั่งสั้นๆ):

ถาม,ESC- ออก
— เต็มหน้าจอ (ดับเบิลคลิกด้วยปุ่มซ้ายของเมาส์)
พี- หยุดชั่วคราว
- เปิด/ปิดเสียง,
9, 0 - เพิ่ม/ลดระดับเสียง
ที- การสลับคำบรรยาย
- โปรแกรมวงจร
— การเคลื่อนไหวแบบเฟรมต่อเฟรมผ่านภาพยนตร์
ลูกศรซ้าย/ขวา— เลื่อนไปข้างหน้า/ข้างหลัง 10 วินาที
ลูกศรลง/ขึ้น— ถอยหลัง/ไปข้างหน้า 1 นาที
เลื่อนหน้าลง/เลื่อนหน้าขึ้น- ถอยหลัง/ไปข้างหน้า 10 นาที

อินเทอร์เฟซแบบกราฟิกของเครื่องเล่น ffplay ดูค่อนข้างนักพรตหรือไม่มีเลย ไม่มีแถบเลื่อน ปุ่ม เมนูตามปกติในเครื่องเล่นสื่อที่มีอินเทอร์เฟซแบบกราฟิก เมื่อทำงานกับ ffplay คุณจะเห็นเพียงตัวภาพยนตร์และตัวเลขและคำแปลก ๆ บางส่วนที่กระพริบในหน้าต่างเทอร์มินัล เช่นเดียวกับในภาพยนตร์เรื่อง "The Matrix" ที่จริงแล้ว การควบคุมภาพยนตร์จากคีย์บอร์ดทำได้ง่ายและชัดเจน หลังจากดูไปไม่กี่ครั้ง นิ้วของคุณจะจำได้ว่าต้องกดปุ่มไหน

ตัวอย่างของการเปิดตัว ffplay พร้อมตัวเลือกต่างๆ:

ลดขนาดภาพลง 4 เท่าของความกว้าง

Ffplay -vf scale=iw/4:-1 video.avi

วิดีโอที่ชัดเจนจากเสียงรบกวน

Ffplay -vf hqdn3d=4:3:6:4.5 video.avi

อัตราเร่ง 2 เท่า

Ffplay -vf setpts=0.5*PTS video.avi

จะเข้ารหัสใหม่ได้อย่างไร?

แปลง mpg เป็น avi

Ffmpeg -i video.mpg วิดีโอ avi

แยกเสียงจากวิดีโอและบันทึกเป็น MP3

Ffmpeg -i video.mp4 -vn -ab 128 audio.mp3

รวมเสียงและวิดีโอ

Ffmpeg -i audio.wav -i video.avi สุดท้าย_วิดีโอ.mpg

แยกแทร็กวิดีโอ (ไม่มีเสียง)

Ffmpeg -i video.mp4 -วิดีโอ_bez_zvuka.mp4

ปรับขนาดวิดีโอ

Ffmpeg -i video.mp4 -s 640x480 -c:a คัดลอก video640480.mp4

ทิ้งช่วง 45 วินาทีแรกของวิดีโอออกไปและปล่อยให้ส่วนหนึ่งมีความยาว 40 วินาที

แปลงรหัส WAV เป็น MP3

Ffmpeg -i audio.wav -b:a 192k audio.mp3

แบ่งวิดีโอออกเป็นเฟรม (รูปภาพ)

Ffmpeg -i video.webm thumb%04d.jpg

สร้างวิดีโอจากชุดรูปภาพ

Ffmpeg -i frame-%03d.png วิดีโอ avi

บทสรุป

บทความนี้มีวัตถุประสงค์เพื่อแนะนำผู้อ่านให้รู้จักกับชุดโปรแกรม FFmpeg ที่ทรงพลังที่สุด ที่ให้ไว้ คำอธิบายสั้น ๆแพ็คเกจ FFmpeg มีตัวอย่างการใช้งานสำหรับการดูวิดีโอและการประมวลผล (การแปลง) เสียงและวิดีโอ

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

จุดประสงค์ของบทความนี้คือเพื่อแสดงให้เห็นว่า FFmpeg สำหรับผู้ใช้ Linux มือใหม่ควรเป็นเครื่องมือที่ขาดไม่ได้เมื่อทำงานกับเนื้อหาสื่อ ไม่จำเป็นต้องกลัวว่าจะขาด GUI การทำงานกับเสียงและวิดีโอจากคอนโซลก็มีประสิทธิภาพมากเช่นกัน

ป.ล. เนื่องจากฉันต้องใช้ FFmpeg บ่อยครั้ง ฉันจึงตัดสินใจรวบรวมเทคนิคการใช้งานยอดนิยมทั้งหมดไว้ในหนังสือเล่มเดียว

ชอบ

ชอบ

ทวีต

ประวัติความเป็นมาของ FFmpeg

ในปี 2000 โปรแกรมเมอร์ชื่อเล่น Gerard Lantau ได้เปิดตัวซอร์สโค้ดของโครงการ FFmpeg เพื่อสาธารณะชน หลายปีที่ผ่านมา แนวคิดยังคงเหมือนเดิม:

  • แบ่งออกเป็นโปรแกรม FFmpegสำหรับการเข้ารหัสวิดีโอและ FFเซิร์ฟเวอร์เพื่อจัดการถ่ายทอดสดแบบสตรีมมิ่ง
  • สูงสุด เร็วการเข้ารหัสเสียงและวิดีโอ

ในเวลานั้น 500 เมกะเฮิรตซ์ในคอมพิวเตอร์ถือเป็นบรรทัดฐาน การเพิ่มประสิทธิภาพสูงสุดดังนั้น FFmpeg จึงมีการใช้งานตัวแปลงสัญญาณวิดีโอของตัวเองซึ่งได้รับการปรับให้เหมาะสมกับความเร็ว สิ่งนี้ยังเป็นสิ่งจำเป็นในตอนนี้ โดยเฉพาะอย่างยิ่งบนเซิร์ฟเวอร์โฮสต์วิดีโอ ซึ่งมีการดิ้นรนอย่างต่อเนื่องในการลดการใช้พลังงาน เพื่อให้โปรเซสเซอร์ไม่ร้อนเกินไป

FFmpeg ยืนหยัดอย่างมั่นคง - มีการเปลี่ยนแปลงซอร์สโค้ดเกือบทุกวัน มีการเพิ่มส่วนประกอบใหม่ ตัวอย่างเช่น เครื่องเล่น FFplay และยูทิลิตี้ข้อมูล FFprobe

จะดาวน์โหลด FFmpeg และ FFserver ได้ที่ไหน

FFmpeg ได้รับการพัฒนาสำหรับ Linux หากคุณเห็นหน้าต่างบนไซต์ที่มีการแพร่ภาพวิดีโอ มีโอกาส 9 ใน 10 ที่จะใช้งานได้ ต้องขอบคุณ FFmpeg และ FFserver

มีเวอร์ชันของ FFmpeg (และ FFserver) สำหรับ Windows อยู่ด้วยแต่ฟังก์ชันบางอย่างจะไม่สามารถใช้งานได้ อย่างไรก็ตาม นี่ไม่ได้ป้องกันตัวแปลงวิดีโอ MediaCoder (www.mediacoderhq.com) และเครื่องเล่นไม่ให้ทำงาน

มีเวอร์ชัน 32 และ 64 บิตให้เลือก หากต้องการเข้ารหัสวิดีโอ ให้เลือกเวอร์ชันคงที่ 64 บิต (ลิงก์เช่น “ ดาวน์โหลด FFmpeg git-*** 64 บิตแบบคงที่«).

หากคุณต้องการจัดระเบียบการออกอากาศวิดีโอจากกล้องวิดีโอ IP ควรใช้ FFmpeg เวอร์ชัน 32 บิต ฉันสังเกตเห็นปัญหากับเวอร์ชัน 64 บิต - โปรแกรมปิดเอง อาจเป็นเพราะ FFserver สำหรับ Windows เป็นแบบ 32 บิต จึงมีความเข้ากันไม่ได้

FFเซิร์ฟเวอร์บน Windowsก็มีอยู่เช่นกันแม้ว่าจะมีน้อยคนที่รู้เรื่องนี้ก็ตาม โปรแกรมนี้คอมไพล์ได้ยากเนื่องจากใช้โค้ดเฉพาะของ Linux จำนวนมาก นักพัฒนาระบบกล้องวงจรปิด Xeoma กลายเป็นคนที่ยอดเยี่ยมเพราะพวกเขาโพสต์ FFserver สำหรับ Windows บนเว็บไซต์: http://felenasoft.com/xeoma/ru/ffserver/อย่าลืมดาวน์โหลด cygwin1.dllจากที่นั่น

มีคำแนะนำมากมายเกี่ยวกับ FFserver บนอินเทอร์เน็ต เขียนโดยใช้เวอร์ชัน Linux เป็นตัวอย่าง แต่ทำงานได้อย่างสมบูรณ์บน Windows ข้อแตกต่างเพียงอย่างเดียวคือไฟล์ ffserver.conf ไม่ควรอยู่ในโฟลเดอร์ /etc แต่อยู่ในโฟลเดอร์เดียวกันกับ ffserver.exe, cygwin1.dll และ ffmpeg.exe

วิธีการติดตั้ง FFmpeg.mpeg

2. สร้างบนดิสก์ ค:โฟลเดอร์ ffmpegและคลายไฟล์เก็บถาวรที่นั่น

นี่ก็เพียงพอที่จะติดตั้ง ffmpeg ฉันแนะนำให้คุณทำตามขั้นตอนที่ 4 เพื่อความสะดวกในอนาคต

3. หากคุณต้องการตั้งค่าการออกอากาศ ให้ไปที่โฟลเดอร์ c:\ffmpeg\binแกะ ffserverและใส่ไฟล์ cygwin1.dll.

4. เพื่อหลีกเลี่ยงการต้องเขียนพาธแบบเต็มไปยังโปรแกรมด้วยคำสั่งทุกครั้ง คุณสามารถเพิ่มลงในตัวแปร PATH ได้: แผงควบคุม - ระบบ - การตั้งค่าระบบขั้นสูง -แท็บ ขั้นสูง - ตัวแปรสภาพแวดล้อม- ที่ส่วนท้ายของบรรทัดตัวแปร เส้นทางเพิ่ม " ;c:\ffmpeg\bin" โดยไม่มีเครื่องหมายคำพูด ถ้ามันว่างเปล่า (ซึ่งไม่ปกติเลย) แล้ว “ c:\ffmpeg\bin", เช่น. ไม่มีอัฒภาคที่จุดเริ่มต้น

จากนั้นรีสตาร์ทคอมพิวเตอร์เพื่อให้การเปลี่ยนแปลงมีผล

คุณสามารถข้ามขั้นตอนที่สี่ได้ แต่แทนที่จะใช้คำสั่ง ffmpeg และ ffserver คุณจะต้องเขียนเส้นทางแบบเต็ม “c:\ffmpeg\bin\ffmpeg.exe” และ “c:\ffmpeg\bin\ffserver.exe”

วิธีการใช้งาน FFmpeg.mpeg

ในหน้าหลักของ FFmpeg มีคำจารึกไว้:

บุคคลที่ไม่คุ้นเคยกับบรรทัดคำสั่งจะนิ่งงัน จะป้อนคำสั่งได้ที่ไหน?

หากคุณไม่ต้องการรบกวน เพียงใช้ FFmpeg ฟรีหรือมีค่าใช้จ่าย เช่น กล้องจุลทรรศน์ ซึ่งจำเป็นสำหรับงานที่ละเอียดอ่อน ไม่ใช่สำหรับการตอกตะปู

ในโฟลเดอร์ ffmpeg\docมีการรวบรวมตัวอย่างการใช้ส่วนประกอบมากมาย สามารถดูคำสั่งทั้งหมดได้ที่นั่น

ตัวอย่าง

คุณจะมีชื่อไฟล์ของคุณเอง หากมีช่องว่างหรือเป็นภาษารัสเซีย ให้ใส่กรอบชื่อด้วยเครื่องหมายคำพูด

แสดงข้อมูลไฟล์:

ffmpeg -i วิดีโอ.mp4

หรือ วิดีโอ ffprobe.mp4

แคลมป์ วิดีโอเอวีเป็น mp4:

ffmpeg -i video.avi วิดีโอ mp4

แปลง mov เป็น flv และเปลี่ยนความละเอียด:

ffmpeg -i video.mov -s 640x360 -b 1700k -vcodec flv -ar 44100 วิดีโอflv

บีบอัดวิดีโอเป็น webm คุณภาพปานกลาง เสียงในรูปแบบ OGG:

ffmpeg -i video.mp4 -c:v libvpx -crf 10 -b:v 1M -c:a libvorbis วิดีโอ webm

บีบอัดวิดีโอด้วยตัวแปลงสัญญาณ MPEG4, เสียง - mp3, คอนเทนเนอร์ - avi:

ffmpeg -i video.mp4 -vcodec mpeg4 -mbd rd -flags +mv4+aic -trellis 2 -cmp 2 -subcmp 2 -g 100 -qscale 3 -acodec libmp3lame -ac 2 -ab 128k -y video.avi ffmpeg -i video.mp4 -vn -ar 44100 -ac 2 -ab 192 -f mp3 zvyk.mp3

เพิ่มแทร็กเสียงลงในวิดีโอ (“สามารถละเว้น -acodec libmp3lame” ได้ จากนั้น ffmpeg จะตัดสินใจว่าจะเข้ารหัสเสียงอย่างไร):

ffmpeg -i zvyk.mp3 -i video.mp4 -acodec libmp3lame วิดีโอสุดท้าย.mp4

เพิ่มแทร็กเสียงโดยไม่ต้องเข้ารหัสวิดีโออีกครั้ง (รักษาคุณภาพ ทำงานได้อย่างรวดเร็ว):

ffmpeg -i zvyk.mp3 -i video.mp4 -acodec libmp3lame -vcodec คัดลอก video_final.mp4 ffmpeg -ss 00:00:02 -i video.mp4 -f image2 -vframes 1 thumb.jpg ffmpeg -i video.mp4 -vf deshake out.mp4

โครงสร้าง

ดังที่คุณเห็นจากตัวอย่าง คำสั่ง ffmpeg มีโครงสร้างดังนี้:

ffmpeg -options -more_options -possible_options_with_parameters_for ตัวอย่างที่ 1-i "ชื่อไฟล์.extension" -encoding_options -ตัวเลือกเพิ่มเติม +codec_options "resulting_file_name.extension"

หากคุณไม่ระบุตัวเลือกการเข้ารหัส ffmpeg จะพยายามใช้พารามิเตอร์ของไฟล์ต้นฉบับสำหรับไฟล์ผลลัพธ์เพื่อรักษาคุณภาพสูงสุด

ทีม

ข้อมูล (เพื่อค้นหาความสามารถของเวอร์ชันที่ติดตั้ง)

-ล
แสดงข้อความใบอนุญาต

-h, -?, -ช่วย, -ช่วยด้วย
รายการคำสั่งที่ใช้ได้

-รุ่น
ค้นหาเวอร์ชันของ ffmpeg

-รูปแบบ
แสดงรายการรูปแบบคอนเทนเนอร์ที่มีอยู่ (ไม่ใช่ตัวแปลงสัญญาณ!)

ใน Windows บรรทัดคำสั่งไม่เพียงพอที่จะแสดงรายการทั้งหมด หากต้องการแก้ไขให้เปิดคุณสมบัติหน้าต่างและบนแท็บ "เค้าโครง" ให้ตั้งค่าความสูงของบัฟเฟอร์หน้าจอเป็น 500 ในรายการตัวอักษร D และ E หมายถึงการสนับสนุนการถอดรหัสและการเข้ารหัส

-ตัวแปลงสัญญาณ
รายการตัวแปลงสัญญาณที่มีอยู่ นอกเหนือจาก D และ E ที่ใช้งานง่าย (ตัวถอดรหัสสำหรับ "การอ่าน" และตัวเข้ารหัสสำหรับการเข้ารหัส) ยังมองเห็นสัญลักษณ์ต่อไปนี้:
V - ตัวแปลงสัญญาณสำหรับวิดีโอ, A - สำหรับแทร็กเสียง, S - คำบรรยาย, I - สำหรับการเข้ารหัส I-frames เท่านั้น, L - ตัวแปลงสัญญาณบีบอัดโดยที่ข้อมูลสูญหาย (ส่วนใหญ่), S - โดยไม่สูญเสียข้อมูล (รักษาคุณภาพ, บีบอัดอย่างอ่อน)

-bsfs
แสดงตัวกรองบิตสตรีมที่รองรับ (ตัวกรองสตรีมข้อมูล) ซึ่งจำเป็นในบางกรณีสำหรับการประมวลผลสตรีมข้อมูลที่ถูกต้อง
-โปรโตคอล
แสดงโปรโตคอลที่มีอยู่ จากรายการที่แสดง ชัดเจนว่าสตรีม RTMP (การออกอากาศวิดีโอ) และอื่นๆ อีกมากมาย ไม่ใช่แค่ไฟล์ สามารถใช้เป็นข้อมูลอินพุตได้ เช่นเดียวกับวันหยุดสุดสัปดาห์ด้วย
-ตัวกรอง
ตัวกรองวิดีโอและเสียงที่มีอยู่ ใน FFmpeg พวกเขา ใหญ่ปริมาณ. นอกเหนือจากการตั้งค่าการหมุนและความสว่างซ้ำๆ แล้ว FFmpeg ยังมีการขยายเสียงสเตอริโอ การสร้างเศษส่วน และอื่นๆ คำแนะนำโดยละเอียด - เข้า doc/ffmpeg-filters.html

-pix_fmts
รูปแบบสีที่มีจำหน่าย FFmpeg เข้าใจปริภูมิสีจำนวนมาก มีประโยชน์สำหรับผู้ที่อุปกรณ์สร้างสีแปลก ๆ

ตัวเลือกพื้นฐาน

-ระดับล็อก ความหมาย หรือ -v ความหมาย

ระดับการบันทึก ตั้งแต่ขั้นต่ำ - เงียบไปจนถึงการดีบักที่มีรายละเอียดมากที่สุด รายการทั้งหมด: เงียบ, ตื่นตระหนก, ร้ายแรง, ข้อผิดพลาด, คำเตือน, ข้อมูล, รายละเอียด, การแก้ไข มีประโยชน์หากเกิดข้อผิดพลาดระหว่างการเข้ารหัสวิดีโอและคุณจำเป็นต้องค้นหารายละเอียดเพิ่มเติม

-ฉ ความหมาย (mp4, avi, mkv, gif ฯลฯ)

ระบุรูปแบบไฟล์เฉพาะ (คอนเทนเนอร์) โดยทั่วไปแล้ว FFmpeg จะเลือกตามนามสกุลไฟล์เอาต์พุต แต่สามารถกำหนดใหม่ได้

-ฉัน path_to_file

คำสั่งเพื่อระบุไฟล์หรือสตรีมขาเข้า (เช่น rtmp://address สำหรับจับภาพวิดีโอสตรีมมิ่ง)

-y
เขียนทับไฟล์เอาต์พุตที่มีอยู่แล้วโดยไม่ต้องแจ้ง

-ss เวลา

บ่งชี้ จากที่เวลาที่คุณต้องเข้ารหัสวิดีโอ/เสียง รูปแบบคือ "hh:mm:ss" รายละเอียดเพิ่มเติม: https://trac.ffmpeg.org/wiki/Seeking

-ที เวลา

กรุณาระบุ จนถึงเวลาใดเวลาที่คุณต้องเข้ารหัสวิดีโอ/เสียง ร่วมกับคำสั่งก่อนหน้าทำให้สะดวกในการใช้ตัดส่วนของวิดีโอ

-ขนาด fs
ขีดจำกัดไฟล์เอาท์พุต เช่น เมื่อใด -fs 10Mการเข้ารหัสจะหยุดทันทีที่ไฟล์เอาต์พุตมีขนาด 10 MB รองรับ K, M, G (กิโลไบต์ เมกะไบต์ และกิกะไบต์)

ตัวเลือกการเข้ารหัสวิดีโอ

-ข ความหมาย
การติดตั้ง บิตเรตวิดีโอ บิตเรตที่สูงขึ้นหมายถึงคุณภาพที่ดีขึ้นและ ขนาดใหญ่ขึ้นไฟล์. ระบุตัวเลข K หรือ M ต่อท้ายเพื่อให้โปรแกรมเข้าใจว่าค่าเป็นกิโลบิต/วินาที หรือเมกะบิต/วินาที

-vframes ความหมาย

จำนวนเฟรมที่จะเข้ารหัส

-ร ความหมาย
การระบุอัตราเฟรม

-ส ขนาด

ระบุความละเอียดที่จะเข้ารหัสวิดีโอ ตัวอย่างเช่น 1920×1080 สำหรับเอาต์พุตวิดีโอ FullHD FFmpeg เข้าใจตัวย่อตัวอักษร (vga, hd480, hd720, hd1080 และอื่น ๆ )

-ด้าน อัตราส่วนภาพ

ระบุอัตราส่วนภาพวิดีโอ (4:3, 16:9 หรือ 1.3333, 1.7777 ฯลฯ) ดังที่ผู้เชี่ยวชาญทราบดีว่าพิกเซลในวิดีโอสามารถเป็นรูปสี่เหลี่ยมผืนผ้าได้

-พืชผล ความหมาย, -cropbottom ความหมาย, -โครเลฟท์ ความหมาย, -พืชผลความหมาย

ตัดจำนวนพิกเซลวิดีโอจากด้านบน ล่าง ซ้ายหรือขวา

-แพดท็อป ความหมาย, -padbottom ความหมาย, -เบาะซ้าย ความหมาย, -แพไรท์ ความหมาย

เพิ่มเส้นขอบวิดีโอที่ด้านบน ล่าง ซ้าย หรือขวา

-padcolor hex_color

สีเส้นขอบในรูปแบบเลขฐานสิบหก (#000000 - สีดำ, #FF0000 - สีแดง ฯลฯ)

-vn
อย่าเข้ารหัสวิดีโอ

-บาท ความหมาย

ค่าระบุค่าเบี่ยงเบนสูงสุดจากบิตเรตที่ระบุ อาจไม่ทำงาน ขึ้นอยู่กับตัวแปลงสัญญาณ

-สูงสุด บิตเรต

ระบุค่าบิตเรตสูงสุด ต้องระบุขนาดบัฟเฟอร์ผ่าน -bufsize

-นาที บิตเรต

บิตเรตวิดีโอขั้นต่ำ มักใช้เพื่อบังคับบิตเรตเฉพาะ:

ffmpeg -i video.avi -b 4000K -นาที 4000K -สูงสุด 4000K -bufsize 1835k video-out.mp4

-บัฟไซส์ ขนาด

ตั้งค่าขนาดบัฟเฟอร์วิดีโอ พูดง่ายๆ ก็คือ นี่คือส่วนหนึ่งของวิดีโอที่ FFmpeg วิเคราะห์และเลือกบิตเรตที่จะเลือกภายในขีดจำกัด ประการแรก จำเป็นสำหรับการสตรีม: ยิ่งบัฟเฟอร์มีขนาดใหญ่เท่าใด เสถียรภาพระหว่างการเข้ารหัสก็จะยิ่งมากขึ้นเท่านั้น

-vcodec ตัวแปลงสัญญาณ

การเลือกตัวแปลงสัญญาณ (ดูคำสั่ง -ตัวแปลงสัญญาณสำหรับรายการตัวแปลงสัญญาณ) คุณสามารถระบุได้ สำเนาจากนั้น FFmpeg จะคัดลอกสตรีมวิดีโอโดยไม่ต้องเข้ารหัสใหม่

รักษาคุณภาพของภาพ/เสียงต้นฉบับ มันไม่เหมือนกับ -สำเนา vcodec- รักษาคุณภาพของวิดีโอไว้ ตัวแปลงสัญญาณสามารถเป็นอะไรก็ได้ แทร็กวิดีโอจะถูกเข้ารหัสอีกครั้ง

-ผ่าน n

สำหรับการเข้ารหัสวิดีโอหลายรอบ ระบุว่าต้องผ่านอันไหน (1 หรือ 2) คำนำหน้าชื่อไฟล์พร้อมสถิติถูกระบุโดยคำสั่ง -passlogfile ความหมาย.

คุณสามารถปิดใช้การประมวลผลเสียงในรอบแรกเพื่อประหยัดเวลาและทรัพยากร:
ffmpeg -i video.mp4 -vcodec libxvid -ผ่าน 1 -an -f rawvideo -y NUL

ตัวเลือกเสียง

-aframe ปริมาณ

ต้องมีการเข้ารหัสเสียงกี่เฟรม (ใช่ เสียงมีเฟรม!)

-ar ความถี่

ระบุความถี่เสียง (ค่าเริ่มต้น 44100 Hz)

-ab บิตเรต

บิตเรต (ค่าเริ่มต้น = 64K)

-aq ความหมาย

การระบุคุณภาพ (ขึ้นอยู่กับตัวแปลงสัญญาณ ใช้กับบิตเรตแบบแปรผัน)

-ac ตัวเลข

จำนวนช่องสัญญาณเสียง (ค่าเริ่มต้น 1)

อย่าเข้ารหัสเสียง

-acodec ตัวแปลงสัญญาณ

การระบุตัวแปลงสัญญาณเสียง ความหมาย สำเนาช่วยให้คุณสามารถคัดลอกแทร็กเสียงโดยไม่ต้องเข้ารหัสซ้ำ

-เสียงใหม่

เพิ่มแทร็กเสียงอื่น พารามิเตอร์ของมันจะถูกระบุก่อนคำสั่ง -newaudio:

ffmpeg -i file.mpg -vcodec สำเนา -acodec ac3 -ab 384k test.mpg -acodec mp2 -ab 192k -newaudio

คำบรรยาย

-scodec ตัวแปลงสัญญาณ

ตัวแปลงสัญญาณสำหรับคำบรรยาย ( สำเนา- สำหรับการคัดลอกโดยตรง)

-คำบรรยายใหม่

การเพิ่มคำบรรยายเพิ่มเติม

-สแลง รหัส

ระบุภาษาคำบรรยายตามมาตรฐาน ISO 639 (3 ตัวอักษร)

ปิดการใช้งานคำบรรยาย

คำสั่งอื่นๆ

-กระทู้ ปริมาณ

จำนวนเธรดสำหรับการเข้ารหัสวิดีโอ ควรใช้ตัวเลือกนี้บนพีซีแบบมัลติคอร์เท่านั้น จากนั้นอ่านเอกสารประกอบสำหรับตัวแปลงสัญญาณที่เลือกด้วยความระมัดระวัง

-vsync ความหมาย

การซิงโครไนซ์เฟรม ค่า:

0 - แต่ละเฟรมจะถูกถ่ายโอนจากอินพุตไปยังไฟล์ผลลัพธ์พร้อมการประทับเวลาที่มีอยู่

1 - เฟรมจะถูกทำซ้ำหรือลบเพื่อรักษาอัตราเฟรมที่ต้องการ

2 - เฟรมจะถูกข้ามหรือลบออกเพื่อรักษาอัตราเฟรมที่ต้องการ

1 คือค่าเริ่มต้น FFmpeg เลือกระหว่างวิธีที่ 1 และ 2

โดยใช้คำสั่ง -แผนที่คุณสามารถระบุได้ว่าอะไรจะปรับอะไร รายละเอียด: https://trac.ffmpeg.org/wiki/Map

-อะซิงก์ เฟรม_ต่อ_วินาที

การเลือกวิธีการซิงโครไนซ์เสียง หากต้องการเก็บเสียงและวิดีโอไว้พร้อมๆ กัน แทร็กเสียงสามารถขยายและบีบอัดได้ ค่า 1 จะปรับแทร็กเสียงเฉพาะตอนเริ่มต้นตามหลักการ "อะไรจะเกิดขึ้นต่อไป"

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

-สั้นที่สุด

เมื่อไฟล์อินพุตที่สั้นที่สุดสิ้นสุดลง ให้หยุดการเข้ารหัส

มีทีมเพิ่มเติมไหม?

ดูคำสั่งสำหรับ FFmpeg ที่นี่:

http://help.ubuntu.ru/wiki/ffmpeg(ในภาษารัสเซีย)

https://ffmpeg.org/ffmpeg.html(เอกสารอย่างเป็นทางการ)

สำหรับการเข้ารหัสด้วยตัวแปลงสัญญาณ x264 ซึ่งขณะนี้ได้รับความนิยม โปรดดูที่:

http://wiki.rosalab.ru/ru/index.php/FFmpeg(มีตัวอย่างในภาษารัสเซีย)

ทำไมมีทีมเยอะจัง?

จำเป็นสำหรับการควบคุมการประมวลผลไฟล์วิดีโอและไฟล์เสียงอย่างสมบูรณ์

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

หากคุณมีคำถามเกี่ยวกับ FFmpeg ถามในความคิดเห็น ฉันจะช่วยเท่าที่จะช่วยได้

โพสต์ที่เกี่ยวข้อง:

ชอบ

ชอบ

หากคุณใช้ Windows มาก่อนหรือตอนนี้ดูอัลบูต Windows ด้วย Linux คุณต้องใช้โปรแกรม Windows - FormatFactory เพื่อแปลงและแปลงไฟล์เสียงและวิดีโอของคุณรวมถึงการริปดีวีดีและ การสร้างไอเอสโอภาพ

Format Factory เป็นเครื่องมือที่ยอดเยี่ยม แต่ถ้าคุณใช้ Linux มากกว่า Windows ก็มีตัวเลือกอื่นที่ดีสำหรับ Format Factory Linux ที่ทำงานเหมือนกันเช่นกัน และบางครั้งก็ดีกว่าด้วยซ้ำ

ในบทความนี้ เราจะดู 4 ทางเลือกแทน Format Factory สำหรับ Linux

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

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

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

เมนโค้ดเดอร์ก็คือ เครื่องมือฟรีสำหรับการแปลงรหัสวิดีโอตลอดจนการใช้เอฟเฟกต์ต่างๆ โปรแกรมมีแบ็กเอนด์กราฟิกที่เรียกว่า DivX Converter

การติดตั้ง Mencoder

หากต้องการติดตั้งโปรแกรมบน Ubuntu ให้รัน:

sudo apt-get ติดตั้ง mencoder ง่อย

โปรแกรมจะทำงานได้ตามปกติก็ต่อเมื่อระบบมีไลบรารี libavcodec5x นี่เป็นส่วนหนึ่งของ libav หรือ ffmpeg และประกอบด้วย จำนวนมากตัวแปลงสัญญาณเพื่อรองรับรูปแบบต่างๆ:

sudo apt-get ติดตั้ง libavcodec54

หากคุณต้องการใช้ยูทิลิตีจากบรรทัดคำสั่ง คุณสามารถ Google คำสั่งที่คุณต้องการได้อย่างง่ายดาย แต่การใช้ GUI นั้นง่ายกว่ามาก

สามารถดาวน์โหลด DivX Converter ได้จากเว็บไซต์อย่างเป็นทางการ โปรแกรมนี้ติดตั้งง่ายมากโดยใช้ตัวติดตั้งแอปพลิเคชันหรือ dpkg บน Ubuntu

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

เมื่อการแปลงวิดีโอเป็น Linux เสร็จสิ้น คุณจะพบ ไฟล์พร้อมในโฟลเดอร์ที่ระบุ

2. อริสต้า

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

Arista มีพื้นฐานมาจาก Gnome อย่างเป็นทางการ รองรับรายการรูปแบบที่หลากหลายสำหรับอุปกรณ์ต่าง ๆ เช่น iPod, iPhone, PSP, Playstation 3, Nokia, DVD และอื่น ๆ อีกมากมาย นอกจากนี้ยังรองรับ mp4, WebM, matroska, avi, ogg, flv, ตัวแปลงสัญญาณวิดีโอ: h.264, vp8, mpeg4/divX, mpeg2, theora, Flash Video, เสียง: aac, vorbis, mp3, flac, speex, wav

รองรับคุณสมบัติต่อไปนี้:

  • การตั้งค่าสำเร็จรูปสำหรับ iPod, PC, DVD, PSP, Playstation 3 ฯลฯ
  • การดูสดเพื่อประเมินคุณภาพวิดีโอ
  • การตรวจจับสื่อ DVD และอุปกรณ์ดิจิตอลที่มีอยู่โดยอัตโนมัติ
  • ริปจากอุปกรณ์ v4l
  • ริปจากอุปกรณ์ DVD โดยใช้ libdvdcss
  • ยูทิลิตี้บรรทัดคำสั่งอย่างง่ายสำหรับการเขียนสคริปต์
  • การติดตั้งการอัพเดตอัตโนมัติ

การติดตั้ง Arista

โปรแกรมนี้มีอยู่ในพื้นที่เก็บข้อมูลมาตรฐานของการแจกแจงหลายรูปแบบ แต่หากไม่เป็นเช่นนั้น ก็สามารถติดตั้งได้จาก webupd8 PPA:

sudo add-apt-repository ppa:webupd8team/arista.php
$ sudo apt-get อัปเดต
$ sudo apt-get ติดตั้ง arista

วิธีใช้อริสต้า

เมื่อติดตั้งโปรแกรมแล้ว ให้เปิดโปรแกรมจากเมนูแอปพลิเคชัน คุณจะเห็นหน้าต่างนี้:

คลิก + เพื่อเพิ่มไฟล์วิดีโอหรือไฟล์เสียงหลายไฟล์ที่คุณต้องการแปลง:

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

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

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

3.เบรกมือ

Handbrake เป็นเครื่องมือโอเพ่นซอร์สและมัลติเธรดฟรีที่ดีที่สุดที่มีอยู่ในขณะนี้ หากเราพิจารณารูปแบบอะนาล็อกจากโรงงานอื่นสำหรับ Linux แสดงว่าดีที่สุด ได้รับการพัฒนาในปี 2546 โดย Eric Petit ช่วงนี้โปรแกรมเปลี่ยนแปลงไปมาก ตอนนี้ รองรับทุกแพลตฟอร์มหลักๆ ทั้ง Windows และ Mac แล้ว Ubuntu Linux ยังได้รับการสนับสนุนอย่างเป็นทางการ แต่ก็มีเวอร์ชันสำหรับการแจกแจงอื่นๆ ด้วย Handbrake ใช้ไลบรารีของบุคคลที่สามต่อไปนี้: x264, libav และ faac

ทั้งอินเทอร์เฟซบรรทัดคำสั่งและ GUI พร้อมใช้งานสำหรับ Linux

การติดตั้งเบรกมือ

การติดตั้ง Handbrake บน Ubuntu นั้นง่ายมาก ในการดำเนินการนี้ คุณต้องเชื่อมต่อ PPA:

sudo add-apt-repository ppa:stebbins/handbrake-releases
$ sudo apt-get อัปเดต
$ sudo apt-get ติดตั้งเบรกมือ

GUI ที่ใช้ GTK ได้รับการติดตั้งด้วยคำสั่ง:

sudo apt-get ติดตั้งเบรกมือ-gtk

และไคลเอนต์บรรทัดคำสั่ง:

sudo apt-get ติดตั้งเบรกมือ-cli

วิธีการใช้งานเบรกมือ

เมื่อติดตั้งโปรแกรมแล้ว ให้เปิดโปรแกรมจากเมนูหลัก GUI Handbrake มีลักษณะดังนี้:

ขณะนี้มีตัวเลือกโปรแกรมไม่ครบทั้งหมด ขั้นแรกคุณต้องนำเข้าไฟล์ที่คุณต้องการบีบอัดหรือแปลง คลิกแหล่งที่มาเพื่อเลือกไฟล์

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

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

คุณสามารถเปลี่ยนตัวเลือกใดก็ได้ที่คุณต้องการ อย่างที่คุณเห็น ตัวถอดรหัสวิดีโอเริ่มต้นถูกตั้งค่าเป็น H.264 แต่คุณสามารถเลือกตัวเลือกอื่นได้ เมื่อคุณตั้งค่าเสร็จแล้ว ให้คลิกปุ่มเริ่ม:

4.FFmpeg

FFmpeg เป็นโซลูชั่นข้ามแพลตฟอร์มที่ครอบคลุมสำหรับการบันทึก การแปลง การบีบอัดเสียง/วิดีโอ สตรีมมิ่งเสียงและไฟล์วิดีโอ อะนาล็อกที่ยอดเยี่ยมของฟอร์แมตแฟคทอรีสำหรับ Linux หรือแม้แต่ Windows โครงการ FFmpeg ก่อตั้งขึ้นในปี 2000 โดย Fabrice Bellard และดูแลจนถึงปี 2003 โดย Mike Niedermayer ตั้งแต่ปี 2004 โปรแกรมประกอบด้วยตัวแปลงสัญญาณสำหรับรูปแบบที่รู้จักส่วนใหญ่ FFmpeg สามารถแปลงรหัส ถอดรหัส และแก้ไขทุกสิ่งที่สร้างขึ้นจนถึงตอนนี้อย่างแท้จริง โปรเจ็กต์นี้ได้รับการพัฒนาสำหรับ Linux แต่สามารถนำไปใช้กับผู้อื่นได้ ระบบปฏิบัติการเช่น Windows

FFmpeg มียูทิลิตีบรรทัดคำสั่งที่ยอดเยี่ยมเช่นเดียวกับ GUI ยูทิลิตี้บรรทัดคำสั่งค่อนข้างใช้งานยากสำหรับผู้ใช้ใหม่ ดังนั้นในคำแนะนำนี้เราจะพิจารณาอินเทอร์เฟซแบบกราฟิกและคุณสามารถค้นหาคำสั่งเทอร์มินัลบนอินเทอร์เน็ตได้อย่างง่ายดาย

การติดตั้ง FFmpeg

หากต้องการติดตั้งโปรแกรมเวอร์ชันล่าสุดใน Ubuntu ควรใช้ PPA:

sudo apt-add-repository ppa:mc3man/trusty-media.php
$ sudo apt-get อัปเดต
$ sudo apt-get ติดตั้ง ffmpeg

WinFF เป็น GUI สำหรับ FFmpeg โปรแกรมสามารถทำงานกับไฟล์ทุกประเภทที่ ffmpeg ใช้งานได้ คุณสามารถประมวลผลไฟล์หลายไฟล์และหลายรูปแบบพร้อมกันได้ ตัวอย่างเช่น แปลง MPEG, FLV และ MOV เป็น AVI โปรแกรมนี้ไม่เพียงรองรับ Linux เท่านั้น แต่ยังรองรับ Windows ด้วยและยังได้รับการแปลเป็นหลายภาษา รวมถึงภาษารัสเซียด้วย

WinFF มีอยู่ในที่เก็บ Ubuntu อย่างเป็นทางการ แต่สามารถติดตั้งเวอร์ชันล่าสุดได้จาก PPA:

Sudo add-apt-repository ppa:paul-climbing/ppa

$ sudo apt-get อัปเดต
$ sudo apt-get ติดตั้ง winff

เมื่อการติดตั้งเสร็จสมบูรณ์ ให้เปิด WinFF จากเมนูหลัก คุณจะเห็นอินเทอร์เฟซที่เรียบง่ายพร้อมฟังก์ชันจำนวนเล็กน้อย:

การให้คะแนนบรรณาธิการ:

นี่คือรายการของ เมื่อใช้ซอฟต์แวร์เหล่านี้ คุณจะสามารถใช้ FFmpeg กับ GUI ที่ใช้ Windows ที่ใช้งานง่ายได้อย่างง่ายดาย GUI เหล่านี้ทำให้การใช้ FFmpeg เป็นเรื่องง่ายสำหรับการทำงานต่างๆ ที่เกี่ยวข้องกับวิดีโอ เช่น การแปลง การแก้ไข และอื่นๆ ซอฟต์แวร์เหล่านี้ให้ตัวเลือกเดียวกันกับที่คุณใช้ผ่านบรรทัดคำสั่ง FFmpeg

อย่างไรก็ตาม ข้อเสียคือคุณไม่มีทางรู้ว่ามีอะไรทำงานอยู่ภายใต้ประทุนในกรณีของซอฟต์แวร์บางตัวต่อไปนี้ คุณสามารถทำงานส่วนใหญ่ได้โดยใช้ซอฟต์แวร์เหล่านี้ เช่น แก้ไขข้อมูลเมตาของวิดีโอ ฝังคำบรรยาย และอื่นๆ อีกมากมาย

มาดู GUI ฟรีที่ดีที่สุดสำหรับ FFmpeg กัน

อาวันติ

อาวันติเป็นส่วนหน้าขั้นสูงสำหรับ FFmpeg ซอฟต์แวร์นี้ให้คุณแปลงไฟล์เสียง/วิดีโอ และยังให้คุณจัดการพารามิเตอร์อื่นๆ ได้ด้วย มีตัวเลือกมากมายบนอินเทอร์เฟซสำหรับใช้กับไฟล์วิดีโอที่คุณต้องการแปลง โดยใช้ อาวันติ,คุณสามารถแปลงไฟล์วิดีโอเป็นรูปแบบอื่น ๆ ได้อย่างง่ายดาย และยังใช้พารามิเตอร์เอาต์พุตอื่น ๆ เช่น บิตเรต ตัวแปลงสัญญาณ ขนาดเฟรม อัตราเฟรม จำนวนความเบลอ/ความคมชัด ความถี่ในการสุ่มตัวอย่าง เพิ่มคำบรรยาย แก้ไขคำบรรยาย แก้ไขข้อมูลเมตา และอื่นๆ อีกมากมาย . ซอฟต์แวร์นี้มีประสิทธิภาพมากในการจัดการงานเหล่านี้ทั้งหมด และจะแสดงบันทึกคำสั่ง FFmpeg ที่ด้านล่างของอินเทอร์เฟซ อย่างไรก็ตาม สำหรับการทำงานของซอฟต์แวร์ คุณจะต้องวางไฟล์ “ffmpeg.exe” และ “ffplay.exe” ลงในโฟลเดอร์ “ffmpeg” ของแพ็คเกจต้นฉบับ

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

FFmpegYAG

เป็นอีกหนึ่ง GUI ขั้นสูงสำหรับ FFmpeg ซอฟต์แวร์นี้มีประสิทธิภาพมากและใช้ตัวแปลงสัญญาณที่หลากหลายเพื่อจัดการไฟล์เสียง/วิดีโอ ซอฟต์แวร์นี้มีอินเทอร์เฟซที่ใช้งานง่ายและมีตัวเลือกมากมายในการแปลงไฟล์วิดีโออย่างง่ายดาย ช่วยให้คุณสามารถใช้โค้ดที่ต้องการใช้สำหรับการแปลง ระบุรูปแบบวิดีโอ บิตเรตของวิดีโอ บิตเรตเสียง จากด้านใดก็ได้ ฯลฯ นอกจากนี้ คุณสามารถเลือกส่วนใดส่วนหนึ่งจากไฟล์วิดีโออินพุตที่จะแปลงได้ ซอฟต์แวร์สร้างบันทึกการดำเนินการ FFmpeg ทั้งหมดที่ทำและบันทึกไฟล์บันทึกในไดเร็กทอรีต้นทาง

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

FFคิว

FFคิวเป็นอีกหนึ่ง GUI ฟรีสำหรับ FFmpeg ซอฟต์แวร์นี้มีประสิทธิภาพมากและคุณสามารถทำเกือบทุกอย่างที่คุณเคยทำโดยใช้บรรทัดคำสั่งแบบเดิมของ FFmpeg การใช้ FFmpeg ที่ใช้ GUI ฟรีนี้ทำให้คุณสามารถแปลงวิดีโอและระบุพารามิเตอร์ได้อย่างง่ายดาย แต่โปรดทราบว่าซอฟต์แวร์ไม่มีไบนารี FFmpeg อยู่ในนั้น ดังนั้นคุณจะต้องระบุเส้นทางของโฟลเดอร์ FFmpeg อย่างชัดเจน ใช้เมนูตัวเลือกของซอฟต์แวร์เพื่อดำเนินการดังกล่าว ซอฟต์แวร์รองรับการประมวลผลเป็นชุด และคุณสามารถกำหนดค่าพารามิเตอร์เอาต์พุตของไฟล์แยกกันได้ ซอฟต์แวร์ใช้คำว่า “งาน” สำหรับไฟล์อินพุตที่คุณใช้กับซอฟต์แวร์

การเริ่มต้นใช้งาน GUI ฟรีสำหรับ FFmpeg นี้ค่อนข้างง่าย เพียงดาวน์โหลดจากลิงค์ด้านบนแล้วเปิดใช้งาน ไม่จำเป็นต้องติดตั้ง คุณสามารถกำหนดเส้นทางของไบนารี FFmpeg และเริ่มใช้งานได้ ใช้ปุ่มเพิ่มเพื่อเพิ่มไฟล์อินพุตของคุณที่คุณต้องการแปลงโดยใช้ หลังจากนั้นให้ระบุค่าที่ตั้งล่วงหน้าเพื่อกำหนดรูปแบบของไฟล์เอาต์พุต คุณยังสามารถระบุพารามิเตอร์อื่นๆ เช่น คุณภาพเสียง คำบรรยาย ข้อมูลเมตาของวิดีโอ บิตเรตเสียง-วิดีโอ เส้นทางเอาต์พุต ฯลฯ คุณยังสามารถเพิ่มไฟล์ได้หลายไฟล์เพื่อแปลง และเมื่อคุณทำเสร็จแล้ว ในที่สุดก็กดปุ่ม Start จากหน้าต่างหลักเพื่อเริ่มกระบวนการแปลง หลังจากการแปลง ไฟล์ของคุณจะถูกบันทึกลงในไดเร็กทอรีที่คุณระบุ

X-WinFF

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

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

คิววินเอฟ

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

การใช้ซอฟต์แวร์ฟรีนี้เพื่อแปลงวิดีโอโดยใช้แบ็กเอนด์ FFmpeg นั้นค่อนข้างง่าย เพียงดาวน์โหลดไฟล์การตั้งค่าจากลิงก์ด้านบนแล้วติดตั้งลงในพีซีของคุณ คุณสามารถดาวน์โหลดเวอร์ชันพกพาได้ คิววินเอฟ.หลังจากนั้นให้เปิดขึ้นมาและหน้าต่างหลักจะปรากฏขึ้น เพิ่มไฟล์วิดีโออินพุตโดยใช้ปุ่มบวกที่ให้ไว้ในแถบเครื่องมือของหน้าต่าง คุณสามารถเพิ่มไฟล์หลายไฟล์เพื่อแปลงได้ และเมื่อคุณนำเข้าไฟล์วิดีโอ มันจะเปิดป๊อปอัปขึ้นมา โดยคุณจะต้องระบุพารามิเตอร์เอาต์พุต ใช้กระบวนการเดียวกันในการเพิ่มไฟล์วิดีโอที่คุณต้องการแปลง จากนั้นกดปุ่ม Start เพื่อเริ่มกระบวนการแปลง มีตัวเลือกหลังการแปลงบางอย่างที่พร้อมใช้งาน เช่น ปิดเครื่องหรือไฮเบอร์เนตพีซีหลังจากเสร็จสิ้นงาน

คำสุดท้าย

นี่เป็น GUI ที่ดีมากสำหรับ FFmpeg ที่ฉันพบ ซอฟต์แวร์ทั้งหมดนี้ทำงานได้ดีสำหรับฉัน บางส่วนรวมเฉพาะฟังก์ชันหลักของ FFmpeg ในขณะที่บางส่วนมาพร้อมกับฟังก์ชันทั้งหมดของ FFmpeg ในรายการด้านบนฉันชอบมาก อาวันติและ X-WinFFให้เป็นสิ่งที่ดีที่สุดเนื่องจากได้รวมคำสั่งและคุณสมบัติ FFmpeg ทั้งหมดไว้แล้ว หากคุณต้องการเพียงส่วนการแปลงของ FFmpeg ในซอฟต์แวร์ คุณก็สามารถทำได้ คิววินเอฟหรือ FFmpegYAG.

FFmpeg คือชุดของไลบรารีสำหรับประมวลผลไฟล์วิดีโอและไฟล์เสียง FFmpeg จะแปลง mov เป็น mp4 ใส่ลายน้ำ รวมไฟล์วิดีโอหลายไฟล์เป็นไฟล์เดียว เปลี่ยนความละเอียด แปลงรหัสวิดีโอสตรีมมิ่ง สร้างสตรีมเอง FFmpeg มีประโยชน์สำหรับผู้ที่ทำงานด้านวิดีโออย่างมืออาชีพ พัฒนาแอปพลิเคชันสื่อ หรือเพียงแค่ประมวลผลการบันทึกที่บ้าน

FFmpeg ไม่มี GUI และควบคุมโดยคำสั่งจากคอนโซล ผู้ใช้จำนวนมากทำงานร่วมกับมันโดยคัดลอกคำสั่งที่จำเป็นจากอินเทอร์เน็ตโดยไม่เข้าใจว่าแฟล็กนี้หมายถึงอะไร มาเรียนรู้วิธีการทำงานกับ FFmpeg อย่างมีสติโดยใช้ตัวอย่างคำสั่งที่มีประโยชน์ต่างๆ

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

รับข้อมูลเกี่ยวกับไฟล์

ffmpeg -i ไฟล์.mp4

ทุกอย่างง่ายดายที่นี่ ป้อนเส้นทางไปยังไฟล์ รับข้อมูลเกี่ยวกับมัน: ตัวแปลงสัญญาณ จำนวนแทร็ก ความละเอียด บิตเรตและเฟรมเรต เราระบุเส้นทางของไฟล์ด้วยแฟล็ก -i (อินพุต):

ฉัน file1.mp4 -i file2.mp4

แปลงเป็น mp4

สมมติว่าเรามีเว็บไซต์ที่ใช้เล่นวิดีโอ เครื่องเล่นแฟลช- เราต้องการเปลี่ยนเป็นวิดีโอ HTML5 ในการทำเช่นนี้เราจะแปลงไฟล์วิดีโอบนเซิร์ฟเวอร์จาก รูปแบบ flvเป็น mp4

  • output.mp4 - เส้นทางไปยังไฟล์ที่แปลงแล้ว
  • -vcodec libx264 - ระบุตัวแปลงสัญญาณวิดีโอที่เราต้องการรับ ในกรณีของเรา นี่คือ H264 ซึ่งเบราว์เซอร์ส่วนใหญ่รองรับ
  • -acodec libvo_aacenc - ตัวแปลงสัญญาณเสียง AAC

รายการตัวแปลงสัญญาณที่ ffmpeg รองรับสามารถรับได้ทาง ffmpeg -codecs

แทนที่จะเป็น -vcodec จะมีรายการ -codec:v และ -c:v หากคุณไม่ได้ระบุตัวแปลงสัญญาณสำหรับการแปลง ffmpeg -i flashvideo.flv output.mp4 ffmpeg จะติดตั้งตัวแปลงสัญญาณเริ่มต้นสำหรับรูปแบบไฟล์เอาต์พุต

เมื่อแปลงจะไม่ได้ระบุเฉพาะตัวแปลงสัญญาณเท่านั้น มาเพิ่มจำนวนการตั้งค่ากัน:

Ffmpeg -i flashvideo.flv -b:v 700k -r 25 -pix_fmt yuv420p-vcodec libx264\ -b:a 128k -ar 44100-acodec libvo_aacenc -yเอาท์พุท.mp4

เราตั้งค่าบิตเรตสำหรับวิดีโอ -b:v และเสียง -b:a เป็น 700 และ 128 kb/s บิตเรตสามารถระบุได้ด้วยแฟล็กอื่นๆ: -vb และ -b สำหรับวิดีโอ หรือ -ab สำหรับเสียง

พารามิเตอร์สามตัวที่เหลือคืออัตราเฟรม -r 25 ในเฟรมต่อวินาที โมเดลสี YUV เท่ากับค่า yuv420p ปกติ และความถี่การสุ่มตัวอย่างเสียง 44100 Hz จำเป็นต้องใช้แฟล็ก -y เพื่อเขียนทับไฟล์หากมีอยู่แล้ว

การตัดส่วนของวิดีโอออก

ffmpeg -ss 10 -t 20-i source_video.mp4 -สำเนา vcodec -สำเนา acodec result.mp4

ด้วยแฟล็ก -ss เราจะระบุจากจุดที่เราตัดวิดีโอต้นฉบับ -t - ระยะเวลา ที่เอาต์พุต เราจะได้วิดีโอยี่สิบวินาที ซึ่งจะเริ่มจากหนึ่งในสิบของวินาทีของวิดีโอต้นฉบับ สัญกรณ์ -ss 00:00:10.250 -t 00:00:20.120 มีประโยชน์สำหรับการระบุช่วงเวลาที่แม่นยำยิ่งขึ้น ก่อนเวอร์ชัน 2.1 FFmpeg จะตัดแต่งวิดีโอที่คีย์เฟรมที่ใกล้ที่สุดในทั้งสองกรณี ในเวอร์ชันใหม่ วิดีโอสุดท้ายจะใกล้เคียงกับช่วงเวลาที่กำหนดมากที่สุด

เราได้เพิ่ม -vcodec copy -acodec copy เพื่อรักษาตัวแปลงสัญญาณของวิดีโอต้นฉบับ มิฉะนั้น ffmpeg จะเข้ารหัสอีกครั้งเป็นตัวแปลงสัญญาณเริ่มต้น ขณะนี้วิดีโอไม่ได้เข้ารหัสซ้ำ และคำสั่งจะดำเนินการอย่างรวดเร็ว มาทำให้รายการนี้ง่ายขึ้นด้วยแฟล็ก -c copy

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

แฟล็ก -t สามารถถูกแทนที่ด้วย -to โดยระบุจุดสิ้นสุดแทนระยะเวลา ไม่สามารถใช้แฟล็กนี้กับวิดีโอขาเข้า:

Ffmpeg -ss 10 -i source_video.mp4 - ถึง 30 -c สำเนาผลลัพธ์.mp4

ทีมงานให้ผลลัพธ์ที่แตกต่างออกไป: วิดีโอสามสิบวินาทีจากหนึ่งในสิบของวินาทีของวิดีโอต้นฉบับ สิ่งนี้เกิดขึ้นเพราะ -ใช้ไทม์ไลน์ของ result.mp4 โดยที่วินาทีที่สามสิบเท่ากับวินาทีที่สี่สิบของ source_video.mp4 หากต้องการใช้มาตราส่วนดั้งเดิม ให้เพิ่มแฟล็ก -copyts วิธีนี้เราจะได้วิดีโอเดียวกันกับคำสั่งแรก:

Ffmpeg -ss 10 -i source_video.mp4 - ถึง 30 -สำเนา-c คัดลอก result.mp4

ตัวกรอง การเปลี่ยนความละเอียด

หนึ่งในเครื่องมือที่ทรงพลังที่สุดใน ffmpeg คือตัวกรอง พวกเขาสามารถเพิ่มเอฟเฟ็กต์ ซ้อนวิดีโอต่างๆ ซ้อนทับกัน และรวมไฟล์หลายไฟล์ไว้ในไฟล์เดียว เราสามารถดูรายการตัวกรองที่ติดตั้งได้โดยใช้คำสั่ง ffmpeg -filters ลองใช้มันเพื่อเปลี่ยนความละเอียดของวิดีโอ:

Ffmpeg -i source_video.avi -vf สเกล=640:480 source_preview.avi

เราใช้แฟล็ก -vf ระบุตัวกรองมาตราส่วนและความละเอียด 640:480 ตัวกรองนี้สามารถรักษาอัตราส่วนภาพและคำนวณความละเอียดแบบไดนามิกได้

การรวมตัวกรอง เร่งความเร็วในการเล่น

ffmpeg -i source_video.mp4 \ -filter_complex "setpts=0.5*PTS;atempo=2.0"เร่ง.mp4

เรารวมตัวกรองหลายตัวเข้าเป็นตัวกรองเดียวโดยใช้แฟล็ก filter_complex และได้รับไฟล์ที่เร่งความเร็วขึ้นครึ่งหนึ่ง หากต้องการทราบ ลองใช้ตัวกรองทีละรายการ

Ffmpeg -i source_video.mp4 -vf setpts=0.5*PTSเร่ง_video.mp4

เราเร่งการเล่นแทร็กวิดีโอโดยใช้ตัวกรอง setpts อย่างไรก็ตาม แทร็กเสียงไม่มีการเปลี่ยนแปลง และไฟล์จะมีความยาวเท่าเดิม: วิดีโอจะเล่นเร็วขึ้น 2 เท่า และเฟรมสุดท้ายจะหยุดทำงานตลอดครึ่งหลังของไฟล์ หากคุณลบแทร็กเสียงด้วยแฟล็ก -an ระยะเวลาของไฟล์ผลลัพธ์จะถูกกำหนดโดยแทร็กวิดีโอและจะยาวเป็นครึ่งหนึ่งของความยาวต้นฉบับ

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

Ffmpeg -i source_video.mp4 -af จังหวะ=2.0 -vnเร่ง_audio.mp3

ด้วยการเพิ่ม filter_complex และใช้ตัวกรองทั้งสอง เราเร่งความเร็วทั้งไฟล์

มาดำเนินการเดียวกันโดยใช้วิธีอื่น:

ffmpeg -f เชื่อมต่อ-i list.txt -c คัดลอก output.mp4

FFmpeg มีองค์ประกอบที่อ่านหรือเขียนสื่อในรูปแบบเฉพาะ เรียกว่าดีมัลติเพล็กซ์เซอร์และมัลติเพล็กเซอร์ -f concat เป็นตัวดีมัลติเพล็กซ์ที่นำไฟล์ข้อความที่มีรายการไฟล์มีเดียมาต่อกันเป็นไฟล์เดียว คุณสามารถดูองค์ประกอบอื่นๆ ได้โดยใช้คำสั่ง ffmpeg -formats

เนื้อหาของ list.txt:

ไฟล์ "input1.mp4" ไฟล์ "input2.mp4"

วิธีนี้สะดวกหากเรามีไฟล์จำนวนมากและจำเป็นต้องรวมเข้าด้วยกัน ไม่เข้ารหัสวิดีโอซ้ำและเร็วกว่าวิธีแรก

แต่วิธีแรกใช้บ่อยกว่า ประการแรก สามารถรับวิดีโอที่มีตัวแปลงสัญญาณที่แตกต่างกันเป็นอินพุตได้ ประการที่สอง มันให้ความยืดหยุ่นมากขึ้น ตัวอย่างเช่น หากเราต้องการเพียงส่วนหนึ่งของวิดีโอแรก เราสามารถใช้แฟล็ก -ss และ -t โปรดทราบว่าแฟล็กเหล่านี้มีผลกับไฟล์ input1.mp4 ไฟล์แรกเท่านั้น

Ffmpeg -ss 5 -t 2 -i input1.mp4 -i input2.mp4 \ -filter_complex " concat=n=2:v=1:a=1 [v] [a]" \ -map "[v]" - แผนที่ "[a]" -y result.mp4

ลายน้ำ

ตัวอย่างสุดท้ายที่เราจะดูคือการใส่ลายน้ำ ตัวกรองภาพซ้อนทับจะใช้เป็นอินพุตพิกัดของตำแหน่งของลายน้ำในวิดีโอสุดท้าย

วางลายน้ำไว้ตรงกลาง เมื่อทราบขนาดของวิดีโอต้นฉบับและรูปภาพ PNG คุณสามารถคำนวณพิกัดได้ด้วยตัวเอง ตัวอย่างเช่น สำหรับวิดีโอขนาด 1280x720 และลายน้ำขนาด 200x200 ตำแหน่งแนวนอนคือ x = (1280 - 200) / 2 = 540 และตำแหน่งแนวตั้งคือ y = (720 - 200) / 2 = 260 ดังนั้น ค่าตัวกรองจึงเป็น "overlay=540:260" อย่างไรก็ตาม จะสะดวกกว่าถ้าเขียนคำสั่งสากลเพื่อให้ ffmpeg คำนวณทุกอย่างให้เรา เราได้รับขนาดวิดีโอจากพารามิเตอร์ main_w และ main_h และลายน้ำจาก overlay_w และ overlay_h ต่อไป เราจะเขียนสูตรที่เราคำนวณพิกัดลงในค่าตัวกรอง "overlay=(main_w-overlay_w)/2:(main_h-overlay_h)/2" เสร็จแล้วเราได้รับคำสั่งให้ใส่ลายน้ำตรงกลาง:

Ffmpeg -i source_video.mp4 -i watermark.png \ -filter_complex "โอเวอร์เลย์=(main_w-overlay_w)/2:(main_h-overlay_h)/2"\ -codec: คัดลอก video_protected.mp4

ทวีต