-
Notifications
You must be signed in to change notification settings - Fork 43
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Truncated start when seeking back to zero #100
Comments
PING? |
Has this been tested with what is now wildcode-updates? |
On 9/7/14, chrisisonwildcode notifications@github.com wrote:
Just tested it and it is very much broken: With the wildcode-updates branch, there is a 10 seconds of silence Whatever the fix will be, please e document it to me so that I can |
PING? |
Been looking into this, I can't seem to replicate it on the -updates branch ... please verify that this still exists and that I didn't ninja fix this. |
@sezero ping? :) What are the steps to duplicate this? |
Nothing is fixed for me in wildcode-updates branch.
I already outlined them in this thread but here it is again:
|
Back to the drawing board! Sorry about that, I thought perhaps I needed gstreamer to test, but we have the issue in our player as well. Is there any difference in the dumped midi file with the input file? |
I'm looking into this today ... it "shouldn't" be happening and if you reward without pausing then you don't get the issue, will need to look at how pause is handled. |
Ok, I'm calling not it! Someone re-wrote (from how I originally had it) how pause is handled in the player ... Pause for different drivers ... WAV: Windows: SoundBlaster: ALSA: OSS: OpenAL |
So who ever wrote that ^^^^ you're it for this one. |
Infact if I do this (below) I don't get the added delay.
|
pause_output() and resume_output() function pointers are mine. they are as I told before, the extra 10s silence is already present when I begin however, with the master or 0.3 branches, there is neither a silence at |
Um, there is no 10secs of silence from the start on my end except for music that has the silence in them. Yes I get added silence when I pause and rewind with the pause calls within the player. When I comment out those pause calls then there is no added silence. |
Also noticed that when you resume (after rewind/fastforward) it plays whats remaining in the driver buffer ... maybe it should clear it in these cases. |
On 1/3/15, chrisisonwildcode notifications@github.com wrote:
which driver are you using? |
AL |
On 1/3/15, chrisisonwildcode notifications@github.com wrote:
Well, it was a dumb question anyway. the silence at the very beginning |
Can you also try with the master or 0.3 branch and see the difference? |
sezero ... what driver are you using and how big a buffer does it have within wildmidi player? |
On 1/3/15, chrisisonwildcode notifications@github.com wrote:
I am using OSS. there is no driver side buffer for it, it only accepts Just tried with uptodate wildcode-updates branch and this time FWIW, I am testing with "Release" type build, i.e. I congigure like: |
can you throw the file you are trying to play my way please ... |
On 1/3/15, chrisisonwildcode notifications@github.com wrote:
I already gave the link https://bugzilla.gnome.org/attachment.cgi?id=237557 but here it is (sent to your personal email) |
Think I found ya problem ... the huge delta right at the start of the track Start of Track Hexediting to check file manually |
yep, even manually the delta value is 0xaa 0x00 which when you do ((0xaa & 0x7f) << 7) + (0x00 & 0x7f) you get 5376 |
On 1/3/15, chrisisonwildcode notifications@github.com wrote:
So it's a (somehow) broken file? Then how do we not get the silence |
looking at the old wildmidi_lib.c (trunk and 0.3) it did have a bug in there related to the initial delta in tracks. wildmidi-updates midi handling was just about completely re-written so the additional formats could be added. Also tracking the execution I found another bug ... seeing if they were fixed in wildmidi-updates ... and yes it was fixed in -updates :P |
Basically, 0.3 and trunk have the initial delta tagged to the first event. However any delta tagged to an event isn't handled until after the event is executed (error on my part from way back). In comes bug number 2, when executing events, the code switched to the next event before checking the tagged delta ... hence the initial "silence" of sezero's midi was never heard. This bug has much wider reaching consequences including incorrect timing of events. Meaning files could be played incorrectly by Trunk and 0.3 |
sezero ... I tell you what I'll do for you, I'll add a command line option to trim leading "silence" during playback ... after I get some sleep. In the mean time need someone to work out how to flush the audio buffers so that they are reset/cleared when you FF or RW ... or we need to use the audio drivers differently ... |
Someone should update that bug/ticket to include the fact that the midi isn't valid (broken) and say why. |
Update: The MIDI file that sezero was having the reported issue with has a huge delta amount at the beginning which is causing the "silence" at the start of the song. This had not occurred with previous versions of WildMIDI because of undetected bugs which have now been fixed. |
Anyone mind if I close this and open a new ticket regarding audio driver buffers need to be cleared when FF'ing or RW'ing. |
Create the other ticket for 0.4 milestone. Leave this one open until the ticket it links against is updated and the new ticket is closed since they are related. |
sezero PING! Grab latest wildcode-updates and add -s to your command line :) |
Looks good now. |
(bug #100, gnome/gstreamer bug #694811.)
(bug #100, gnome/gstreamer bug #694811.)
can we close this now? |
Yes |
Noticed this in gnome/gstreamer bugzilla:
https://bugzilla.gnome.org/show_bug.cgi?id=694811
Didn't try with gstreamer, but it does happen with the wildmidi player
app, noticeable with the bug reporter provided midi from the bugzilla
entry: cleanest way to reproduce is pausing the playback, hitting '.'
until it is at 0, and unpausing.
The text was updated successfully, but these errors were encountered: