Перейти к содержанию
Планета Deus Ex
Авторизация  
VECTOR

WinAmp class

Рекомендуемые сообщения

Во время своих эксперементов с Native функциями я написал класс,через который можно было управлять WinAmp'oм. Вообщем если кому это надо качать здесь.

 

Сразу предупреждаю, что класс в незаконченном состоянии и может не работать со старыми версиями Winamp(я тестировал на 5.094)

 

Класс WinAmp:

 

Функции:

function SetBaseFolder(string base) - основная папка с мп3

function EnumAllFiles(string where,out string List[260]) - помещает в массив List cписок файлов из директории BaseFolder+where

function EnumFolders(string where,out string List[260]) - тоже самое, но для папок

function StartWinAmp(string Path) - запускает WinAmp. Где path-cтрока типа "C:/winamp/winamp.exe"

function StartPlayback() - аналог кнопки Play

function ClearPlaylist() - очищает плейлист

function AddFileToPlaylist(string file) - добавляет файл в плейлист

 

Пример использования:

simulated function PreBeginPlay()

{

local WinAmp WA;

Super.PreBeginPlay();

 

WA = Spawn(class'WinAmp', Self);

WA.StartWinAmp("e:program fileswinampwinamp.exe");

WA.SetBaseFolder("e:my documentsmusic");

WA.AcquireHandle();

WA.PlayTrack("02. Storm.mp3");

 

}

Поделиться сообщением


Ссылка на сообщение

VECTOR, а как бы замутить mp3 музыку вместо umx? Помню, в UT436 это был UMXPlus. С Bass библиотекой. Но вот как бы его по Дэус замутить. Я пробовал, и у меня не получалось. Кстати, в версиях UT, ниже 436 это не работало.

Поделиться сообщением


Ссылка на сообщение

Дададдадада! Рул :)

Поделиться сообщением


Ссылка на сообщение

Эээ... может я туплю, но винамп для Деуса уже есть лет 5 :)

Поделиться сообщением


Ссылка на сообщение
Эээ... может я туплю, но винамп для Деуса уже есть лет 5 :)

Странно, я ничего не нашел

Поделиться сообщением


Ссылка на сообщение
Эээ... может я туплю, но винамп для Деуса уже есть лет 5 :)

Неа он есть и действительно существует лет 5. Это вроде первый мод TheRenegadeMaster ("TRM") - редактора deus-ex.org (deusexgaming.com).

Только мод работает с версиями Winamp'а до 3.0.

Поделиться сообщением


Ссылка на сообщение
VECTOR, а как бы замутить mp3 музыку вместо umx? Помню, в UT436 это  был UMXPlus. С Bass библиотекой. Но вот как бы его по Дэус замутить.  Я пробовал, и у меня не получалось. Кстати, в версиях UT, ниже 436  это не работало.

хмм, интересно... Я подумаю. Можно наверно остановить проигрывание umx и вместо них через Native функцию начать воспроизведение мп3.

Поделиться сообщением


Ссылка на сообщение
VECTOR, а как бы замутить mp3 музыку вместо umx? Помню, в UT436 это  был UMXPlus. С Bass библиотекой. Но вот как бы его по Дэус замутить.  Я пробовал, и у меня не получалось. Кстати, в версиях UT, ниже 436  это не работало.

хмм, интересно... Я подумаю. Можно наверно остановить проигрывание umx и вместо них через Native функцию начать воспроизведение мп3.

Нет, тут сложнее:

0. Надо уметь менять треки в зависимости от игровой ситуации

1. Нужно хранить текущее положение трека, потому что после двойной смены ситуации мы должны к нему вернуться (например после combat обратно в ambient)

2. Нужно как-то решать проблему с тем, что после возвращения с запомненной позиции, трек должен начинать играть плавно... С mp3 это намного сложнее чем с трекерами (потому что нет разбиения трека на паттерны)

3. Ну и без винампа всё это должно работать, иначе вообще нафик.

Поделиться сообщением


Ссылка на сообщение

Dedъ, зачем менять треки? Достаточно того, что просто будет играть 1 файл, в заставке, например, а чтобы трекерную музыку юзать, нужно ещё её грамотно написать на 5! паттернов.

А затухание - не проблема - Fade In, Fade Out.

Никаких винампов, я ж говорю, это как-то с Bass.dll можно сделать, вот только как?

 

Кстати, тема интересная. Я тут решил музон сделать вав файлом. Трекер не годится, т.к. он поддерживает вав файлы 8 и 16 бит. А вот если вав закодировать в 4 бит IMA ADPCM, а потом импортнуть в эдитор, то он весить будет в 2 раза меньше, чем 8-битный. Но, Playsound(...) не годится, мне кажется Galaxy не поддерживает стерео звуки в Дэусе. Кто знает как это обойти? Может там (в системе Galaxy) есть фича, которая бы установила panning на левый и правый каналы? VECTOR, что скажешь?

Поделиться сообщением


Ссылка на сообщение

Расскажите подробно что за Bass.dll. Про ВинАмп забудьте,я щас в процессе перевода все этого дела на DLL FMOD Ex.

 

Про Гэлакси ничего такого не знаю, хотя нашел в файле Galaxy cледующую структуру:

typedef struct

{

udword FourCC; udword Size;

uword Flags; uword Bank;

uword Program; sword Pitchwheel; sword PitchwheelSens; uword Panning;

uword Modulation; uword Expression; uword Volume;

uword Hold1; uword Reverb; uword Chorus; uword RPN;

uword NRPN; uword Data; char Hold1Map[128]; glxVoice * VoiceMap[128];

} glxChannel;

 

Надо разобраться где она используется и как ей пользоваться

Поделиться сообщением


Ссылка на сообщение

OK. Galaxy я пока не трогал. Зато сделал класс по типу UMXPLUS.

 

Качать там же где и раньше.

 

Небольшой walk-through:

 

1.Добавити в секцию [Editor.EditorEngine] в DeusEx.ini:

EditPackages=VSDDX

2. Добавить на мапу актора MusicControl (Actor->SoundPlayer->MusicControl)

3. В свойствах добавленного актора указать название mp3 трека (MusicControl->SongFile). Если Сам mp3 файл не находится в UTMusi4.

4.++ Открыть свойства уровня (Level Properties - F6) и в разделе Audio поставить следующие значения:

 

Song = любой umx трек, важно чтобы не было значения "None"

SongSection = 255c, изменить опцию SoundPlayer->BaseAddress

 

В readme написано, что пункт 4 можно не выполнять, но это не правда :)

Поделиться сообщением


Ссылка на сообщение

ОМФГ, афтор, я но вас буду молитсо!1 :)

Всё, теперь нет необходимости юзать 8битные вав-файлы, засунутые в umx (таких было четыре штуки - main menu, credits, intro и rage_cutscene). Ааааааъъъъ!111

 

++Чего-то регулирование громкости на mp3 эффекта не оказывает. Вроде как в UT оно работало.

Поделиться сообщением


Ссылка на сообщение

Можно в 2027 юзоть? Копирайты уже поставил.

 

++Предлогаю помощь в зашифровке пака, чтобы проворные буржуины не расковыряли на исходники.

Поделиться сообщением


Ссылка на сообщение
Можно в 2027 юзоть? Копирайты уже поставил.

 

++Предлогаю помощь в зашифровке пака, чтобы проворные буржуины не расковыряли на исходники.

 

Да, конечно можно. Утилиты по зашифровке, где то на этом форуме уже упоминались, сам найду.

Поделиться сообщением


Ссылка на сообщение

++Чего-то регулирование громкости на mp3 эффекта не оказывает. Вроде как в UT оно работало.

 

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

 

++ICQ добавил в профиль и тебе в PM

Поделиться сообщением


Ссылка на сообщение

Респект, VECTOR!

Только зашифрововать зачем??? :)((

Я-то хотел в коде разобраться. Посмотреть.

 

Совсем круто будет, если добавить код в конец SoundPlayer.uc

 

defaultproperties

{

bHidden=True

}

Поделиться сообщением


Ссылка на сообщение

 

Совсем круто будет, если добавить код в конец SoundPlayer.uc

 

defaultproperties

{

    bHidden=True

}

 

Hidden есть у MusicControl и MPlayer

Поделиться сообщением


Ссылка на сообщение
Респект, VECTOR!

Только зашифрововать зачем??? :)((

Я-то хотел в коде разобраться. Посмотреть.

 

Совсем круто будет, если добавить код в конец SoundPlayer.uc

 

defaultproperties

{

    bHidden=True

}

Чтобы проворные мозгососы из омерики не стянули код и мы не увидели через недельку 'свой' mp3 плеер в каком-нибудь ТNМ.

Поделиться сообщением


Ссылка на сообщение
Респект, VECTOR!

Только зашифрововать зачем??? :twisted:((

Я-то хотел в коде разобраться. Посмотреть.

 

Совсем круто будет, если добавить код в конец SoundPlayer.uc

 

defaultproperties

{

    bHidden=True

}

Чтобы проворные мозгососы из омерики не стянули код и мы не увидели через недельку 'свой' mp3 плеер в каком-нибудь ТNМ.

В TNM уже поставлен ogg плэйер по данным наших тайных агентов :)

Поделиться сообщением


Ссылка на сообщение

Библиотека FMOD Ex умеет играть:

 

Mod Playback. MOD/S3M/XM and IT.

MIDI Support. FMOD Supports Microsoft Wavetable Synthesizer, and hardware wave-table cards.

Microsoft WAV Support, including support for compressed wavs of any type, using ACM codecs.

Native ADPCM support for any platform, without needing any codecs.

Shoutcast / IceCast / HTTP internet streaming support.

ID3v1, ID3v2, ogg vorbis, ASF tag support.

MP2/MP3 Support. The MP3 engine is quite efficient, and will get faster in the future!

Ogg Vorbis Support. This new free from patent format is gaining popularity fast, and sounds better than mp3 at the same bit rate! FMOD is recognized by xiph.org as supporting ogg vorbis.

WMA/ASF/etc Support. Another competitor for MP3, It is arguably better than MP3, and is free to use also!

Macintosh AIFF support, on all versions of FMOD.

Internet Streaming Support. With one function call, it is possible to play an mp3 or wma over the internet! (you juts pass a URL to FMOD instead of a filename)

CD Playback using FSOUND's FASTCD system (NO POLLING).

Поделиться сообщением


Ссылка на сообщение
Чтобы проворные мозгососы из омерики не стянули код и мы не увидели через недельку 'свой' mp3 плеер в каком-нибудь ТNМ.

Пусть юзают. Они ещё и кредит дадут. Поверь. Или ты боишься их?

Когда я вижу открытый код, я благодарен тому кто его написал. И дам ему кредит. Но если он бесплатный, но зашифрованый - я матюкаюсь и шлю их на одно популярное место.

Поделиться сообщением


Ссылка на сообщение
Чтобы проворные мозгососы из омерики не стянули код и мы не увидели через недельку 'свой' mp3 плеер в каком-нибудь ТNМ.

Пусть юзают. Они ещё и кредит дадут. Поверь. Или ты боишься их?

Когда я вижу открытый код, я благодарен тому кто его написал. И дам ему кредит. Но если он бесплатный, но зашифрованый - я матюкаюсь и шлю их на одно популярное место.

Кредиты - это в лучшем случае. Я с очень многими dxмодерами успел пообщаться за эти 4 года, знаю что говорю.

Поделиться сообщением


Ссылка на сообщение

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  
×
×
  • Создать...