Duration time stamp jumps around in VLC playing downloaded radio.
dinkypumpkin
dinkypumpkin at gmail.com
Tue Nov 19 14:07:33 EST 2013
On 19/11/2013 09:34, MS wrote:
> On 18/11/13 20:38, Marc 'BlackJack' Rintsch wrote:
>> Sounds a bit like a missing or broken „xing header” in the MP3 file that
>> helps the player to figure out how much of the audio was already played.
> ...
> I'm just wondering why this is happening with every single radio
> download I make (that's converted to MP3 by get_iplayer which I
> require). Clearly something is not working properly but I don't know what.
avconv/libav is the culprit. Going from Ubuntu 10.04 to 12.04 means
that you move from the original version of ffmpeg to the libav fork that
Ubuntu adopted, so you may pick up problems that didn't exist in the
original ffmpeg or were fixed after the fork.
As Marc inferred, the Xing header is a likely source of this problem.
The version of libav packaged with 12.04 (from the 0.8 branch) produces
a header that VLC doesn't seem to like. The header only includes a
total frame count, so perhaps VLC needs more info. Original ffmpeg or
libav 0.9 produce a more complete header (incl. total byte count) and
those files work fine with VLC. This may just be a VLC idiosyncrasy. A
random check of a few other media players didn't turn up any problems
with the duration.
A couple of options:
1. As Marc suggested, you can install MP3 Diags. If you use the
"Rebuild VBR data" function you can repair the files without re-encoding
with LAME.
2. You can switch to original ffmpeg. There are a couple of ways to do
this:
a. The most straightforward solution is to get your own static
(standalone) build of ffmpeg and configure it with get_iplayer via the
--ffmpeg option. Try here to look for a pre-built version:
http://ffmpeg.org/download.html#LinuxBuilds
Also, there are several ffmpeg build scripts floating around the net to
help you build your own. Here is one I know works:
https://github.com/stvs/ffmpeg-static
FWIW, you could adapt this to build avconv from libav 0.9 as well.
b. There is a PPA for ffmpeg and related packages that enables you to
upgrade over libav:
https://launchpad.net/~jon-severinsson/+archive/ffmpeg
After you add the PPA repository and run "apt-get update", the update
manager should pick up the upgradeable packages. The version of ffmpeg
installed is fairly old (0.10), but should work OK with get_iplayer.
More information about the get_iplayer
mailing list