Pipeline nhập
Nhập biến một thư mục tệp thành một mục trong danh mục mà không sửa một byte nào của tệp. Trang này mô tả quy trình phía sau luồng trong hướng dẫn sử dụng.
Thư mục được theo dõi được giám sát bằng sự kiện hệ thống tệp của nền tảng, debounce, và quét lại khi thay đổi; lượt quét đối chiếu với danh sách ứng viên hiện có thay vì bắt đầu lại. Scanner phân loại một thư mục là một bản phát hành (âm thanh nằm trực tiếp bên trong, hoặc thư mục con dạng đĩa như CD1/CD2), hoặc đệ quy vào nó như một bộ sưu tập. Tệp được phân loại theo phần mở rộng thành âm thanh, artwork và tài liệu, rồi âm thanh được thăm dò: codec quan trọng là codec FFmpeg tìm thấy trong byte, không phải phần mở rộng tệp. Thư mục chứa marker tải xuống chưa xong bị loại trừ cho đến khi tải xong.
Một CUE sheet biến một ảnh âm thanh thành danh sách track. Parser xử lý pregap và postgap, performer và ISRC theo từng track, cả ảnh một tệp và bố cục CUE một tệp mỗi track. Ranh giới track chuyển từ frame CUE (1/75 giây) sang vị trí sample chính xác, thứ sau đó trở thành các cửa sổ byte và sample mà phát lại dùng.
Dự thảo siêu dữ liệu
Liên kết đến phần nàyMỗi ứng cử viên lưu một bản thảo siêu dữ liệu có thể chỉnh sửa và một nguồn tùy chọn. Bản thảo có thể trống, được nhập trực tiếp, được nhập từ một bản phát hành bên ngoài, hoặc được nhập từ một bức ảnh chụp của thẻ tập tin được lưu. Các ghi chép nguồn ghi nơi bản thảo hiện tại bắt đầu; các bản chỉnh sửa sau đó không xóa nó. Nhập trực tiếp và bản thảo đã xóa không có nguồn.
Hộp siêu dữ liệu trên cùng hiển thị hoặc bản thảo, trình duyệt Tìm trên mạng, hoặc trình duyệt Thẻ của tệp. Mở hoặc đóng trình duyệt không viết lại bản thảo. Áp dụng thay thế một nguồn thay thế bản thảo, nguồn gốc của nó, và trang bìa nguồn đã chọn trong một giao dịch cơ sở dữ liệu trong khi giữ vai trò tập tin, liên kết CUE, gán đĩa, và các quyết định vẽ khác.
Tìm trên mạng
Liên kết đến phần nàyTìm trên mạng là con đường duy nhất chạy nhận dạng. Nó tính toán một Disc ID từ một bản ghi lấy hoặc trang CUE, nhận dạng mã vạch và văn bản danh mục với OCR, truy vấn MusicBrainz và Discogs, và tương ứng với kết quả. Thẻ âm thanh gắn không phải là bằng chứng nhận dạng trực tuyến.
Thiết lập Nguồn siêu dữ liệu mặc định có ba giá trị. Không có tạo bản thảo trống và không bắt đầu công việc siêu dữ liệu. Thẻ của tệp đọc và áp dụng ảnh chụp thẻ. Tìm trên mạng mở quy trình trực tuyến. Chế độ Tìm trên mạng mặc định chọn Tự động, đưa việc trích xuất bằng chứng, truy vấn nhà cung cấp và đối chiếu vào hàng đợi, hoặc Tìm kiếm thủ công, không bắt đầu nhận dạng. Tìm trên mạng dùng chế độ đã chọn cho mọi ứng viên; Tự động không khởi động lại thao tác đang chạy hoặc đã hoàn tất.
Thẻ của tệp
Liên kết đến phần nàyThẻ của tệp đọc các thẻ âm thanh và siêu dữ liệu CUE nhồi nhét lười biếng trừ khi nó là cấu hình mặc định cho một ứng cử viên mới phát hiện. Xem trước lưu một bức ảnh chụp được dán tem với việc tạo quét ứng cử viên, bản sửa đổi tập tin, và các tập tin âm thanh quan sát. Áp dụng thay thế nó bằng bản thảo từ chính xác bức ảnh chụp đó. Nhập khẩu tiêu thụ cùng một bức ảnh chụp và thất bại trước khi thư viện viết nếu tem hoặc quan sát của nó thay đổi; nó không đọc một câu trả lời khác.
Đăng nhập trực tiếp không thực hiện I/ O siêu dữ liệu. Các trường phát hành và dấu vết của bản thảo trống có thể được chỉnh sửa ngay lập tức, và nó trở nên có thể nhập khi các trường cần thiết và bản đồ được xác nhận. Danh sách ứng cử viên không xử lý nguồn thiếu như một lỗi hoặc yêu cầu chú ý.
MusicBrainz được truy vấn ẩn danh với nhịp nghiêm ngặt một yêu cầu mỗi giây. Discogs xác thực bằng token cá nhân của người dùng từ keyring, được điều tiết và thử lại trong giới hạn tốc độ của nó, và token bị từ chối được báo đúng như vậy để giao diện có thể gắn cờ thay vì để tìm kiếm thất bại im lặng. Phản hồi được lưu đệm theo phiên. Khi một bản phát hành được chọn, những gì bae dùng từ tài liệu của nó — thông tin album và bản ép, danh sách bài hát đầy đủ kèm người tham gia và tác phẩm, các lựa chọn bìa, và tên các danh mục khác gọi nó — được trích xuất vào cơ sở dữ liệu một lần; JSON thô không được giữ lại.
Xác nhận một lượt nhập chạy theo thứ tự:
- Xác minh giải mã: mọi track được giải mã từ đầu đến cuối; một bản rip không thể giải mã đầy đủ thất bại trước khi bất cứ thứ gì được ghi.
- Phân tích độ lớn âm thanh: integrated loudness và true peak được đo theo từng track và từng album trong cùng lượt giải mã đó, lưu cho dùng replay-gain.
- Chọn bìa: art đã chọn (từ xa, ảnh thư mục, hoặc nhúng) được render lại thành thumbnail hiển thị; bản gốc được giữ trong các tệp của bản phát hành nếu nó đến từ thư mục.
- Ghi nguyên tử: bản phát hành, track, ghi công, danh tính, định dạng, segment, tệp và bìa commit trong một transaction. Không có trạng thái nhập nửa chừng.
Bản phát hành được tạo với tham chiếu tới tệp của người dùng tại chỗ. Với một lượt nhập lên đám mây, coven đọc và tính hash từng tệp trước khi ghi, và chính lần ghi đó chuẩn bị mọi tệp với coven, trỏ từng hàng tới tệp của nó, và đưa lượt tải lên vào hàng đợi. Một lượt nhập cục bộ thì thay vào đó ghi đường dẫn, kích thước và thời điểm sửa đổi của từng tệp trên thiết bị này; byte của nó chỉ được đọc nếu sau này bản phát hành được chuyển lên đám mây. Dù theo cách nào, byte gốc của tệp vẫn là nguồn sự thật trong suốt quá trình; không thứ gì người dùng đưa cho bae bị xóa hoặc thay đổi.
Nhận ra bản rip
Liên kết đến phần nàyMỗi lần nhập tạo một bản phát hành có ID ngẫu nhiên mới và các hàng bản nhạc, tệp riêng. Mỗi thiết bị ghi vào local_release_origin một SHA-256 của các đường dẫn tương đối đã sắp xếp, kích thước và thời điểm sửa đổi của các tệp mà mỗi lần nhập của nó đã đọc; bản ghi này không bao giờ được đồng bộ. Một thư mục có hash do thiết bị này ghi lại nằm trong thẻ đã hoàn tất dù được chuyển đi đâu, và hàng của nó nêu bản phát hành duy nhất đã nhập từ đó. Nhập lại cùng các tệp đó trên thiết bị này sẽ thất bại, và thẻ đã hoàn tất không có thao tác nhập lại.