Перевод
http://www.hydrogenaudio.org/forums/index.php?showtopic=54933Меня многие спрашивают о том, как бы запустить Foobar под Linux. Существует несколько тем, в которых указано, что это возможно, но нигде нет детального описания. У меня Foobar работает достаточно стабильно на моей системе и поэтому я создал эту тему в попытке предоставить её в качестве центральной темы по вопросам и ответам запуска Foobar`а под Linux. Peter высказал, что он не будет писать версию под Linux, поэтому я подумал, что будет верным содержать такого рода вопросы не в главных темах. Я намерен обновлять этот пост и оттачитвать все детали по мере обнаружения новой информации. Я собрал по кусочкам всю информацию из разных мест и применил её на собственную конфигурацию. Если у вас есть лучшая методика для запуска Foobar`а, то пожалуйста поделитесь ею со всеми нами.
* Wujek_Bogdan предоставил инструкцию на Польском, вы можете наёти её
здесьУстановкаI. Wine- Вам понадобится рабочая система с Linux и Wine`ом. Если вы еще не имеете подобного, то советую прочитать
данную инструкцию об установке WIne под Ubuntu с поддержкой CJK.
- Эта инструкция предполагает что диск Z: назначен на вашу корневую /root директорию. Данный параметр стоит по умолчанию в большинстве WIne инсталяций.
- Убедитесь, что Wine сконфигурирован как XP система, так как есть значительные ограничения при запуске Wine, как Vista или WIn95 системы. winecfg> Приложения> "Версия Windows:"
- Для решения проблем с заиканием звука во время пиковых нагрузок на CPU, установите параметр "Аппаратное ускорение" в позицию "Эмуляция" вместо "Полная". Вот что написано в базе данных Wine про Foobar по этому поводу:
Бета версии Foobar`а используют по умолчанию Directsound, который может доставить некоторые проблемы при проигровании музыки. Для обеспечения корректного воспроизведения вы должны выстваить параметр "Аппартное ускорение" в режим эмуляции Directsound. Запустите терминал и введите "winecfg". Откроется окно с опциями. Перейдите во вкладку "Аудио", и обратите внимание на пункт "Аппаратное ускорение". Сейчас он выставлен в позицию "Полное". Кликните по нему, выпадет список с выбором режимов. Кликните по "Эмулировать", и затем по кнопке "Применить". Теперь Foobar2000 способен воспроизводить музыку. Заметьте, что при использовании Foobar версии 0.8.3, будет появляться ошибка при попытке воспроизведении аудио файла. Просто верните этот параметр обратно в позицию "Полное", и когда сможете, перейдите на использование версии Foobar 0.9 beta.
II. Foobar2000* Если у вас уже есть установленная копия Foobar, просто скопируйте его папку в ~/.foobar2000 и пропустите эту секцию.
- Скачайте установщик Foobar с
домашней страницы.- Запустите установку при помощи Wine
wine foobar2000_0.9.5.2.exe
- Установите в z:\home\
YOURNAME\.foobar2000\ которое распознается Wine`ом как ~/.foobar2000
- НЕ УСТАНАВЛИВАЙТЕ "Поддержку Аудио CD"
- НЕ УСТАНАВЛИВАЙТЕ "Ярлыки приложения"
- НЕ УСТАНАВЛИВАЙТЕ "Установить для всех пользователей"
III. Shell скрипт- Давайте теперь создадим скрипт для запуска Foobar, как обычного приложения Linux
gksudo gedit /usr/bin/foobar2000
#!/bin/sh
cd ~/.foobar2000/
if [ "$1" != "" ]; then
filename=`echo z:$1 | sed 's/\\//\\\\/g'`
wine foobar2000.exe "$filename" &
else
wine foobar2000.exe &
fi
* Если вы используете wine локаль для CJK или иной интернациональной поддержки, замените "wine" на "wineloc -l ja_JP" или то что присуще вашему региону
[прим. ред. для России "wineloc -l ru_RU"]- Закройте gedit и сохраните файл.
- Сделайте его исполняемым с помощью следующей команды:
sudo chmod +x /usr/bin/foobar2000
IV. Пакет приложения.- Выберите иконку для приложения. Я выбрал
эту от Byan. Сохраните её в /usr/share/icons/foobar2000.png
- Теперь давайте создадим пакет приложения для того, чтобы мы могли запускать Foobar из главного меню GNOME
gksudo gedit /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=foobar2000.png
Categories=GNOME;GTK;AudioVideo;Audio;Player;
- Закройте gedit и сохраните файл.
КомпонентыНе все компоненты хорошо работают под Wine`ом. Те компоненты, которые написаны на .NET частично имеют проблемы.
- foo_bubble_coverflow - Этот компонет немного проработав останавливается. С этим компонентом мой Foobar рушит Wine до того как загружается главное окно. Если вам удалось завести его, пожалуйста поделитесь решением.
- foo_chronflow - Этот компонент высвечивает JScript compile ошибку и рушит Foobar.
- foo_converter - Для исправного конвертирования музыки с использованием lame, вам необходимо использовать win32 версию lame.exe.
- foo_discogs - Этот компонент требует чтобы GDI+ присутствовал или в директории Foobar`а, или в ~/.wine/drive_c/windows/system32/
- foo_run - Кажется, что этот компонент загружается корректно, но при работе с ним ничего не происходит.
- foo_ui_columns - Новые версии этого компонента работают корректно
- foo_ui_panels - Этот компонент требует чтобы GDI+ присутствовал или в директории Foobar`а, или в ~/.wine/drive_c/windows/system32/. Также этот компонет часто падает при попытке сохранить конфигурационные данные под не-Английской локалью
- foo_uie_queuemanager - Требует MSVC++ и также .NET 2.0. Не загружается и рушит Foobar.
- foo_uie_vis_egoh - Похоже этот компонент не работает под Wine. Рушит Foobar.
- foo_uie_vis_projectm - Требует MSVC++ и libmmd.dll. Избегайте использования полноэкранного режима
Клавиатурные сокращения:По умолчанию, Wine должен позволять назначать мультимедийные клавиши, если они еще не заняты чем-нибудь еще, но в любом случае эти сокращения не будут глобальными (т.е. вы не сможете поменять песню находясь в другом приложении). Для "глобализации" управления Foobar`ом вы можете попытаться прочесть
этот пост на форуме Ubuntu. Суммируя сказанное в нём:
- Нажмите Alt+F2 для открытия окна "Выполнить программу".
- Введите в строке "gconf-editor" и нажмите клавишу "Enter" или надмите кнопку "Запустить".
- Должен открыться "Редактор конфигурации" GNOME.
- В левой панели перейдите в /apps/metacity/keybinding_commands и обозначьте следующие ключи:
command_1 - wine ~/.foobar2000/foobar2000.exe /playpause
command_2 - wine ~/.foobar2000/foobar2000.exe /stop
command_3 - wine ~/.foobar2000/foobar2000.exe /next
command_4 - wine ~/.foobar2000/foobar2000.exe /prev
- В левой панели перейдите в /apps/metacity/keybinding_commands и обозначьте следующие ключи:
run_command_1 - XF86AudioPause
run_command_2 - XF86AudioStop
run_command_3 - XF86AudioNext
run_command_4 - XF86AudioPrev
Добавление от
FrouПроблема с Global Hotkeys решена. Делаем следующее. Берём
этот скрипт запуска. Меняем первую строчку кода на такой вид:
fb2k="wine /home/user/.foobar2000"
Cохраняем как /usr/bin/foobar2000.
Теперь наш фубар принимает команды вида:
foobar2000 -pauseПолный список:
-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
Где [fb2k command] выбираем из огромного числа, и записываем в таком виде:
foobar2000 -command-"Set volume to -6dB"
Привязываем к клавишам, как написано выше, либо с помощью gconf-editor, либо с помощью xbindkeys (у кого не Gnome).
Отображение информации "Что сейчас играет"Многие любят вставлять информацию о том, что сейчас играет в другие программы, например в IRC или клиента обмена сообщениями. Большинство решений указывают не выносить за WIne ничего. Но всё же мне удалось обнаружить компонент
foo_np_simple, который записывает состояние воспроизведения в отформатированном виде в текстовый файл, который затем может быть обработан внешней программой (cat ~/.foobar2000/now_playing.txt). Я решил попытаться "воссоздать" nowplaying файл от других плееров, вроде quodlibet и затем написать xchat perl скрипт для передачи информации, но я думаю эта тема выходит за рамки данного топика.
Остальные заметки:- Wine икнонка в трее довольно глючная как в GNOME, так в KDE. Для избежания проблем, вы можете предотвратить минимизацию в трей в настройках Columns/Panels.
- Эта инструкция была написана для среды GNOME. Для KDE замените везде "gksudo" на "kdesu" и "gedit" на "kate".