10 điểm bởi GN⁺ 2024-04-06 | 1 bình luận | Chia sẻ qua WhatsApp
  • Phát hành FFmpeg 7.0 phiên bản "Dijkstra"
  • Những thay đổi chính gồm có bộ giải mã VVC thử nghiệm, hỗ trợ IAMF, công cụ CLI ffmpeg đa luồng, v.v.
  • Không tương thích với các phiên bản trước và các API không dùng nữa từ trước 6.0 đã bị loại bỏ
  • Với người dùng thư viện, thay đổi lớn nhất là API bố cục kênh dựa trên bitmask cũ được thay thế bằng API AVChannelLayout
  • Cần trình biên dịch tương thích C11 để build mã nguồn
  • Nhiều tính năng đã được bổ sung như định dạng và codec mới, bộ lọc, API, sửa lỗi, v.v.

Ý kiến của GN⁺

  • FFmpeg là một trong những dự án mã nguồn mở quan trọng nhất trong xử lý đa phương tiện, là công cụ mạnh mẽ có thể hỗ trợ và chuyển đổi nhiều định dạng âm thanh và video khác nhau.
  • Ở phiên bản mới, đặc biệt hỗ trợ đa luồng và khả năng tăng tốc phần cứng đã được tăng cường, giúp xử lý đa phương tiện hiệu năng cao trở nên khả thi.
  • Các bản phát hành lớn của FFmpeg thường bao gồm thay đổi API, vì vậy cần kiểm tra khả năng tương thích với hệ thống hiện có và thực hiện quá trình cập nhật.
  • Sự phát triển liên tục của FFmpeg mang đến các công cụ ngày càng tốt hơn cho nhà sáng tạo nội dung đa phương tiện và nhà phát triển, từ đó sẽ thúc đẩy sáng tạo nội dung và đổi mới công nghệ.

1 bình luận

 
GN⁺ 2024-04-06
Ý kiến Hacker News
  • FFmpeg là một phần mềm đáng kinh ngạc. Là một người dùng Windows vào đầu những năm 2000, các thiết bị thời đó kén chọn hơn nhiều so với ngày nay trong việc hỗ trợ các codec video nhất định. Khi tôi 11 tuổi, việc chuyển một tệp DivX .avi sang MP4 để phát được trên iPod Video hoàn toàn không hề dễ dàng. Việc phát hiện ra FFmpeg và thấy nó được cung cấp miễn phí, trong khi trước đó thứ tôi cần chỉ có thể tìm thấy giữa mớ shareware tệ hại, thực sự là một bước ngoặt. Giờ đã 20 năm trôi qua và đây vẫn là một công cụ tuyệt vời mà tôi còn dùng rất thường xuyên.*

  • Tính năng tuyệt vời nhất được thêm vào FFmpeg gần đây là các mô hình ngôn ngữ lớn có thể dịch "lệnh FFmpeg để trộn một tệp âm thanh vào một tệp video" thành một lệnh FFmpeg thực sự chạy được. Tất nhiên tôi nói đùa thôi. FFmpeg rất tuyệt. Nhưng tôi thật sự cần một trợ lý AI giúp mình chạy khoảng 12 lệnh FFmpeg mỗi năm một cách dễ dàng và nhanh chóng.*

  • Có những cải tiến ở tầng thấp có thể khiến FFmpeg hữu ích hơn với người dùng phổ thông. Có vô số trang web tệ hại cung cấp dịch vụ chuyển đổi tệp, nhưng chúng đầy quảng cáo và tình trạng quyền riêng tư/bảo mật thì rất mơ hồ. Khi người dùng không cần phải tải tệp của họ lên bên thứ ba, việc bắt họ tải xuống phần mềm kỹ thuật là điều khó khăn - và việc họ không tin tưởng nó là hoàn toàn có lý. Tuy nhiên, đã có một phiên bản FFmpeg chạy bằng WASM được host trên Netlify [1]. Nó cho phép tải gói WASM về trình duyệt và thực hiện các chuyển đổi/biến đổi ngay trong trình duyệt theo ý muốn. Nó được sandbox và hiệu năng cũng khá tốt! Nếu công cụ này a) được cập nhật thường xuyên, b) có giao diện người dùng tốt hơn, không phải CLI, dành cho người dùng hằng ngày và c) có thể truy cập qua một tên miền dễ tìm trên Google, thì nó có thể giải quyết tất cả các vấn đề nêu trên. [1]: https://ffmpegwasm.netlify.app/*

  • Hôm nay tôi đã thử build FFmpeg qua vcpkg, nhưng nhiều dependency phụ thuộc gián tiếp vào liblzma, còn việc tải mã nguồn liblzma từ GitHub đã bị vô hiệu hóa sau vụ backdoor xz gần đây.*

  • Tôi đã dùng bộ lọc xstack trong vài năm. Tôi lấy nhiều đoạn video ngắn rồi nối thành 4 đoạn (ví dụ: độ dài khác nhau như 23+24+26+27), sau đó dùng xstack thành một video mosaic 2x2. Trước đây tôi làm trong một bước duy nhất, nhưng giờ theo lời khuyên thì tôi làm bằng 4 bước concat và 1 bước xstack. Tôi chưa profile/đo thời gian để xem cách nào nhanh hơn, nhưng nó hoạt động khá tốt, dù thường xuyên xuất hiện đủ kiểu cảnh báo lạ.*

  • Có vẻ như rust-ffmpeg đã hỗ trợ 7.0 rồi: https://github.com/zmwangx/rust-ffmpeg/pull/178*

  • FFmpeg rất khó học, nhưng một khi đã nắm được thì dùng cực kỳ thích. Khi làm video YouTube trong lúc chơi Demon's Souls và quyết định có trang bị vật phẩm hay không bằng cách tung đồng xu, tôi muốn thêm hiệu ứng hoạt hình tung xu và hiệu ứng âm thanh lên màn hình. Sau một hồi vật lộn, tôi đã tạo được một bộ khung hình trong suốt, rồi dùng filter_complex của FFmpeg để thêm chuỗi ảnh như một luồng video, overlay nó lên video gốc và thêm hiệu ứng âm thanh. Tất cả việc đó, cùng với phụ đề có sẵn, trộn các kênh âm thanh, thay đổi kích thước/nén video, đều được thực hiện bằng một lệnh FFmpeg CLI duy nhất (rất dài!). FFmpeg là một trong những kỳ quan đích thực của FOSS.*

  • Trong khi đó, FFmpeg mặc định trên MacPorts là phiên bản 4.4.4 [1]. Cũng có ffmpeg6, là phiên bản 6.1.1. [2] [1]: https://ports.macports.org/port/ffmpeg/ [2]: https://ports.macports.org/port/ffmpeg6/*

  • Tôi khá bất ngờ khi thấy có MPEG-5 EVC. Tiếc là bộ giải mã VVC vẫn chưa được đưa vào (ít nhất là chính thức). Có lẽ phải chờ đến phiên bản 7.1. Tôi vẫn đang chờ x266.*