This is the bug/patch tracker for Rockbox. Click here for more information.
Quick links: Bugs · Patches · Rockbox frontpage
FS#11385 - Clip(+): Playback speed discrepancy between OF and RB
Attached to Project:
Rockbox
Opened by N/A (sunami88) - Wednesday, 09 June 2010, 06:38 GMT+2
Last edited by Rafaël Carré (funman) - Sunday, 13 June 2010, 19:05 GMT+2
Opened by N/A (sunami88) - Wednesday, 09 June 2010, 06:38 GMT+2
Last edited by Rafaël Carré (funman) - Sunday, 13 June 2010, 19:05 GMT+2
|
DetailsThere seems to be a slight playback discrepancy between the OF and RB at least on the Clip+ (my ClipV1 is dead, so I can't test on it).
Much of this bug is outlined here http://www.anythingbutipod.com/forum/showthread.php?t=55366 Specifically; http://www.anythingbutipod.com/forum/showpost.php?p=474468&postcount=4 (in the Edit) -and- http://www.anythingbutipod.com/forum/showpost.php?p=475157&postcount=14 Like I say on #19, I don't believe this is the old "19 cents" issue, as this was purportedly fixed in a previous firmware update. I've tried this on the most recent daily, still happens. |
This task depends upon
Closed by Rafaël Carré (funman)
Sunday, 13 June 2010, 19:05 GMT+2
Reason for closing: Not a Bug
Additional comments about closing: Like bertrik said, the precision is about 1.1% when playing 44.1kHz audio with the PLL clocked at 240MHz.
Not a bug, it's well enough for human ears.
If you want to enhance the precision, open a patch which sets the PLL to 384MHz like the AMSv1. (we don't know how to modify the PLL yet, because the meaning of each bit in PLLA register is unknown)
Sunday, 13 June 2010, 19:05 GMT+2
Reason for closing: Not a Bug
Additional comments about closing: Like bertrik said, the precision is about 1.1% when playing 44.1kHz audio with the PLL clocked at 240MHz.
Not a bug, it's well enough for human ears.
If you want to enhance the precision, open a patch which sets the PLL to 384MHz like the AMSv1. (we don't know how to modify the PLL yet, because the meaning of each bit in PLLA register is unknown)
______________________________________________________________________________
Postcount 4 (nue);
Thanks for the responses. But I'm afraid I'll have to derail my original post even further. Better to do that than start a new thread eh?
Anyway, last question; is it possible to utilize hold? I see the option to toggle back light during hold but how do you get into "hold" status in the first place?
EDIT: I lied. Playback appears to be incredibly wonky? Seems like it actually slows down? Was doing A to B comparisons with computer and noticed that it actually slows down. Used a stopwatch to verify the speeds and so it appears that the clip is slowly but surely slowing down. Strange that the clock is still consistent though on the clip. Files tested were 320kb CBR, V2 VBR, and a FLAC file.
Okay so trying out said FLAC file in OF, it seems that it's slightly sped up. =(
______________________________________________________________________________
Postcount 14 (me, sunami88)
RB: r26480-100602 - OF:01.02.15A
My tests were anything but scientific, but I did get a slight difference. Seemed to be about a full second difference to every minute of play. I started off with a 30 second sample and figured that about a half second could've just been my finger on the play/pause button. So I went up to a minute and yep, seemed to be a full second.
I can't hear it with my ears, but if I sit down with a stopwatch and my Clip+ there does seem to be a variation in play speed between the OF and RB...
EDIT
I should mention too, this is using a FLAC file off the internal memory.
______________________________________________________________________________
Please, take the time to explain the expected behavior and the actual behavior - are you simply comparing the OF to Rockbox (if so, how do you know the OF isn't playing the wrong speed?) or are you comparing Rockbox to something "known good"?
These are bug reports, so please be thorough - build, player, exact details of what's happening, etc. You even copied and pasted something about use of a hold switch? Is that related somehow, or just something you didn't bother to remove? I don't know if I should assume it's not important and just something you didn't choose to erase, or something that is important because you chose to include it, that I don't understand at all.
Like I said, I got a stopwatch and after 30 seconds hit pause. Booted into the OF and did it again, and there was a half second discrepancy between when they stopped (in the song, not on the timer, the player always showed 0:30). I then went up to a full 60 seconds and the discrepancy increased another interval of about a half a second (so a full second now)
Player is included in the bug title, as well as the quotes (although it is not available in the drop down menu when submitting bugs). As is the Build Version in the description and the quotes.
I left the part before the edit in just so it would be complete, but will leave unrelated information out in the future.
Or test by starting two long files simultaneously, one in Rockbox and one on a PC, then seeing if they're still in sync after some time?
Also, between VLC on my laptop (made sure its at 1.00x speed), and my Clip+, RB does appear to be slower. The difference becomes quite pronounced even over a 2 minute test (one headphone in, plugged into my Clip+, and the speakers playing from my laptop).
"I've tried this on the most recent daily, still happens."
Granted, that was from this morning, I'm updating to r26710 right now and I'll give it a try.
We also get people who think "The most recent daily" could refer to a build a week old (don't ask, some people really do have difficulty with the word 'daily') so it's important to get a version number in there.
Bumping it to 101.2% gets incredibly close. I'll have to do some testing over a longer period of time but that seems to have it over a 60-second period
As far as I know, for the AMSv2 players we don't know yet how to configure all of the clock signals, but we do know the setting to put the main PLL at 240 MHz and this is the one we currently use.
The clock signal for the audio output (MCLK) is derived from this PLL clock as follows: MCLK = (PLLclock / 128) / divider, where <divider> is some integer number to tune the playback speed.
To get at the 44100 Hz we use in rockbox, the divider should ideally be 42.52, but we can only set an integer number, so we round it to 43. This gives 1.136% error (too slow).
So, basically we cannot currently do much about this.
I don't know if/how the OF works around this. It could be that they resample everything to 48000 Hz (should be just 0.16% too fast), or maybe they use another PLL set up to some frequency that minimizes the playback rate error.
Once again, going to 101.2% seems to have it, at least over ~60 seconds.
Would be an ugly solution from a coding standpoint, but it would work effectively (as far as I know, anyways).
And thanks for the insight bertrik, I'm surprised I got so close messing around in the pitch screen, haha.
I'm also quite aware of what the "Unstable" at the top of "Unstable Ports" stands for, thank you. No suggestions from the peanut gallery, I get it.
A config option for pitch should be considered independently of this. If it's a good idea, it's a good idea whether or not it helps this bug, and should be discussed in the context of players that do not have a bug that needs repairing.
Meanwhile, discussion of this bug should be in the context of getting this bug fixed, not looking at workarounds.