[FilterScript] Music Player
#1


Описание:

Две недели я создавал данный скрипт, и теперь выкладываю его презентационную
версию сюда. Это скрипт музыкального плеера, он не из тех скриптов-плееров, в
которых по 8 треков, добавление которых происходит в код скрипта и они играют
для всех игроков, это - многофункциональная система для каждого игрока, со
множеством функций и особенностей. Вот основные особенности:
  1. Любой игрок может добавить к себе в аудиозаписи музыку из интернета по url,
    задать ей название, или же добавить уже готовую из каталогов сервера.
  2. Возможность удалять свои аудиозаписи каждому игроку
  3. Аудиозаписи всегда можно отредактировать выбрав соответствующий пункт в меню,
    в частности вы можете изменить название и url
  4. Возможность изменять настройки дают возможность каждому игроку настроить
    плеер под себя, в настройки входят:
    • Изменение времени показа названия аудиозаписи
    • Изменение типа названия аудиозаписи
    • Изменение клавиш переключения и остановки музыки
    • Возможность включить случайный порядок переключения, причем при этом у вас
      никогда не включиться та же самая аудиозапись дважды
  5. Возможность переключить управление плеером на клавиши избавит вас от ввода
    команд.
  6. Будучи администратором создавайте, удаляйте, дополняйте, редактируйте
    каталоги с музыкой прямо из админ-панели в игре
  7. Все действия выполняются из игры, забудьте про открывание папок и изменение
    файлов.
  8. "Защита от дураков" не даст испортить скрипт ни администратору, ни юзеру.
Небольшие, но полезные особенности:
  1. При удалении каталога создается его резервная копия
  2. Возможность включить/выключить проверку на ANSI не даст задать название
    музыке, состоящее из кириллических символов
  3. Постоянная перезапись БД защищает от слета настроек и музыки игрока при смене
    его никнейм.
  4. Все надписи, ид-диалогов, текста, настройки скрипта записаны в дефайны, что
    позволяет с легкостью изменять скрипт
  5. Множество диалоговых веток, по которым удобно перемещаться облегчают работу и
    экономят время.
Видео:
http://www.youtube.com/watch?v=R980O...ature=*********

Для вызова окна плеера введите /плеер или /music
Для вызова панели администратора введите /settingm после входа в rcon

Используемые системы:

MX_INI - by MX_MASTER

Настройки по-стандарту:


Лимиты по стандарту (можно изменить):
PHP Code:
#define MAX_MUSIC 20//максимум музыки у каждого игрока
#define MAX_CATALOG_MUSIC 20//Максимум музыки в одном каталоге
#define MAX_CATALOGS 10//Максимум поддерживаемых каталогов 
Вид базы данных:

http://s018.radikal.ru/i520/1202/3f/8a3c3ae20c9d.png

Скриншоты:

http://s58.radikal.ru/i160/1202/43/bb9cb7c539f0.jpg
http://s018.radikal.ru/i504/1202/a2/38afd64c08f2.jpg
http://i061.radikal.ru/1202/17/0542f6c4e645.jpg
http://s018.radikal.ru/i502/1202/d9/c68151a59e9d.jpg
http://s42.radikal.ru/i095/1202/2b/1c44a2a85941.jpg
http://s018.radikal.ru/i518/1202/e1/c6e58f324686.jpg
http://s017.radikal.ru/i439/1202/39/af332d2eb645.jpg
http://i052.radikal.ru/1202/5c/d2832f912a7d.jpg
http://s017.radikal.ru/i412/1202/c1/4f80e78afd05.jpg
http://s48.radikal.ru/i122/1202/cf/c98c05f1ae98.jpg


Данная версия является официальной. Оцените работу, думаю вам понравится.

Автор: BRICS

Версия 0.1 Скачать:
DropBOX

================================================== ====
Версия 0.2:

Все почти тоже самое что и в пред версии, только в этой версии были исправлены немногие баги, расширено меню, добавлено автопереключение музыки по окончанию и красивое, на мой взгляд, окно плеера.

Скриншоты:

См. оконце плеера в правом нижнем углу






Установка плагина SysControl и библиотеки:
Quote:

Windows:
Положите файлы из папки plugins в папку plugins на сервере.
В связи с особенностями сервера, файл bass.dll надо поместить в корневой каталог сервера (те там, где samp-server.exe), в системный каталог windows, или прописать пусть в переменных среды.

Linux:
Файл libbass.so надо положить в папки /lib/, /usr/lib/, /usr/local/lib/.

Информация о работе:

Длительность аудио узнается при добавлении музыки к игроку/в каталог/изменению url музыки игрока/изменение url музыки в каталоге
Работоспособность скрипта не проверялась на linux
Используется плагин SysControl by jhonyxakep
Используется библиотека bass.dll
Музыка в бд теперь имеет следующий вид:
Quote:

Musicid = MusicUrl%SEPERATOR%MusicName%SEPERATOR%MusicDurati on в мс

Пример:
Quote:

Music2 = [Скрою_Ссылку]|Slipknot - Wait and Bleed|147

Скачать: DropBox
Reply
#2

Один совет: используй превьюшки при оформлении изображений.
Reply
#3

Если песня заканчивается, игрок должен сам переключать на след. трек?
Reply
#4

Да. А разве в сампе существует функция определения длительности аудопотока?
Reply
#5

Не существует... Однако где ваша фантазия? Есть несколько плагинов - реализаций сокетов. Отсылаем запрос на адрес нахождения звукового файла, получаем заголовки с информацией о файле, в 90% случаях, если это не радио, мы получим размер файла в байтах.

Дальше надо прочитать несколько байт информации о битрейте MP3, или другого файла, немудрые функции конвертирования размера во время(заодно можно еще теги получить, дабы не заставлять пользователя вбивать все это ручками), и вуаля: длительность трека. Прибавляем задержку 5-9 сек для буфера, и вот уже готов таймер для переключения трека...

Не самый простой вариант, не так-ли?
Reply
#6

jhonyxakep, не прокатит, не забываем про динамический битрейт.
Думаю более точнее будет вариант с php скриптом, типа http://code.******.com/p/php-reader/wiki/ID3v2, доработав систему так: "ID3v2.php?pach=http://путь_до_аудио_файла". Он-же сразу вернёт и теги, и длительность и куча всего полезного.
Reply
#7

Quote:

Думаю более точнее будет вариант с php скриптом

Полностью согласен, это самое удобное.

однако

Quote:

не прокатит, не забываем про динамический битрейт.

А как по вашему это делают PHP, BASS и другие?
Reply
#8

jhonyxakep, вся эта информация содержится в заголовках и в тегах, php скрипты просто знают где её искать. В принципе можно это сделать и на pawno, но на момент обработки mp3 файла сервер зависнет, что есть не круто. К тому-же php файл позволит реализовать без особых проблем статистику треков, самые прослушиваемые и.т.д и всё это завязать на сайт.
К тому-же php быстрее pawno =)
Reply
#9

Эх, вот создаст кто-нибудь определения длительности потока, обязательно сделаю авто-переключение
Reply
#10

BRICS, по какие критериям? Лично я не вижу иного способа определить длительности потока. А если считать так : байты/битрейт = время. Погрешность будет от 0 до 50% и трек будет или по середине переключаться, или пауза в конце на 50% от длинны трека. Тоже не очень интересно.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)