Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package mpg123 for openSUSE:Factory checked in at 2021-10-20 20:23:45 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/mpg123 (Old) and /work/SRC/openSUSE:Factory/.mpg123.new.1890 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mpg123" Wed Oct 20 20:23:45 2021 rev:25 rq:925955 version:1.29.1 Changes: -------- --- /work/SRC/openSUSE:Factory/mpg123/mpg123.changes 2021-09-08 21:36:26.349876152 +0200 +++ /work/SRC/openSUSE:Factory/.mpg123.new.1890/mpg123.changes 2021-10-20 20:24:33.677388334 +0200 @@ -1,0 +2,25 @@ +Mon Oct 18 06:45:26 UTC 2021 - Luigi Baldoni <aloi...@gmx.com> + +- Update to version 1.29.1 + mpg123: + * Keep default output encoding of s16 for raw and file outputs + also with the new resampler. This reverts the unintentional + change in 1.26.0 of switching to f32 for forced output rate + unless the NtoM resampler is selected. In any case, you + should make sure to specify your desired --encoding if you + depend on it. + * Catch error in indexing (mpg123_scan() return value was + ignored before, bug 322). + mpg123-strip: + * Lift the resync limit, as it should be to clean up really + dirty streams. + mpg123-id3dump: + * Also lift resync limit for the same reasons. + libout123: + * Fix reporting of device property flags for buffer + libmpg123: + * More safeguarding against attempts to decode if decoder + setup failed and user ignored the returned error code (bug + 322) + +------------------------------------------------------------------- Old: ---- mpg123-1.29.0.tar.bz2 mpg123-1.29.0.tar.bz2.sig New: ---- mpg123-1.29.1.tar.bz2 mpg123-1.29.1.tar.bz2.sig ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ mpg123.spec ++++++ --- /var/tmp/diff_new_pack.g1NLv4/_old 2021-10-20 20:24:34.233388678 +0200 +++ /var/tmp/diff_new_pack.g1NLv4/_new 2021-10-20 20:24:34.237388680 +0200 @@ -18,7 +18,7 @@ %define sover 0 Name: mpg123 -Version: 1.29.0 +Version: 1.29.1 Release: 0 Summary: Console MPEG audio player and decoder library License: LGPL-2.1-only ++++++ mpg123-1.29.0.tar.bz2 -> mpg123-1.29.1.tar.bz2 ++++++ ++++ 5440 lines of diff (skipped) ++++ retrying with extended exclude list diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/mpg123-1.29.0/NEWS new/mpg123-1.29.1/NEWS --- old/mpg123-1.29.0/NEWS 2021-09-06 00:31:04.000000000 +0200 +++ new/mpg123-1.29.1/NEWS 2021-10-08 11:07:03.000000000 +0200 @@ -1,3 +1,20 @@ +1.29.1 +------ +- mpg123: +-- Keep default output encoding of s16 for raw and file outputs + also with the new resampler. This reverts the unintentional change in + 1.26.0 of switching to f32 for forced output rate unless the NtoM + resampler is selected. In any case, you should make sure to specify + your desired --encoding if you depend on it. +-- Catch error in indexing (mpg123_scan() return value was ignored + before, bug 322). +- mpg123-strip: Lift the resync limit, as it should be to clean up really + dirty streams. +- mpg123-id3dump: Also lift resync limit for the same reasons. +- libout123: fix reporting of device property flags for buffer +- libmpg123: more safeguarding against attempts to decode if decoder + setup failed and user ignored the returned error code (bug 322) + 1.29.0 ------ - build: added --enable-runtime-tables diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/mpg123-1.29.0/build/compile new/mpg123-1.29.1/build/compile --- old/mpg123-1.29.0/build/compile 2021-09-06 00:32:55.000000000 +0200 +++ new/mpg123-1.29.1/build/compile 2021-06-14 10:02:05.000000000 +0200 @@ -3,7 +3,7 @@ scriptversion=2018-03-07.03; # UTC -# Copyright (C) 1999-2018 Free Software Foundation, Inc. +# Copyright (C) 1999-2020 Free Software Foundation, Inc. # Written by Tom Tromey <tro...@cygnus.com>. # # This program is free software; you can redistribute it and/or modify @@ -53,7 +53,7 @@ MINGW*) file_conv=mingw ;; - CYGWIN*) + CYGWIN* | MSYS*) file_conv=cygwin ;; *) @@ -67,7 +67,7 @@ mingw/*) file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'` ;; - cygwin/*) + cygwin/* | msys/*) file=`cygpath -m "$file" || echo "$file"` ;; wine/*) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/mpg123-1.29.0/build/missing new/mpg123-1.29.1/build/missing --- old/mpg123-1.29.0/build/missing 2021-09-06 00:32:55.000000000 +0200 +++ new/mpg123-1.29.1/build/missing 2021-06-14 10:02:05.000000000 +0200 @@ -3,7 +3,7 @@ scriptversion=2018-03-07.03; # UTC -# Copyright (C) 1996-2018 Free Software Foundation, Inc. +# Copyright (C) 1996-2020 Free Software Foundation, Inc. # Originally written by Fran,cois Pinard <pin...@iro.umontreal.ca>, 1996. # This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/mpg123-1.29.0/build/test-driver new/mpg123-1.29.1/build/test-driver --- old/mpg123-1.29.0/build/test-driver 2021-09-06 00:32:56.000000000 +0200 +++ new/mpg123-1.29.1/build/test-driver 2021-06-14 10:02:07.000000000 +0200 @@ -3,7 +3,7 @@ scriptversion=2018-03-07.03; # UTC -# Copyright (C) 2011-2018 Free Software Foundation, Inc. +# Copyright (C) 2011-2020 Free Software Foundation, Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -42,11 +42,13 @@ { cat <<END Usage: - test-driver --test-name=NAME --log-file=PATH --trs-file=PATH - [--expect-failure={yes|no}] [--color-tests={yes|no}] - [--enable-hard-errors={yes|no}] [--] + test-driver --test-name NAME --log-file PATH --trs-file PATH + [--expect-failure {yes|no}] [--color-tests {yes|no}] + [--enable-hard-errors {yes|no}] [--] TEST-SCRIPT [TEST-SCRIPT-ARGUMENTS] + The '--test-name', '--log-file' and '--trs-file' options are mandatory. +See the GNU Automake documentation for information. END } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/mpg123-1.29.0/configure.ac new/mpg123-1.29.1/configure.ac --- old/mpg123-1.29.0/configure.ac 2021-09-06 00:31:04.000000000 +0200 +++ new/mpg123-1.29.1/configure.ac 2021-10-02 04:03:57.000000000 +0200 @@ -9,16 +9,16 @@ AC_PREREQ([2.69]) dnl ############# Initialisation -AC_INIT([mpg123], [1.29.0], [maintai...@mpg123.org]) +AC_INIT([mpg123], [1.29.1], [maintai...@mpg123.org]) dnl Increment API_VERSION when the API gets changes (new functions). dnl libmpg123 API_VERSION=46 -LIB_PATCHLEVEL=4 +LIB_PATCHLEVEL=5 dnl libout123 OUTAPI_VERSION=4 -OUTLIB_PATCHLEVEL=2 +OUTLIB_PATCHLEVEL=3 dnl libsyn123 SYNAPI_VERSION=1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/mpg123-1.29.0/m4/libtool.m4 new/mpg123-1.29.1/m4/libtool.m4 --- old/mpg123-1.29.0/m4/libtool.m4 2021-09-06 00:32:50.000000000 +0200 +++ new/mpg123-1.29.1/m4/libtool.m4 2021-06-05 01:37:58.000000000 +0200 @@ -728,6 +728,7 @@ cat <<_LT_EOF >> "$cfgfile" #! $SHELL # Generated automatically by $as_me ($PACKAGE) $VERSION +# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: # NOTE: Changes made to this file will be lost: look at ltmain.sh. # Provide generalized library-building support services. @@ -1041,8 +1042,8 @@ _LT_EOF echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD - echo "$AR cr libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD - $AR cr libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD + echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD + $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD cat > conftest.c << _LT_EOF @@ -1492,7 +1493,7 @@ m4_defun([_LT_PROG_AR], [AC_CHECK_TOOLS(AR, [ar], false) : ${AR=ar} -: ${AR_FLAGS=cr} +: ${AR_FLAGS=cru} _LT_DECL([], [AR], [1], [The archiver]) _LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive]) @@ -2886,18 +2887,6 @@ dynamic_linker='GNU/Linux ld.so' ;; -netbsdelf*-gnu) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - dynamic_linker='NetBSD ld.elf_so' - ;; - netbsd*) version_type=sunos need_lib_prefix=no @@ -3557,7 +3546,7 @@ lt_cv_deplibs_check_method=pass_all ;; -netbsd* | netbsdelf*-gnu) +netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' else @@ -4063,8 +4052,7 @@ if AC_TRY_EVAL(ac_compile); then # Now try to grab the symbols. nlist=conftest.nm - $ECHO "$as_me:$LINENO: $NM conftest.$ac_objext | $lt_cv_sys_global_symbol_pipe > $nlist" >&AS_MESSAGE_LOG_FD - if eval "$NM" conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist 2>&AS_MESSAGE_LOG_FD && test -s "$nlist"; then + if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then # Try sorting and uniquifying the output. if sort "$nlist" | uniq > "$nlist"T; then mv -f "$nlist"T "$nlist" @@ -4436,7 +4424,7 @@ ;; esac ;; - netbsd* | netbsdelf*-gnu) + netbsd*) ;; *qnx* | *nto*) # QNX uses GNU C++, but need to define -shared option too, otherwise @@ -4704,12 +4692,6 @@ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; - # flang / f18. f95 an alias for gfortran or flang on Debian - flang* | f18* | f95*) - _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' - _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' - _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' - ;; # icc used to be incompatible with GCC. # ICC 10 doesn't accept -KPIC any more. icc* | ifort*) @@ -4954,9 +4936,6 @@ ;; esac ;; - linux* | k*bsd*-gnu | gnu*) - _LT_TAGVAR(link_all_deplibs, $1)=no - ;; *) _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' ;; @@ -5019,9 +4998,6 @@ openbsd* | bitrig*) with_gnu_ld=no ;; - linux* | k*bsd*-gnu | gnu*) - _LT_TAGVAR(link_all_deplibs, $1)=no - ;; esac _LT_TAGVAR(ld_shlibs, $1)=yes @@ -5276,7 +5252,7 @@ fi ;; - netbsd* | netbsdelf*-gnu) + netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' wlarc= @@ -5797,7 +5773,6 @@ if test yes = "$lt_cv_irix_exported_symbol"; then _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib' fi - _LT_TAGVAR(link_all_deplibs, $1)=no else _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib' @@ -5819,7 +5794,7 @@ esac ;; - netbsd* | netbsdelf*-gnu) + netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out else @@ -6445,7 +6420,7 @@ # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. - output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"' + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' else GXX=no @@ -6820,7 +6795,7 @@ # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. - output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP " \-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' + output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' ;; *) if test yes = "$GXX"; then @@ -6885,7 +6860,7 @@ # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. - output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP " \-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' + output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' ;; *) if test yes = "$GXX"; then @@ -7224,7 +7199,7 @@ # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. - output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"' + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' else # FIXME: insert proper C++ library support @@ -7308,7 +7283,7 @@ # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. - output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"' + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' else # g++ 2.7 appears to require '-G' NOT '-shared' on this # platform. @@ -7319,7 +7294,7 @@ # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. - output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"' + output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' fi _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/mpg123-1.29.0/mpg123.spec new/mpg123-1.29.1/mpg123.spec --- old/mpg123-1.29.0/mpg123.spec 2021-09-06 00:48:46.000000000 +0200 +++ new/mpg123-1.29.1/mpg123.spec 2021-10-08 10:57:29.000000000 +0200 @@ -3,7 +3,7 @@ # - devel packages for alsa, sdl, etc... to build the respective output modules. Summary: The fast console mpeg audio decoder/player. Name: mpg123 -Version: 1.29.0 +Version: 1.29.1 Release: 1 URL: http://www.mpg123.org/ License: GPL diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/mpg123-1.29.0/src/audio.c new/mpg123-1.29.1/src/audio.c --- old/mpg123-1.29.0/src/audio.c 2021-09-06 00:31:04.000000000 +0200 +++ new/mpg123-1.29.1/src/audio.c 2021-10-01 01:38:38.000000000 +0200 @@ -425,6 +425,26 @@ { enc1 &= force_fmt; enc2 &= force_fmt; + } else + { + long propflags = 0; + out123_getparam_int(ao, OUT123_PROPFLAGS, &propflags); + if(!(propflags & OUT123_PROP_LIVE)) + { + fmtcount = out123_formats(ao, NULL, 0, 1, 2, &outfmts); + if(fmtcount == 1 && outfmts[0].encoding > 0) + { + const char *encname = out123_enc_name(outfmts[0].encoding); + if(param.verbose > 1) + fprintf( stderr, "Note: honouring non-live default encoding of %s\n" + , encname ? encname : "???" ); + enc1 &= outfmts[0].encoding; + enc2 &= outfmts[0].encoding; + } + free(outfmts); + outfmts = NULL; + } else if(param.verbose > 1) + fprintf(stderr, "Note: negotiating the best encoding with live sink\n"); } mdebug("enc mono=0x%x stereo=0x%x", (unsigned)enc1, (unsigned)enc2); if(!enc1 && !enc2) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/mpg123-1.29.0/src/libmpg123/format.c new/mpg123-1.29.1/src/libmpg123/format.c --- old/mpg123-1.29.0/src/libmpg123/format.c 2021-09-06 00:31:03.000000000 +0200 +++ new/mpg123-1.29.1/src/libmpg123/format.c 2021-10-02 03:58:47.000000000 +0200 @@ -232,7 +232,7 @@ int try_float = (p->flags & MPG123_FLOAT_FALLBACK) ? 0 : 1; /* initialize new format, encoding comes later */ nf.channels = fr->stereo; - + mdebug("native frame format: %d ch @ %ld Hz", fr->stereo, frame_freq(fr)); // I intended the forcing stuff to be weaved into the format support table, // but this probably will never happen, as this would change library behaviour. // One could introduce an additional effective format table that takes for @@ -352,7 +352,9 @@ (p->flags & MPG123_FORCE_MONO ? "mono, " : "") ) , ( p->flags & MPG123_FORCE_FLOAT ? "float, " : (p->flags & MPG123_FORCE_8BIT ? "8bit, " : "") ) - , frame_freq(fr), frame_freq(fr)>>1, frame_freq(fr)>>2 ); + , frame_freq(fr)>>p->down_sample + , frame_freq(fr)>>(p->down_sample ? p->down_sample : 1) + , frame_freq(fr)>>2 ); /* if(NOQUIET && p->verbose <= 1) print_capabilities(fr); */ fr->err = MPG123_BAD_OUTFORMAT; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/mpg123-1.29.0/src/libmpg123/frame.h new/mpg123-1.29.1/src/libmpg123/frame.h --- old/mpg123-1.29.0/src/libmpg123/frame.h 2021-09-06 00:31:03.000000000 +0200 +++ new/mpg123-1.29.1/src/libmpg123/frame.h 2021-10-02 03:32:42.000000000 +0200 @@ -93,6 +93,7 @@ FRAME_ACCURATE = 0x1 /**< 0001 Positions are considered accurate. */ ,FRAME_FRANKENSTEIN = 0x2 /**< 0010 This stream is concatenated. */ ,FRAME_FRESH_DECODER = 0x4 /**< 0100 Decoder is fleshly initialized. */ + ,FRAME_DECODER_LIVE = 0x8 /**< 1000 Decoder can be used. */ }; /* There is a lot to condense here... many ints can be merged as flags; though the main space is still consumed by buffers. */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/mpg123-1.29.0/src/libmpg123/libmpg123.c new/mpg123-1.29.1/src/libmpg123/libmpg123.c --- old/mpg123-1.29.0/src/libmpg123/libmpg123.c 2021-09-06 00:31:03.000000000 +0200 +++ new/mpg123-1.29.1/src/libmpg123/libmpg123.c 2021-10-02 03:42:56.000000000 +0200 @@ -624,6 +624,7 @@ long native_rate; int b; + mh->state_flags &= ~FRAME_DECODER_LIVE; if(mh->num < 0) { if(!(mh->p.flags & MPG123_QUIET)) error("decode_update() has been called before reading the first MPEG frame! Internal programming error."); @@ -690,6 +691,7 @@ debug3("done updating decoder structure with native rate %li and af.rate %li and down_sample %i", frame_freq(mh), mh->af.rate, mh->down_sample); mh->decoder_change = 0; + mh->state_flags |= FRAME_DECODER_LIVE; return 0; } @@ -882,12 +884,15 @@ if(mh == NULL) return MPG123_BAD_HANDLE; if(mh->buffer.size < mh->outblock) return MPG123_NO_SPACE; + *audio = NULL; *bytes = 0; mh->buffer.fill = 0; /* always start fresh */ if(!mh->to_decode) return MPG123_OK; if(num != NULL) *num = mh->num; debug("decoding"); + if(!mh->state_flags & FRAME_DECODER_LIVE) + return MPG123_ERR; decode_the_frame(mh); mh->to_decode = mh->to_ignore = FALSE; mh->buffer.p = mh->buffer.data; @@ -967,7 +972,8 @@ } debug("decoding"); - if(mh->decoder_change && decode_update(mh) < 0) + if( (mh->decoder_change && decode_update(mh) < 0) + || !(mh->state_flags & FRAME_DECODER_LIVE) ) return MPG123_ERR; decode_the_frame(mh); @@ -1072,7 +1078,8 @@ ret = MPG123_NO_SPACE; goto decodeend; } - if(mh->decoder_change && decode_update(mh) < 0) + if( (mh->decoder_change && decode_update(mh) < 0) + || ! (mh->state_flags & FRAME_DECODER_LIVE) ) { ret = MPG123_ERR; goto decodeend; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/mpg123-1.29.0/src/libout123/buffer.c new/mpg123-1.29.1/src/libout123/buffer.c --- old/mpg123-1.29.0/src/libout123/buffer.c 2021-09-06 00:31:03.000000000 +0200 +++ new/mpg123-1.29.1/src/libout123/buffer.c 2021-10-01 01:31:51.000000000 +0200 @@ -237,7 +237,8 @@ /* Retrieve driver and device name. */ return ( xfer_read_string(ao, XF_WRITER, &ao->driver) || xfer_read_string(ao, XF_WRITER, &ao->device) - || xfer_read_string(ao, XF_WRITER, &ao->realname) ); + || xfer_read_string(ao, XF_WRITER, &ao->realname) + || !GOOD_READVAL(writerfd, ao->propflags) ); else return -1; } @@ -736,7 +737,8 @@ xfermem_putcmd(my_fd, XF_CMD_OK); if( xfer_write_string(ao, XF_READER, ao->driver) || xfer_write_string(ao, XF_READER, ao->device) - || xfer_write_string(ao, XF_READER, ao->realname ) ) + || xfer_write_string(ao, XF_READER, ao->realname ) + || !GOOD_WRITEVAL(my_fd, ao->propflags) ) return 2; } else diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/mpg123-1.29.0/src/libout123/libout123.c new/mpg123-1.29.1/src/libout123/libout123.c --- old/mpg123-1.29.0/src/libout123/libout123.c 2021-09-06 00:31:03.000000000 +0200 +++ new/mpg123-1.29.1/src/libout123/libout123.c 2021-10-01 01:41:39.000000000 +0200 @@ -374,7 +374,6 @@ && GOOD_WRITEVAL(fd, ao->gain) && GOOD_WRITEVAL(fd, ao->device_buffer) && GOOD_WRITEVAL(fd, ao->verbose) - && GOOD_WRITEVAL(fd, ao->propflags) && !xfer_write_string(ao, who, ao->name) && !xfer_write_string(ao, who, ao->bindir) ) @@ -395,7 +394,6 @@ && GOOD_READVAL_BUF(fd, ao->gain) && GOOD_READVAL_BUF(fd, ao->device_buffer) && GOOD_READVAL_BUF(fd, ao->verbose) - && GOOD_READVAL_BUF(fd, ao->propflags) && !xfer_read_string(ao, who, &ao->name) && !xfer_read_string(ao, who, &ao->bindir) ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/mpg123-1.29.0/src/mpg123-id3dump.c new/mpg123-1.29.1/src/mpg123-id3dump.c --- old/mpg123-1.29.0/src/mpg123-id3dump.c 2021-09-06 00:31:03.000000000 +0200 +++ new/mpg123-1.29.1/src/mpg123-id3dump.c 2021-10-08 11:06:24.000000000 +0200 @@ -388,6 +388,7 @@ m = mpg123_new(NULL, NULL); mpg123_param(m, MPG123_ADD_FLAGS, MPG123_PICTURE, 0.); mpg123_param(m, MPG123_VERBOSE, param.verbose ? 4 : 0, 0.); + mpg123_param(m, MPG123_RESYNC_LIMIT, -1, 0.0); for(i=loptind; i < argc; ++i) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/mpg123-1.29.0/src/mpg123-strip.c new/mpg123-1.29.1/src/mpg123-strip.c --- old/mpg123-1.29.0/src/mpg123-strip.c 2021-09-06 00:31:04.000000000 +0200 +++ new/mpg123-1.29.1/src/mpg123-strip.c 2021-10-08 10:56:59.000000000 +0200 @@ -101,6 +101,8 @@ { ret = mpg123_param(m, MPG123_VERBOSE, param.verbose, 0.); if(ret == MPG123_OK) + mpg123_param(m, MPG123_RESYNC_LIMIT, -1, 0.0); + if(ret == MPG123_OK) { if(param.verbose) fprintf(stderr, "Info frame handling: %s\n", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/mpg123-1.29.0/src/mpg123.c new/mpg123-1.29.1/src/mpg123.c --- old/mpg123-1.29.0/src/mpg123.c 2021-09-06 00:31:04.000000000 +0200 +++ new/mpg123-1.29.1/src/mpg123.c 2021-10-02 03:48:01.000000000 +0200 @@ -993,6 +993,16 @@ #define skip_or_die(a) TRUE #endif +void formatcheck(void) +{ + if(mpg123_errcode(mh) == MPG123_BAD_OUTFORMAT) + { + fprintf(stderr, "%s", "So, you have trouble getting an output format... this is the matrix of currently possible formats:\n"); + print_capabilities(ao, mh); + fprintf(stderr, "%s", "Somehow the input data and your choices don't allow one of these.\n"); + } +} + int main(int sys_argc, char ** sys_argv) { int result; @@ -1386,7 +1396,13 @@ if(param.index) { if(param.verbose) fprintf(stderr, "indexing...\r"); - mpg123_scan(mh); + if(mpg123_scan(mh) != MPG123_OK) + { + error1("indexing failed: %s", mpg123_strerror(mh)); + formatcheck(); + mpg123_close(mh); + continue; + } } /* Only trigger a seek if we do not want to start with the first frame. @@ -1402,12 +1418,7 @@ if(framenum < 0) { error1("Initial seek failed: %s", mpg123_strerror(mh)); - if(mpg123_errcode(mh) == MPG123_BAD_OUTFORMAT) - { - fprintf(stderr, "%s", "So, you have trouble getting an output format... this is the matrix of currently possible formats:\n"); - print_capabilities(ao, mh); - fprintf(stderr, "%s", "Somehow the input data and your choices don't allow one of these.\n"); - } + formatcheck(); mpg123_close(mh); continue; }