Апплет значков RadioTray довольно аккуратный и поставляется с множеством предопределенных радиостанций, упорядоченных по категориям. К тому же я добавил несколько дополнительных местных (израильских) радиостанций и в итоге получил несколько десятков.
При подготовке к появлению Precise и необходимости иметь одного игрока для всех, я хотел бы перенести этот список в Rhythmbox.
Единственное, что я до сих пор выяснил, это то, что радиостанции Radio Tray хранятся в файле XML по адресу @ HOME / .local / share / radiotray / bookmarks.xml .
Есть идеи, как импортировать станции RadioTray в Rhythmbox?
Изображение показывает радиостанции RadioTray по умолчанию, импортированные в Rhythmbox
Как я делал это?
RadioTray содержит свои радиостанции в XML-файле, расположенном в:
~/.local/share/radiotray/bookmarks.xml
Rhythmbox содержит все свои данные так же в XML-файле, расположенном в:
~/.local/share/rhythmbox/rhythmdb.xml
Если Вы исследуете оба файла ее довольно очевидное, что формат XML (его определенная структура) очень отличается.
Одно решение состоит в том, чтобы преобразовать формат Radiotray XML к чему-то, что может понять Rhythmbox.
XSLT
Можно использовать структурированный язык перевода XML XSLT для выполнения этого преобразования.
Устанавливать:
sudo apt-get install python-4suite-xml
Затем скопируйте содержание ниже в новое gedit
файл
Сохраните в файле (создайте папку xml
при необходимости) названный ~/xml/style
Затем, скопируйте XML-файл RadioTray в ту же папку ~/xml
Наконец, скопируйте XML-файл Rhythmbox в ту же папку ~/xml
Спад до терминала:
cd ~/xml
4xslt bookmarks.xml style > test.xml
Это переформатирует RadioTray в XML, который может быть считан RhythmBox
Затем мы должны добавить эти новые данные к Rhythmbox.
Теперь откройте обоих test.xml
и rhythmdb.xml
Скопируйте содержание test.xml
ЗА ИСКЛЮЧЕНИЕМ первой строки в rhythmdb.xml
файл. Отметьте - Вы вставляете содержание в конце файла т.е.
</entry>
*****paste test.xml here*****
</rhythmdb>
Сохранить.
Скопируйте старое rhythmdb.xml
файл и затем копирует по новому rhythmdb.xml
файл.
Разожгите Rhythmbox
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<xsl:for-each select="bookmarks/group/group/bookmark">
<entry type="iradio">
<title><xsl:value-of select="@name"/></title>
<genre><xsl:value-of select="translate(../@name,'','')"/></genre>
<artist></artist>
<album></album>
<location><xsl:value-of select="@url"/></location>
<date>0</date>
<media-type>application/octet-stream</media-type>
</entry>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
Ну, это возможно. Но это не будет быстрым и веселым процессом.
Вы захотите открыть bookmarks.xml с любой программой, которую вы хотите (я лично использовал бы gedit), а также открыть Rhythmbox. Открыв Rhythmbox, вам нужно будет щелкнуть правой кнопкой мыши «Радио» на левой панели и «Новая интернет-радиостанция». Вы захотите скопировать и вставить URL-адрес каждой радиостанции, которую вы хотите вставить в Rhythmbox. Затем вы можете переименовать их, как хотите.
Вы должны будете сделать это для каждого из URL. Это не займет много времени, но это утомительно. : (