Bug 17846 - Неприятности с timidity.cfg -- не играет музыка
Summary: Неприятности с timidity.cfg -- не играет музыка
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: libSDL_mixer (show other bugs)
Version: unstable
Hardware: all Linux
: P2 normal
Assignee: Leontiy Volodin
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-11-10 19:40 MSK by Fr. Br. George
Modified: 2008-11-13 16:34 MSK (History)
1 user (show)

See Also:


Attachments
SDL_mixer-1.2.8-alt-timidity.patch (1.38 KB, patch)
2008-11-10 21:00 MSK, Valery Inozemtsev
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Fr. Br. George 2008-11-10 19:40:22 MSK
Модуль libSDL_mixer-а, отвечающий за MIDI, ищет файл /etc/timidity/timidity.cfg . в то время как наш timidity кладёт его в /etc/timidity.cfg

По этой причине он не хочет играть MIDI:
Music /var/home/george/.d1x-rebirth/Music/descent.mid could not be loaded: /etc/timidity/timidity.cfg: No such file or directory

Только это и хорошо: SDL_Mixeer не распознаёт timidity.cfg формата TiMidity++ (например, кавычки или директиву soundfont).

Предлагаю таскать с libSDL_Mixer свой собственный timidity/timidity.cfg такого вида:

dir /usr/share/timidity
source midia.cfg

Плюс добавить зависимость на timidity-instruments
Comment 1 Valery Inozemtsev 2008-11-10 20:02:02 MSK
не совсем все так
/* You could specify a complete path, e.g. "/etc/timidity.cfg", and
   then specify the library directory in the configuration file. */
#define CONFIG_FILE "timidity.cfg"
#define CONFIG_FILE_ETC "/etc/timidity.cfg"
#define CONFIG_FILE_ETC_TIMIDITY "/etc/timidity/timidity.cfg"

int Timidity_Init(int rate, int format, int channels, int samples)
{
  if (read_config_file(CONFIG_FILE)<0) {
    if (read_config_file(CONFIG_FILE_ETC)<0) {
      if (read_config_file(CONFIG_FILE_ETC_TIMIDITY)<0) {
        return(-1);
      }
    }
  }

и т.д.
но смысл в этом есть. на чем это можно затестить?
Comment 2 Valery Inozemtsev 2008-11-10 20:41:39 MSK
я предлагаю заменит /etc/timidity/timidity.cfg на /usr/share/timidity/media.cfg и добавить зависимость на timidity-instruments, так будет проще
Comment 3 Valery Inozemtsev 2008-11-10 21:00:14 MSK
Created attachment 3063 [details]
SDL_mixer-1.2.8-alt-timidity.patch

в общем примерно так
Comment 4 Valery Inozemtsev 2008-11-10 23:45:01 MSK
SDL_mixer-1.2.8-alt2