HOWTO: Foobar2000 under Wine in Linux (and Mac OS)

Список разделов Аудиоплеер foobar2000 Общая информация

Описание: Общее обсуждение по аудиоплееру foobar2000

Сообщение #1 Frou » 17.05.2008, 19:42

Тестировал на Wine 1.0rc1 + foobar2000 0.9.4.5 and foobar2000 0.9.5.2. Работает превосходно. Проблема Global Hotkeys решена. Большинство плагинов работает.


Краткая инструкция.
(перевод с английского, при участии ck80)

I. Wine

- Установите Wine, желательно последней версии
- Эта инструкция предполагает что диск Z: назначен на вашу корневую директорию /. Данный параметр обычно стоит в WIne по умолчанию.
- Убедитесь, что Wine сконфигурирован как XP система
winecfg> Приложения> "Версия Windows:"
- Для решения проблем с возможным заиканием звука во время пиковых нагрузок на процессор, установите на вкладка "Аудио" параметр "Аппаратное ускорение" в позицию "Эмуляция" вместо "Полная".


II. Foobar2000

* Если у вас уже есть установленная копия Foobar, просто скопируйте его папку в ~/.foobar2000 и пропустите эту секцию.

- Скачайте установщик Foobar с домашней страницы.
- Запустите установку при помощи Wine
wine foobar2000_0.9.5.2.exe
- Установите в z:\home\YOURNAME\.foobar2000\ которое распознается Wine`ом как ~/.foobar2000

  • НЕ УСТАНАВЛИВАЙТЕ "Поддержку Аудио CD"
  • НЕ УСТАНАВЛИВАЙТЕ "Ярлыки приложения"
  • НЕ УСТАНАВЛИВАЙТЕ "Установить для всех пользователей"


III. Shell скрипт

- Давайте теперь создадим скрипт для запуска Foobar, как обычного приложения Linux
sudo nano /usr/bin/foobar2000
- Вставьте готовый скрипт отсюда, заменив первую строчку кода на вид
Код: Выделить всё
fb2k="wine /home/user/.foobar2000"

- Закройте nano и сохраните файл.
- Сделайте его исполняемым с помощью следующей команды:
sudo chmod +x /usr/bin/foobar2000


IV. Пакет приложения.

- Теперь давайте создадим пакет приложения для того, чтобы мы могли запускать Foobar из главного меню
sudo nano /usr/share/applications/foobar2000.desktop

Код: Выделить всё
[Desktop Entry]
Type=Application
Name=foobar2000
GenericName=Plays Music
Version=1.0
Encoding=UTF-8
Terminal=false
Exec=/usr/bin/foobar2000
Comment=Plays Music
Icon=7498_foobar2000.0
Categories=GNOME;GTK;AudioVideo;Audio;Player;
- Закройте nano и сохраните файл.


Компоненты
Не все компоненты хорошо работают под Wine`ом. Для обеспечения большей совместимости положите библиотеки gdiplus.dll, libpng13.dll, zlib1.dll (можно взять на http://www.dll-files.com или готовым архивом) в каталог foobar2000 или в ~/.wine/drive_c/windows/system32/

Некоторые сведения (устаревшие, ситуация могла измениться):

  • foo_bubble_coverflow - Этот компонент, немного проработав, останавливается. С этим компонентом Foobar рушит Wine до того как загружается главное окно. Если вам удалось завести его, пожалуйста поделитесь решением.
  • foo_chronflow - Этот компонент высвечивает JScript compile ошибку и рушит Foobar.
  • foo_converter - Для исправного конвертирования музыки с использованием lame, вам необходимо использовать win32 версию lame.exe.
  • foo_discogs - Этот компонент требует библиотеки gdiplus.dll
  • foo_run - Кажется, что этот компонент загружается корректно, но при работе с ним ничего не происходит.
  • foo_ui_columns - Новые версии этого компонента работают корректно
  • foo_ui_panels - Этот компонент требует библиотеки gdiplus.dll. Также этот компонет часто падает при попытке сохранить конфигурационные данные под не-Английской локалью
  • foo_uie_queuemanager - Требует MSVC++ и также .NET 2.0. Не загружается и рушит Foobar. (Прим. Frou: Работает, но отнимает много ресурсов, лучше отключить)
  • foo_uie_vis_egoh - Похоже этот компонент не работает под Wine. Рушит Foobar.
  • foo_uie_vis_projectm - Требует MSVC++ и libmmd.dll. Избегайте использования полноэкранного режима


Клавиатурные сокращения:
Вы можете управлять программой с помощью следующих команд:
Код: Выделить всё
-add -addfiles -play -pause -playpause -stop -next -prev -rand -mute -volup -voldown -hide
-show -rescan -command-[fb2k command] -playlist_command-[fb2k playlist command]
-playing_command-[fb2k playing command] -help
Например,
Код: Выделить всё
foobar2000 -pause

Команды с использованием [fb2k command] выбираем из огромного числа, и записываем в виде:
Код: Выделить всё
foobar2000 -command-"Set volume to -6dB"

Теперь осталось привязать команды к глобальным сочетаниям клавиш вашей системы. Если вы используете оболочку Gnome, запустите gconf-editor. В ветке /apps/metacity/global_keybindings хранятся сочетания клавиш (ключи command_№), в ветке /apps/metacity/keybinding_commands прописываются соответствующие команды (ключи run_command_№).

Если вы не используете Gnome, назначьте клавиши с помощью xbindkeys.


Отображение информации "Что сейчас играет"
Многие любят вставлять информацию о том, что сейчас играет в другие программы, например в IRC или клиента обмена сообщениями. Большинство решений указывают не выносить за WIne ничего. Но всё же мне удалось обнаружить компонент foo_np_simple, который записывает состояние воспроизведения в отформатированном виде в текстовый файл, который затем может быть обработан внешней программой (cat ~/.foobar2000/now_playing.txt). Я решил попытаться "воссоздать" nowplaying файл от других плееров, вроде quodlibet и затем написать xchat perl скрипт для передачи информации, но я думаю эта тема выходит за рамки данного топика.


Остальные заметки:
- Для увеличения быстродействия отключите у плеера иконку в трее.
- Если пользуетесь плеером под двумя операционками параллельно, можно для удобства создать символьные ссылки на такие папки/файлы как playlists, bookmarks.dat, custominfo_sqlite.db и др.


Исходная тема на hydrogenaudio.org

Мой скрин:

Изображение
Последний раз редактировалось Sp1ke 14.04.2009, 19:59, всего редактировалось 1 раз.
Изображение

foobar2000 0.9.6.7 / 1.0.3 + Rialto Config + Some Plugins (win xp/mac leo)
Frou
Автор темы, Бывалый
Репутация: -1
С нами: 10 лет 11 месяцев

Сообщение #2 Максим » 17.05.2008, 20:02

Frou
Спасибо!
Скрин хороший. :) Реанимировал всеми забытую функцию $transition().
Максим M
Мастер
Аватара
Возраст: 31
Репутация: 93
С нами: 11 лет 1 месяц

Сообщение #3 Warchief » 19.05.2008, 04:54

2Frou

класс, можно сносить винду нафик...
Warchief
Новичок
Репутация: 0
С нами: 11 лет 11 месяцев

Сообщение #4 FlySnake » 04.08.2008, 21:54

Кому-нибудь удалось заставить работать OSD (On-Screen Display)?
FlySnake
Новичок
Репутация: 0
С нами: 9 лет 9 месяцев

Сообщение #5 Nothing » 29.08.2008, 18:14

как настроить вайн, чтобы можно было перетаскивать файлы в плейлист непосредственно из папки?
Nothing
Бывалый
Репутация: 2
С нами: 10 лет 8 месяцев

Сообщение #6 DruiD » 29.08.2008, 23:58

О, чо коллумнсы уже работают?
Таки надо попробовать.
2Nothing, драг-н-дропа в вайне нет, и не скоро появится наверно.
Последний раз редактировалось DruiD 30.08.2008, 00:13, всего редактировалось 1 раз.
DruiD M
Мастер
Аватара
Возраст: 31
Откуда: Зеленоград
Репутация: 5
С нами: 11 лет 11 месяцев

Сообщение #7 Frou » 08.04.2009, 18:03

Кстати, выполнение команды только при условии запущенного фубара делается так:
[ -z $(ps -A|grep foobar2000) ] || foobar2000 -play
Изображение

foobar2000 0.9.6.7 / 1.0.3 + Rialto Config + Some Plugins (win xp/mac leo)
Frou
Автор темы, Бывалый
Репутация: -1
С нами: 10 лет 11 месяцев

Сообщение #8 Frou » 14.04.2009, 20:28

Под макосью тоже вполне работает. И качество звука точно лучше, чем из vmware.
Некоторые заметки.

Путь для фубара в скрипте /usr/bin/foobar2000 прописываем в виде

Код: Выделить всё
fb2k="/Applications/Darwine/Wine.bundle/Contents/bin/wine /Users/me/foobar2000"

Ярлык создать не получится, запускаем через алиас к скрипту.

Для хоткеев можно использовать например ControllerMate или Spark (free). Вешаем Applescript вида

Код: Выделить всё
do shell script "/Applications/Darwine/Wine.bundle/Contents/bin/wine /Users/me/foobar2000/foobar2000.exe /command:'Volume up'"

Однако, косяк в том, что на выполнение команды уходит 2-3 секунды, неприятно. Как побороть, не знаю. В остальном серьезных замечаний нету, работает довольно стабильно, пользоваться можно.

*Тестировано на версии Darwine 1.1.18 отсюда, с другими были глюки и тормоза; foobar2000 0.9.6.*
Последний раз редактировалось Sp1ke 06.03.2010, 17:21, всего редактировалось 1 раз.
Изображение

foobar2000 0.9.6.7 / 1.0.3 + Rialto Config + Some Plugins (win xp/mac leo)
Frou
Автор темы, Бывалый
Репутация: -1
С нами: 10 лет 11 месяцев

Сообщение #9 FANKOT » 28.12.2009, 22:24

А как быть с интерфейсом: как поставить ui? У меня просто сборка настроенная есть но под gnome не пашет под вайном... Сам дефолтный фубар пашет, но хояу интерфейс прежний вернуть (chameleon)
FANKOT
Новичок
Репутация: 0
С нами: 8 лет 5 месяцев

Сообщение #10 Frou » 16.01.2010, 00:38

Сборка на Columns UI как я понимаю...
Предлагаю поочередно добавлять плагины в дефолтный плеер, и выяснить, какой проблемный.
Изображение

foobar2000 0.9.6.7 / 1.0.3 + Rialto Config + Some Plugins (win xp/mac leo)
Frou
Автор темы, Бывалый
Репутация: -1
С нами: 10 лет 11 месяцев


Вернуться в Общая информация