ติดตั้งและใช้ FFmpeg บน Ubuntu 20.04

Install Use Ffmpeg Ubuntu 20



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

คู่มือนี้จะแสดงวิธีการติดตั้งและใช้งาน FFmpeg ใน Ubuntu 20.04







การติดตั้ง FFmpeg ใน Ubuntu

มีสองวิธีที่เป็นทางการในการติดตั้ง FFmpeg บน Ubuntu: จาก Ubuntu repo (v7.x) และจาก snap (v4.x) คุณควรเลือกวิธีการที่เหมาะสมที่สุดสำหรับคุณ ทั้งนี้ขึ้นอยู่กับความต้องการของคุณ



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



การติดตั้ง FFmpeg จาก Ubuntu Repo

นี่เป็นวิธีการเริ่มต้นสำหรับการติดตั้ง FFmpeg สิ่งที่คุณต้องทำคือบอก APT ให้คว้าและติดตั้งโปรแกรมจาก repo ซอฟต์แวร์เริ่มต้นของ Ubuntu





เปิดเครื่องเทอร์มินัล อัปเดตแคช APT และติดตั้ง FFmpeg

$sudoapt update



$sudoฉลาดติดตั้ง ffmpeg

ให้เราตรวจสอบว่าการติดตั้งสำเร็จหรือไม่ ขั้นแรก ทดสอบเวอร์ชัน FFmpeg ผ่านคำสั่งต่อไปนี้:

$ffmpeg -v

อย่าลืมตรวจสอบตัวเข้ารหัสและตัวถอดรหัสที่มีอยู่ ทำได้โดยป้อนคำสั่งต่อไปนี้:

$ffmpeg -ตัวเข้ารหัส

$ffmpeg -ตัวถอดรหัส

การติดตั้ง FFmpeg จาก snap

FFmpeg นั้นมีให้ในรูปแบบแพ็คเกจสแน็ปเช่นกัน หากคุณไม่ได้กำหนดค่า snap คุณสามารถติดตั้งได้ทันทีโดยใช้คำสั่งต่อไปนี้:

$sudoapt update&& sudoฉลาดติดตั้งsnapd-และ

$sudosnapติดตั้งแกนหลัก20&& sudosystemctl รีสตาร์ท snapd

ตอนนี้ ระบบของคุณควรพร้อมที่จะคว้าและติดตั้งแพ็คเกจ snap จากร้าน Snapcraft ตรวจสอบ FFmpeg บน Snapcraft .

$sudosnapติดตั้ง ffmpeg

ทดสอบการติดตั้ง FFmpeg โดยป้อนคำสั่งต่อไปนี้:

$ffmpeg -รุ่น

$ffmpeg -ตัวเข้ารหัส
$ffmpeg -ตัวถอดรหัส

การติดตั้ง FFmpeg จากซอร์สโค้ด

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

การสร้าง FFmpeg จากแหล่งที่มาต้องการการพึ่งพาหลายอย่าง ป้อนคำสั่งต่อไปนี้เพื่อดาวน์โหลดการพึ่งพา:

$sudoapt update

$sudoฉลาดติดตั้ง
$autoconf
$automake
$ สร้างสำคัญ
$ cmake
$ git-core
$ libass-dev
$ libfreetype6-dev
$ libgnutls28-dev
$ libsdl2-dev
$ libtool
$ libva-dev
$ libvdpau-dev
$ libvorbis-dev
$ libxcb1-dev
$ libxcb-shm0-dev
$ libxcb-xfixes0-dev
$ pkg-config
$ ข้อมูล
$wget
$ yasm
$ zlib1g-dev

ตอนนี้ เตรียมไดเร็กทอรีเฉพาะสำหรับจัดเก็บซอร์สโค้ดและไฟล์ไบนารีที่คอมไพล์แล้ว

$mkdir -pv~/ffmpeg_source ~/เป็น

ถึงเวลาเตรียมไลบรารีของบุคคลที่สามแล้ว สิ่งเหล่านี้มักใช้กับ FFmpeg หากคุณไม่ต้องการไลบรารี่เหล่านี้อย่างน้อยหนึ่งรายการ ให้ข้ามส่วนที่เกี่ยวข้องและไม่ต้องสนใจไลบรารีที่เกี่ยวข้อง ./configure ตัวเลือก.

  • NASM: แอสเซมเบลอร์ที่ห้องสมุดบางแห่งพึ่งพา
$sudoฉลาดติดตั้ง nasm

  • libx264: ตัวเข้ารหัสวิดีโอ H.264
$sudoฉลาดติดตั้ง -และlibx264-dev

  • libx265: ตัวเข้ารหัสวิดีโอ H.265 (หรือที่เรียกว่า HEVC)
$sudoฉลาดติดตั้ง -และlibx265-dev libnuma-dev

  • libvpx: ตัวเข้ารหัส/ตัวถอดรหัสวิดีโอ VP8/VP9
$sudoฉลาดติดตั้ง -และlibvpx-dev

  • libfdk-aac: ตัวเข้ารหัสเสียง AAC
$sudoฉลาดติดตั้ง -และlibfdk-aac-dev

  • libmp3lame: ตัวเข้ารหัสเสียง MP3
$sudoฉลาดติดตั้งlibmp3lame-dev
  • libopus: ตัวเข้ารหัส/ตัวถอดรหัสเสียง Opus
$sudoฉลาดติดตั้งlibopus-dev
  • libaom: ตัวเข้ารหัส/ตัวถอดรหัสวิดีโอ AV1 โปรดทราบว่าหากคุณจะใช้สิ่งนี้ การรวบรวมอาจล้มเหลว ตามวิกิ FFmpeg อย่างเป็นทางการ ดูเหมือนว่าแพ็คเกจนี้ยังไม่มี API ที่เสถียร ขอแนะนำให้หลีกเลี่ยงสิ่งนี้
$sudoฉลาดติดตั้ง -และlibaom-dev

ตอนนี้คุณพร้อมที่จะเริ่มสร้าง FFmpeg จากแหล่งที่มาแล้ว คว้าซอร์สโค้ดโดยออกสิ่งต่อไปนี้:

$ซีดี~/ffmpeg_source
$wget -หรือffmpeg-snapshot.tar.bz2 https://ffmpeg.org/เผยแพร่/ffmpeg-snapshot.tar.bz2

$ทาร์ -xvfffmpeg-snapshot.tar.bz2

$ซีดี ffmpeg

อัพเดตตัวแปรสภาพแวดล้อม PATH และรันสคริปต์การกำหนดค่า

$เส้นทาง='$HOME/เป็น:$PATH' PKG_CONFIG_PATH='$HOME/ffmpeg_build/lib/pkgconfig'./กำหนดค่า
$--prefix='$HOME/ffmpeg_build'
$--pkg-config-flags='--คงที่'
$--extra-cflags='-ผม$HOME/ffmpeg_build/รวม'
$--extra-ldflags='-NS$HOME/ffmpeg_build/lib'
$--extra-libs='-lpthread -lm'
$--overload='$HOME/เป็น'
$--enable-gpl
$--enable-gnutls
$--enable-libaom
$--enable-libas
$--enable-libfdk-aac
$--enable-libfreetype
$--enable-libmp3lame
$--enable-lipopus
$--enable-libvorbis
$--enable-libvpx
$--enable-libx264
$--enable-libx265
$--enable-nonfree

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

$sudoฉลาดติดตั้ง -และlibunistring-dev

ตอนนี้ เรียกใช้สคริปต์การกำหนดค่าอีกครั้ง

เรียกใช้ ทำ คำสั่งเพื่อเริ่มการคอมไพล์ FFmpeg ใช้แฟล็ก -j เพื่อรันการคอมไพล์แบบขนานเพื่อเร่งกระบวนการ

$เส้นทาง='$HOME/เป็น:$PATH' ทำ -j4

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

$sudo ทำ ติดตั้ง

$กัญชา -NS

โหลด bash shell อีกครั้งเพื่อรับรู้ตำแหน่งไบนารี FFmpeg ใหม่

$แหล่งที่มา~/.ข้อมูลส่วนตัว

ทดสอบการติดตั้ง FFmpeg ผ่านคำสั่งต่อไปนี้:

$ffmpeg -รุ่น

$ffmpeg -ตัวเข้ารหัส
$ffmpeg -ตัวถอดรหัส

ใช้FFmpeg

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

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

$ffmpeg-hide_banner-ผม <ป้อนข้อมูล> <ผลผลิต>

ให้เรามาดูการแปลงไฟล์เสียงกัน แปลงไฟล์ MP3 เป็น OGG

$ffmpeg-hide_banner-ผมdemo.mp3 demo.ogg

เมื่อแปลงไฟล์ ยังสามารถระบุตัวแปลงสัญญาณได้ ใช้แฟล็ก -c ตามด้วยชื่อของตัวเข้ารหัส/ตัวถอดรหัสที่รองรับ หรือสำเนาค่าพิเศษ ตัวอย่างเช่น คุณสามารถแปลง MP4 เป็นรูปแบบ WebM โดยใช้ตัวแปลงสัญญาณวิดีโอ libvpx และตัวแปลงสัญญาณเสียง libvorbis

$ffmpeg-hide_banner-ผมdemo.mp4 -c: v libvpx -c: libvorbis demo.webm

ในทำนองเดียวกัน ยังสามารถแปลงรูปแบบเสียงโดยใช้ตัวแปลงสัญญาณที่ระบุได้ ตัวอย่างเช่น คุณสามารถแปลงไฟล์ MP3 เป็น OGG โดยใช้ปุ่ม libopus ตัวแปลงสัญญาณ

$ffmpeg-hide_banner-ผมdemo.mp3 -c: a libopus demo.ogg

ความคิดสุดท้าย

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