Додаток B. Інтерфейс D-Bus

Зміст

Приклади D-Bus
Програмний інтерфейс D-Bus
Відкриття файла або теки
Вивантаження міток усіх файлів, які не змінено і не позначено
Збереження усіх змінених файлів
Отримання докладного повідомлення щодо помилки, яке надається іншими методами
Скасовування змін у позначених файлах
Запуск автоматичного пакетного імпортування
Імпортуванням міток з файла
Імпортування міток з інших міток
Імпортування міток з інших міток позначених файлів
Отримання зображення обкладинки альбому
Експортування міток до файла
Створення списку відтворення
Отримання записів у списку відтворення
Встановлення записів списку відтворення
Вийти з програми
Позначення усіх файлів
Зняття позначення з усіх файлів
Встановлення першого файла як поточного файла
Встановлення попереднього файла як поточного файла
Встановлення наступного файла як поточного файла
Позначення першого файла
Позначення попереднього файла
Позначення наступного файла
Позначення поточного файла
Розгортання або згортання поточного пункту у файловій ієрархії, якщо це тека
Застосування формату назви файла
Застосування формату мітки
Застосувати кодування тексту
Встановлення назви теки на основі міток
Встановлення послідовної нумерації доріжок для позначених файлів
Фільтрування файлів
Перетворення міток ID3v2.3 на ID3v2.4
Перетворення міток ID3v2.4 на ID3v2.3
Отримання шляху до теки
Отримання назви поточного файла
Встановлення назви позначеного файла
Встановлення формату, який буде використано при встановленні назв файлів на основі міток
Встановлення назв позначених файлів на основі міток
Отримання значення кадру
Встановлення значення кадру
Отримання усіх кадрів мітки
Отримання технічних даних щодо файла
Встановлення мітки на основі назви файла
Встановлення мітки на основі іншої мітки
Копіювання мітки
Вставлення мітки
Вилучення мітки
Повторно обробити налаштування
Відтворення позначених файлів

Приклади 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'

або, простіше, за допомогою програми із набору інструментів Qtqdbus (для вивчення графічного інтерфейсу програми можна скористатися програмою 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");