Lời bài hát là phần từ ngữ của một bài hát. Trong metadata, trường Lyrics lưu phần lời đó dưới dạng văn bản bên trong tệp âm thanh hoặc video. Một báo cáo từ ffprobe cũng có thể hiển thị một cờ Lyrics.
Tiêu chuẩn ID3v2 mô tả trường văn bản này là lời của một bài hát hoặc bản chép lại bằng chữ của các hoạt động giọng nói khác. Văn bản được lưu tách biệt với âm thanh, nên bạn chỉ có thể đọc nó bằng phần mềm đọc được trường này.
Những tệp nào chứa nó
Mỗi định dạng tệp lưu lời bài hát trong một tên trường riêng. Đây là tên trường trong các định dạng phổ biến:
- MP3: các khung ID3v2
USLTcho văn bản thuần vàSYLTcho văn bản có thời gian. - WAV và AIFF: dùng cùng các khung ID3v2, nếu tệp có thẻ ID3.
- FLAC và OGG: một ghi chú Vorbis. MusicBrainz Picard đặt tên là
LYRICS, nhưng không có đặc tả nào cố định tên này. - M4A và MP4: mục metadata
©lyr. - MKV: thẻ Matroska
LYRICS. - WMA và WMV: các thuộc tính
WM/LyricsvàWM/Lyrics_Synchronised.
Lời bài hát dạng văn bản thường và lời đồng bộ
Lời bài hát dạng thuần là một khối văn bản không có thời gian. Lời bài hát được đồng bộ gắn mỗi đoạn văn bản với một thời điểm trong bản ghi âm. Phần mềm sau đó có thể hiển thị lời khớp với âm thanh, ví dụ cho karaoke.
Trong một khung ID3v2 SYLT, mỗi đoạn văn bản có một mốc thời gian. Mốc thời gian được tính từ đầu tệp, theo mili giây hoặc khung MPEG.
Giá trị trông như thế nào
Giá trị dạng thuần là văn bản thông thường, và văn bản có thể chứa xuống dòng. Với văn bản được đồng bộ, ExifTool đặt mốc thời gian trong ngoặc vuông trước mỗi mục: [MM:SS.ss] cho giây, hoặc [FFFF] cho khung MPEG.
Một tệp có thể chứa lời bài hát bằng nhiều ngôn ngữ. Trong ID3v2, mỗi khung USLT hoặc SYLT có một trường ngôn ngữ gồm 3 chữ cái theo chuẩn ISO 639-2. Đây là các giá trị ví dụ:
engcho tiếng Anhdeuhoặcgercho tiếng ĐứcXXXkhi không biết ngôn ngữ, như văn bản ID3v2 mô tả
Với một khung ID3v2 USLT không có mô tả, FFmpeg thêm mã ngôn ngữ vào khóa, như lyrics-eng cho văn bản tiếng Anh. Với ngôn ngữ không xác định, FFmpeg 9.0 hiển thị lyrics-XXX, và mã phát triển của nó hiển thị lyrics thuần. ExifTool dùng cùng mẫu này cho một ngôn ngữ được chọn, như Lyrics-eng.
Lời bài hát dưới dạng cờ luồng
Trong một báo cáo từ ffprobe, trình đọc tệp của dự án FFmpeg, Lyrics cũng có thể là một cờ luồng, với giá trị 0 hoặc 1. FFmpeg mô tả nó ngắn gọn: luồng chứa lời bài hát. Cờ này không chứa văn bản lời.
Tùy chọn -show_streams của trình đọc ffprobe in cờ này cho mỗi luồng, cạnh cờ Karaoke. Vì vậy bạn có thể thấy 0 trong một tệp không có nhạc. Một 0 không chứng minh được rằng tệp không có văn bản lời bài hát.
Văn bản đến từ đâu
Văn bản Lyrics không xuất phát từ chính âm thanh. Một người hoặc một chương trình phải thêm văn bản đó.
Phần mềm gắn thẻ có thể ghi trường này. MusicBrainz Picard cần một plugin hoặc một script cho phần văn bản, vì cơ sở dữ liệu của nó không lưu lời bài hát.
Quá trình chuyển đổi có thể mang theo văn bản sang tệp mới. FFmpeg mặc định sao chép metadata toàn cục từ tệp đầu vào đầu tiên. Vì vậy tệp đã chuyển đổi có thể giữ văn bản Lyrics từ nguồn, ngay cả khi bạn chưa từng tự gắn thẻ cho tệp đó.
Tại sao điều này quan trọng đối với tệp của bạn
Trường văn bản Lyrics có thể chứa toàn bộ lời của một bài hát. Khi bạn chia sẻ tệp, bạn cũng chia sẻ phần văn bản này, ngay cả khi trình phát không bao giờ hiển thị nó.
Việc thiếu trường văn bản không nói cho bạn điều gì về bài hát. Một bài hát có lời vẫn có thể không có văn bản Lyrics. Văn bản cũng có thể khác với những gì bạn nghe.
Một tệp có thể hiển thị nhiều giá trị Lyrics, ví dụ văn bản thuần và văn bản đồng bộ, hoặc văn bản bằng 2 ngôn ngữ. Trong tệp Matroska, thẻ LYRICS cũng có thể trùng với một track phụ đề. Đặc tả khuyến nghị bạn thường nên chỉnh sửa cả hai.