Old versions used char* for the data, new versions use int8_t*. They're often not the same and differ in signedness. (backported from 04199db2aeea966c2c879b1764427c87433570f1) --- a/ext/timidity/gstwildmidi.c +++ b/ext/timidity/gstwildmidi.c @@ -631,7 +631,7 @@ size = GST_BUFFER_SIZE (buffer); GST_OBJECT_LOCK (wildmidi); - bytes_read = WildMidi_GetOutput (wildmidi->song, (char *) data, + bytes_read = WildMidi_GetOutput (wildmidi->song, (gpointer *) data, (unsigned long int) size); GST_OBJECT_UNLOCK (wildmidi);