Debian Bug report logs - #512911
audtool: playback-seek-relative seeks bad at the song start/end

version graph

Package: audacious; Maintainer for audacious is Debian Multimedia Maintainers <debian-multimedia@lists.debian.org>; Source for audacious is src:audacious (PTS, buildd, popcon).

Reported by: Sandro Tosi <morph@debian.org>

Date: Sat, 24 Jan 2009 22:33:01 UTC

Severity: normal

Tags: fixed-upstream

Found in version audacious/1.5.1-4

Fixed in version audacious/2.3-1

Done: Chris Taylor <ctaylor@debian.org>

Bug is archived. No further changes may be made.

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, Debian Audacious Packagers <pkg-audacious-maintainers@lists.alioth.debian.org>:
Bug#512911; Package audacious. (Sat, 24 Jan 2009 22:33:03 GMT) (full text, mbox, link).


Acknowledgement sent to Sandro Tosi <morph@debian.org>:
New Bug report received and forwarded. Copy sent to Debian Audacious Packagers <pkg-audacious-maintainers@lists.alioth.debian.org>. (Sat, 24 Jan 2009 22:33:03 GMT) (full text, mbox, link).


Message #5 received at submit@bugs.debian.org (full text, mbox, reply):

From: Sandro Tosi <morph@debian.org>
To: Debian Bug Tracking System <submit@bugs.debian.org>
Subject: audtool: playback-seek-relative seeks bad at the song start/end
Date: Sat, 24 Jan 2009 23:29:34 +0100
Package: audacious
Version: 1.5.1-4
Severity: normal

Hello,
playback-seek-relative -Xs only seeks correctly if at least X seconds of the
soge have already been played: if I set X=5 and only 3 secs have been played,
then audtool does nothing, while the expected behavior is to seek the song
beginning.

The same behaviour is experienced at the song and: playback-seek-relative +Xs
seeks only if there are at least X seconds to play; same example and 2 secs left
to be played, audtool does nothing, while the expected behaviour would be to
reach the end of the song.

At the middle of the song, audtool playback-seek-relative seeks correctly.

Thanks,
Sandro

-- System Information:
Debian Release: 5.0
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.25-2-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages audacious depends on:
ii  audacious-plugins             1.5.1-2    Base plugins for audacious
ii  dbus                          1.2.1-5    simple interprocess messaging syst
ii  gtk2-engines-pixbuf           2.12.11-4  Pixbuf-based theme for GTK+ 2.x
ii  libatk1.0-0                   1.22.0-1   The ATK accessibility toolkit
ii  libaudclient1                 1.5.1-4    audacious dbus remote control libr
ii  libaudid3tag1                 1.5.1-4    audacious id3 tag manipulation lib
ii  libc6                         2.7-16     GNU C Library: Shared libraries
ii  libcairo2                     1.6.4-7    The Cairo 2D vector graphics libra
ii  libdbus-1-3                   1.2.1-5    simple interprocess messaging syst
ii  libdbus-glib-1-2              0.76-1     simple interprocess messaging syst
ii  libglib2.0-0                  2.16.5-1   The GLib library of C routines
ii  libgtk2.0-0                   2.12.11-4  The GTK+ graphical user interface 
ii  libice6                       2:1.0.4-1  X11 Inter-Client Exchange library
ii  libmcs1                       0.7.1-1    Abstraction library to store confi
ii  libmowgli1                    0.6.1-1    a high performance development fra
ii  libpango1.0-0                 1.20.5-3   Layout and rendering of internatio
ii  libsamplerate0                0.1.4-1    audio rate conversion library
ii  libsm6                        2:1.0.3-2  X11 Session Management library
ii  libx11-6                      2:1.1.5-1  X11 client-side library

Versions of packages audacious recommends:
pn  audacious-plugins-extra       <none>     (no description available)
ii  unzip                         5.52-12    De-archiver for .zip files

audacious suggests no packages.

-- no debconf information




Information forwarded to debian-bugs-dist@lists.debian.org, Debian Audacious Packagers <pkg-audacious-maintainers@lists.alioth.debian.org>:
Bug#512911; Package audacious. (Mon, 16 Mar 2009 01:54:02 GMT) (full text, mbox, link).


Acknowledgement sent to John Lindgren <john.lindgren@tds.net>:
Extra info received and forwarded to list. Copy sent to Debian Audacious Packagers <pkg-audacious-maintainers@lists.alioth.debian.org>. (Mon, 16 Mar 2009 01:54:02 GMT) (full text, mbox, link).


Message #10 received at 512911@bugs.debian.org (full text, mbox, reply):

From: John Lindgren <john.lindgren@tds.net>
To: 512911@bugs.debian.org
Cc: morph@debian.org
Subject: Re: playback-seek-relative seeks bad at the song start/end
Date: Sun, 15 Mar 2009 21:51:45 -0400
The code that currently implements playback-seek-relative is this, from
audtool_handlers_playback.c, lines 138-142:

	oldtime = audacious_remote_get_output_time(dbus_proxy);
	diff = atoi(argv[1]) * 1000;
	newtime = oldtime + diff;

	audacious_remote_jump_to_time(dbus_proxy, newtime);

The first problem with this code is what this bug report is concerned
with: audtool pays no attention to whether the calculated "newtime" is
within the current song or even non-negative, for that matter. So it
passes invalid times to audacious_remote_jump_to_time, which silently
fails.

The second problem is the race condition produced by calculating
"newtime" right in the audtool process while Audacious itself continues
merrily on. An example:

1. Audacious is playing a 3-minute song, and is a fraction of a second
from the end of the song.
2. audtool calls audacious_remote_get_output_time and gets something
like 2.59.98.
3. Audacious comes to the end of the song and goes on to the next one,
so the time is now, let's say, 0.00.01.
4. audtool was told to seek ten seconds backwards, so it calculates
"newtime" as 2.49.98. It passes this number through
audacious_remote_jump_to_time.
5. Audacious obligingly seeks to 2.49.98 -- in the new song. So it has
just skipped about 3 minutes of music when the user only wanted to play
the last ten seconds over again.

Basically, a relative seek function would have to be implemented within
the main Audacious process to work correctly, probably right in the
decoder loop of each input plugin. This would be possible to do, but I
question whether it's worth this much effort just to provide a function
in audtool that's not even in Audacious itself. I suggest that
"playback-seek-relative" should simply be dropped.

John





Information forwarded to debian-bugs-dist@lists.debian.org, Debian Audacious Packagers <pkg-audacious-maintainers@lists.alioth.debian.org>:
Bug#512911; Package audacious. (Mon, 23 Mar 2009 11:03:08 GMT) (full text, mbox, link).


Acknowledgement sent to Sandro Tosi <morph@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian Audacious Packagers <pkg-audacious-maintainers@lists.alioth.debian.org>. (Mon, 23 Mar 2009 11:03:08 GMT) (full text, mbox, link).


Message #15 received at 512911@bugs.debian.org (full text, mbox, reply):

From: Sandro Tosi <morph@debian.org>
To: John Lindgren <john.lindgren@tds.net>
Cc: 512911@bugs.debian.org
Subject: Re: playback-seek-relative seeks bad at the song start/end
Date: Mon, 23 Mar 2009 11:58:23 +0100
Hi John,
thanks for the analysis.

On Mon, Mar 16, 2009 at 02:51, John Lindgren <john.lindgren@tds.net> wrote:
> Basically, a relative seek function would have to be implemented within
> the main Audacious process to work correctly, probably right in the
> decoder loop of each input plugin. This would be possible to do, but I
> question whether it's worth this much effort just to provide a function
> in audtool that's not even in Audacious itself.

I understand the tech difficulties to implement it in audacious itself, but...

> I suggest that
> "playback-seek-relative" should simply be dropped.

...I don't understand why you would like to remove a functinality I
consider (and maybe other) important to have at hand. Where is the
problem in fixing the audtool code?

If there's a bug, I tend to fix it, not to remove completely the
functionality where the bug is.

Regards,
-- 
Sandro Tosi (aka morph, morpheus, matrixhasu)
My website: http://matrixhasu.altervista.org/
Me at Debian: http://wiki.debian.org/SandroTosi




Information forwarded to debian-bugs-dist@lists.debian.org, Debian Audacious Packagers <pkg-audacious-maintainers@lists.alioth.debian.org>:
Bug#512911; Package audacious. (Mon, 23 Mar 2009 15:03:08 GMT) (full text, mbox, link).


Acknowledgement sent to John Lindgren <john.lindgren@tds.net>:
Extra info received and forwarded to list. Copy sent to Debian Audacious Packagers <pkg-audacious-maintainers@lists.alioth.debian.org>. (Mon, 23 Mar 2009 15:03:09 GMT) (full text, mbox, link).


Message #20 received at 512911@bugs.debian.org (full text, mbox, reply):

From: John Lindgren <john.lindgren@tds.net>
To: Sandro Tosi <morph@debian.org>
Cc: 512911@bugs.debian.org
Subject: Re: playback-seek-relative seeks bad at the song start/end
Date: Mon, 23 Mar 2009 11:02:29 -0400
On Mon, 2009-03-23 at 11:58 +0100, Sandro Tosi wrote:
> ... Where is the
> problem in fixing the audtool code?
> 
> If there's a bug, I tend to fix it, not to remove completely the
> functionality where the bug is.

Yes, you're right. It should be fixed. But I think that's going to
require more than just patching the audtool code.

John





Information forwarded to debian-bugs-dist@lists.debian.org, Debian Audacious Packagers <pkg-audacious-maintainers@lists.alioth.debian.org>:
Bug#512911; Package audacious. (Fri, 07 Aug 2009 01:21:02 GMT) (full text, mbox, link).


Acknowledgement sent to John Lindgren <john.lindgren@tds.net>:
Extra info received and forwarded to list. Copy sent to Debian Audacious Packagers <pkg-audacious-maintainers@lists.alioth.debian.org>. (Fri, 07 Aug 2009 01:21:02 GMT) (full text, mbox, link).


Message #25 received at 512911@bugs.debian.org (full text, mbox, reply):

From: John Lindgren <john.lindgren@tds.net>
To: control@bugs.debian.org, Sandro Tosi <morph@debian.org>
Cc: 512911@bugs.debian.org
Subject: Re: audtool: playback-seek-relative seeks bad at the song start/end
Date: Thu, 06 Aug 2009 21:07:39 -0400
tags 512911 fixed-upstream
thanks

Buried in my recent playlist rewrite, the seeking code inside Audacious
clamps the requested time between zero and the length of the song
instead of simply failing if it is out of bounds.

        http://hg.atheme.org/audacious/rev/4a845cea0dbe

That's a 10,000 line diff; you can find the relevant change by searching
for "drct_seek".

John Lindgren





Added tag(s) fixed-upstream. Request was from John Lindgren <john.lindgren@tds.net> to control@bugs.debian.org. (Fri, 07 Aug 2009 01:21:03 GMT) (full text, mbox, link).


Reply sent to Chris Taylor <ctaylor@debian.org>:
You have taken responsibility. (Sat, 10 Apr 2010 04:21:16 GMT) (full text, mbox, link).


Notification sent to Sandro Tosi <morph@debian.org>:
Bug acknowledged by developer. (Sat, 10 Apr 2010 04:21:16 GMT) (full text, mbox, link).


Message #32 received at 512911-close@bugs.debian.org (full text, mbox, reply):

From: Chris Taylor <ctaylor@debian.org>
To: 512911-close@bugs.debian.org
Subject: Bug#512911: fixed in audacious 2.3-1
Date: Sat, 10 Apr 2010 04:17:23 +0000
Source: audacious
Source-Version: 2.3-1

We believe that the bug you reported is fixed in the latest version of
audacious, which is due to be installed in the Debian FTP archive:

audacious-dbg_2.3-1_amd64.deb
  to main/a/audacious/audacious-dbg_2.3-1_amd64.deb
audacious-dev_2.3-1_amd64.deb
  to main/a/audacious/audacious-dev_2.3-1_amd64.deb
audacious_2.3-1.debian.tar.gz
  to main/a/audacious/audacious_2.3-1.debian.tar.gz
audacious_2.3-1.dsc
  to main/a/audacious/audacious_2.3-1.dsc
audacious_2.3-1_amd64.deb
  to main/a/audacious/audacious_2.3-1_amd64.deb
audacious_2.3.orig.tar.gz
  to main/a/audacious/audacious_2.3.orig.tar.gz
libaudclient2_2.3-1_amd64.deb
  to main/a/audacious/libaudclient2_2.3-1_amd64.deb
libaudcore1_2.3-1_amd64.deb
  to main/a/audacious/libaudcore1_2.3-1_amd64.deb
libaudid3tag2_2.3-1_amd64.deb
  to main/a/audacious/libaudid3tag2_2.3-1_amd64.deb



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 512911@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Chris Taylor <ctaylor@debian.org> (supplier of updated audacious package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.8
Date: Fri, 02 Apr 2010 21:37:21 +0000
Source: audacious
Binary: audacious libaudid3tag2 libaudclient2 libaudcore1 audacious-dev audacious-dbg
Architecture: source amd64
Version: 2.3-1
Distribution: experimental
Urgency: low
Maintainer: Debian Audacious Packagers <pkg-audacious-maintainers@lists.alioth.debian.org>
Changed-By: Chris Taylor <ctaylor@debian.org>
Description: 
 audacious  - small and fast audio player which supports lots of formats
 audacious-dbg - audacious media player (debugging symbols)
 audacious-dev - audacious development files
 libaudclient2 - audacious dbus remote control library
 libaudcore1 - audacious core engine library
 libaudid3tag2 - audacious id3 tag manipulation library
Closes: 491615 497769 500634 508630 512911 531214 534113 543449 543561 550550 559055 561826 567839 572773
Changes: 
 audacious (2.3-1) experimental; urgency=low
 .
   [ Chris Taylor ]
   * New uploader.
   * New upstream release.
     - (Closes: #559055, #531214, #497769, #534113, #567839, #491615, #500634)
     - (Closes: #512911, #543449, #543561, #550550, #561826)
   * Use source format 3.0 (quilt)
   * Use dh7 in debian/rules
   * Remove libsad* from packaging.
     - Add replaces in debian/control
   * Remove libaudutil* from packaging.
     - Add replaces in debian/control.
   * Add libaudtag and libaudgui to libaudcore1.
   * Bump standards-version.
   * Update debian/copyright.
 .
   [ Benjamin Drung ]
   * Bump libmcs-dev version to >= 0.7 (Closes: #508630).
   * Change build id from UNSUPPORTED VERSION to <vendor> package
    (Closes: #572773).
   * Add symbol files for libraries.
   * Various cleanups.
Checksums-Sha1: 
 04df80fa7401abc41fd8eb556d5538a8cf49e03d 1576 audacious_2.3-1.dsc
 a7041650c54b6db68d0f3b3cf68f61fc7f841f34 1564114 audacious_2.3.orig.tar.gz
 964f4e9e558725e6b7fbdab22eab9d2b977d8723 12921 audacious_2.3-1.debian.tar.gz
 a241d69b497382488f445d0acaeabb539de2be78 531738 audacious_2.3-1_amd64.deb
 afd28d15f91f9f4ac495eb0f29a94a3bfbf91f8e 56398 libaudid3tag2_2.3-1_amd64.deb
 982000b230b1da8d7e867676698605048ebe44ae 29518 libaudclient2_2.3-1_amd64.deb
 2af08c4a31a684be2a9e8ed9ba378ce04b1fe935 106790 libaudcore1_2.3-1_amd64.deb
 9bac62e90085a3084867bbf2ff60dad7e1899551 56638 audacious-dev_2.3-1_amd64.deb
 37c38af9760c7d6ab876ca622568fc1825eb7cda 608430 audacious-dbg_2.3-1_amd64.deb
Checksums-Sha256: 
 bfa9667939c1cb8358b8b20af96d81ee890672fb343eda25acc163df11f0d7eb 1576 audacious_2.3-1.dsc
 b19b3a75d4bac535231a77b6f993519b599a9619ac46c4d5627fd2bc8337416f 1564114 audacious_2.3.orig.tar.gz
 f1ef14808ce451fe059a82f2a449f56501d6d98818191be7080a82320fa44e0b 12921 audacious_2.3-1.debian.tar.gz
 7cffccda2048f468d643d84ec88aa029a2a60f5c95fda9c1b15cce255af69539 531738 audacious_2.3-1_amd64.deb
 5a183c415336b853dfceb1ba8678c9fa261c490fa874d97179ed2f4cc5aa7b6f 56398 libaudid3tag2_2.3-1_amd64.deb
 27a20571f6cea0115266d4fc6b545745462712895b18457860a6b6aa05bd3020 29518 libaudclient2_2.3-1_amd64.deb
 a849ba676d31a3a1d159b738735e407ba2d3afb71397c93a4715d883a7f6c1bd 106790 libaudcore1_2.3-1_amd64.deb
 37bd5005c21e0110e3fc9dd1db87a101dc723899c33dc7094de744a79f5a70ba 56638 audacious-dev_2.3-1_amd64.deb
 c8da1573450edad397c45cf5d9ad4f834445514c6fe54629f9d20ea3c6565ce4 608430 audacious-dbg_2.3-1_amd64.deb
Files: 
 265e8b411fa27485bb14443ec704d193 1576 sound optional audacious_2.3-1.dsc
 b65753880c6762cdad6423df48590304 1564114 sound optional audacious_2.3.orig.tar.gz
 b585c10854430a6f3665ca6cc8c5c8a9 12921 sound optional audacious_2.3-1.debian.tar.gz
 58ef0a6603afe7d897773e537396520b 531738 sound optional audacious_2.3-1_amd64.deb
 79e7979fe303c0f0993cbcf80879db72 56398 sound optional libaudid3tag2_2.3-1_amd64.deb
 12b0047e6ec3c2d044add5234429b289 29518 sound optional libaudclient2_2.3-1_amd64.deb
 4b817afd45843f5661e0c37d17af3c72 106790 sound optional libaudcore1_2.3-1_amd64.deb
 a736455639f32274420834298eee213f 56638 libdevel optional audacious-dev_2.3-1_amd64.deb
 9da935eed7fec3814bc78653c4cb2165 608430 debug extra audacious-dbg_2.3-1_amd64.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)

iEYEARECAAYFAku/+ZUACgkQLpNUoan9SCHxgwCffzMQ4isWfNA1PIbKqvEzWPys
T58AniAFNDMf1XEJX9xUu3KMY1XO43mV
=PIv/
-----END PGP SIGNATURE-----





Bug archived. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Thu, 24 Jun 2010 07:32:56 GMT) (full text, mbox, link).


Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Sun Jul 2 00:07:08 2023; Machine Name: buxtehude

Debian Bug tracking system

Debbugs is free software and licensed under the terms of the GNU Public License version 2. The current version can be obtained from https://bugs.debian.org/debbugs-source/.

Copyright © 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson, 2005-2017 Don Armstrong, and many other contributors.