LINUX.ORG.RU
ФорумGames

OpenTTD и музыка


0

0

Новость скоро уйдёт, поэтому открываю тему в Games. Итак, хочется слушать родную музыку в OpenTTD. Проблема в том, что timidity отъедает до 50% процессора :( Можно ли с этим что-то сделать? Карточка - SB Live! Подозреваю, что у неё есть аппаратный midi, но как проверить - не знаю. В kcontrol кнопка "проверить midi" молчит, как партизан на допросе. В новости мне дали ссылку на какой-то текст для gentoo, в котором я мало что понял...

★★★★★

Во-первых, Что за дистр?

Во-вторых, вообще alsa настроена, т.е. звук присутствует?

Если alsa стоит и работает, то midi заставить работать проще простого. alsa-utils должны быть в системе. 

Для начала узнаем, какие есть доступные порты:
$ aplaymidi -l
 Port    Client name                      Port name
 16:0    EMU10K1 MPU-401 (UART)           EMU10K1 MPU-401 (UART)
 17:0    Emu10k1 WaveTable                Emu10k1 Port 0
 17:1    Emu10k1 WaveTable                Emu10k1 Port 1
 17:2    Emu10k1 WaveTable                Emu10k1 Port 2
 17:3    Emu10k1 WaveTable                Emu10k1 Port 3

Удобно поместить эти значения в переменную 
ALSA_OUTPUT_PORTS="17:0 17:1 17:2 17:3" 
чтобы каждый раз не писать ключ --port при проигрывании midi.

Ставим awesfx. Подгружаем сэмплы
asfxload /usr/share/sfbank/CT2MGM.SF2

Естественно, что они там должны лежать. Если их нет, но найти в инете и положить туда :) 
Чтобы каждый раз их не подгружать ручками, я добавил эту строку в /etc/conf.d/local.start 
(у тебя может быть другой файл).

Пробуем проиграть какой-нибудь файл:
aplaymidi megacoolmusic.midi

Из колонок должна звучать соответсвующая мелодия :)

Далее, ставим OpenTTD. При компиляции нужно указать переменную 
MIDI=/usr/bin/aplaymidi
чтобы в качестве миди-синтезатора запускалась именно aplaymidi, а не timidity. 

Запускаем игру openttd -m extmidi

З.Ы.: RTFM!!!

kaktyc ★★★★
()
Ответ на: комментарий от kaktyc

Сэмплы можно найти на www.hammersound.net. Там же лежит банк на 12 метров от Chaos. Его звучание мне больше нравится, чем стандартный, который идет в комплекте.

kaktyc ★★★★
()
Ответ на: комментарий от kaktyc

Спасибо, вечером попробую. (дистр - дебиан, альса есть)

Что касается rtfm - так стандартный ответ, "man что?".

Xellos ★★★★★
() автор топика
Ответ на: комментарий от Xellos

>Что касается rtfm - так стандартный ответ, "man что?".

Прежде всего, мануал для вашего дистро, различные вики, факи и т.д. Я давал ссылку по настройке alsa для Gentoo. Больших различий в разных дистро по этому вопросу нет. Ну еще гугль рулит, как всегда. От него я узнаю 99% ответов на мои вопросы :)

kaktyc ★★★★
()
Ответ на: комментарий от kaktyc

Внимание, вопрос! Что быстрее и проще - прочитать что такое миди, прочитать что такое миди в линуксе, прочитать что такое миди в альсе, как всё это в моём дистрибутиве, найти на гугле банк сэмплов - или спросить один раз на ЛОРе?

Xellos ★★★★★
() автор топика
Ответ на: комментарий от Xellos

:))))

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

kaktyc ★★★★
()
Ответ на: комментарий от kaktyc

Вот в данном случае я как раз применил скилл поиска _нужной_ инофрмации и отсева ненужной :)

Xellos ★★★★★
() автор топика
Ответ на: комментарий от Xellos

Сэмплы подгрузил? Такое впечатление, что нет.

asfxload /path/to/your/samplebank.sf2

kaktyc ★★★★
()
Ответ на: комментарий от Xellos

>Может модули какие подгрузить надо? У меня в памяти emu10k_gp висит только из похожих

$ lsmod | grep snd
snd_seq_midi            6528  0
snd_emu10k1_synth       6912  0
snd_emux_synth         36416  1 snd_emu10k1_synth
snd_seq_virmidi         5824  1 snd_emux_synth
snd_seq_midi_emul       6848  1 snd_emux_synth
snd_pcm_oss            41120  0
snd_mixer_oss          16960  1 snd_pcm_oss
snd_seq_oss            34208  0
snd_seq_midi_event      5920  3 snd_seq_midi,snd_seq_virmidi,snd_seq_oss
snd_seq                50160  8 snd_seq_midi,snd_emux_synth,snd_seq_virmidi,snd_seq_midi_emul,snd_seq_oss,snd_se
q_midi_event
snd_emu10k1           123844  4 snd_emu10k1_synth
snd_rawmidi            20992  3 snd_seq_midi,snd_seq_virmidi,snd_emu10k1
snd_ac97_codec         95072  1 snd_emu10k1
snd_ac97_bus            1760  1 snd_ac97_codec
snd_pcm                83560  4 snd_pcm_oss,snd_emu10k1,snd_ac97_codec
snd_seq_device          7020  7 snd_seq_midi,snd_emu10k1_synth,snd_emux_synth,snd_seq_oss,snd_seq,snd_emu10k1,sn
d_rawmidi
snd_timer              22052  3 snd_seq,snd_emu10k1,snd_pcm
snd_page_alloc          8456  2 snd_emu10k1,snd_pcm
snd_util_mem            3264  2 snd_emux_synth,snd_emu10k1
snd_hwdep               7492  2 snd_emux_synth,snd_emu10k1
snd                    49028  18 snd_emux_synth,snd_seq_virmidi,snd_pcm_oss,snd_mixer_oss,snd_seq_oss,snd_seq,snd
_emu10k1,snd_rawmidi,snd_ac97_codec,snd_pcm,snd_seq_device,snd_timer,snd_hwdep
soundcore               7712  1 snd

kaktyc ★★★★
()
Ответ на: комментарий от kaktyc

Всё есть. И таблица подгружена. И модули все есть. Сейчас вот после подгрузки таблицы программа play, через которую у меня аська пищит. стала орать в колонки что-то неприятное. А midi так и не играется.

Xellos ★★★★★
() автор топика
Ответ на: комментарий от Xellos

>Сейчас вот после подгрузки таблицы программа play, через которую у меня аська пищит. стала орать в колонки что-то неприятное.

Это вообще странно. play с миди никак не связана (или в дебиане play - это wrapper?). Я, кстати, для проигрывания wav использую aplay.

>А midi так и не играется.

А в миксере synth включен?

И все-таки я предлагаю поискать и почитать документацию :) Что-нибудь вроде этого http://at.or.at/hans/misc/audigy+alsa.html

kaktyc ★★★★
()
Ответ на: комментарий от kaktyc

aplay тоже орёт :( В миксере... В миксере вообще отсутствует synth.

Master, PCM, Line, CD, Mic, Mic Boos, Mic Sele, Video, Phone, PC Speak, Aux, External, SB Live

Всё. Сейчас покопаю, что я там наустанавливал, это после какого-то пакета количество каналов в миксере уменьшилось вдвое...

Xellos ★★★★★
() автор топика
Ответ на: комментарий от Xellos

Заработало-то оно заработало, но есть определённое место определённого трека, которое в любой библиотеке инструментов звучит хуже, чем на тупом двухмегабайтнике. Неприятно.

Xellos ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.