Author Topic: Fermata in midi files do not play correctly  (Read 12412 times)

pappe

  • Guest
Fermata in midi files does not play correctly in XMPlay 3.4.2 with xmp-midi.dll from June 27. The fermata mark is the dot with a semicircle around it. It indicates that the note should be sustained for longer than its note value would indicate. Exactly how much longer it is held is up to the discretion of the performer, but twice as long is not unusual.

Art60

  • Posts: 135
Re: Fermata in midi files do not play correctly
« Reply #1 on: 29 Jul '08 - 11:33 »
Hi,

Sorry this is not an answer to your question but a question about it :

Fermata, as you call it, seems to be a sheet notation.

It seems to me that it must be translated to a midi event by a sheet-to-midi converter before XMPlay or other midi software may play it ...

If I am wrong, would you please link me to the Fermata midi event description ?

Thanks in advance.

Best regards ...

saga

  • Posts: 2179
Re: Fermata in midi files do not play correctly
« Reply #2 on: 29 Jul '08 - 11:35 »
that's what i think too. midi is not the same as paper notation and i'm not aware of a fermata midi event. (lol, this thread is even at place 1 if you google for "midi fermata" ... :D)

Zarggg

  • Posts: 1242
Re: Fermata in midi files do not play correctly
« Reply #3 on: 29 Jul '08 - 17:31 »
That begs the question... How is the "fermata" indicated in the MIDI instructions that you know it is not being implemented?

Pappe

  • Guest
Fermata plays correctly in WinAmp
« Reply #4 on: 29 Jul '08 - 19:55 »
Sorry, I don't have any technical info about fermata midi events, I just know that a fermata will play correctly in WinAmp. So, evidently there is such a thing as a fermata midi event.

A description of fermata can be found here: http://en.wikipedia.org/wiki/Fermata


Dotpitch

  • Posts: 2871
Re: Fermata in midi files do not play correctly
« Reply #5 on: 29 Jul '08 - 20:10 »
Do you have an example file? You can upload it and post where the MIDI plugin goes wrong, so Ian can take a look at it.

[edit]
Fermata is more commonly known as Sustain, essentially it keeps all current and new notes playing until Sustain is switched off [1]. MIDI controller 64 (Damper pedal) is used for this event [2].
[/edit]
« Last Edit: 29 Jul '08 - 21:24 by Dotpitch »

Pappe

  • Guest
Re: Fermata in midi files do not play correctly
« Reply #6 on: 29 Jul '08 - 21:52 »
Yes, I have a file called "St. John passion.mid". It contains fermatas after the words "geschlagen", "Plagen", "zugericht't", "Sünder" and "Kinder".
The note after "zugericht't" is sustained due to it being a dotted half note, but the others should be sustained as well.

Ehm..where do I upload the file?




Dotpitch

  • Posts: 2871
Re: Fermata in midi files do not play correctly
« Reply #7 on: 29 Jul '08 - 22:08 »
Ehm..where do I upload the file?
You can upload it at Ians server: ftp://ftp.un4seen.com/incoming/. Note that you will not be able to see the file after uploading. Alternatively, use a random Rapidshare-like site.

Pappe

  • Guest
Re: Fermata in midi files do not play correctly
« Reply #8 on: 30 Jul '08 - 09:44 »
Ok, file "St. John passion.mid" uploaded to ftp://ftp.un4seen.com/incoming/.

Pappe

  • Guest
Re: Fermata in midi files do not play correctly
« Reply #9 on: 30 Jul '08 - 15:35 »
I just found the free version of "Space Toad midi sequencer" and used it to look for midi events in the file "St. John passion.mid". It turns out that what happens at positions corresponding to sheet music fermatas is that tempo is switched from 100 bps to 12 bps and then back to 100 bps. I should mention that the midi file was created using Sibelius v4.

Ian @ un4seen

  • Administrator
  • Posts: 20393
Re: Fermata in midi files do not play correctly
« Reply #10 on: 30 Jul '08 - 16:14 »
Looking at the file in Cakewalk, there are no tempo changes, just the initial 100bpm. But then looking at it in the MIDI plugin's loader, I see that the 2nd track contains the additional tempo events that you mention. They are being ignored because tempo events are expected to be in the 1st track. I'm not entirely sure if it is mandatory for tempo events to be in the 1st track, but I believe it is standard practice.

Pappe

  • Guest
Re: Fermata in midi files do not play correctly
« Reply #11 on: 30 Jul '08 - 18:39 »
Well, it seems to be Sibelius - and WinAmp - practice.

Pappe

  • Guest
Correction
« Reply #12 on: 30 Jul '08 - 18:49 »
Correction:  It seems like Sibelius and WinAmp both support tempo events in other tracks than the 1st.

One reason I prefer XMPlay to WinAmp is the superior, scrolling lyrics window. In WinAmp's midi plugin you have to do the scrolling manually as far as I understand.

Just wish that my choir wouldn't sing such old stuff with fermatas..

Dotpitch

  • Posts: 2871
Re: Fermata in midi files do not play correctly
« Reply #13 on: 30 Jul '08 - 19:18 »
I'm not entirely sure if it is mandatory for tempo events to be in the 1st track, but I believe it is standard practice.
Quote from: Sonicspot
A type 0 MIDI file has one track that contains all of the MIDI events for the entire song, including the song title, time signature, tempo and music events.
A type 1 MIDI file should have two or more tracks. The first, by convention, contains song information such as the title, time signature, tempo, etc. The second and following tracks contain a title, musical event data, etc. specific to that track.
A type 2 MIDI file is sort of a combination of the other two types. It contains multiple tracks, but each track represents a different sequence which may not necessarily be played simultaneously. This is meant to be used to save drum patterns, or other multi-pattern music sequences.
(link)
Apparently Sibelius uses type 2, or ignores the standard practice of type 1 ;).

Pappe

  • Guest
Re: Fermatas in midi files do not play correctly
« Reply #14 on: 30 Jul '08 - 20:04 »
It would be interesting to know how other programs besides Sibelius handle fermatas when converting sheet music to midi files. Anyone?

Pappe

  • Guest
"Standard practice"?
« Reply #15 on: 31 Jul '08 - 17:13 »
..tempo events that you mention. They are being ignored because tempo events are expected to be in the 1st track. I'm not entirely sure if it is mandatory for tempo events to be in the 1st track, but I believe it is standard practice.


It would seem that "standard practice" that is not adhered to by programmers of some of the major applications, isn't so very standard. WinAmp, Sibelius..there are more..

Alexsource

  • Posts: 258
Re: Fermata in midi files do not play correctly
« Reply #16 on: 31 Jul '08 - 18:45 »
Just because IE didn't adhere to several W3C web standards, it didn't make said standards less standard or important. It made IE a less standard respectful browser and M$ a greedier company, wich is a whole different thing. ::)

Wait for Ian's answer on the matter.
Also re-read Dospitch answer.

Dotpitch

  • Posts: 2871
Re: Fermata in midi files do not play correctly
« Reply #17 on: 31 Jul '08 - 19:33 »
It would seem that "standard practice" that is not adhered to by programmers of some of the major applications, isn't so very standard. WinAmp, Sibelius..there are more..
It probably works in Winamp because they made a workaround for it, not because they think this is the right way. Can't you use a MIDI editor to move the fermata to the first tracks?

Pappe

  • Guest
Re: Fermata in midi files do not play correctly
« Reply #18 on: 1 Aug '08 - 09:19 »
It probably works in Winamp because they made a workaround for it, not because they think this is the right way. Can't you use a MIDI editor to move the fermata to the first tracks?
Sure, but that would certainly not be standard practice. Sibelius, Winamp, Noteworthy player, Notation player, van Basco's karaoke player... they all support tempo events in all tracks.

Ian @ un4seen

  • Administrator
  • Posts: 20393
Re: Fermata in midi files do not play correctly
« Reply #19 on: 1 Aug '08 - 14:29 »
Here's an update to try, which should accept tempo events in any track...

   www.un4seen.com/stuff/xmp-midi.dll

Pappe

  • Guest
Love is in the air..
« Reply #20 on: 1 Aug '08 - 17:30 »
Great! Thanx a lot!