kid3(1) | Підручник з Kid3 | kid3(1) |
НАЗВА¶
kid3, kid3-qt, kid3-cli - Kid3 ID3 Tagger
КОРОТКИЙ ОПИС¶
kid3 [--help | --author | --version | --license | --desktopfile ФАЙЛ] [ФАЙЛ...]
kid3-qt [--portable] [Параметри Qt] [ФАЙЛ...]
kid3-cli [--portable] [--dbus] [-h | --help] [-c КОМАНДА1] [-c КОМАНДА2...] [ФАЙЛ...]
ПАРАМЕТРИ¶
--portable
ФАЙЛ
kid3¶
--help
--author
--version
--license
--desktopfile ФАЙЛ
kid3-qt¶
Параметри Qt
kid3-cli¶
--dbus
-c
-h|--help
ВСТУП¶
Kid3 — програма для ефективного редагування міток ID3v1 і ID3v2 у файлах MP3. Ці мітки можна редагування у більшості з програм для відтворення MP3, але у не дуже ефективний спосіб. Крім того, передбачено можливість редагування міток у файла Ogg/Vorbis, Opus, DSF, FLAC, MPC, APE, MP4/AAC, MP2, Speex, TrueAudio, WavPack, WMA, WAV, AIFF і модулях tracker (MOD, S3M, IT, XM).
Kid3 не створює і не кодує файли у форматі MP3. Програму призначено для ефективного редагування міток ID3 усіх файлів в альбомі. Для цього достатньо декількох клацань кнопкою миші або натискань комбінацій клавіш. Там, де більшість інших програм можуть редагувати або мітки ID3v1, або мітки ID3v2, Kid3 надає вам повний доступ до редагування обох версій, перетворення міток у цих двох форматах та доступ до усіх міток ID3v2. Можна встановлювати однакове значення для міток у декількох файлах одночасно, наприклад, вказати однакове значення для записів виконавця, альбому, року та жанру для усіх файлів у альбомі. Якщо дані для міток містяться у назвах файлів, можна автоматично встановити мітки на основі назви файла. Передбачено можливість визначення назви файла за будь-якими мітками, які у ньому зберігаються.
Крім того, у завданні з редагування передбачено підтримку автоматичної заміни символів або підрядків, наприклад, вилучення некоректних символів із назв файлів. Автоматичне визначення регістру символів спрощує використання однорідної схеми іменування для усіх міток.
Дані міток для цілих альбомів можна отримувати з gnudb.org[1], MusicBrainz[2], Discogs[3], Amazon[4] або інших джерел списків композицій. Формат імпортування можна довільним чином налаштовувати за допомогою формальних виразів.
Будь ласка, повідомляйте про будь-які проблеми та запити щодо реалізації функціональних можливостей авторові програми.
КОРИСТУВАННЯ Kid3¶
Можливості Kid3¶
Приклад використання¶
У цьому розділі описано типовий сеанс роботи у Kid3. Припустімо, що у нас є тека, у якій містяться файли MP3 з композиціями з альбому «Let's Tag» групи «One Hit Wonder». Теку із файлами названо у форматі «виконавець - альбом», у нашому випадку, One Hit Wonder - Let's Tag. У теці містяться файли композицій у форматі «назва композиції.mp3». Таке іменування слід визнати доцільним, оскільки назви файлів лишаються короткими (важливо для мобільних програвачів MP3 із невеличкими дисплеями) і розташовуються у належному порядку, якщо упорядковувати список за абеткою (важливо, якщо використовується апаратний програвач MP3, який відтворює доріжки за абеткою або у порядку, у якому їх записано на компакт-диск, і цей порядок є порядком за абеткою при використанні mkisofs). Окрім цього, дані щодо виконавця і альбому вже містяться у назві теки — немає сенсу їх повторювати у назві файла. Повернімося до нашого прикладу — список файлів у теці виглядає десь так:
01 Intro.mp3
02 We Only Got This One.mp3
03 Outro.mp3
Ці файли ще не містять міток, і ми хочемо створити мітки за допомогою Kid3. Скористаймося пунктом Відкрити (меню Файл або кнопка на панелі інструментів) і виберемо один із файлів у цій теці. Усі файли буде показано на панелі списку файлів. Оскільки ми не хочемо перенапружуватися, скористаймося даними з назви теки та назв файлів для створення міток. Ми позначимо усі файли, потім натиснемо кнопку До: Мітка 1 у розділі Файл. Таким чином, ми встановимо значення заголовка, виконавця, альбому та композиції для усіх файлів. Щоб становити значення року та жанру для усіх файлів, ми, не знімаючи позначення з файлів, введемо «2002» до поля Дата і виберемо «Pop» у спадному списку Жанр. Щоб встановити лише ці два значення, програма автоматично позначить лише ці два пункти — усі інші пункти лишатимуться непозначеними. Далі, змінимо позначення, лишивши позначеним лише перший файл. Як можна бачити, усі інші мітки містять належні значення. Мітки інших файлів також можна перевірити позначенням їх один за одним. Коли усі мітки буде визначено належним чином, скористаймося пунктом Зберегти (меню Файл або кнопка на панелі інструментів). Вибір пункту Створити список відтворення у меню Файл призведе до створення файла One Hit Wonder - Let's Tag.m3u у теці альбому.
ДОВІДКА ЩОДО КОМАНД¶
Елементи графічного інтерфейсу¶
Графічний інтерфейс Kid3 поділено на шість розділів: ліворуч розташовано панелі файлів і тек, праворуч — панелі Файл, Мітка 1, Мітка 2 і Мітка 3.
Для навігації між різними розділами за допомогою клавіатури передбачено декілька клавіатурних скорочень. У розділах міток клавіатурними скороченнями можна скористатися, якщо не виконується редагування тексту, або якщо курсор перебуває у першому стовпчику таблиці.
Список
файлів
Список файлів складається із назв усіх тих файлів у відкритій теці, які відповідають вибраному фільтру назв файлів (typically *.mp3 *.ogg *.opus *.dsf *.flac *.mpc *.aac *.m4a *.m4b *.m4p *.mp4 *.mp2 *.spx *.tta *.wv *.wma *.wav *.aiff *.ape). Можна позначати один або декілька файлів. Щоб зняти позначення з усіх файлів, клацніть у довільному порожньому місці під пунктами у списку. Позначення визначає файли, над якими виконуватимуться дії унаслідок натискання кнопок, опис яких наведено нижче.
Окрім стовпчика Назва, параметри файла буде показано у стовпчиках Розмір, Тип, Дата зміни. Стовпчики можна приховувати зняттям позначки з відповідного пункту у контекстному меню смужки заголовків списку. Порядок стовпчиків можна змінювати перетягуванням із скиданням. Упорядкування пунктів у списку за вмістом стовпчика можна змінювати клацанням на заголовку стовпчика.
Крім того, у стовпчиках списку файлів може бути показано і редаговано значення стандартних міток.
Ліворуч від назви може бути показано піктограму: диск на позначення файлів, до яких було внесено зміни, або дані щодо того, які мітки встановлено (V1, V2, V1V2 або NO TAG; піктограму не буде показано, якщо читання даних з файла ще не виконувалося).
Пункти тек буде показано із піктограмою теки. Якщо теку відкрито, її файли буде показано у форматі ієрархічного списку. Після позначення файлів у підтеках можна виконувати дії над файлами, які зберігаються у різних теках. Це корисно, якщо музичну збірку організовано так, що тека кожного виконавця містить підтеки із альбомами цього виконавця.
Клацанням правою кнопкою миші у списку файлів можна відкрити контекстне меню із такими пунктами:
Редагування
списку
відтворення
Список відтворення можна створити порожнім або таким, що містить композиції у певній теці, див. створення списку відтворення. Файл списку відтворення, створений у такий спосіб, можна редагувати після подвійного клацання лівою кнопкою миші або використання пункту Змінити контекстного меню списку файлів. Кожна з цих двох дій призведе до відкриття списку записів у списку відтворення. У програмі передбачено можливість відкриття декількох списків відтворення одночасно.
Нові записи можна додавати перетягуванням зі скиданням зі списку файлів, програми для керування файлами або іншого списку відтворення. Якщо запис перетягнуто із іншого списку відтворення, його буде пересунуто або скопійовано, залежно від системи. Щоб викликати іншу дію, натисніть клавішу Shift, Ctrl або Alt, відповідно (для копіювання замість пересування у macOS®). Переупорядковування пунктів у списку можна також здійснювати перетягуванням зі скиданням. Крім того, пункти у списку можна пересувати за допомогою клавіатурних скорочень Ctrl+Shift+↑ і Ctrl+Shift+↓ (у macOS® слід натискати Command замість Ctrl). Вилучити запис можна натисканням клавіші Delete.
Будь ласка, зауважте таке: для перетягування пунктів зі списку їх слід захоплювати за ліву частину (поряд із піктограмами); захоплення за праву частину призведе до виконання процедури позначення декількох пунктів. Отже, вам буде доволі просто виконати обидві ці дії.
Після внесення змін до списку відтворення їх можна або зберегти за допомогою натискання кнопки Зберегти, або відкинути натисканням кнопки Скасувати. Якщо ви спробуєте закрити вікно програми, буде показано попередження із пропозицією зберегти усі незбережені зміни.
Доріжки, які позначено у списку відтворення, буде автоматично позначено у списку файлів. Це уможливить редагування їхніх міток.
Щоб виконати дію над списком відтворення, слід позначити його файл у списку файлів. Пункт Змінити контекстного меню відкриває діалогове вікно, яке описано у цьому розділі, а пункт Відтворити запускає програвач мультимедійних даних із композиціями зі списку відтворення. Над списками відтворення можна виконувати дії, які визначено користувачем. Наприклад, можна виконати дію Експортувати список відтворення до теки, яка копіює файли зі списку відтворення до теки.
Список
тек
У списку тек містяться назви підтек у відкритій теці, а також пункти поточної теки (.) та батьківської теки (..). За допомогою цього списку ви можете швидко змінити теку, не використовуючи пункт меню Відкрити... або перетягування зі скиданням.
Видимість стовпчиків, порядок стовпчиків та упорядкування записів у стовпчику можна налаштувати у спосіб, опис якого наведено у розділі щодо списку файлів.
Файл
Показує дані щодо кодування (MP3, Ogg, Opus, DSF, FLAC, MPC, APE, MP2, MP4, AAC, Speex, TrueAudio, WavPack, WMA, WAV, AIFF), бітової швидкості, частоти дискретизації, кількості каналів та тривалості відтворення файла.
У полі для редагування Назва міститиметься назва файла (якщо позначено лише один файл). Якщо змінити цю назву, файл буде перейменовано, щойно ви скористаєтеся командою збереження змін.
У спадному списку та рядку для редагування тексту Формат міститься запис формату, який буде використано при створенні назви файла із першої або другої мітки. Назва файла може містити довільні символи, навіть назву теки, яку слід відокремити від назви файла символом похилої риски, але щоб перейменування можна було виконати, відповідна тека вже має існувати. Для вставляння значень міток до назви файла можна скористатися такими спеціальними кодами:
Коди форматів не обмежено наведеними вище прикладами. Ви можете скористатися будь-якими назвами кадрів, наприклад уніфікованими назвами кадрів, зокрема %{albumartist}, %{discnumber.1}, %{bpm}, або специфічними для формату назвами, зокрема %{popm}.
Можна дописувати рядки на початку або у кінці рядка замінника для коду формату. Для цього слід додати відповідні рядки у подвійних лапках всередині фігурних дужок коду формату. Такі рядки буде додано до рядка-результату, лише якщо код формату дає непорожнє значення. Наприклад, якщо назва файла має містити одразу заголовок і підзаголовок, можна скористатися у рядку формату записом %{title} [%{subtitle}]. Але використання такого формату призведе до завершення рядка назви комбінацією [], якщо у файлі не зберігається мітки підзаголовка. Щоб уникнути додавання таких порожніх квадратних дужок, якщо підзаголовок порожній, слід скористатися рядком формату %{title}%{" ["subtitle"]"}. Таким чином, у записі результату не буде початкового пробілу і дужок, якщо запису підзаголовка не існує.
Список доступних форматів можна редагувати за допомогою діалогового вікна, яке програма відкриває у відповідь на натискання кнопки Назва файла з мітки на вкладці Файл діалогового вікна параметрів програми.
Другим спадним списком Формат (зі стрілочкою вниз) можна скористатися для створення міток на основі назви файла. Якщо формат назви файла не відповідає визначеному тут взірцю, програма спробує скористатися декількома широковикористовуваними форматами.
У спадному списку ви знайдете декілька типових форматів назв файлів. Втім, передбачено можливість введення до рядка для редагування тексту вашого власного варіанта форматування.
Список доступних форматів можна редагувати за допомогою діалогового вікна, яке програма відкриває у відповідь на натискання кнопки Мітка з назви файла на вкладці Файл діалогового вікна параметрів програми.
На внутрішньому рівні, формальний вираз будується з кодів форматів. Якщо вам потрібні додаткові можливості із форматування формальних виразів, формат для створення міток на основі назв файлів можна вказати як повноцінний формальний вираз із захопленням підрядків, перед якими вказують коди форматів. Наприклад, щоб видобути номери композицій без вилучення початкових нулів, можна скористатися таким форматом: /%{track}(\d+) %{title}(.*).
З: Мітка 1, Мітка 2: визначити назву файла за допомогою вибраного формату і першої мітки або другої мітки, відповідно.
До: Мітка 1, Мітка 2: мітки встановлюються з назви файла. Спочатку використовується формат, вказаний у полі Формат. Якщо наявна назва файла не відповідає вказаному формату, програма спробує скористатися такими форматами:
Якщо позначено лише один файл, пункти графічного інтерфейсу буде заповнено значеннями, які видобуто з назви файла. Якщо позначено декілька файлів, мітки файлів буде безпосередньо встановлено за назвами файлів.
Мітка 1
Рядки для редагування тексту для пунктів Заголовок, Виконавець, Альбом, Коментар, Дата, Номер доріжки і Жанр використовуються для редагування відповідних значень у першій мітці позначених файлів. Значення буде змінено, якщо зміниться позначення файлів або перед виконанням дій Зберегти і Вийти, якщо позначено відповідне поле ліворуч від поля назви файла. Це корисно, якщо ви хочете змінити лише деякі значення, а інші лишити незмінними.
Якщо позначено один файл, програма позначить усі пункти, а у віджетах рядків для редагування тексту міститимуться значення, які буде виявлено у мітках відповідного файла. Якщо мітки у файлі не знайдено, буде показано відповідне порожнє значення, тобто порожній рядок для полів Заголовок, Виконавець, Альбом та Коментар, 0 для числових полів Дата і Номер доріжки і порожнє вибране значення для спадного списку Жанр. Значення можна змінювати, і якщо позначено відповідний пункт, їх буде встановлено для вибраного файла після зміни позначення. Відповідний файл буде позначено як змінений піктограмою диска на панелі списку файлів, але сам файл лишатиметься незмінним, аж доки не буде віддано команду Зберегти.
Якщо позначено декілька файлів, буде показано лише значення, які є ідентичними для усіх файлів. В усіх інших полях буде показано порожні значення, як це описано вище. Усі поля для позначення пунктів буде спорожнено, щоб уникнути небажаних змін. Якщо значення слід встановити для усіх файлів, ви можете виконати його редагування, і програма автоматично позначить відповідний пункт. Значення буде встановлено для усіх позначених файлів, якщо позначення змінено. Зберегти внесені зміни можна за допомогою пункту Зберегти.
За допомогою позначок також можна керувати дією більшості команд, зокрема копіювання, вставлення та перенесення даних між мітками 1 і 2. Щоб спростити роботу із декількома файлами одночасно, коли усі поля для позначок є порожніми, ці команди працюють однаково, якщо усі поля позначено і якщо усі поля не позначено.
З мітки 2: поля мітки 1 встановлюються на основі відповідних значень у мітці 2. Якщо позначено один файл, пункти графічного інтерфейсу буде заповнено значеннями з мітки 2. Якщо позначено декілька файлів, мітки файлів буде встановлено безпосередньо.
Копіювати: заповнити буфер копіювання значеннями з мітки 1. Лише значення із позначених пунктів буде використано у наступних командах вставлення.
Вставити: вставити значення із буфера копіювання до поля графічного інтерфейсу.
Вилучити: у результаті натискання цієї кнопки усі поля у графічному інтерфейсі буде спорожнено. Якщо зберегти після цього редагований файл, у ньому не міститиметься мітки 1.
Мітка 2
За допомогою графічного інтерфейсу можна керувати цим параметром у спосіб, який описано у розділі щодо параметра Мітка 1, але розміри рядків не обмежено.
Для мітки 2 у полі Жанр ви можете використовувати власні значення, окрім жанрів зі спадного списку. Просто введіть потрібну вам назву жанру у поле для редагування тексту.
Мітка 2 не може містити лише ті самі значення, що і у мітці 1. Формат будується у гнучкий спосіб з декількох кадрів, які самі складуються із декількох полів. Таблиця мітки 2 показує усі кадри, які є доступними у позначеному файлі.
Змінити: відкриває вікно, за допомогою якого можна редагувати усі поля позначеного кадру. Якщо позначено декілька файлів, редаговані поля застосовуються до усіх позначених файлів, які містять такий кадр.
Додати: буде показано засіб створення запиту вибору типу кадру. За його допомогою може бути змінено і додано до файла кадр позначеного типу. Це працює також для додавання кадру до декількох позначених файлів.
Вилучити: вилучає позначений кадр із позначених файлів.
Напис Сюди можна перетягти зображення обкладинки буде показано, якщо у файлі не міститься вбудованого зображення обкладинки. Зображення можна додати перетягуванням зі скиданням з браузера або програми для керування файлами. Після перетягування зображення буде показано у відповідній позиції. Передбачено можливість редагування або додавання кадрів подвійним клацанням на відповідному полі.
Мітка 3
У деяких файлах може бути більше за дві мітки. Для таких файлів програма показує третій розділ мітки. Розділ Мітка 3 може бути у таких файлах:
Керування з графічного інтерфейсу працює у той самий спосіб, що і у розділі Мітка 2.
Синхронізація
тексту
пісень із
часовими
кодами
подій
Для редагування відомостей, які синхронізовано зі звуковими даними, передбачено спеціальний редактор. Підтримку цих кадрів передбачено як у мітках ID3v2.3.0, так і у мітках ID3v2.4.0. Щоб додати відповідний кадр, слід вибрати назву кадру зі списку, який з'являється після натискання кнопки Додати, — Синхронізований текст пісні або Часові коди подій, відповідно. Редактор є однаковим для обох випадків. Для часових кодів подій передбачено лише попередньо визначений набір подій, а для синхронізованого тексту пісні вам доведеться ввести сам текст. Нижче розглянуто випадок редагування синхронізованого тексту пісні.
Нехай позначено мітку ID3v2, редактор тексту пісні запущено натисканням кнопки Додати і вибором пункту Синхронізований текст пісні. Для наявного кадру синхронізованого тексту пісні його слід позначити і натиснути кнопку Змінити. У відповідь буде автоматично відкрито програвач із поточним файлом, щоб ви могли почути відтворену пісню і призупинити відтворення для синхронізації тексту пісні.
Параметри у верхній частині вікна редактора SYLT, зазвичай, не потребують внесення змін. Якщо слова пісні містять символи, яких немає у наборі символів «Латиниця 1», варто змінити кодування тексту на UTF16 (або UTF8 для ID3v2.4.0). Якщо текст пісні написано англійською і слід зберегти максимальну сумісність, слід використовувати кодування ISO-8859-1.
У верхній частині розділу Текст пісні передбачено п'ять кнопок. За допомогою кнопки Додати можна додати до таблиці нову часову позначку. Значення часу буде взято із позиції у програвачі. Таким чином, додавання запису під час відтворення композиції призводитиме до додавання рядка у поточній позицій відтворення. Події у таблиці має бути хронологічно впорядковано, тому рядок буде вставлено відповідним чином. Записи із некоректними часовими позначками оброблятимуться особливим чином: якщо для поточного позначеного рядка визначено некоректний час, його часову позначку буде замінено на поточний час без додавання нового рядка. Якщо поточний час є коректним, буде використано перший рядок із некоректною позначкою часу, якщо такий існує. Така поведінка програми має полегшити додавання часових позначок, якщо текст пісні вже внесено до таблиці, але не вказано часові позначки (тобто маємо випадок імпортованого несинхронізованого тексту пісні). Зауважте, що некоректні часові позначки буде показано як 00:00.00, тобто як час абсолютного початку доріжки, який, очевидно, не є некоректним. Щоб зробити час некоректним, натисніть клавішу Delete або скористайтеся пунктом Спорожнити з контекстного меню. Нові рядки можна додавати за допомогою пункту Вставити рядок з контекстного меню або створювати при імпортування несинхронізованого тексту пісні за допомогою натискання кнопок З буфера обміну даними або Імпортувати. Для несинхронізованого тексту, який імпортовано у такий спосіб, буде вказано некоректні часові позначки. Рядки у таблиці можна вилучати натисканням кнопки Вилучити або використанням пункту Вилучити рядки з контекстного меню.
Синхронізований текст пісні можна імпортувати з файла за допомогою натискання кнопки Імпортувати. Очікуваним форматом є простий або удосконалений формат LRC. Якщо у вибраному файлі перший рядок не починається із квадратної дужки, програма вважатиме файл простим текстовим файлом із несинхронізованим текстом пісні. Рядки з такого файла буде імпортовано із некоректними часовими позначками. Дані щодо часових позначок можна додати за допомогою кнопки Додати під час відтворення файла або ввести вручну. Крім того, передбачено можливість імпортування тексту пісні копіюванням зі вставленням за допомогою натискання кнопки З буфера обміну даними. Синхронізований текст пісні можна записати до файла LRC за допомогою натискання кнопки Експортувати. Зауважте, що експортовано буде лише записи із коректними часовими позначками, і записи буде упорядковано за часом. Записи із некоректними часовими позначками не зберігатимуться у кадрах SYLT, тому переконайтеся, що усі дані щодо часових позначок вказано до того, як закриєте діалогове вікно.
У специфікації ID3[5] передбачено часові позначки для кожного складу слова. Втім, у більшості програвачів передбачено підтримку поділу тексту пісні лише на рівні рядка або речення. З метою реалізації підтримки обох випадків у Kid3 використано ті самі припущення, що і у редакторі SYLT[6]. Текст, який введено у таблиці вважається початком нового рядка, якщо він не починається із пробілу або дефіса. Реалізувати виключення з цього правила можна розпочавши рядок з символу підкреслювання («_») для примусового продовження рядка або символу ґратки («#») для примусового розриву рядка. Ці символи екранування не зберігаються у кадрі SYLT. У кадрі SYLT нові рядки починаються із символу заповнення рядка (шістнадцяткового 0A), а продовження рядків — ні. При читанні кадрів SYLT Kid3 перевіряє, чи починається перший запис із символу заповнення рядка. Якщо це не так, програма припускає, що усі запис є окремими рядками, а продовження за складами слів не використовуються.
Доки відтворюється композиція, підсвічується рядок, який пов'язано із поточною позицією відтворення, тому можна перевірити правильність синхронізації. Якщо до одної або декількох часових позначок потрібно додати відступ, зробити це можна вибором пункту Додати відступ з контекстного меню. Для зменшення значення часових позначок можна скористатися від'ємними значеннями. За допомогою пункту Перейти до позиції з контекстного меню можна встановити позиціюю відтворення за часовою позначкою позначеного рядка.
Рекомендована процедура додавання нового синхронізованого тексту пісні
Глави у
файлах MP4
Назви файлів звукових книг MP4, зазвичай, мають суфікс .m4b і є доволі великим, оскільки у них містяться усі глави в одному файлі. Для навігації такими файлами використовують позначки глав, які можна редагувати у Kid3 за допомогою псевдополя «Chapters», використовуючи той самий редактор, що і для синхронізованих текстів пісень. Втім, зауважте, що цією можливістю можна скористатися лише за допомогою додатка Mp4v2Metadata. Тому, переконайтеся, що його увімкнено, і він перебуває у списку вище за додаток TaglibMetadata на вкладці Додатки вікна параметрів програми, якщо ви хочете редагувати дані глав MP4.
Меню «Фай뻶
Файл → Відкрити... (Ctrl+O)
Файл → Відкрити недавні
Файл → Відкрити теку... (Ctrl+D)
Файл → Перезавантажити (F5)
Файл → Зберегти (Ctrl+S)
Файл → Повернути
Файл → Імпортувати...
Імпортування даних з сервера freedb.org реалізовано за допомогою діалогового вікна, яке програма відкриває, якщо вибрано Сервер джерела: gnudb.org. Дані щодо виконавця і назви альбому для пошуку можна ввести у два верхніх поля. Альбоми, які відповідають запиту буде показано після натискання кнопки Знайти і отримання результатів з www.gnudb.org[7]. Імпортування даних доріжок для альбому виконується подвійним клацанням на пункті альбому у списку. Ви можете вибрати сервер freedb.org для імпортування даних та шлях CGI. Імпортовані дані буде показано у форматі таблиці попереднього перегляду діалогового вікна імпортування. Якщо вас задовольняють показані результати, ви можете імпортувати їх і закрити діалогове вікно за допомогою натискання кнопки Гаразд.
Якщо у вас програмі для перегляду інтернету вже відкрито сторінку результатів пошуку, ви можете ввести адресу до першого поля пошуку. Результати буде показано у списку альбомів — їх можна буде безпосередньо імпортувати до Kid3.
Пошук на сервері Discogs можна виконати натисканням кнопки Discogs. Як і у вікні пошуку у gnudb.org, ви можете ввести ім'я виконавця та назву альбому, а потім вибрати потрібний пункт зі списку альбомів. Можна ввести Жетон для використання програмного інтерфейсу RESTful Discogs замість вебінтерфейсу, який часто змінюється, а тому може перешкоджати нормальній роботі обробника. Вам слід зареєструватися на Discogs[8], а потім створити жетон на сайті (Settings/Developers, Generate new token). Не забудьте натиснути кнопку Зберегти параметри після введення жетона, щоб скористатися ним для наступних запитів. Якщо позначено пункт Стандартні мітки, буде імпортовано стандартні відомості, наприклад, дані щодо виконавця, альбому та назв композицій. Якщо позначено пункт Додаткові мітки, буде імпортовано додаткові відомості, якщо такі виявляться доступними, зокрема дані щодо акомпанементу, аранжування та видавця. Якщо позначено пункт Зображення обкладинки, буде отримано зображення обкладинки, якщо таке виявиться доступним.
Пошук на Amazon можна виконати натисканням кнопки Amazon/ Як і у вікні пошуку у gnudborg, ви можете ввести ім'я виконавця та назву альбому, а потім вибрати потрібний пункт зі списку альбомів. Якщо позначено пункт Додаткові мітки, буде імпортовано додаткові відомості, якщо такі виявляться доступними, зокрема дані щодо акомпанементу, аранжування та видавця. Якщо позначено пункт Зображення обкладинки, буде отримано зображення обкладинки, якщо таке виявиться доступним.
Ви можете виконати пошук у той самий спосіб у базі даних випусків MusicBrainz за допомогою пункту З Випуск MusicBrainz. Процедура отримання даних подібна до описаної для пункту З gnudb.org.
Імпортувати дані з сервера MusicBrainz можна за допомогою діалогового вікна, яке відкривається натисканням кнопки З Відбиток MusicBrainz. Сервер можна вибрати у спосіб, подібний до вибору сервера у вікні імпортування даних з freedb. Нижче у вікні розташовано таблицю для показу імпортованих даних доріжок. У правому стовпчику буде показано стан запиту до MusicBrainz. Одразу після запуску цим станом буде очікування. Якщо пошук за відбитком не дасть результатів, програма виконає повторну спробу із використанням міток у файлі. Таким чином, для успішного пошуку у MusicBrainz варто зберегти наявні дані (наприклад, дані щодо виконавця та альбому) до міток до імпортування. Якщо буде знайдено відповідний запис, пошук завершиться зі станом «розпізнано». Якщо знайти відповідний запис не вдасться, буде показано повідомлення про невдалий пошук або декілька результатів пошуку, один з яких можна буде вибрати. Натисканням кнопок Гаразд та Застосувати можна імпортувати дані. Натисканням кнопки Скасувати можна закрити діалогове вікно без імпортування даних. Для закриття вікна знадобиться деякий час, оскільки програма має зупинити усі процеси MusicBrainz.
Для імпортування текстових даних. Відкриває допоміжне діалогове вікно З файла/буфера обміну даними, з якого можна отримати доступ до декількох попередньо налаштованих форматів імпортування. Першими двома, «CSV unquoted» і «CSV quoted», можна скористатися для імпортування даних, які було експортовано за допомогою діалогового вікна експортування. Дані CSV можна редагувати у програмі для роботи із електронними таблицями. Дані має бути збережено із використанням символів табуляції як роздільників. Після обробки дані можна імпортувати або з використанням формату «CSV quoted», який є дещо гнучкішим за формат «CSV unquoted». Втім, дані у такому форматі не можуть містити символів подвійних лапок. Якщо ви лише експортуєте дані з Kid3 для подальшого імпортування, можете скористатися форматом «CSV unquoted», як простішим. Зауважте, що у контекстному меню списку файлів також є пункти «Експортувати CSV» і «Імпортувати CSV». У цих пунктах для експортування та імпортування даних CSV використано скрипти, які надають повноти, потужності та гнучкості обробці.
Наступним форматом, «freedb HTML text», можна скористатися для копіювання відомостей зі сторінки HTML freedb.org[9]. Виконайте пошук альбому у freedb, і якщо бажані дані буде показано у вікні браузера, скопіюйте дані до буфера обміну даними. Далі, натисніть кнопку З буфера обміну даними, і імпортовані дані буде показано у таблиці попереднього перегляду у верхній частині діалогового вікна. Якщо вас вдовольняють імпортовані дані, закрийте діалогове вікно натисканням кнопки Гаразд. Дані буде вставлено до міток у поточній теці. Призначення для імпортування (Мітка 1, Мітка 2 або Мітка 1 і Мітка 2) можна вибрати за допомогою спадного списку. Для належного призначення міток файли у поточній теці мають перебувати у відповідному порядку. Досягти цього порядку можна нумеруванням файлів.
Наступним попередньо налаштованим форматом імпортування, «freedb HTML source», можна скористатися, якщо дані доступні як документ HTML. Імпортування можливе за допомогою натискання кнопки З файла. У відповідь на натискання цієї кнопки програма відкриє вікно для вибору файлів. Крім того, можна скопіювати вміст файла з редактора, а потім імпортувати дані з буфера обміну даними. Цей формат може бути корисним для імпортування поза інтернетом, хоча документ HTML також можна відкрити у браузері, а потім імпортувати дані у першому форматі за допомогою буфера обміну даних.
Доступні також інші попередньо налаштовані формати, наприклад «Track Title Time». Можна створити порожній нетиповий формат за допомогою кнопки Додати і пізніше його налаштувати. Два рядки під назвою формату є формальними виразами для захоплення полів з імпортованого тексту. Перший формальний вираз буде оброблено один раз на документ для збирання даних окремого альбому, зокрема даних щодо виконавця, альбому, року і жанру. За допомогою другого рядка програма намагатиметься встановити відповідність від початку документа до кінця отриманих даних доріжки, зазвичай, номеру доріжки і заголовка. У формальному виразі можна використовувати усі можливості, які передбачено у Qt(TM), тобто більшість можливостей формальних виразів Perl. Використання дужок, «(..)», створює буфери захоплення для полів для імпортування. Перед ними можна вказувати специфічні для Kid3 коди для захоплення полів. Коди є тими самими, які використовуються у форматі назв файлів. Окрім кодів із наведеного нижче списку, можна використовувати будь-яку назву кадру.
Наприклад, формальний вираз для доріжки (другий рядок) для імпортування зі списку відтворення .m3u може бути таким: «%{track}(\d+)\s+%{title}(\S[^\r\n]*)\.mp3[\r\n]». Усі формати можна змінити редагуванням формальних виразів і назви з наступним натисканням кнопки Зберегти параметри. Їх буде збережено у файлі kid3rc у теці налаштувань. Цей файл можна безпосередньо редагувати для створення додаткових форматів імпортування. Файл можна вилучити для повернення до типових форматів. Формати можна вилучати натисканням кнопки Вилучити.
Точність показує оцінку того, наскільки добре імпортовані дані відповідають заданим композиціям. Для встановлення рівня відповідності у відсотках використовується тривалість відтворення або назви файлів. Обкладинка альбому показує адресу зображення обкладинки альбому, яку буде отримано.
Щоб перевірити, чи імпортовані дані доріжок відповідають набору файлів, імпортовані дані щодо тривалості доріжок можна порівняти із тривалістю відтворення файлів. Таку перевірку можна увімкнути позначенням пункту Перевірити максимальну дозволену різницю у часі і визначенням максимальної похибки у секундах. Якщо буде виявлено невідповідність тривалостей відтворення, дані щодо тривалості відтворення буде позначено червоним тлом у таблиці попереднього перегляду.
Якщо файли упорядковано інакше, ніж у імпортованих даних доріжок, пов'язані доріжки слід змінити. Полегшити це завдання можна за допомогою кнопок розділу Відповідність — Тривалість, Доріжка і Заголовок. Ці кнопки перевпорядкують доріжки за вмістом відповідних полів. Щоб виправити прив'язки вручну, ви можете перетягнути пункт доріжки за допомогою лівої кнопки миші із утриманням натиснутою клавіші Ctrl із наступним скиданням пункту на нове місце.
Після відкриття діалогового вікна імпортування у ньому містяться дані міток. Тип мітки (Мітка 1, Мітка 2, Мітка 1 і Мітка 2) можна вибрати за допомогою спадного списку Призначення. За допомогою кнопки праворуч від цього спадного списку можна відновити поточний стан вмісту міток. За допомогою позначок у першому стовпчику таблиці можна позначити доріжки, для яких буде імпортовано дані. Це корисно, якщо у теці містяться доріжки із обох компакт-дисків подвійного компакт-диска, а імпортувати слід дані лише другого компакт-диска.
Щоб ідентифікувати доріжки, дані яких буде імпортовано, можна увімкнути показ назв файлів і повних шляхів до файлів за допомогою контекстного меню заголовка таблиці. Значення у таблиці імпортування можна редагувати. Кнопкою скасування, розташованою праворуч від спадного списку Призначення, можна скористатися для відновлення вмісту міток. Нею також можна скористатися після зміни вмісту пункту Призначення.
Майже у всіх діалогових вікнах є кнопка Зберегти параметри, якою можна скористатися для збереження специфічних для діалогового вікна параметрів та розміру вікна.
Натискання кнопки З міток відкриває допоміжне діалогове вікно для встановлення кадрів міток на основі вмісту інших кадрів міток. Цим вікном можна скористатися для простого копіювання даних між мітками або видобування частин із одного кадру і вставляння її до іншого.
Як і у діалоговому вікні імпортування з файла або буфера обміну даних, передбачено довільно налаштовувані формати для виконання різних дій. До вже налаштованих форматі належать формати копіювання значення назви альбому до полів виконавця альбому, композитора або диригента, та формат для видобування номера доріжки із поля заголовка, яке містить номер. Також передбачено формат для видобування значення підзаголовка із поля заголовка.
У наведеному нижче прикладі пояснено, як додати нетиповий формат, який вставлятиме дані з поля підзаголовка до поля коментаря. Створіть новий формат за допомогою натискання кнопки Додати і встановлення нової назви, наприклад «Підзаголовок у коментар». Далі, введіть «%{subtitle}» у поле Джерело і «%{comment}(.*)» у поле Видобування і натисніть кнопку Зберегти параметри.
Вираз у полі Джерело може містити коди форматів для довільних кадрів міток. Можна використати декілька кодів для поєднання вмісту з різних кадрів. Для кожної доріжки текст буде створено на основі її міток на основі формату Джерело, формальний вираз з поля Видобування буде застосовано до цього тексту для встановлення нових значень міток. Коди форматів, які вказано до дужок для захоплення тексту, визначають кадр мітки, до якого має бути збережено захоплений текст. Усе працює так само, як і для імпортування з файла або буфера обміну даними.
Пунктом Імпортувати з міток... також можна безпосередньо скористатися у меню Файл. Відмінністю між цими двома інструментами є те, що допоміжне діалогове вікно діалогового вікна імпортування працює із усіма файлами у поточній теці, а пункт меню, лише зі позначеними файлами (які можуть зберігатися у різних теках). Для пункту меню передбачено підтримку додаткового коду «%{__return}» для повернення видобутого значення. Це може бути корисним для інтерфейсів командного рядка та QML.
Файл → Імпортувати з gnudb.org...
Файл → Імпортувати з Discogs...
Файл → Імпортувати з Amazon...
Файл → Імпортувати з Випуск MusicBrainz...
Файл → Імпортувати з Відбиток MusicBrainz...
Файл → Імпортувати з міток...
Файл → Автоматичне імпортування...
Тип мітки (Мітка 1, Мітка 2, Мітка 1 і Мітка 2) можна вибрати за допомогою спадного списку Призначення.
Профілі визначають, з якими із серверів слід зв'язуватися для отримання даних щодо альбомів. Деякі з профілів попередньо визначено (Усі, MusicBrainz, Discogs, Обкладинки). Нетипові профілі можна додати за допомогою натискання кнопки Додати, розташованої праворуч від спадного списку Профіль.
У наведеній нижче таблиці буде показано сервери, які програма використає при імпортування даних альбому за допомогою вибраного профілю. Процес імпортування даних для альбому буде завершено, коли буде знайдено усі потрібні дані, тому порядок рядків у таблиці є важливим. Змінити порядок можна натисканням кнопок Пересунути вище і Пересунути нижче. Натисканням кнопки Змінити можна перейти до внесення змін до наявного запису. За допомогою кнопки Сервер можна відкрити список серверів, дані з яких можна імпортувати. За допомогою полів Стандартні мітки, Додаткові мітки, Зображення обкладинки можна визначити дані, які буде отримано з сервера. Нарешті, за допомогою поля Точність можна встановити точність, якої слід досягти при імпортуванні даних. Якщо рівень точності є недостатнім, програма спробує скористатися наступним сервером у списку. Якщо натиснути кнопку Додати для додавання запису сервера, буде відкрито те саме діалогове вікно із параметрами сервера. Наявні записи можна вилучати натисканням кнопки Вилучити.
Щоб запустити автоматичне пакетне імпортування із використанням вибраного профілю, натисніть кнопку Почати. Подробиці щодо процесу імпортування буде показано у верхній частині діалогового вікна. Процес можна перервати натисканням кнопки Перервати.
Файл → Навігація обкладинками...
Оскільки підтримку перетягування зі скиданням передбачено не у всіх браузерах, а у зображень на сайтах часто є адреса, Kid3 може отримувати адресу URL, а не зображення. Якщо адреса вказує на зображення, програма просто отримає зображення. Втім, якщо адреса посилається на якийсь сторонній вебресурс, її має бути якось перетворено на відповідне зображення. Способи перетворення адреси на зображення визначено у таблиці Видобування адреси. У лівому стовпчику, Відповідність, міститься формальний вираз, який використовується для адреси. Якщо програмі вдасться встановити відповідність виразу адресі, захоплені дужками частини адреси буде встановлено до шаблона у правому стовпчику, Адреса зображення (на місце, яке вказано замінниками \1 тощо). Отриманий формальний вираз має визначати адресу зображення. У цей спосіб можна імпортувати зображення обкладинок із Amazon, Зображень Google тощо за допомогою перетягування зі скиданням. Також можна визначати власні прив'язки зображень.
Файл → Експортувати...
Параметри форматування є подібними до параметрів у діалоговому вікні імпортування: у найвищому полі міститься назва (наприклад «CSV unquoted»), далі йде заголовок, який буде записано на початку файла. Далі мають бути дані доріжки (використовується для кожної композиції). Нарешті, завершенням можна скористатися для додавання якогось завершального текстового фрагмента.
У полях форматування не повинно міститися формальних виразів, як у діалоговому вікні імпортування. Там мають бути лише вирази форматування результату із спеціальними замінниками із символом «%». Ці замінники буде замінено значеннями з відповідних міток. Усе це працює так само, як для форматування назви файла — використовуються ті самі коди разом із додатковими. Можна використовувати не лише коду із наведеного нижче списку, але і інші коди із назвами кадрів міток.
Декілька форматів попередньо визначено. «CSV unquoted» поділяє поля табуляціями. Дані у цьому форматі можна згодом знову імпортувати до Kid3, скориставшись форматом імпортування із тією самою назвою. Якщо скористатися форматом «CSV quoted», програма додасть подвійні лапки навколо усіх значень полів. Додавання лапок має полегшити імпортування до програм для роботи із електронними таблицями. Втім, якщо ви користуєтеся цим форматом, у вмісті полів не повинно бути подвійних лапок. За допомогою пунктів «Extended M3U» та «Extended PLS» можна створити списки відтворення із розширеними атрибутами та абсолютними шляхами до файлів. Варіантом «HTML» можна скористатися для створення сторінки HTML із гіперпосиланнями на композиції. За допомогою пункту «Kover XML» можна створити файл, який можна буде імпортувати до програми для друку обкладинок компакт-дисків Kover. Використання формату «Technical Details» надасть змогу вивести дані щодо бітової швидкості, частоти дискретизації, каналів тощо звукових даних. Нарешті, пункт «Custom Format» навмисно залишено порожнім для визначення нетипового формату. Ви можете самі додавати формати шляхом дописування рядків до файла kid3rc у теці налаштувань. Інші формати можна адаптувати до ваших потреб.
Джерело міток для створення експортованих даних (Мітка 1 або Мітка 2) можна вибрати за допомогою спадного списку. Натисканням кнопок До файла і До буфера обміну можна зберегти дані до файла і до буфера обміну даними, відповідно. Натисканням кнопок Гаразд і Скасувати можна закрити діалогове вікно. Натискання кнопки Гаразд призводить до зберігання поточних параметрів діалогового вікна для наступного використання.
Файл → Створити список відтворення...
Назва списку відтворення може бути Така сама, як назва теки або для її створення можна використати Формат зі значеннями із міток, наприклад, «%{artist} - %{album}» — формат назви файла списку відтворення, яка складається із імені виконавця і назви альбому. Коди полів збігаються із кодами для експортування. Змінити список доступних форматів можна за допомогою розділу Формат вкладки Файли у вікні параметрів програми. За допомогою кнопки Створити порожній список відтворення можна створити порожній список відтворення із заданою назвою. Суфікс назви залежатиме від формату списку відтворення.
Місце зберігання створеного списку відтворення визначається за допомогою спадного списку Створити у.
Поточна тека
Кожна тека
Тека найвищого рівня
Значенням Формат списку відтворення може бути M3U, PLS або XSPF.
Якщо позначено пункт Включити лише позначені файли, до списку відтворення буде включено лише позначені файли. Якщо позначено теку, буде включено усі файли з теки. Якщо цей пункт не буде позначено, до списку відтворення буде включено усі файли.
Упорядкувати за назвами файлів визначає звичайний випадок, у якому файли упорядковуються за назвою. За допомогою вибору варіанта Упорядкувати за полем мітки можна упорядкувати пункти за рядком форматування зі значеннями з полів мітки. Наприклад, «%{track.3}» можна скористатися для упорядковування за номером доріжки («.3» використано для отримання трьох цифр із початковими нулями, оскільки відповідні рядки використовуються для упорядковування). Також можна використовувати декілька полів одночасно. Наприклад, за допомогою рядка форматування «%{genre}%{year}» можна упорядкувати пункти за рядком, який складається із жанру та року випуску.
Записи файлів у списку відтворення будуть відносними або абсолютними адресами файлів, залежно від того, який з пунктів, Відносний шлях до файлів у списку відтворення чи Повний шлях до файлів у списку відтворення, було позначено.
Якщо позначено пункт Записати лише список файлів, список відтворення міститиме лише шляхи до файлів. Щоб створити розширений список відтворення із додатковими даними виберіть варіант Записати дані у форматі.
Файл → Вийти (Ctrl+Q)
Меню «Змін軶
Зміни → Позначити все (Alt+A)
Зміни → Скасувати вибір (Ctrl+Shift+A)
Зміни → Позначити все у теці
Зміни → Попередній файл (Alt+↑)
Зміни → Наступний файл (Alt+↓)
Зміни → Пошук... (Ctrl+F)
Зміни → Замінити... (Ctrl+R)
Залежно від кількості файлів, пошук може бути доволі тривалою процедурою. Через це, передбачено можливість його переривання за допомогою закриття цього діалогового вікна.
Меню «Інструмент軶
Інструменти → Застосувати формат назв файлів
Інструменти → Застосувати формат мітки
Інструменти → Застосувати кодування тексту
Інструменти → Перейменувати теку...
Якщо у записі формату буде виявлено роздільник тек, «/», буде створено декілька вкладених тек. Якщо ви хочете створити теку, а не перейменовувати поточну теку, у списку Дія позначте пункт Створити теку, замість Перейменувати теку. Джерелом даних мітки можна вибрати Мітка 1 і Мітка 2, Мітка 1 або Мітка 2. Попередній перегляд виконання дії з перейменування можна бачити у розділах З та До діалогового вікна.
За допомогою цього пункту можна одночасно перейменувати декілька тек.
Інструменти → Пронумерувати доріжки...
Якщо позначено пункт Загальна кількість доріжок, у мітках також буде встановлено кількість доріжок.
Можлива нумерація доріжок у декількох теках одночасно. Теки має бути розгорнуто і позначено.
Якщо позначено пункт Скидати лічильник для кожної з тек, нумерація доріжок перезапускатиметься із вказаного числа для кожної теки, якщо позначено декілька тек.
Діалоговим вікном нумерування доріжок можна також скористатися для форматування наявних номерів доріжок без зміни значень, якщо зняти позначку ліворуч від пункту початковий номер. Загальну кількість доріжок буде додано, якщо позначено відповідний пункт, яким можна скористатися для додавання даних щодо загальної кількості доріжок до усіх позначених файлів. Якщо вам потрібне лише форматування наявних номерів, слід також зняти позначку з цього пункту.
Інструменти → Фільтрувати...
Ці коди буде замінено значеннями із файла, а рядки-результати може бути порівняно за допомогою таких операцій:
Вирази, обчислення яких дає значення true, буде замінено на 1, ті, обчислення яких дає false, — на 0. Значення істинності (true) може бути представлене як 1, true, on або yes, значення хибності (false) — як 0, false, off або no. Булевими діями є not, and, or (у цьому порядку пріоритетності). Ці дії можна групувати за допомогою дужок.
Ось декілька попередньо визначених правил фільтрування, які можуть слугувати прикладами для ваших власних виразів:
Всі
Невідповідність міток назвам файлів
Перевіряє, чи відповідає шлях до файла формату назви файла. Це правило автоматично синхронізується зі змінами у форматі назв файлів.
Немає мітки 1
Показує лише ті файли, у яких немає мітки 1.
Немає мітки 2
Показує лише ті файли, у яких немає мітки 2.
Мітка ID3v2.3.0
Показує лише ті файли, у яких є мітка ID3v2.3.0.
Мітка ID3v2.4.0
Показує лише ті файли, у яких є мітка ID3v2.4.0.
Мітка 1 != Мітка 2
Показує файли, у яких значення мітки 1 не збігається зі значенням мітки 2.
Мітка 1 == Мітка 2
Показує файли, у яких значення мітки 1 і значення мітки 2 збігаються.
Незавершені
Показує файли, у яких значення стандартних міток (заголовок, виконавець, альбом, дата, номер композиції, жанр) є порожніми.
Зображення не вказано
Показує лише ті файли, у яких немає зображення.
Позначено
Показує лише файли, які було позначено, оскільки у них порушено стандарт ID3, їх обрізано або зображення обкладинки альбому у них є надто великим.
Нетиповий фільтр
%{artist} відповідає «The.*»
Далі, натисніть кнопку Зберегти параметри. Натисніть кнопку Застосувати для фільтрування списку файлів. Усі оброблені файли буде показано у текстовому форматі із додаванням до запису символу «+», якщо файл проходить фільтрування, і символу «-», якщо не проходить. Після завершення фільтрування буде показано лише ті файли, запис виконавця у яких починається із рядка «The», у заголовку вікна ви побачите запис «[відфільтровано]».
Інструменти → Перетворити ID3v2.4 на ID3v2.3
Інструменти → Перетворити ID3v2.4 на ID3v2.3
Інструменти → Відтворити
Меню «Параметр軶
Параметри → Показати пенал
Параметри → Показати смужку стану
Параметри → Показати зображення
Параметри → Автоматично ховати мітки
Параметри → Налаштувати скорочення...
Параметри → Налаштувати Kid3...
Специфічні для міток параметри зібрано на сторінці Мітки, яку поділено на чотири вкладки: Мітка 1, Мітка 2, Мітка 3 і Усі мітки.
Якщо позначено пункт Позначати обрізані поля, обрізані у ID3v1.1 поля буде позначено червоним кольором. Текстові поля у ID3v1.1 можуть містити не більше 30 символів, а поле коментаря — не більше 28 символів. Крім того, передбачено обмеження на поля жанру та номерів доріжок. Тому ці поля може бути обрізано при імпортуванні або перетворенні із ID3v2. Обрізані поля і пункт файла буде позначено червоним кольором. Позначення буде знято після редагування відповідного поля.
За допомогою поля Кодування тексту для міток ID3v1 можна встановити набір символів, який буде використано для вмісту міток ID3v1. Стандартним кодуванням є ISO-8859-1, тому рекомендуємо не змінювати це значення. Втім, іноді кодування є іншим, отже, його можна встановити за допомогою цього пункту, щоб потім мітки ID3v1 можна було скопіювати до ID3v2, де передбачено підтримку Unicode.
За допомогою пункту Використати формат доріжка/загальна кількість доріжок можна керувати тим, буде містити поле номера доріжки у мітках ID3v2 простий номер доріжки чи номер доріжки із загальною кількістю доріжок у теці.
Якщо позначено пункт Жанр у текстовому форматі, а не у форматі числового рядка, усі записи жанрів у мітках ID3v2 буде збережено у текстовому форматі, навіть якщо існує відповідний код для жанрів ID3v1. Якщо цей пункт не позначено, записи жанрів, для яких існують коди ID3v1, буде збережено у форматі числа — коду жанру (у дужках для ID3v2.3). Отже, жанр «метал» буде збережено як «Metal» або «(9)», залежно від того, чи позначено цей пункт. Записи жанрів, яких немає у списку жанрів ID3v1, завжди зберігатимуться у форматі текстового рядка. Цей пункт налаштувань призначено для забезпечення сумісності із пристроями, які не здатні належним чином обробляти коди жанрів.
Якщо позначено пункт Файли WAV із фрагментом id3 нижнім регістром, фрагмент RIFF, який використовується для зберігання міток ID3v2 у файлах WAV, матиме назву «id3 », а не «ID3 ». Типово, у Kid3 та інших програмах, у яких використано TagLib, можна використовувати обидва варіанти — із малими і великими літерами при читанні даних файлів WAV, але для запису міток ID3v2 до файлів WAV «ID3 ». Оскільки існують програми, у яких передбачено обробку лише варіанта «id3 » (наприклад JRiver Media Center і foobar2000), ви можете скористатися цим пунктом для створення міток, які можна буде прочитати у відповідних програмах.
Якщо буде позначено пункт Позначати порушення стандарту, програма позначатиме поля, у яких виявлено порушення стандарту ID3v2, червоним кольором. Подробиці щодо порушення буде показано у форматі підказки:
Документи щодо стандартів ID3 у мережі:
За допомогою пункту Кодування тексту можна визначити типове кодування, яке буде використано для кадрів ID3v2. Можна встановити значення ISO-8859-1, UTF16 або UTF8. Значення UTF8 не можна використовувати для кадрів ID3v2.3.0. Якщо ви встановите це значення для таких кадрів, програма використає замість нього UTF16. Для кадрів ID3v2.4.0 можна використовувати усі три кодування.
За допомогою пункту Версія, яку буде використано для нових міток можна визначити версію для новостворених міток ID3v2 — 2.3.0 або 2.4.0.
Кількість цифр номера доріжки — кількість цифр у полях номерів доріжок. Для доповнення номера доріжок до бажаної кількості цифр буде використано нулі. Наприклад, якщо встановлено значення кількості цифр 2, для доріжки із номером 5 буде встановлено значення «05».
Спадний список Назва поля коментаря стосується лише файлів Ogg/Vorbis і FLAC. За його допомогою можна встановити назву поля, яке використовуватиметься для коментарів. У різних програмах, здається, використовують різні назви. Наприклад, у xmms використано назву «COMMENT», а в Amarok — «DESCRIPTION».
Формат зображень у файлах Ogg/Vorbis визначається за допомогою поля Назва поля зображень, значеннями якого можуть бути METADATA_BLOCK_PICTURE або COVERART. Перша з назв є офіційним стандартом — використовується той самий формат, що і для зображень у мітках FLAC. COVERART є раннім неофіційним способом включення зображень до коментарів у файлах Vorbis. Цим форматом можна скористатися для забезпечення сумісності із застарілими програвачами.
Якщо позначено пункт Позначати, якщо більше за (у байтах), програма позначатиме червоним кольором пункти файлів, у яких розмір вбудованого зображення обкладинки у байтах перевищує вказане значення. Цим пунктом можна скористатися для пошуку файлів, у яких містяться надто великі зображення, показ яких не передбачено у деяких програмах і програвачах. Типовим значенням граничного розміру є 131072 байтів (128 кБ).
Полем Нетипові жанри можна скористатися для визначення жанрів, яких немає у стандартному списку жанрів, наприклад, жанру «Gothic Metal». Такі нетипові жанри буде показано у спадному списку Жанр на панелі Мітка 2. Для міток ID3v1.1 можна використовувати лише записи жанрів зі стандартного списку.
Списком нетипових жанрів можна також скористатися для звуження списку жанрів, які будуть доступними зі спадного списку Жанр до типового набору. Якщо у вашій збірці здебільшого міститься музика жанрів метал, готичний метал, старовинна музика та хард-рок, ви можете ввести саме ці жанри і позначити пункт Показувати лише нетипові жанри. Після цього у спадному списку Жанр на панелі Мітка 2 буде показано лише ці чотири жанри, і вам не доведеться шукати їх у повному списку жанрів. У нашому прикладі у списку мітки 1 буде показано лише жанри «Metal» і «Hard Rock», оскільки лише ці два нетипових жанри є у списку стандартних жанрів. Якщо пункт Показувати лише нетипові жанри не буде позначено, пункти нетипових жанрів буде розміщено наприкінці списку жанрів.
У Нетипових кадрах можна визначити до восьми нетипових назв кадрів, якими згодом можна буде користуватися як уніфікованими кадрами, наприклад, як кадрами швидкого доступу.
За допомогою списку Кадри швидкого доступу можна визначити типи кадрів, які завжди буде показано у розділі Мітка 2. Дані для таких кадрів можна буде додавати без попереднього натискання кнопки Додати. Порядок цих кадрів швидкого доступу можна змінити перетягуванням зі скиданням пунктів у списку.
Значення у спадному списку Назва поля номера доріжки стосується лише даних INFO RIFF. За його допомогою можна встановити назву поля, яке використовуватиметься для номерів доріжок. Назва поля номерів доріжок не визначається у початковому стандарті RIFF. У деяких програмах використовується «ITRK», у інших — «IPRT».
На панелі Формат міток містяться пункти, які пов'язано із форматуванням міток. Якщо позначено пункт Автоматично застосовувати формат, налаштування форматування буде використано автоматично під час редагування у полях для редагування тексту. Пункт Перевірка вмикає або вимикає засоби перевірки значень номера доріжки за загальною кількістю доріжок та значень дати і часу. За допомогою списку Перетворення регістрів можна застосувати до текстових даних такі режими перетворення: Без змін, Усі малі, Усі великі, Верхній регістр для першої літери та Усі перші літери верхнім регістром. Локаль для перетворення літер між верхнім і нижнім регістрами можна вибрати нижче за допомогою спадного списку. У списку замінників можна вибрати довільне перетворення рядків. Щоб додати нове перетворення, позначте комірку у стовпчику З, впишіть до неї текст, який слід замінити, а потім перейдіть до відповідної комірки у стовпчику На і впишіть рядок, на який слід замінити раніше вказаний текст. Якщо текст, який слід замінити починається і завершується символом похилої риски («/»), програма вважатиме, що вказано формальний вираз. Якщо у формальному виразі використано групи захоплення у круглих дужках, відповідні їм замінники \1, \2, ... у комірці стовпчика На буде замінено на рядок, який було захоплено у відповідній за номером групі. Щоб вилучити перетворення, встановіть для вмісту відповідної комірки у стовпчику З порожнє значення (наприклад, натисніть клавішу пробілу, а потім натисніть клавішу Backspace). Крім того, вставляти і вилучати рядки можна за допомогою контекстного меню, яке буде відкрито, якщо ви наведете вказівник миші на таблицю і клацнете правою кнопкою миші. Перетворення виконуватимуться, лише якщо позначено пункт Заміна рядків.
У таблиці Оцінка містяться дані прив'язки оцінки у зірочках до значень, які зберігатимуться у мітці. Список кадрів із даними щодо оцінок можна знайти у рядку «Оцінка» списку кадрів. Для цих кадрів можна вказати оцінку від однієї до п'яти зірочок. У різних форматах міток та різних програмах використовуються різні значення для прив'язки цієї оцінки у зірочках до значення, яке зберігається у мітці. Щоб показане Kid3 значення було правильним, використовується ця таблиця. Для застосування прив'язки програма шукає кадр із назвою із першого стовпчика, наприклад «RATING» у коментарях Vorbis або «IRTD» в INFO RIFF. Для міток ID3v2 використовується комбіноване значення, яке складається із ідентифікатора кадру «POPM» з кадру Popularimeter та його поля «Email», відокремленого крапкою. Тому існують різні значення назв для ID3v2, наприклад «POPM.Windows Media Player 9 Series» для прив'язки до значень у Windows Media Player та Explorer, і прості «POPM» для кадрів POPM із порожнім полем «Email». Оскільки може існувати декілька значень «POPM», важливим є їхні порядок. Коли Kid3 додає новий кадр Popularimeter, програма використовує перший запис «POPM» для визначення значення, яке слід записати до поля «Email». Це значення визначає прив'язку, яку буде використано для оцінок у зірочках. Перший запис також використовується, якщо не буде знайдено ніякого значення. Тому перший запис у таблиці є типовим записом.
Окрім стовпчика Назва, у якому містяться назви значень, у таблиці передбачено стовпчики від 1 до 5 для значень параметрів, які буде записано до мітки, якщо доріжці буде призначено відповідну оцінку у зірочках. З іншого блоку, значення визначають кількість зірочок, які буде показано для значення, яке зберігається у кадрі. Нехай, наприклад, у рядку таблиці містяться значення 1, 64, 128, 196, 255. Порогові значення для кількості зірочок, які буде показано для оцінок, які лежать між цими значеннями, сумісні із тими, які використовують у Windows® Explorer.
Таблиця 1. Запис у таблиці оцінок
Назва | 1 | 2 | 3 | 4 | 5 |
POPM | 1 | 64 | 128 | 196 | 255 |
Діапазон | 1-31 | 32-95 | 96-159 | 160-223 | 224-255 |
На
сторінці
Файли
можна
позначити
пункт
Завантажувати
останні
відкриті
файли, щоб
наказати Kid3
під час
наступного
запуску
відкривати
і
позначати
останній
вибраний
файл. Пункт
Не
змінювати
часові
позначки
файлів
можна
позначити,
щоб
програма
зберігала
часову
позначку
під час
внесення
змін до
файла. За
допомогою
пункту
Назва
файла для
обкладинки
можна
вказати
назву
файла, який
буде
використано
як типове
зображення
для
вбудовування
при
експортуванні
даних до
файла. За
допомогою
пункту
Кодування
тексту
(експортування,
список
відтворення)
можна
визначити
кодування,
яке
програма
використовуватиме
при записі
даних до
файлів.
Типове
кодування
(System) можна,
наприклад,
змінити,
якщо ви
маєте
намір
використовувати
списки
відтворення
на іншому
пристрої.
Якщо позначено пункт Позначати зміни, змінені поля буде позначено сірим тлом для мітки.
Розділ Список файлів визначає те, які файли буде показано на панелі списку файлів. Пунктом Фільтр можна скористатися для обмеження спектра записів у списку до файлів із підтримуваними суфіксами назв. Щоб явним чином вказати, які теки слід показати у списку файлів, або виключити певні теки, можна скористатися пунктами Включити теки та Виключити теки. У відповідних полях можна вказати вирази шаблонів, наприклад */Музика/*, щоб включити лише вміст теки Музика, або */iTunes/*, щоб виключити теку iTunes зі списку файлів. Якщо потрібно вказати декілька виразів для фільтрування, вирази слід відокремити пробілом або крапкою з комою.
За допомогою кнопок Назва файла з мітки і Мітка з назви файла у розділі Формат можна відкрити діалогові вікна для редагування форматів, які будуть доступними у спадних списках Формат (при натисканні кнопок зі стрілками вгору і вниз), які можна знайти у розділі Файл головного вікна програми.
Кнопкою Список відтворення можна скористатися для редагування форматів назв файлів, доступ до яких здійснюється за допомогою вікна Створення списку відтворення.
У розділі Формат назв файлів містяться пункти для форматування назв файлів. Це ті самі пункти, які доступні у розділі Формат міток.
Крім того, можна встановити значення Максимальна довжина для назв файлів. У більшості сучасних файлових систем встановлено обмеження у 255 символів, але якщо вам потрібно записати файли на компакт-диск, вам слід встановити обмеження у 64 символів. Якщо позначено пункт Використовувати для назв списків відтворення і тек, формат назв файлів буде використано при створенні списків відтворення та перейменуванні тек.
На сторінці Дії користувача розташовано таблицю із командами, доступ до яких можна отримати з контекстного меню панелі списку файлів. Для відповідальних дій, зокрема вилучення файлів, рекомендуємо позначати пункт у стовпчику Підтвердження, щоб програма показувала діалогове вікно підтвердження дії до її виконання. Можете позначити пункт у стовпчику Виведення, щоб переглянути виведені командою до консолі дані (стандартне виведення і виведення помилок). У стовпчику Назва буде показано пункт команди, який буде показано у контекстному меню. У стовпчику Команда буде наведено рядок команди, яку буде виконано. Аргументи можна передавати за допомогою таких кодів:
Можна встановити як команду спеціальний код — @separator — для вставляння роздільника у контекстне меню дій користувача. Щоб додати пункти меню як підменю, додайте навколо них команди @beginmenu і @endmenu. Назва підменю визначатиметься стовпчиком Name команди @beginmenu.
Для виконання скриптів QML як назву команди слід використовувати @qml. Шлях до скрипту QML передається як параметр. Скрипти з пакунка з програмою зберігаються у теці %{qmlpath}/script/ (у Linux® це типово /usr/share/kid3/qml/script/, у Windows — qml/script/ у теці встановлення, а у macOS® у теці програми — kid3.app/Contents/Resources/qml/script/). Нетипові скрипти можуть зберігатися у будь-якій теці. Якщо у коді QML використовуються компоненти графічного інтерфейсу, замість @qml слід використовувати @qmlview. Скрипту QML передаються додаткові параметри, доступ до яких надає функція getArguments(). Огляд деяких функцій і властивостей, які доступні у QML можна знайти у додатку щодо інтерфейсу QML.
Команду, яку буде вставлено замість %{browser}, можна визначити у полі Переглядач інтернету, яке розташовано вище. Командами, які починаються з %{browser} можна скористатися для отримання з інтернету даних щодо звукових файлів. Приклад:
%{browser} http://lyricwiki.org/%u{artist}:%u{title}
Ця команда надішле запити щодо тексту поточної пісні до LyricWiki[12]. Літера «u» у %u{artist} та %u{title} означає, що це закодовані у форматі URL дані щодо виконавця %{artist} та назви композиції %{title}. Ви можете без проблем створити власні запити у подібний спосіб. Наприклад, створити запит для пошуку зображень у Google[13]:
%{browser} http://images.google.com/images?q=%u{artist}%20%u{album}
Щоб додати зображення обкладинки альбому до мітки 2, ви можете просто пошукати зображення у Google або Amazon за допомогою наведених вище команд. Зображення можна буде додати до мітки перетягуванням зі скиданням. Ви також можете додати зображення за допомогою натискання кнопки Додати, потім вибрати кадр «Зображення» і імпортувати файл зображення або вставити зображення з буфера обміну даними. Кадри зображень передбачено у мітках ID3v2, MP4, FLAC, Ogg та ASF.
Щоб додати записи до таблиці або вилучити їх з неї, можна скористатися контекстним меню.
На сторінці Мережа передбачено лише одне поле для вставляння адреси проксі сервера та додаткового визначення порту, відокремленого від адреси двокрапкою. Проксі-сервер буде використано при імпортування даних з інтернет сервера, якщо позначено відповідний пункт.
За допомогою сторінки Додатки можна вмикати або вимикати доступні додатки. Додатки поділено на два розділи. У списку Додатки метаданих і пріоритетність містяться пункти додатків для підтримки форматів звукових файлів. Порядок додатків у списку є важливим, оскільки програма використовує їх за списком з першої позиції до останньої. Підтримку деяких форматів реалізовано за допомогою декількох додатків, тому програма відкриватиме файли за допомогою першого додатка зі списку, у якому передбачено підтримку відповідних файлів. Підтримку більшості форматів передбачено у додатку TaglibMetadata. Якщо пункт цього додатка перебуває на вершині списку, його буде використано для відкриття більшості файлів. Якщо ви хочете скористатися іншим додатком для певного формату файлів, вам слід розмістити його пункт перед пунктом додатка TaglibMetadata у списку. Подробиці щодо додатків метаданих та відомості щодо того, чому варто використовувати той чи інший додаток замість TagLib наведено нижче.
У розділі Доступні додатки буде наведено список решти додатків. Порядок додатків у цьому списку не є важливим. Додатки можна вмикати і вимикати за допомогою відповідних полів для позначок.
Додатки, які вимкнено, не завантажуватимуться. Цим можна скористатися для оптимізації вживання ресурсів та часу запуску. Змінені на цій сторінці параметри набудуть чинності лише після перезапуску Kid3.
Меню «Довідк໶
Довідка → Підручник з Kid3
Довідка → Про Kid3
kid3-cli¶
Команди¶
kid3-cli є інтерфейсом командного рядка до Kid3. Якщо як аргумент команди буде використано шлях до теки, програма відкриє цю теку. Якщо буде вказано декілька шляхів, буде відкрито найдовшу спільну теку із цих шляхів, а вказані у шляхах файли буде позначено. Наступні команди оброблятимуть позначені файли. Команди можна вказувати у командному рядку за допомогою параметра -c. Якщо вказано декілька команд, їх буде виконано у вказаному порядку. Якщо команди вносять зміни до файлів, ці зміни буде збережено під час завершення роботи програми. Якщо програмі не буде передано параметрів-команд, kid3-cli буде запущено в інтерактивному режимі. Ви зможете вводити команди і працювати із поточними позначеними файлами. У наступних розділах наведено список усіх доступних команд.
Довідка
help [НАЗВА-КОМАНДИ]
Вивести довідкові відомості щодо параметрів команди НАЗВА-КОМАНДИ або усіх команд, якщо назву команди не вказано.
Час
очікування
timeout [default | off | ЧАС]
Перезаписати типове значення часу очікування на виконання команди. Виконання команд командного інтерфейсу буде перервано, якщо буде перевищено вказаний час очікування. Типовим часом очікування є 10 секунд для команд ls і albumart, 60 секунд для команд autoimport і filter і 3 секунди для усіх інших команд. Якщо вам потрібно обробити багато файлів, ці часи очікування є надто жорсткими, тому ви можете встановити час очікування для усіх команд рівним ЧАС мілісекунд, вимкнути час очікування взагалі або лишити типові значення для часів очікування.
Вийти з
програми
exit [force]
Завершити роботу програми. Якщо деякі зі змінених файлів не збережено, для завершення роботи потрібен параметр force.
Змінити
теку
cd [ТЕКА]
Якщо значення ТЕКА не буде вказано, перехід буде здійснено до домашньої теки користувача. Якщо теку вказано, перехід відбудеться до вказаної теки. Якщо вказано один або декілька шляхів до файлів, перехід буде здійснено до теки, у якій зберігаються усі ці файли, а пункти файлів буде позначено.
Вивести
назву
поточної
теки
pwd
Вивести назву поточного робочої теки.
Список
тек
ls
Показати вміст поточної теки. Відповідає списку файлів у основному графічному інтерфейсі Kid3. П'ять символів перед назвою файла показують його поточний стан.
kid3-cli> ls
1-- 01 Intro.mp3 > 12- 02 We Only Got This One.mp3
*1-- 03 Outro.mp3
У нашому прикладі усі файли містять мітку 1, другий файл також містить мітку 2 і його позначено. До третього файла внесено зміни.
Збереження
змінених
файлів
save
Вибір
файла
select [all | none | first | previous | next | ФАЙЛ...]
Щоб позначити усі файли, введіть команду select all. Щоб зняти позначення з усіх файлів, скористайтеся командою select none. Щоб пройтися усіма файлами у поточній теці, спочатку віддайте команду select first, а потім пересувайтеся списком за допомогою команд select next (перехід до наступного) та select previous (перехід до попереднього). Додати окремі файли до поточного позначення можна вказавши їхні назви безпосередньо. Можна використовувати символи замінники, наприклад, select *.mp3 призведе до позначення усіх файлів MP3 у поточній теці.
kid3-cli> select first kid3-cli> ls > 1-- 01 Intro.mp3
12- 02 We Only Got This One.mp3
*1-- 03 Outro.mp3 kid3-cli> select next kid3-cli> ls
1-- 01 Intro.mp3 > 12- 02 We Only Got This One.mp3
*1-- 03 Outro.mp3 kid3-cli> select *.mp3 kid3-cli> ls > 1-- 01 Intro.mp3 > 12- 02 We Only Got This One.mp3 >*1-- 03 Outro.mp3
Вибрати
мітку
tag [НОМЕРИ-МІТОК ]
У багатьох командах передбачено необов'язковий параметр НОМЕРИ-МІТОК, який вказує, над якою міткою виконується команда — 1, 2 чи 3. Якщо цей параметр не вказано, буде використано типові номери міток, які можна вказати за допомогою цієї команди. Одразу після запуску буде встановлено значення 12, тобто дані буде прочитано із мітки 2, якщо таку буде виявлено, і з мітки 1, якщо мітки 2 виявлено не буде; зміни вноситимуться до мітки 2. Ви можете встановити для змінної НОМЕРИ-МІТОК значення 1, 2 або 3, щоб працювати лише із відповідною міткою. Якщо параметр вказано не буде, у відповідь на команду буде показано поточне значення параметра номерів міток.
Отримання
кадру
міток
get [all | НАЗВА-КАДРУ] [НОМЕРИ-МІТОК]
За допомогою цієї команди можна прочитати значення у певному кадрі мітки або отримати відомості щодо усіх кадрів мітки (якщо не вказано аргумент або вказано all). Змінені кадри буде позначено символом «*».
kid3-cli> get Файл: MPEG 1 Layer 3 192 kbps 44100 Hz Joint Stereo
Назва: 01 Intro.mp3 Мітка 1: ID3v1.1
Заголовок Intro
Виконавець One Hit Wonder
Альбом Let's Tag
Дата 2013
Номер доріжки 1
Жанр Pop kid3-cli> get title Intro
Щоб зберегти вміст кадру зображення до файла, скористайтеся командою
get picture:'/шлях/до/теки.jpg'
Щоб зберегти синхронізований текст пісні до файла LRC, скористайтеся командою
get SYLT:'/шлях/до/тексту_пісні.lrc'
Можна отримати дані лише щодо одного вказаного поля кадру, наприклад get POPM.Email для поля Email у кадрі Popularimeter. Якщо у файлі зберігається декілька кадрів одного типу, різні кадри можна індексувати квадратними дужками. Наприклад, дані першого з виконавців у коментарі Vorbis можна отримати за допомогою команди get performer[0], а дані другого — за допомогою команди get performer[1].
Псевдополем із назвою «selected» можна скористатися для перевірки, чи позначено кадр. Наприклад, get artist.selected поверне 1, якщо кадр виконавця позначено, і 0, якщо ні.
Для отримання значення поля «rating» може бути використано псевдополе «ratingstars», яке містить специфічне для формату значення, що відповідає кількості зірочок (від 0 до 5). При використанні «rating» буде повернуто внутрішнє значення.
Встановити
обгортку
мітки
set {НАЗВА-КАДРУ} {ЗНАЧЕННЯ-КАДРУ} [НОМЕРИ-МІТОК]
Ця команда встановлює значення вказано кадру мітки. Якщо значення ЗНАЧЕННЯ-КАДРУ є порожнім, кадр буде вилучено.
kid3-cli> set remixer 'O.H. Wonder'
Щоб встановити вміст кадру зображення з файла, скористайтеся командою
set picture:'/шлях/до/теки.jpg' 'Опис зображення'
Щоб використати синхронізований текст пісні з файла LRC, скористайтеся командою
set SYLT:'/шлях/до/тексту_пісні.lrc' 'Опис тексту пісні'
Щоб встановити певне поле у кадрі, слід вказати назву поля після крапки. Наприклад, щоб встановити значення поля лічильника у кадрі Popularimeter, скористайтеся командою
set POPM.Counter 5
Можливим застосуванням до специфікації полів є випадок, коли вам потрібно створити нетиповий кадр TXXX зі описом «rating», замість стандартного кадру Popularimeter (такі оцінки використовуються у деяких додатках). Ви можете створити такий кадр оцінки TXXX за допомогою kid3-cli. Втім, спершу вам слід створити кадр TXXX із описом «rating», а потім вже встановити значення оцінки для цього кадру.
kid3-cli> set rating "" kid3-cli> set TXXX.Description rating kid3-cli> set rating 5
Перша команда вилучає наявний кадр POPM, оскільки якщо такий кадр існує, set rating 5 запише значення до кадру POPM, а не до кадру TXXX. Іншим варіантом встановлення значення є команда set TXXX.Text 5, але вона працюватиме, лише якщо немає ніяких інших кадрів TXXX.
Для встановлення декількох кадрів однакового типу можна вказати індекс у дужках. Цим можна скористатися, наприклад, для встановлення декількох акомпаніаторів у коментарі Vorbis. Приклад:
kid3-cli> set performer[0] 'Liza don Getti (soprano)' kid3-cli> set performer[1] 'Joe Barr (piano)'
Для позначення певних кадрів до дій з копіювання, вставляння або вилучення, можна скористатися псевдоназвою поля «selected». Зазвичай, буде позначено усі кадри. Щоб зняти позначення з усіх кадрів, скористайтеся командою set '*.selected' 0. Після цього, наприклад, можна віддати команду set artist.selected 1, щоб позначити лише кадр виконавця.
Для встановлення значення поля «rating» може бути використано псевдополе «ratingstars», яке містить специфічне для формату значення, що відповідає кількості зірочок (від 0 до 5). Для встановлення внутрішнього значення може бути використано поле із назвою «rating».
Встановлення «ratingstars» одразу для декількох файлів призведе до непрацездатності різних форматів міток, оскільки пов'язане із полем значення буде створено для першого файла, а потім використано для усіх інших файлів. Тому, замість kid3-cli -c "set ratingstars 2" *, вам слід скористатися командою for f in *; do kid3-cli -c "set ratingstars 2" "$f"; done.
Скасувати
revert
Скасувати усі зміни у позначених файлах (або усіх файла, якщо нічого не позначено).
Імпортувати
з файла
import {ФАЙЛ} {НАЗВА-ФОРМАТУ} [НОМЕРИ-МІТОК]
Мітки буде імпортовано з файла ФАЙЛ у форматі з назвою НАЗВА-ФОРМАТУ (наприклад, "CSV unquoted", див. імпортування).
Якщо команду tags віддано із параметром ФАЙЛ, мітки буде імпортовано з інших міток. Якщо не вказано параметр НАЗВА-ФОРМАТУ, має бути вказано параметри ДЖЕРЕЛО і ВИДОБУВАННЯ, див. імпортування з міток. Щоб застосувати імпортування з міток до позначених файлів, скористайтеся командою tagsel замість tags. У цій функції також передбачено підтримку виведення видобутого значення за допомогою значення параметра ВИДОБУВАННЯ %{__return}(.+).
Автоматичне
імпортування
autoimport [НАЗВА-ПРОФІЛЮ] [НОМЕРИ-МІТОК]
Пакетне імпортування на основі профілю НАЗВА-ПРОФІЛЮ (див. Автоматичне імпортування; якщо профіль не вказано, буде використано "All").
Отримати
зображення
обкладинки
альбому
albumart {АДРЕСА} [all]
Встановити зображення обкладинки альбому шляхом отримання зображення з адреси АДРЕСА. Для перетворення звичайних адрес (наприклад, з Amazom) на адреси зображень буде використано правила, які визначено у діалоговому вікні Навігація обкладинками. Щоб встановити зображення обкладинки з локального файла зображення, скористайтеся командою set.
kid3-cli> albumart http://www.amazon.com/Versus-World-Amon-Amarth/dp/B000078DOC
Експортувати
до файла
export {ФАЙЛ} {НАЗВА-ФОРМАТУ} [НОМЕРИ-МІТОК]
Мітки буде експортовано до файла ФАЙЛ у форматі з назвою НАЗВА-ФОРМАТУ (наприклад, "CSV unquoted", див експортування).
Створити
список
відтворення
playlist
Створення списку відтворення у форматі, який вказано у налаштуваннях, див. створення списку відтворення.
Застосувати
формат
назв
файлів
filenameformat
Застосувати формат назви файла, який встановлено у налаштуваннях, див. застосування формату назв файлів.
Застосувати
формат
мітки
tagformat
Застосувати формат міток, який встановлено у налаштуваннях, див. застосування формату міток.
Застосувати
кодування
тексту
textencoding
Застосувати кодування тексту, яке встановлено у налаштуваннях, див. застосування кодування тексту.
Перейменувати
теку
renamedir [ФОРМАТ] [create | rename | dryrun] [НОМЕРИ-МІТОК]
Перейменувати або створити теки на основі значень міток відповідно до вказаного формату ФОРМАТ (наприклад, %{artist} - %{album}, див. перейменування теки). Якщо формат не вказано, буде використано формат, визначений за допомогою діалогового вікна Перейменування теки. Типовим режимом є rename; для створення тек слід явним чином вказати параметр create. Дії з перейменовування буде виконано негайно. Щоб попередньо переглянути список дій, які буде виконано, скористайтеся параметром dryrun.
Кількість
доріжок
numbertracks [НОМЕР-ДОРІЖКИ] [НОМЕРИ-МІТОК]
Нумерувати позначені доріжки, починаючи з номера НОМЕР-ДОРІЖКИ (1, якщо не вказано).
Фільтр
filter [НАЗВА-ФІЛЬТРА | ФОРМАТ-ФІЛЬТРУВАННЯ]
Фільтрувати файли так, що видимими будуть лише файли, які відповідають формату ФОРМАТ-ФІЛЬТРУВАННЯ. Можна скористатися попередньо визначеним виразом фільтрування (наприклад, «Невідповідність мітки і назви файла») замість виразу для фільтрування, див. фільтрування.
kid3-cli> filter '%{title} contains "tro"' Початок
/home/urs/One Hit Wonder - Let's Tag + 01 Intro.mp3 - 02 We Only Got This One.mp3 + 03 Outro.mp3 Завершено kid3-cli> ls
1-- 01 Intro.mp3
1-- 03 Outro.mp3 kid3-cli> filter All Початок
/home/urs/One Hit Wonder - Let's Tag + 01 Intro.mp3 + 02 We Only Got This One.mp3 + 03 Outro.mp3 Завершено kid3-cli> ls
1-- 01 Intro.mp3
12- 02 We Only Got This One.mp3
1-- 03 Outro.mp3
Перетворити
ID3v2.3 на ID3v2.4
to24
Перетворити
ID3v2.4 на ID3v2.3
to23
Назва
файла з
мітки
fromtag [ФОРМАТ] [НОМЕРИ-МІТОК]
Встановлення назв позначених файлів на основі значень у мітках. Приклад: fromtag '%{track} - %{title}' 1. Якщо формат не вказано, буде використано формат, який встановлено у графічному інтерфейсі.
Мітка з
назви
файла
totag [ФОРМАТ] [НОМЕРИ-МІТОК]
Встановити вміст кадрів міток на основі назв файлів. Приклад: totag '%{albumartist} - %{album}/%{track} %{title}' 2. Якщо формат не вказано, буде використано формат, який визначено у графічному інтерфейсі програми. Якщо формат назви файла не відповідає вказаному взірцю, програма спробує використати інші поширені формати.
Мітку на
іншу
мітку
syncto {НОМЕР-МІТКИ}
Копіювати вміст кадрів міток з одної мітки до іншої мітки. Наприклад, щоб заповнити мітку ID3v2 даними з мітки ID3v1, скористайтеся командою syncto 2.
Копіювати
copy [НОМЕР-МІТКИ]
Копіювати вміст кадрів мітки позначеного файла до внутрішнього буфера копіювання даних. Далі, вміст можна записати до іншого файла за допомогою команди paste.
Щоб скопіювати лише вміст певної підмножини кадрів, скористайтеся псевдополем «selected» за допомогою команди set. Наприклад, щоб скопіювати лише вміст кадрів номера диска та авторських прав, скористайтеся такими командами:
set '*.selected' 0 set discnumber.selected 1 set copyright.selected 1 copy
Вставити
paste [НОМЕР-МІТКИ]
Встановити вміст кадрів мітки на основі вмісту буфера copy для позначених файлів.
Вилучити
remove [НОМЕР-МІТКИ]
Вилучити мітку.
Передбачено можливість вилучення вмісту лише підмножини кадрів. Вибрати потрібні кадри можна у спосіб, який описано у документації до команди copy.
Налаштовування
Kid3
config [ПАРАМЕТР] [ЗНАЧЕННЯ]
Виконати опитування значення параметра налаштувань або встановлення цього значення.
ПАРАМЕТР складається з назви групи і назви властивості, відокремлених крапкою. Якщо ПАРАМЕТР не вказано, буде показано усі доступні групи. Якщо вказано лише назву групи, буде показано усі доступні у групі властивості. Для заданої групи і властивості буде показано поточне налаштоване значення. Щоб змінити значення параметра, можна просто передати нове значення як другий аргумент.
Якщо значенням параметра є список, як аргументи слід передати усі елементи списку. Це означає, що для додавання елемента до наявного списку, слід передати усі наявні елементи, наприкінці яких слід вказати новий елемент. У таких випадках простіше скористатися режимом JSON, у якому поточний список можна скопіювати із дописуванням нового елемента.
Виконати
програму
або скрипт
QML
execute [@qml] {ФАЙЛ} [АРГУМЕНТИ]
Виконати скрипт QML або виконуваний файл.
Без @qml програму буде виконано з аргументами. Якщо першим аргументом вказано @qml, наступними аргументами є скрипт QML та його аргументи. Наприклад, мітки теки може бути експортовано до файла export.csv за допомогою вказаної нижче команди.
kid3-cli -c "execute @qml /usr/share/kid3/qml/script/ExportCsv.qml export.csv" /шлях/до/теки/
Тут export.csv є аргументом до скрипту ExportCsv.qml, а /шлях/до/теки/ є аргументом ФАЙЛ до kid3-cli.
Приклади¶
Встановити заголовок, який містить апостроф. Команди, які передаються kid3-cli за допомогою -c, слід брати у лапки, якщо вони складаються із декількох слів. Якщо якась із команд сама має аргумент, який містить пробіли, цей аргумент також має бути взято у лапки. У командних оболонках UNIX® можна використовувати одинарні і подвійні лапки, але у командній оболонці Windows цього робити не можна. Важливо використовувати для зовнішніх лапок подвійні лапки, а внутрішніх — одинарні. Якщо у тексті всередині одинарних лапок містяться одинарні лапки, їх слід екранувати за допомогою символу зворотної похилої риски, як це продемонстровано у наступному прикладі:
kid3-cli -c "set title 'I\'ll be there for you'" /шлях/до/теки
Встановлення зображення обкладинки альбому для усіх файлів у теці за допомогою функціональної можливості пакетного імпортування:
kid3-cli -c "autoimport 'Cover Art'" /шлях/до/теки
Вилучити кадри коментарів та застосувати форматування мітки у обох мітка усіх файлів MP3 у теці:
kid3-cli -c "set comment '' 1" -c "set comment '' 2" \ -c "tagformat 1" -c "tagformat 2" /шлях/до/теки/*.mp3
Автоматично імпортувати мітку 2, синхронізувати із міткою 1, встановити назви файлів на основі мітки 2 і, нарешті, створити список відтворення:
kid3-cli -c autoimport -c "syncto 1" -c fromtag -c playlist \
/шлях/до/теки/*.mp3
Для усіх файлів із міткою ID3v2.4.0 виконати перетворення на мітку ID3v2.3.0 і вилучити кадр аранжувальника:
kid3-cli -c "filter 'ID3v2.4.0 Tag'" -c "select all" -c to23 \
-c "set arranger ''" /шлях/до/теки
У цьому скрипті мовою Python використано kid3-cli для створення кадрів iTunNORM перевірки звуку iTunes на основі даних щодо підсилення гучності.
#!/usr/bin/env python3 # Generate iTunes Sound Check from ReplayGain. import os, sys, subprocess def rg2sc(dirpath):
for root, dirs, files in os.walk(dirpath):
for name in files:
if name.endswith(('.mp3', '.m4a', '.aiff', '.aif')):
fn = os.path.join(root, name)
rg = subprocess.check_output([
'kid3-cli', '-c', 'get "replaygain_track_gain"',
fn]).strip()
if rg.endswith(b' dB'):
rg = rg[:-3]
try:
rg = float(rg)
except ValueError:
print('Value %s of %s in not a float' % (rg, fn))
continue
sc = (' ' + ('%08X' % int((10 ** (-rg / 10)) * 1000) )) * 10
subprocess.call([
'kid3-cli', '-c', 'set iTunNORM "%s"' % sc, fn]) if __name__ == '__main__':
rg2sc(sys.argv[1])
Формат JSON¶
Для полегшення обробки результатів роботи kid3-cli, передбачено можливість отримання виведених даних у форматі JSON. Якщо запит буде виконано у форматі JSON, відповідь буде виведено також у форматі JSON. Компактний формат запиту також даватиме компактне представлення відповіді. Якщо у запиті міститиметься поле «id», він вважатиметься запитом JSON-RPC, і у відповіді міститиметься поле «jsonrpc» і значення «id» запиту. У форматі запиту використовуються ті самі команди, що і у стандартному інтерфейсі командного рядка, поле «method» має містити команду, а параметри (якщо такі є) задаються списком «params». Відповідь міститиме об'єкт «result», який також може бути порожнім, якщо відповідна команда kid3-cli не повернула жодного результату. Якщо станеться помилка, буде повернуто об'єкт «error» із полями «code» та «message», — типово для запитів JSON-RPC.
kid3-cli> {"method":"set","params":["artist","An Artist"]} {"result":null} kid3-cli> {"method":"get","params":["artist",2]} {"result":"An Artist"} kid3-cli> {"method": "get", "params": ["artist"]} {
"result": "An Artist" } kid3-cli> {"jsonrpc":"2.0","id":"123","method":"get","params":["artist"]} {"id":"123","jsonrpc":"2.0","result":"An Artist"}
АВТОРСЬКІ ПРАВА ТА ЛІЦЕНЗУВАННЯ¶
Kid3
Автором програми є Urs Fleisch <ufleisch at users.sourceforge.net>
Переклад українською: Юрій Чорноіван <yurchor@ukr.net>
FDL[22]
GPL[23]
ВСТАНОВЛЕННЯ¶
Як отримати Kid3¶
Код і пакунки Kid3 зберігаються на https://kid3.kde.org.
Технічні вимоги¶
Для роботи Kid3 потрібні бібліотеки Qt(TM)[24]. Використання KDE[25] є рекомендованим, але необов'язковим, оскільки Kid3 можна зібрати як програму, яка залежить лише від Qt(TM). Kid3 можна зібрати для систем, де доступні відповідні бібліотеки, наприклад для GNU/Linux®, Windows® та macOS®. Для роботи з мітками у файлах Ogg/Vorbis потрібні libogg[15], libvorbis і libvorbisfile[16]. Для роботи з файлами FLAC — libFLAC++ і libFLAC[17]. Для роботи з файлами MP3 програма використовує id3lib[14]. Підтримку цих чотирьох форматів передбачено також у бібліотеці TagLib[18]. Ця бібліотека може працювати із файлами Opus, MPC, APE, MP2, Speex, TrueAudio, WavPack, WMA, WAV, AIFF та модулями tracker. Для імпортування акустичних відбитків у програмі використовуються Chromaprint[20] і libav[21].
Пакунки Kid3 можна встановити зі сховищ більшості дистрибутивів Linux®. Передбачено пакунки для Windows® і macOS®. Відповідні посилання можна знайти на https://kid3.kde.org.
Збирання і встановлення¶
Ви можете зібрати Kid3 з бібліотеками KDE або без них. Без бібліотек KDE Kid3 є простою програмою Qt(TM), у якій не передбачено деяких можливостей із налаштовування програми та сеансів роботи з нею.
Щоб зібрати версію із бібліотеками KDE, перейдіть до базового теки коду і віддайте такі команди
% cmake . % make % make install
Щоб зібрати нестандартну версію із використанням бібліотек Qt(TM) або KDE, встановіть відповідні параметри cmake.
Якщо у системі встановлено не усі бібліотеки, Kid3 буде зібрано із обмеженими функціональними можливостями. Тому перед збиранням слід подбати про встановлення усіх потрібних пакунків для розробки. З іншого боку, керувати переліком бібліотек, які буде використано, можна за допомогою параметрів cmake. Типовим набором параметрів є -DWITH_TAGLIB:BOOL=ON -DWITH_MP4V2:BOOL=OFF -DWITH_ID3LIB:BOOL=ON -DWITH_CHROMAPRINT:BOOL=ON -DWITH_VORBIS:BOOL=ON -DWITH_FLAC:BOOL=ON . Вимкнути збирання компонентів можна за допомогою визначення для параметрів значення OFF.
Щоб зібрати Kid3 як програму Qt(TM), без бібліотек KDE, скористайтеся параметром cmake -DWITH_APPS=Qt. Щоб зібрати одразу програми для KDE і Qt(TM), вкажіть такий параметр: -DWITH_APPS="Qt;KDE".
Щоб скористатися певним встановленим набором бібліотек Qt(TM), вкажіть -DQT_QMAKE_EXECUTABLE=/шлях/до/qmake.
Створити пакунки RPM можна за допомогою файла kid3.spec. Для створення пакунків Debian можна скористатися скриптом build.sh deb.
Програму із використанням бібліотек Qt(TM) можна також зібрати для Windows® і macOS®. Для отримання із збирання усіх потрібних бібліотек і створення пакунка Kid3 можна скористатися скриптом build.sh.
Налаштування¶
У версії для KDE параметри роботи програми зберігаються у файлі .config/kid3rc, стан програми — у файлі .local/share/kid3/kid3staterc.. Програма із використанням лише Qt(TM) зберігає параметри у файлі .config/Kid3/Kid3.conf. У Windows® налаштування зберігаються у реєстрі. У macOS® — у файлі plist.
Для встановлення шляху до файла налаштувань можна скористатися змінною середовища KID3_CONFIG_FILE.
ІНТЕРФЕЙС D-Bus¶
Приклади D-Bus¶
У Linux® для керування Kid3 зі скриптів можна скористатися інтерфейсом D-Bus. Скрипти може бути написано будь-якою мовою програмування із прив'язкою до D-Bus (наприклад, мовою Python) і додано до Дій користувача для розширення функціональних можливостей Kid3.
Вказати для запису виконавця мітки 2 поточного файла значення «One Hit Wonder» можна за допомогою такого коду:
Оболонка
dbus-send --dest=org.kde.kid3 --print-reply=literal \ /Kid3 org.kde.Kid3.setFrame int32:2 string:'Artist' \ string:'One Hit Wonder'
або, простіше, за допомогою програми із набору інструментів Qt(TM) qdbus (для вивчення графічного інтерфейсу програми можна скористатися програмою qdbusviewer):
qdbus org.kde.kid3 /Kid3 setFrame 2 Artist \ 'One Hit Wonder'
Python
import dbus kid3 = dbus.SessionBus().get_object(
'org.kde.kid3', '/Kid3') kid3.setFrame(2, 'Artist', 'One Hit Wonder')
Perl
use Net::DBus; $kid3 = Net::DBus->session->get_service(
"org.kde.kid3")->get_object(
"/Kid3", "org.kde.Kid3"); $kid3->setFrame(2, "Artist", "One Hit Wonder");
Програмний інтерфейс D-Bus¶
Програмний інтерфейс D-Bus визначено у файлі org.kde.Kid3.xml. У програмному інтерфейсі Kid3 передбачено такі методи:
Відкриття
файла або
теки
boolean openDirectory(string шлях);
шлях
Повертає true, якщо виконано вдало.
Вивантаження
міток усіх
файлів, які
не змінено
і не
позначено
unloadAllTags(void);
Збереження
усіх
змінених
файлів
boolean save(void);
Повертає true, якщо виконано вдало.
Отримання
докладного
повідомлення
щодо
помилки,
яке
надається
іншими
методами
string getErrorMessage(void);
Повертає докладне повідомлення про помилку.
Скасовування
змін у
позначених
файлах
revert(void);
Запуск
автоматичного
пакетного
імпортування
boolean batchImport(int32 маскаМітки, string назваПрофілю);
маскаМітки
назваПрофілю
Імпортуванням
міток з
файла
boolean importFromFile(int32 маскаМітки, string шлях, int32 індексФормату);
маскаМітки
шлях
індексФормату
Повертає true, якщо виконано вдало.
Імпортування
міток з
інших
міток
importFromTags(int32 маскаМітки, string джерело, string видобування);
маскаМітки
джерело
видобування
Імпортування
міток з
інших
міток
позначених
файлів
array importFromTagsToSelection(int32 маскаМітки, string джерело, string видобування);
маскаМітки
джерело
видобування
повернутіЗначення
Отримання
зображення
обкладинки
альбому
downloadAlbumArt(string адреса, boolean усіФайлиУТеці);
адреса
усіФайлиУТеці
Експортування
міток до
файла
boolean exportToFile(int32 маскаМітки, string шлях, int32 індексФормату);
маскаМітки
шлях
індексФормату
Повертає true, якщо виконано вдало.
Створення
списку
відтворення
boolean createPlaylist(void);
Повертає true, якщо виконано вдало.
Отримання
записів у
списку
відтворення
array getPlaylistItems(string шлях);
шлях
Повертає список абсолютних шляхів до файлів-пунктів списку відтворення.
Встановлення
записів
списку
відтворення
boolean setPlaylistItems(string шлях, array пункти);
шлях
пункти
Повертає true, якщо дію виконано вдало, і false, якщо знайдено не усі пункти і додавання або збереження не було вдало виконано.
Вийти з
програми
quit(void);
Позначення
усіх
файлів
selectAll(void);
Зняття
позначення
з усіх
файлів
deselectAll(void);
Встановлення
першого
файла як
поточного
файла
boolean firstFile(void);
Повертає true, якщо існує перший файл.
Встановлення
попереднього
файла як
поточного
файла
boolean previousFile(void);
Повертає true, якщо існує попередній файл.
Встановлення
наступного
файла як
поточного
файла
boolean nextFile(void);
Повертає true, якщо існує наступний файл.
Позначення
першого
файла
boolean selectFirstFile(void);
Повертає true, якщо існує перший файл.
Позначення
попереднього
файла
boolean selectPreviousFile(void);
Повертає true, якщо існує попередній файл.
Позначення
наступного
файла
boolean selectNextFile(void);
Повертає true, якщо існує наступний файл.
Позначення
поточного
файла
boolean selectCurrentFile(void);
Повертає true, якщо існує поточний файл.
Розгортання
або
згортання
поточного
пункту у
файловій
ієрархії,
якщо це
тека
boolean expandDirectory(void);
Пункт списку файлів є текою, якщо getFileName() повертає назву із останнім символом «/».
Повертає true, якщо поточний пункт у ієрархії файлів є текою.
Застосування
формату
назви
файла
applyFilenameFormat(void);
Застосування
формату
мітки
applyTagFormat(void);
Застосувати
кодування
тексту
applyTextEncoding(void);
Встановлення
назви теки
на основі
міток
boolean setDirNameFromTag(int32 маскаМітки, string формат, boolean створення);
маскаМітки
формат
створення
Повертає true, якщо дію виконано вдало. Якщо дію не вдалося виконати, повертає повідомлення про помилку, доступ до якого можна отримати за допомогою getErrorMessage().
Встановлення
послідовної
нумерації
доріжок
для
позначених
файлів
numberTracks(int32 маскаМітки, int32 номерПершоїДоріжки);
маскаМітки
номерПершоїДоріжки
Фільтрування
файлів
filter(string вираз);
вираз
Перетворення
міток ID3v2.3 на
ID3v2.4
convertToId3v24(void);
Перетворення
міток ID3v2.4 на
ID3v2.3
convertToId3v23(void);
Повертає true, якщо виконано вдало.
Отримання
шляху до
теки
string getDirectoryName(void);
Повертає абсолютний шлях до теки.
Отримання
назви
поточного
файла
string getFileName(void);
Повертає абсолютну назву поточного файла, яка завершуватиметься на «/», якщо це тека.
Встановлення
назви
позначеного
файла
setFileName(string назва);
назва
Файл буде перейменовано при збереженні теки.
Встановлення
формату,
який буде
використано
при
встановленні
назв
файлів на
основі
міток
setFileNameFormat(string формат);
формат
Встановлення
назв
позначених
файлів на
основі
міток
setFileNameFromTag(int32 маскаМітки);
маскаМітки
Отримання
значення
кадру
string getFrame(int32 маскаМітки, string назва);
маскаМітки
назва
Щоб отримати двійкові дані, наприклад зображення, можна додати назву файла, куди буде записано дані, після name. Приклад: «Picture:/шлях/до/файла». У той самий спосіб можна експортувати синхронізований текст пісні. Приклад: «SYLT:/шлях/до/файла».
Повертає значення кадру.
Встановлення
значення
кадру
boolean setFrame(int32 маскаМітки, string назва, string значення);
маскаМітки
назва
значення
Для мітки 2 (tagMask 2), якщо не існує кадру name, буде додано новий кадр. Якщо значення value є порожнім, кадр буде вилучено. Щоб додати двійкові дані, зокрема зображення, можна додати назву відповідного файла після name. Приклад: «Picture:/шлях/до/файла». Для імпортування синхронізованого тексту пісні можна скористатися виразом «SYLT:/шлях/до/файла».
Повертає true, якщо виконано вдало.
Отримання
усіх
кадрів
мітки
array of string getTag(int32 маскаМітки);
маскаМітки
Повертає список із послідовно розташованими назвами кадрів та значеннями.
Отримання
технічних
даних щодо
файла
масив рядків getInformation(void);
Властивостями є Format, Bitrate, Samplerate, Channels, Duration, Channel Mode, VBR, Tag 1, Tag 2. Властивості, які є недоступними буде пропущено.
Повертає список із послідовно розташованими назвами властивостей та значеннями.
Встановлення
мітки на
основі
назви
файла
setTagFromFileName(int32 маскаМітки);
маскаМітки
Встановлення
мітки на
основі
іншої
мітки
setTagFromOtherTag(int32 маскаМітки);
маскаМітки
Копіювання
мітки
copyTag(int32 маскаМітки);
маскаМітки
Вставлення
мітки
pasteTag(int32 маскаМітки);
маскаМітки
Вилучення
мітки
removeTag(int32 tagMask);
маскаМітки
Повторно
обробити
налаштування
reparseConfiguration(void);
Автоматизацію обробки змін у налаштуваннях можна реалізувати внесенням змін до файла налаштувань із наступною повторною обробкою налаштувань.
Відтворення
позначених
файлів
playAudio(void);
ІНТЕРФЕЙС QML¶
Приклади QML¶
Скрипти QML можна викликати за допомогою контекстного меню панелі списку файлів. Перелік використаних скриптів можна визначити за допомогою сторінки Дії користувача діалогового вікна параметрів програми. Скриптами, які вже є частиною пакунка із програмою, можна скористатися як прикладами для створення власних скриптів. QML використовує синтаксис JavaScript. Ось типовий приклад простого скрипту:
import Kid3 1.0 Kid3Script {
onRun: {
console.log("Hello world, folder is", app.dirName)
Qt.quit()
} }
Якщо цей скрипт зберігається за адресою /шлях/до/Example.qml, команду користувача можна визначити так: @qml /шлях/до/Example.qml і назвати Перевірка QML. Також варто позначити пункт у стовпчику Виведення. Запустити скрипт можна за допомогою пункту Перевірка QML у контекстному меню списку файлів. Виведені скриптом дані буде показано у вікні програми.
На жаль, запуск скриптів QML за допомогою qml (наприклад, qml -apptype widget -I /usr/lib/kid3/plugins/imports /шлях/до/Example.qml) став неможливим у свіжих версіях Qt. Втім, kid3-cli пропонує інший спосіб запуску скриптів QML з командного рядка за допомогою власної команди execute.
kid3-cli -c "execute @qml /шлях/до/Example.qml"
Щоб отримати список заголовків у мітках 2 усіх файлів у поточній теці, можете скористатися таким скриптом:
import Kid3 1.0 Kid3Script {
onRun: {
app.firstFile()
do {
if (app.selectionInfo.tag(Frame.Tag_2).tagFormat) {
console.log(app.getFrame(tagv2, "title"))
}
} while (app.nextFile())
} }
Якщо у теці міститься багато файлів, робота скрипту може на певний час заблокувати можливість користуватися інтерфейсом системи. Тому для виконання тривалих дій слід час від часу переривати роботу скрипту. У альтернативній реалізації, яку наведено нижче, обробку окремого файла винесено до функції. Ця функція викликає себе із часом очікування у 1 мілісекунду наприкінці, якщо виконується обробка декількох файлів. Таким чином буде забезпечено можливість роботи із графічним інтерфейсом під час виконання скриптом поставленого завдання.
import Kid3 1.0 Kid3Script {
onRun: {
function doWork() {
if (app.selectionInfo.tag(Frame.Tag_2).tagFormat) {
console.log(app.getFrame(tagv2, "title"))
}
if (!app.nextFile()) {
Qt.quit()
} else {
setTimeout(doWork, 1)
}
}
app.firstFile()
doWork()
} }
Якщо використано app.firstFile() із app.nextFile(), буде оброблено усі файли у поточній теці. Якщо слід обробити лише позначені файли, скористайтеся замість цих функцій firstFile() і nextFile(). Ці зручні функції визначено у компоненті Kid3Script. У наведеному нижче прикладі скрипт копіює з позначеного файла лише кадри номера диска та авторських прав.
import Kid3 1.1 Kid3Script {
onRun: {
function doWork() {
if (app.selectionInfo.tag(Frame.Tag_2).tagFormat) {
app.setFrame(tagv2, "*.selected", false)
app.setFrame(tagv2, "discnumber.selected", true)
app.setFrame(tagv2, "copyright.selected", true)
app.copyTags(tagv2)
}
if (!nextFile()) {
Qt.quit()
} else {
setTimeout(doWork, 1)
}
}
firstFile()
doWork()
} }
Інші зразки скриптів постачаються разом із Kid3 і вже є зареєстрованими командами користувача.
Програмний інтерфейс QML¶
Із програмним інтерфейсом доволі просто ознайомитися за допомогою консолі QML, яку включено як приклад скрипту із інтерфейсом користувача.
Kid3Script
Kid3Script — звичайний компонент QML, який зберігається у теці додатків. Ви можете скористатися будь-яким іншим компонентом QML. Використання Kid3Script спрощує запуск функції скрипту за допомогою обробника сигналів onRun. Крім того, у ньому передбачено декілька функцій:
onRun: обробник сигналів, який викликається під час запуску скрипту tagv1, tagv2, tagv2v1: сталі для параметрів міток script: доступ до функцій скриптів configs: доступ до об'єктів налаштувань getArguments(): список аргументів скрипту isStandalone(): true, якщо скрипт не було запущено з Kid3 setTimeout(callback, delay): запускає зворотний виклик після затримки, яку слід вказувати у мілісекундах firstFile(): до першого позначеного файла nextFile(): до наступного позначеного файла
Функції
скриптів
У JavaScript, а отже і у QML, для скриптів можна використовувати доволі обмежену множину функцій. У об'єкта script є деякі додаткові методи, зокрема такі:
script.properties(obj): рядок із властивостями Qt script.writeFile(filePath, data): записати дані до файла; true, якщо запис вдалий script.readFile(filePath): прочитати дані з файла script.removeFile(filePath): вилучити файл; true, якщо вилучення вдале script.fileExists(filePath): true, якщо файл існує script.fileIsWritable(filePath): true, якщо файл придатний до запису script.getFilePermissions(filePath): отримати бітову карту режиму доступу до файла script.setFilePermissions(filePath, modeBits): встановити бітову карту режиму доступу до файла script.classifyFile(filePath): отримати клас файла (тека — «/», символічне посилання — «@»,
виконуваний файл — «*», просто файл — « ») script.renameFile(oldName, newName): перейменувати файл; true, якщо перейменування вдале script.copyFile(source, dest): скопіювати файл; true, якщо копіювання вдале script.makeDir(path): створити теку; true, якщо створення вдале script.removeDir(path): вилучити теку; true, якщо вилучення вдале script.tempPath(): шлях до теки тимчасових даних script.musicPath(): шлях до теки із музикою script.listDir(path, [nameFilters], [classify]): список записів у теці script.system(program, [аргументи], [мілісекунди]): синхронно запустити загальносистемну команду,
[код виходу, стандартне виведення, стандартна помилка], якщо не перевищено час очікування script.systemAsync(program, [аргументи], [зворотний виклик]): асинхронно запустити загальносистемну команду; зворотний виклик буде виконано із даними [код виходу, стандартне виведення, стандартна помилка] script.getEnv(varName): отримати значення змінної середовища script.setEnv(varName, value): встановити значення змінної середовища script.getQtVersion(): рядок версії Qt, наприклад «5.4.1» script.getDataMd5(data): отримати шістнадцятковий рядок хешу MD5 для даних script.getDataSize(data): отримати розмір байтового масиву script.dataToImage(data, [формат]): створити зображення з байтів даних script.dataFromImage(img, [формат]): отримати байти даних із зображення script.loadImage(filePath): завантажити зображення з файла script.saveImage(img, filePath, [формат]): зберегти зображення до файла; true, якщо збереження вдале script.imageProperties(img): отримати властивості зображення; карта, яка містить
значення «width», «height», «depth» та «colorCount»; порожнє значення, якщо зображення некоректне script.scaleImage(зображення, ширина, [висота]): масштабувати зображення; повертає масштабоване зображення
Контекст
програми
За допомогою QML можна отримати доступ до значної кількості функціональних можливостей Kid3. Програмний інтерфейс є подібним до використаного для D-Bus. Щоб дізнатися більше, зверніться до відповідних нотаток.
app.openDirectory(path): відкрити теку app.unloadAllTags(): вивантажити усі мітки app.saveDirectory(): зберегти теку app.revertFileModifications(): скасувати app.importTags(tag, path, fmtIdx): імпортувати файл app.importFromTags(tag, source, extraction): імпортувати дані з міток app.importFromTagsToSelection(tag, source, extraction): імпортувати дані з міток позначених файлів app.downloadImage(url, allFilesInDir): отримати зображення app.exportTags(tag, path, fmtIdx): експортувати файл app.writePlaylist(): записати список відтворення app.getPlaylistItems(path): отримати пункти списку відтворення app.setPlaylistItems(path, items): встановити пункти списку відтворення app.selectAllFiles(): позначити усе app.deselectAllFiles(): зняти позначення з усього app.firstFile([select], [onlyTaggedFiles]): до першого файла app.nextFile([select], [onlyTaggedFiles]): до наступного файла app.previousFile([select], [onlyTaggedFiles]): до попереднього файла app.selectCurrentFile([select]): позначити поточний файл app.selectFile(path, [select]): позначити певний файл app.getSelectedFilePaths([onlyTaggedFiles]): отримати шляхи до позначених файлів app.requestExpandFileList(): розгорнути усе app.applyFilenameFormat(): застосувати формат назв файлів app.applyTagFormat(): застосувати формат міток app.applyTextEncoding(): застосувати кодування тексту app.numberTracks(nr, total, tag, [параметри]): нумерувати доріжки app.applyFilter(expr): фільтрувати app.convertToId3v23(): перетворити ID3v2.4.0 на ID3v2.3.0 app.convertToId3v24(): перетворити ID3v2.3.0 на ID3v2.4.0 app.getFilenameFromTags(tag): назва файла з міток app.getTagsFromFilename(tag): мітки з назви файла app.getAllFrames(tag): отримати об'єкт із усіма кадрами app.getFrame(tag, name): отримати кадр app.setFrame(tag, name, value): встановити кадр app.getPictureData(): отримати дані з кадру зображення app.setPictureData(data): встановити дані у кадрі зображення app.copyToOtherTag(tag): мітки за іншими мітками app.copyTags(tag): копіювати app.pasteTags(tag): вставити app.removeTags(tag): вилучити app.playAudio(): відтворити app.readConfig(): прочитати налаштування app.applyChangedConfiguration(): застосувати налаштування app.dirName: назва теки app.selectionInfo.fileName: назва файла app.selectionInfo.filePath: абсолютний шлях до файла app.selectionInfo.detailInfo: дані щодо формату app.selectionInfo.tag(Frame.Tag_1).tagFormat: формат мітки 1 app.selectionInfo.tag(Frame.Tag_2).tagFormat: формат мітки 2 app.selectionInfo.formatString(tag, format): замінити коди у рядку форматування app.selectFileName(caption, dir, filter, saveFile): відкрити діалогове вікно вибору файла app.selectDirName(caption, dir): відкрити діалогове вікно вибору теки
Для асинхронних дій зворотні виклики можна з'єднувати із сигналами.
function automaticImport(profile) {
function onAutomaticImportFinished() {
app.batchImporter.finished.disconnect(onAutomaticImportFinished)
}
app.batchImporter.finished.connect(onAutomaticImportFinished)
app.batchImport(profile, tagv2) } function renameDirectory(format) {
function onRenameActionsScheduled() {
app.renameActionsScheduled.disconnect(onRenameActionsScheduled)
app.performRenameActions()
}
app.renameActionsScheduled.connect(onRenameActionsScheduled)
app.renameDirectory(tagv2v1, format, false) }
Об'єкти
налаштовування
Доступ до різних розділів налаштовування можна отримати за допомогою методів configs. Список їхніх властивостей можна переглянути за допомогою консолі QML.
script.properties(configs.networkConfig())
Можна встановити такі властивості:
configs.networkConfig().useProxy = false
configs.batchImportConfig() configs.exportConfig() configs.fileConfig() configs.filenameFormatConfig() configs.filterConfig() configs.findReplaceConfig() configs.guiConfig() configs.importConfig() configs.mainWindowConfig() configs.networkConfig() configs.numberTracksConfig() configs.playlistConfig() configs.renDirConfig() configs.tagConfig() configs.tagFormatConfig() configs.userActionsConfig()
АВТОРИ¶
Urs Fleisch <ufleisch at users.sourceforge.net>
Юрій Чорноіван <yurchor@ukr.net>
АВТОРСЬКЕ ПРАВО¶
Авторське
право © 2023 Urs Fleisch
FDL
ПРИМІТКИ¶
- 1.
- gnudb.org
- 2.
- MusicBrainz
- 3.
- Discogs
- 4.
- Amazon
- 5.
- специфікації ID3
- 6.
- редакторі SYLT
- 7.
- www.gnudb.org
- 8.
- Discogs
- 9.
- freedb.org
- 10.
- Версія міток ID3 2.3.0
- 11.
- Версія міток ID3 2.4.0 — основна структура
- 12.
- LyricWiki
- 13.
- 14.
- id3lib
- 15.
- libogg
- 16.
- libvorbis, libvorbisfile
- 17.
- libFLAC++ і libFLAC
- 18.
- TagLib
- 19.
- mp4v2
- 20.
- Chromaprint
- 21.
- libav
- 22.
- FDL
- 23.
- GPL
- 24.
- Qt(TM)
- 25.
- KDE
12 січня 2023 року | 3.9.3 |