после очередных танцев со стандартным плеером (vlc), который у меня работал с большой задержкой, я попытался найти ему альтернативу и набрел на плеер foobar2000(http://www.foobar2000.org/)
К которому уже существует библиотека для управления им через http - foo_httpcontrol
(http://code.google.com/p/foo-httpcontrol/downloads/list) оставалось дело за малым - поставить его и попытаться прикрутить его к системе.
Что в итоге надо сделать
1. Устанавливаем плеер http://www.foobar2000.org/
2. Скачиваем дополнительную библиотеку и оба теплейта для вебстраниц - default и ajquery (всего 3 архива)
3. Dll-ку кладем в Programm Files\foobar2000\components
4. в папку c:\Documents and Settings\User(имя пользователя заменить на свое)\Application Data\foobar2000\foo_httpcontrol_data кладем в темплейты из архивов каждый в свою папку. Получаем что у нас в папке две подпапки - default и ajquery
5. запускаем плеер
6. проверяем работу вебоболчки плеера на той машине где он установлен, должна появиться страница в браузере если набрать 127.0.0.1:8888 (8888 - обязательно, это порт на котором весит плеер, по умолчанию там 80, а на нем у нас majordomo)
7. если страница загрузилась и плеер через нее управляется продолжаем дальше, если нет возвращаемся на 3 и читаем ридми к плееру и компоненту
8. идем в контрольную панель системы majordomo и делаем новую домашнюю страницу (home pages)
TITLE: Foobar
PRIORITY: 100
TYPE: URL
URL: http://"IP адрес машины с плеером":8888/ajquery/ - меняем "IP адрес машины с плеером" без кавычек
примерно так http://192.168.0.1:8888/ajquery/
9. проверяем что получилось. должна появиться закладка и со страницей управления плеера из пункта 6. на этом этапе плер уже должен быть полностью функционален, играть музыку и прочее
10. теперь надо перекрутить Player Control под этот плеер (опционально, потеряем часть оригинального функционала, тк меняем управление)
11. ищем файл _majordomo\htdocs\modules\app_player\app_player.class.php , делаем резервную копию на всякий.
меняем в ней часть кода (вроде в 216 строки)
Код: Выделить всё
if ($terminal['PLAYER_TYPE']=='vlc' || $terminal['PLAYER_TYPE']=='') {
if ($command=='refresh') {
$out['PLAY']=preg_replace('/\\\\$/is', '', $out['PLAY']);
curl_setopt($ch, CURLOPT_URL, "".$terminal['HOST'].":8888/default/?cmd=PlayOrPause¶m3=NoResponse");
$res=curl_exec($ch);
}
if ($command=='fullscreen') {
curl_setopt($ch, CURLOPT_URL, "".$terminal['HOST'].":".$terminal['PLAYER_PORT']."/rc/?command=vlc_fullscreen");
$res=curl_exec($ch);
}
if ($command=='pause') {
curl_setopt($ch, CURLOPT_URL, "".$terminal['HOST'].":8888/default/?cmd=PlayOrPause¶m3=NoResponse");
$res=curl_exec($ch);
}
if ($command=='next') {
curl_setopt($ch, CURLOPT_URL, "".$terminal['HOST'].":8888/default/?cmd=StartNext¶m3=NoResponse");
$res=curl_exec($ch);
}
if ($command=='prev') {
curl_setopt($ch, CURLOPT_URL, "".$terminal['HOST'].":8888/default/?cmd=StartPrevious¶m3=NoResponse");
$res=curl_exec($ch);
}
if ($command=='close') {
curl_setopt($ch, CURLOPT_URL, "".$terminal['HOST'].":8888/default/?cmd=Stop¶m3=NoResponse");
$res=curl_exec($ch);
}
} elseif ($terminal['PLAYER_TYPE']=='xbmc') {
include(DIR_MODULES.'app_player/xbmc.php');
}
curl_setopt($ch, CURLOPT_URL, "".$terminal['HOST'].":8888/default/?cmd=PlayOrPause¶m3=NoResponse");
где cmd=PlayOrPause - команда для плеера фубар (список всех комманд плеера здесь http://code.google.com/p/foo-httpcontrol/wiki/Commands)
param3=NoResponse - обязательный параметр, отключает ответ от плеера
12. сохраняем и проверяем
далее опционально
13. можно поменять цвета плеера в темплейте которые мы ставили в пункте 4
14. можно поставить другой скин на плеер, скины есть здесь http://www.hydrogenaudio.org/forums/ind ... opic=62218 . мне понравился vairulez, но с системой он работал криво, оставил ajquery
15. в настройках плеера есть fade in (плавное прибавление громкости) и fade out (затухание) по громкости, очень рекомендую.
вот как это выглядит:

из плюсов этого плеера в моем случае:
+ работа в реальном времени, почти без задержек
+ полный функционал плеера
@sergejey Сергей, если у вас будет возможность, посмотрите, возможно ли добавить недостающий функционал к этому плееру, точнее реализовать для него функцию playMedia, чтобы была возможность использовать его со скриптами. Моих знаний в php и аяксе не хвататет для ткой задаче