Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: HOWTO:Запускаем Foobar2000 в Linux  (Прочитано 29964 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн ck80

  • Автор темы
  • Любитель
  • *
  • Сообщений: 76
    • Просмотр профиля
HOWTO:Запускаем Foobar2000 в Linux
« : 08 Мая 2008, 21:42:01 »
Перевод 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".
« Последнее редактирование: 07 Октября 2008, 20:30:23 от ck80 »

Оффлайн Sinkaiya

  • Активист
  • *
  • Сообщений: 294
    • Просмотр профиля
Re: HOWTOЗапускаем Foobar2000 в Linux
« Ответ #1 : 09 Мая 2008, 09:38:37 »
Многим кажется, что фубар - до сих пор самый удобный и функциональный плеер из тех что есть. В том числе и мну. Однако не будем разводить холивар на тему "фубар вс. амарок" и пр. Лучше вот я спрошу. Ставиться-то он ставится, но я не сообразил, как прикрутить к нему профиль. У меня просто своя сборка, и чтобы она работала, надо чтобы он видел файл профиля, который в винде лежит в C:\Documents and Settings\myaccount\Application Data\foobar2000, и называется foobar2000.cfg. Знает кто-нибудь, как? :)

Оффлайн Sinkaiya

  • Активист
  • *
  • Сообщений: 294
    • Просмотр профиля
Re: HOWTOЗапускаем Foobar2000 в Linux
« Ответ #2 : 09 Мая 2008, 10:23:44 »
О. Нашол. У него оказывается профиль под убунтой просто в другом месте хранится. Всё работает. Ыыы. ^_^

Оффлайн Frou

  • Новичок
  • *
  • Сообщений: 21
    • Просмотр профиля
Re: HOWTOЗапускаем Foobar2000 в Linux
« Ответ #3 : 17 Мая 2008, 18:49:32 »
f2k - это, конечно, супер. Под оффтопиком только его и юзаю.
Но под wine от него останется лишь жалкое подобие... Зачем тогда так издеваться? Уж лучше что-то родное линуксовское поюзать...

Почему жалкое подобие? Сейчас всё почти полнофункционально работает. У меня foobar под Wine 1.0rc1 - звук хороший, не заикается, абсолютно все мои плагины заработали (хотя пришлось отключить один, использующий .NET, для экономии ресурсов). А теперь и последняя важная проблема с Global Hotkeys решена. Советую автору добавить в шапку.

Делаем следующее. Берём этот скрипт запуска
http://jyujin.de/~creidiki/foobar2000.bash
Меняем первую строчку кода на такой вид
fb2k="wine /home/user/.foobar2000"
сохраняем как /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).


А вообще, настроенный foobar2000 - настолько удобный и функциональный инструмент для меломана, что амароки, аудашосы и айтюнсы отдыхают в сторонке. К комфорту привыкаешь не сразу, но надолго. =)

Оффлайн Frou

  • Новичок
  • *
  • Сообщений: 21
    • Просмотр профиля
Re: HOWTOЗапускаем Foobar2000 в Linux
« Ответ #4 : 17 Мая 2008, 19:34:02 »
Вот мой скрин. На нём видна лишь часть возможностей.


Оффлайн Dfg

  • Активист
  • *
  • Сообщений: 323
    • Просмотр профиля
Re: HOWTO:Запускаем Foobar2000 в Linux
« Ответ #5 : 17 Мая 2008, 23:20:15 »
На вантузе юзал foobar из за качества выдаваемого им звука. Работал через плагин ASIO.
Что будет со звуком в таком варианте никто сказать не может. А подобная функциональность уже есть во многих нативных плеерах, взять хотяб амарок.

Оффлайн Frou

  • Новичок
  • *
  • Сообщений: 21
    • Просмотр профиля
Re: HOWTOЗапускаем Foobar2000 в Linux
« Ответ #6 : 18 Мая 2008, 00:10:10 »
Да, погорячился я... Действительно, неплохо.
Бегает так же шутро, как и под Форточками?

Вполне. Нареканий по быстродействию нет. По сравнению с предыдущими версиями вайна, которые я пробовал, где-то 0.9.38 , тогда еще звук заикался и иконку в трее нужно было отключать. А сейчас с этим проблем нет. Прогресс заметен. Хотя мелкие баги еще присутствуют.


Dfg

Согласен. Если устраивает функционал нативных плееров, лучше конечно пользоваться ими.

Оффлайн TeaAddict

  • Любитель
  • *
  • Сообщений: 54
    • Просмотр профиля
Re: HOWTOЗапускаем Foobar2000 в Linux
« Ответ #7 : 07 Июля 2008, 12:49:51 »
Вот мой скрин. На нём видна лишь часть возможностей.


Как ты фаил браузер запихал в скин? о_0
Debian GNU/Linux unstable (sid)

Оффлайн Сет

  • Любитель
  • *
  • Сообщений: 54
  • сволочь
    • Просмотр профиля
Re: HOWTOЗапускаем Foobar2000 в Linux
« Ответ #8 : 07 Июля 2008, 18:40:29 »
Как ты фаил браузер запихал в скин? о_0
Дык это вроде какой-то из library-плагинов фубара...

Оффлайн violent

  • Новичок
  • *
  • Сообщений: 2
    • Просмотр профиля
Re: HOWTO:Запускаем Foobar2000 в Linux
« Ответ #9 : 02 Августа 2008, 14:22:27 »
фубар читает wv.iso.wv...

очень удобно в нём музыку хранить...

Оффлайн nosatyj

  • Новичок
  • *
  • Сообщений: 11
    • Просмотр профиля
Re: HOWTO:Запускаем Foobar2000 в Linux
« Ответ #10 : 29 Августа 2008, 18:57:00 »
посдкажите команду меню файлового менеджера для добавления файлов в плейлист

Оффлайн Frou

  • Новичок
  • *
  • Сообщений: 21
    • Просмотр профиля
Re: HOWTO:Запускаем Foobar2000 в Linux
« Ответ #11 : 07 Октября 2008, 14:34:01 »
TeaAddict
компонент foo_uie_explorer (это из интерфейса Columns UI)

nosatyj
Не совсем понял что тебе нужно. Попробуй -add, либо -addfiles. Если другое, ищи здесь:
http://wiki.foobar2000.ru/foobar2000/commandline
Будет например, -command-"Add directory..."
« Последнее редактирование: 12 Октября 2008, 14:51:53 от Frou »

Оффлайн nosatyj

  • Новичок
  • *
  • Сообщений: 11
    • Просмотр профиля
Re: HOWTO:Запускаем Foobar2000 в Linux
« Ответ #12 : 06 Декабря 2008, 11:54:33 »
проблемы со скриптом: ввожу например foobar2000 -pause , мне пишет

bash: /usr/bin/foobar2000: Permission denied

что делать?

Оффлайн Frou

  • Новичок
  • *
  • Сообщений: 21
    • Просмотр профиля
Re: HOWTO:Запускаем Foobar2000 в Linux
« Ответ #13 : 23 Декабря 2008, 19:09:58 »
bash: /usr/bin/foobar2000: Permission denied

что делать?

Проверять права. Если "sudo foobar2000 -pause" работает, то точно.

Оффлайн lazyal

  • Любитель
  • *
  • Сообщений: 91
    • Просмотр профиля
Re: HOWTO:Запускаем Foobar2000 в Linux
« Ответ #14 : 10 Апреля 2009, 10:17:10 »
Подскажите, не сталкивался ли кто со следующей проблемой: при включении Foobar различных версий вижу черное окно. Методом тыка определил, что отключение компиза помогает, при этом повторное включение сохраняет нормальный вид окна плейера. Не могу разобраться с первопричиной этого неприятного явления.

 

Страница сгенерирована за 0.062 секунд. Запросов: 25.