Package: vorbis-tools
Version: 1.0.1-1.5
Severity: normal
Tags: patch

According to --help, the maximum quality value for -q is 10.  However:

  [EMAIL PROTECTED]:~$ oggenc -q 10
  WARNING: quality setting too high, setting to maximum quality.
  [...]

I fixed this by comparing the input against an integer (10) instead of a float
(1.0f) after it has been divided by 10.

-- System Information:
Debian Release: testing/unstable
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.11-1-k7
Locale: LANG=en_US, LC_CTYPE=en_US (charmap=ANSI_X3.4-1968) (ignored: LC_ALL 
set to C)

Versions of packages vorbis-tools depends on:
ii  libao2                        0.8.6-1.1  Cross Platform Audio Output Librar
ii  libc6                         2.3.5-6    GNU C Library: Shared libraries an
ii  libcurl3                      7.14.0-5   Multi-protocol file transfer libra
ii  libflac7                      1.1.2-3    Free Lossless Audio Codec - runtim
ii  libidn11                      0.5.18-1   GNU libidn library, implementation
ii  libogg0                       1.1.2-1    Ogg Bitstream Library
ii  liboggflac3                   1.1.2-3    Free Lossless Audio Codec - runtim
ii  libspeex1                     1.1.6-2    The Speex Speech Codec
ii  libssl0.9.7                   0.9.7g-2   SSL shared libraries
ii  libvorbis0a                   1.1.0-1    The Vorbis General Audio Compressi
ii  libvorbisenc2                 1.1.0-1    The Vorbis General Audio Compressi
ii  libvorbisfile3                1.1.0-1    The Vorbis General Audio Compressi
ii  zlib1g                        1:1.2.3-4  compression library - runtime

vorbis-tools recommends no packages.

-- no debconf information
diff -ur vorbis-tools-1.0.1.old/oggenc/oggenc.c 
vorbis-tools-1.0.1/oggenc/oggenc.c
--- vorbis-tools-1.0.1.old/oggenc/oggenc.c      2005-09-14 15:44:02.000000000 
+0200
+++ vorbis-tools-1.0.1/oggenc/oggenc.c  2005-09-14 15:42:38.000000000 +0200
@@ -717,12 +717,12 @@
                                        break;
                                }
                                opt->quality_set=1;
-                               opt->quality *= 0.1;
-                               if(opt->quality > 1.0f)
+                               if(opt->quality > 10)
                                {
-                                       opt->quality = 1.0f;
+                                       opt->quality = 10;
                                        fprintf(stderr, _("WARNING: quality 
setting too high, setting to maximum quality.\n"));
                                }
+                               opt->quality *= 0.1;
                                break;
                        case 'n':
                                if(opt->namefmt)

Reply via email to