kmid doesn't send note on/note off on Kubuntu Gutsy 64bits

Bug #154892 reported by liquidalien on 2007-10-20
4
Affects Status Importance Assigned to Milestone
kdemultimedia (Ubuntu)
Low
Unassigned

Bug Description

Binary package hint: kmid

kmid doesn't send any note on or note of event on kubuntu 7.10 64 bits. I've checked it using a synth plugged and/or kmidimon.

I've tested it with Kubuntu 7.10 32 bits with the same midifile and all is ok.
I've tested Rosegarden with the same file on Kubuntu 7.10 64 bits and all is ok too.

I've found any log.

Many thanks.

/Fabien

liquidalien (liquidalien) wrote :

I've made some tests today :

kmid, pmidi, pykaraoke don't run well on my kubuntu 7.10 64bits. They don't send midi events to the hardware midi ports neither to kmidimon. Sometimes, some program change events go through.

But, Rosegarden or Seq 24 run very well and send all type of midi events to every ports (physical or logical ones).

I've tested too with various Live CDs of kubuntu :

- Kubuntu 7.10 64 bits live : not OK
- Kubuntu 7.04 64 bits live : not OK
- Kubuntu 7.10 32 bits live : OK
- Kubuntu 7.04 32 bits live : OK

So, it seems to be related to the 64 bits architecture.

Hope it helps a little to fix the bug.

/Fabien

TJ (tj) wrote :

Confirmed here on Ubuntu Gutsy x86_64.

I've checked through the build logs in case it was a 'simple' issue of 32-bit specific code but can't see anything although the build logs for both show far too many warnings the programmer(s) should have resolved before releasing!

I'll do some more investigation.

Changed in kdemultimedia:
assignee: nobody → intuitivenipple
importance: Undecided → Low
status: New → Confirmed
TJ (tj) wrote :

I've got the first note to play of a test file but not sure why!

The test files I'm using are from Gilbert & Sullivan's 'Mikado':

101.mid ("If you want to know who we are") http://math.boisestate.edu/gas/mikado/webopera/mk101.html
102.mid ("A wand'ring minstrel I") http://math.boisestate.edu/gas/mikado/webopera/mk102.html

I installed FluidSynth and then downloaded Frank Wen's Fluid R3 Soundfont and extracted the sfArk-compressed files using 'sfarkxtc' (see https://help.ubuntu.com/community/HowToCompressedSoundFonts)

$ sudo apt-get install fluidsynth
$ wget http://www.ibiblio.org/thammer/HammerSound/localfiles/soundfonts/FluidR3122501.zip

$ for i in *.sf[Aa]rk ; do sfark/sfarkxtc "$i" && rm "$i" ; done
$ rename 's/ //' *.SF2

(that last line removes the spaces from the file-names to avoid problems for fluidsynth)

Start fluidsynth

$ fluidsynth SoundFonts/FluidR3GM.SF2
$ $ aconnect -o
client 14: 'Midi Through' [type=kernel]
    0 'Midi Through Port-0'
client 128: 'FLUID Synth (10525)' [type=user]
    0 'Synth input port (10525:0)'

And try playing the test file:

$ kmid 101.mid

I get the first note and then nothing although the GUI (and monitoring (in kmidimon) shows commands are still being sent.

FluidSynth can play the file correctly:

$ fluidsynth SoundFonts/FluidR3GM.SF2 101.mid

liquidalien (liquidalien) wrote :

Yes, exactly the same for me.

Fluidsynth is a good solution to play midifiles, but the karaoke part is missing.

Thank you for your actions.

/Fabien

TJ (tj) wrote :

kmid uses the MidPlayer component of kdelibs to load and play midi files. In kmidclient.cpp kmidClient::slotPlay() does:

if ((m_kMid.pid=fork())==0)
{
    player->play(0,(void (*)(void))kmidOutput);
    _exit(0);
}
m_kMid.pctl->millisecsPlayed=0;

which calls kdelib's libkmid/player.cc MidiPlayer::play() in a child process.

It looks as if that child process is the root cause of the problem. I've currently got a kdelib/libkmid debug version building. Hopefully I can learn more from that.

liquidalien (liquidalien) wrote :

After different tests, the only way to play karaoke (.kar) files on Ubuntu/Kubuntu 64 bits is by using the famous Vanbasco's karaoke player (windows application) through wine... Though it's not a good solution, it's the only one I found.

Regards,

/Fabien

TJ (tj) on 2009-02-13
Changed in kdemultimedia:
assignee: intuitivenipple → nobody
Jonathan Thomas (echidnaman) wrote :

Upstream development of kmid has stopped and kmid hasn't been included in a KDE release since KDE3. Therefore it's not likely for a fix to this bug to ever be made to the latest version of Kubuntu or onwards.

Changed in kdemultimedia:
status: Confirmed → Won't Fix
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers