FFmpeg là một công cụ chuyển đổi âm thanh và video đa nền tảng, mã nguồn mở. Nó hỗ trợ hầu hết các codec tiêu chuẩn công nghiệp và có thể chuyển đổi và chuyển mã các tệp phương tiện từ định dạng này sang định dạng khác. Vdx là một trình bao bọc dòng lệnh trực quan để FFmpeg. Nó là một dự án mã nguồn mở được viết bằng NodeJS và được phát hành theo giấy phép của MIT.

Sử dụng Vdx, chúng tôi có thể thực hiện hầu hết các hoạt động mã hóa và chuyển mã âm thanh và video phổ biến như được liệt kê bên dưới:

  • Cắt video theo kích thước được chỉ định,
  • Chuyển đổi tệp âm thanh / video sang định dạng tệp khác,
  • Thay đổi tốc độ khung hình,
  • Xóa âm thanh khỏi tệp video,
  • Thay đổi kích thước video thành một thứ nguyên cụ thể,
  • Đảo ngược các video,
  • Xoay video theo các góc khác nhau,
  • Thay đổi tốc độ phát lại âm thanh / video,
  • Cắt âm thanh / video theo thời lượng được chỉ định,
  • Tăng hoặc giảm âm lượng của âm thanh / video,
  • Chạy đồng thời nhiều thao tác trên nhiều tệp,
  • In lệnh FFmpeg cơ bản đang được sử dụng cho một hoạt động cụ thể,
  • Và nhiều hơn nữa.

Cài đặt vdx trên Linux

Như đã nêu, vdx sử dụng FFmpeg để mã hóa video và được viết bằng Nodejs. Vì vậy, hãy đảm bảo rằng bạn đã cài đặt FFmpeg và Nodejs trên hộp Linux của mình. Các hướng dẫn sau đây sẽ giúp bạn cài đặt chúng trên Linux.

Sau khi cài đặt FFmpeg và Nodejs, hãy chạy lệnh sau để cài đặt vdx trên hệ thống Linux của bạn:

$ npm install --global vdx

Cách sử dụng vdx (trình bao bọc dòng lệnh cho FFmpeg) để xử lý video và âm thanh

Việc sử dụng Vdx cũng dễ dàng như cách sử dụng của ffmpeg. Cú pháp chung của vdx là:

$ vdx <pattern> [options]

Vdx hỗ trợ các hoạt động xử lý âm thanh và video khác nhau. Dưới đây là một số ví dụ để bắt đầu với vdx.

1. Cắt video

Vdx có thể cắt một video nhất định thành chiều cao và chiều rộng cụ thể mà bạn chọn bằng cách sử dụng -c, –crop. Ví dụ: lệnh sau sẽ cắt video.mkv tệp thành 640 x 360 pixel:

$ vdx video.mkv --crop=640,360

Lệnh trên sẽ cắt video thành chiều rộng 640 điểm ảnh, chiều cao 360 điểm ảnh.

Sau khi hoàn thành thành công, bạn sẽ thấy kết quả sau:

✔ video.mkv › build/video.mkv

Video đã xử lý sẽ được lưu trong một thư mục có tên “xây dựng” trong của bạn $HOME. Bạn có thể thay đổi vị trí đầu ra này với -o, –output như bên dưới.

$ vdx video.mkv --crop=640,360 --output=/home/fashguide/Videos

Bạn thậm chí có thể cắt video từ các vị trí cụ thể tức là tọa độ.

Ví dụ: Nếu bạn muốn xem một video có chiều rộng 640 pixel và một chiều cao 360 pixelbắt đầu từ vị trí (20,15)sử dụng lệnh này:

$ vdx video.mkv --crop=20,15,640,360

Bạn cũng có thể xử lý nhiều video cùng loại bằng cách sử dụng các ký tự đại diện. Lệnh sau sẽ xử lý tất cả .mkv:

$ vdx '*.mkv' --crop=640,360

2. Chuyển đổi tệp sang định dạng khác nhau

Nếu bạn muốn chuyển đổi âm thanh hoặc video sang một định dạng khác, hãy sử dụng -f, –format.

$ vdx video.mkv --format mp4

Lệnh này chuyển đổi định dạng video .mkv đến .mp4.

3. Thay đổi tốc độ khung hình

Tốc độ khung hình là số lượng khung hình video riêng lẻ mà máy ảnh của bạn chụp, mỗi giây. Để thay đổi tốc độ khung hình của video, hãy sử dụng -fp, –fps:

$ vdx video.mkv --fps=30

Tốc độ khung hình càng cao, video sẽ càng mượt mà.

4. Xóa âm thanh khỏi video

Để tách âm thanh khỏi video, hãy sử dụng -na, –no-audio.

$ vdx video.mkv --no-audio

Tôi không biết tại sao các nhà phát triển không cung cấp cho chúng tôi tùy chọn để thêm âm thanh vào video. Nó có thể hữu ích khi tạo video với bài hát hoặc bản nhạc yêu thích của chúng tôi.

5. Thay đổi kích thước video

Để thay đổi kích thước video thành kích thước cụ thể, hãy sử dụng -r, –resize.

$ vdx video.mkv --resize=360,640

Lệnh này sẽ thay đổi kích thước video đã cho thành chiều rộng 360, chiều cao 640.

Nếu bạn muốn tỷ lệ khung hình của video, hãy đặt <width> hoặc <height> đến -1.

Ví dụ, để thiết lập width đến 360 và duy trì tỷ lệ khung hình, sử dụng lệnh sau:

$ vdx video.mkv --resize=360,-1

Tương tự, để thiết lập height đến 640, duy trì tỷ lệ khung hình, lệnh sẽ là:

$ vdx video.mkv --resize=-1,640

6. Đảo ngược video

Các video có thể được đảo ngược bằng cách sử dụng -rv, –reverse.

$ vdx video.mkv --reverse

Nếu bạn là video kết quả, nó sẽ phát từ cuối đến đầu tức là ngược lại.

7. Xoay video

Vdx có thể xoay các video nhất định theo các góc cụ thể bằng cách sử dụng -ro, –rotate. Các góc được hỗ trợ là 90 độ theo chiều kim đồng hồ. 90 độ ngược chiều kim đồng hồ và 180 độ.

Để xoay video đã cho sang 90 độ theo chiều kim đồng hồ, hãy sử dụng lệnh sau:

$ vdx video.mkv --rotate=90

Xoay video 90 độ ngược chiều kim đồng hồ:

$ vdx video.mkv --rotate=-90

Xoay video 180 độ:

$ vdx video.mkv --rotate=180

8. Thay đổi tốc độ phát lại

Tốc độ phát lại của tệp âm thanh / video nhất định có thể được điều chỉnh bằng cách sử dụng -s, –speed.

Để giảm một nửa tốc độ phát lại, hãy sử dụng:

$ vdx video.mkv --speed=0.5

Để tăng gấp đôi tốc độ phát lại:

$ vdx video.mkv --speed=2

9. Cắt các tệp phương tiện

Đôi khi, bạn có thể muốn cắt một phần khỏi tệp âm thanh hoặc video bằng cách sử dụng thời gian bắt đầu và kết thúc. Nếu vậy, bạn có thể cắt tệp âm thanh hoặc video bằng cách sử dụng -t, –trim.

Nếu bạn muốn cắt video đã cho từ thời điểm 1:30 đến cuối tệp video, hãy sử dụng lệnh sau:

$ vdx video.mkv --trim=1:30

Bạn cũng có thể chỉ định cả thời gian bắt đầu và kết thúc như bên dưới:

$ vdx video.mkv --trim=1:30,2:30

10. Tăng hoặc giảm âm lượng

Cũng giống như tốc độ phát lại, chúng tôi có thể tăng hoặc giảm âm lượng của (các) tệp video bằng cách sử dụng -vo, –volume.

Để giảm một nửa âm lượng từ một tệp video, hãy chạy:

$ vdx video.mkv --volume=0.5

Tăng gấp đôi âm lượng của một tệp video:

$ vdx video.mkv --volume=2

11. Chạy đồng thời nhiều thao tác trên nhiều tệp

Vdx có thể xử lý đồng thời nhiều tệp phương tiện với nhiều tùy chọn khác nhau.

$ vdx '*.mkv' --format=mp4 --fps=30 --resize=360,640 --volume=2 --trim=1:30,2:30 --rotate=90

Lệnh trên sẽ chuyển đổi tất cả các tệp định dạng .mkv sang định dạng .mp4, thay đổi tốc độ khung hình thành 30 khung hình / giây, thay đổi kích thước chúng thành chiều rộng 360 và chiều cao 640, tăng gấp đôi âm lượng, cắt chúng từ 1:30 đến 2:30 và xoay chúng đến 90 độ theo chiều kim đồng hồ.

12. In lệnh FFmpeg bên dưới mà vdx sử dụng

Như đã nói vdx chỉ là trình bao bọc cho chương trình FFmpeg. Bên cạnh đó, Vdx sử dụng FFmpeg để xử lý video. Nếu bạn muốn biết lệnh FFmpeg mà vdx sử dụng trong khi thực hiện một thao tác cụ thể, hãy sử dụng -d, –debug.

$ vdx video.mkv --no-audio --debug

Đầu ra mẫu:

/usr/bin/ffmpeg -i 'video.mkv' -an -codec:v copy -y 'build/video.mkv'
✔ video.mkv › build/video.mkv

Như bạn có thể thấy trong đầu ra ở trên, lệnh FFmepg thực tế mà vdx để tách âm thanh khỏi video là:

ffmpeg -i 'video.mkv' -an -codec:v copy -y 'build/video.mkv'

Tìm sự giúp đỡ

Để biết cách sử dụng chung của tiện ích vdx và tất cả các tùy chọn có sẵn, hãy tham khảo phần trợ giúp bằng cách chạy lệnh sau:

$ vdx --help

Vdx chỉ hỗ trợ một tá tùy chọn cơ bản. FFmpeg có rất nhiều tùy chọn để thực hiện tất cả các loại hoạt động xử lý video nâng cao. Tôi đã biên dịch hơn 20 lệnh FFmpeg phổ biến và được sử dụng thường xuyên nhất. Nếu bạn muốn tìm hiểu về các lệnh FFmpeg, hãy tham khảo hướng dẫn sau:

Nếu bạn chỉ yêu cầu các tác vụ mã hóa video cơ bản, vdx là quá đủ!