MusicBrainz Picard 3.0 chính thức ra mắt: hệ thống plugin mới, giao diện nâng cấp và hỗ trợ Apple Silicon
MusicBrainz Picard 3.0 đánh dấu bước chuyển mình lớn sau ba năm phát triển với nền tảng Qt6, hệ thống plugin hoàn toàn mới, cùng nhiều cải tiến về giao diện, xử lý ảnh bìa và gửi ISRC. Phiên bản này cũng bổ sung bản dựng gốc cho chip Apple Silicon và yêu cầu hệ điều hành tối thiểu cao hơn.

MusicBrainz Picard — trình chỉnh sửa thẻ nhạc (tag editor) chính thức của cơ sở dữ liệu MusicBrainz — vừa phát hành phiên bản lớn 3.0. Đây là thành quả của gần ba năm làm việc, với 687 pull request được hợp nhất, gần 6.800 commit từ hơn 100 cộng tác viên và gần 400 vé lỗi được xử lý.
Phiên bản mới mang đến nhiều thay đổi quan trọng, nổi bật nhất là việc nâng cấp lên Qt6 và hệ thống plugin được thiết kế lại từ đầu. Bên cạnh đó, người dùng cũng sẽ nhận được hàng loạt cải tiến về giao diện, xử lý ảnh bìa, gửi mã ISRC và nhiều tính năng khác.
Giao diện người dùng được làm mới toàn diện
Picard 3 chuyển từ Qt5 sang Qt6, giúp ứng dụng theo kịp các nền tảng desktop hiện đại. Thay đổi này mang lại hỗ trợ tốt hơn cho việc mở rộng màn hình (screen scaling) và đặc biệt là chế độ tối (dark mode) trên mọi hệ điều hành. Trên Windows, vấn đề cũ về phông chữ co giãn không đồng nhất đã được giải quyết. Người dùng giờ có thể chuyển đổi giữa chế độ sáng và tối mà không cần khởi động lại ứng dụng.
Giao diện MusicBrainz Picard 3.0 với nhiều cải tiến
Một trong những tính năng đáng chú ý nhất là cột tùy chỉnh (custom columns) do cộng tác viên knguyen1 phát triển. Trước đây, người dùng chỉ có thể chọn từ một số cột được định nghĩa sẵn. Nay họ có thể tự tạo cột mới với nội dung được xác định bằng script, mang lại sự linh hoạt cao trong việc hiển thị thông tin. Một cột "Match" cũng được thêm sẵn để sắp xếp các bản phát hành theo chất lượng khớp.
Menu ngữ cảnh cho phép tùy chỉnh các cột hiển thị
Ngoài ra, người dùng có thể lọc danh sách theo trường và từ khóa tìm kiếm, sao chép nhiều thẻ cùng lúc để dán sang thẻ khác hoặc vào bảng tính, và xem trực tiếp sự khác biệt giữa thẻ hiện có và thẻ mới. Lần đầu khởi động, Picard sẽ hiển thị trình hướng dẫn thiết lập (setup wizard) giúp người mới cấu hình những thông số thiết yếu, kèm chế độ hướng dẫn khi sử dụng các tính năng lần đầu.
Trình hướng dẫn thiết lập khi khởi động lần đầu
Hệ thống plugin hoàn toàn mới
Bên cạnh việc chuyển sang Qt6, hệ thống plugin mới là thay đổi quan trọng nhất của Picard 3. Hệ thống cũ tồn tại nhiều hạn chế: Picard tải và chạy một phần mã của mọi plugin đã cài đặt mỗi lần khởi động, kể cả khi plugin đó bị tắt, dễ gây ra các hành vi ngoài ý muốn. Về phía nhà phát triển, việc phải đẩy toàn bộ mã vào kho Git trung tâm cũng gây khó khăn cho các plugin phức tạp.
Hệ thống mới giải quyết những vấn đề này bằng cách tách biệt siêu dữ liệu và mã nguồn của plugin (bắt buộc có tệp MANIFEST.toml), định nghĩa API chuẩn có hỗ trợ kiểu dữ liệu, và quản lý phiên bản dựa trên Git. Người dùng có thể cài đặt, cập nhật plugin từ kho đăng ký trung tâm, từ kho Git của bên thứ ba hoặc từ thư mục cục bộ.
Hệ thống cũng phân chia các mức độ tin cậy (chính thức, tin cậy, cộng đồng, không tin cậy) và cho phép đưa plugin vào danh sách đen từ xa để phản ứng nhanh với các vấn đề bảo mật. Một công cụ dòng lệnh mới tên picard-cli giúp quản lý plugin và hồ sơ tùy chọn ngay từ terminal. Plugin giờ đây cũng có hệ thống dịch riêng và không gian cấu hình độc lập.
Điều đáng lưu ý là plugin của Picard 2 không tương thích với phiên bản mới và cần được chuyển đổi. Hiện đã có 30 plugin sẵn sàng, bao gồm cả những plugin được chuyển từ v2 lẫn các plugin hoàn toàn mới.
Trang tùy chọn plugin mới với danh sách plugin đã cài đặt
Xử lý ảnh bìa và tính năng gắn thẻ nâng cao
Picard 3 cho phép lọc và xử lý ảnh bìa tải về từ các nhà cung cấp. Người dùng có thể bỏ qua ảnh dưới kích thước nhất định, tự động thay đổi kích thước hoặc chuyển đổi định dạng ảnh. Tính năng này được phát triển trong khuôn khổ chương trình Google Summer of Code 2024 bởi cộng tác viên twodoorcoupe, và có thể được mở rộng thông qua plugin.
Về gắn thẻ, Picard 3 hỗ trợ lời bài hát đồng bộ (synced lyrics) với thẻ %syncedlyrics% theo định dạng LRC, cùng thẻ %musicbrainz_composerid% cho mã nghệ sĩ của nhạc sĩ soạn nhạc. Nhiều biến mới ra đời phục vụ script gắn thẻ và đặt tên tệp, bao gồm %_genres%, %_folksonomy_tags%, %_broadcast_date%, %_iswc%, %_filesize% và các biến chứa quốc gia, ghi chú phân biệt của nghệ sĩ.
Hai hàm script mới $get_new() và $get_original() cho phép truy xuất rõ ràng giá trị gốc hoặc giá trị mới của một biến, trong khi $rsearch bổ sung tham số tùy chọn để chỉ định nhóm bắt trong biểu thức chính quy.
Trình phát nhạc và quản lý phiên làm việc
Trình phát nhạc tích hợp được cải tiến đáng kể nhờ QtMultimedia trên nền Qt6, mang lại hỗ trợ đa nền tảng tốt hơn cho nhiều định dạng âm thanh và khả năng điều chỉnh cao độ khi thay đổi tốc độ phát. Trình phát hỗ trợ "Now Playing" trên macOS, điều khiển được qua các công cụ tương thích MPRIS2 trên Linux và có thể gửi lượt nghe lên ListenBrainz.
Tính năng lưu và khôi phục phiên làm việc (session) cho phép giữ nguyên trạng thái không gian làm việc, bao gồm vị trí tệp, các chỉnh sửa siêu dữ liệu thủ công và một số tùy chọn cấu hình. Người dùng cũng có thể xuất và nhập hồ sơ tùy chọn (option profile) để sao lưu hoặc chia sẻ, với cơ chế tự động loại bỏ các thông tin nhạy cảm như dữ liệu xác thực.
Hỗ trợ hệ điều hành và những thay đổi phá vỡ
Picard 3 chính thức có bản dựng gốc cho macOS ARM64 (Apple Silicon), mang lại hiệu năng tốt hơn so với chạy qua lớp mô phỏng Rosetta 2. Người dùng Việt Nam sở hữu Mac chip M-series nên tải đúng phiên bản ARM64 thay vì bản Intel.
Do nâng cấp lên PyQt6/Qt6 và yêu cầu Python tối thiểu 3.10, Picard 3 loại bỏ hỗ trợ các hệ điều hành cũ. Cụ thể, người dùng cần Windows 10 trở lên, macOS 13 "Ventura" trở lên, hoặc Linux có Qt 6.6+ và Python 3.10+. Những ai không thể nâng cấp hệ điều hành nên tiếp tục dùng Picard 2, và nhóm phát triển dự kiến phát hành một bản cập nhật cuối cho dòng 2.x.
Một số thay đổi phá vỡ khác cần lưu ý: tên sắp xếp của nghệ sĩ không còn được dùng mặc định làm bản dịch tên (có thể bật lại trong tùy chọn Metadata), và thẻ lyrics cùng comments giờ luôn hỗ trợ ngôn ngữ theo định dạng lyrics:lang:description.
Cải thiện khớp bản phát hành và gửi ISRC
Thuật toán khớp tệp với bản phát hành và bản thu âm sau thao tác Lookup đã được viết lại hoàn toàn, hứa hẹn cho kết quả chính xác hơn. Nhóm phát triển cũng xây dựng khung kiểm thử toàn diện để phát hiện sớm các suy giảm hiệu năng trong tương lai.
Picard 3 hỗ trợ trích xuất và gửi mã ISRC (International Standard Recording Code) lên MusicBrainz. Người dùng có thể tra cứu đĩa CD từ thẻ nhạc, tìm kiếm tệp theo ISRC có sẵn, và gửi các ISRC mới thông qua hộp thoại riêng trong menu File.
Cuối cùng, công cụ dòng lệnh picard-cli hiện hỗ trợ quản lý plugin và xuất/nhập hồ sơ tùy chọn, trong khi tài liệu hướng dẫn trực tuyến đã được cập nhật và đặt trên ReadTheDocs với ba ngôn ngữ: Anh, Pháp và Hà Lan.
Picard 3.0 là phần mềm miễn phí, mã nguồn mở trên GitHub và có thể tải về từ trang chủ của Picard. Lưu ý rằng bản cài qua Microsoft Store và gói Flatpak cho Linux sẽ được cập nhật sau.


