update libmpg123

- compiled with mingw-w64 GCC 12.2
- version 1.31.1
- compared with old DLL, output results in many +-1 diffs, but is correct vs newer official binaries
This commit is contained in:
bnnm 2023-01-15 17:06:15 +01:00
parent 2d0ef8091b
commit f5e4a952e2
5 changed files with 739 additions and 99 deletions

View File

@ -11,16 +11,17 @@ if(NOT WIN32 AND USE_MPEG)
DIR mpg123
FETCH_PRIORITY file svn git
FILE_DOWNLOAD https://downloads.sourceforge.net/mpg123/mpg123-1.28.2.tar.bz2
FILE_SUBDIR mpg123-1.28.2
FILE_DOWNLOAD https://downloads.sourceforge.net/mpg123/mpg123-1.31.1.tar.bz2
FILE_SUBDIR mpg123-1.31.1
SVN_REPOSITORY svn://scm.orgis.org/mpg123/trunk
SVN_REVISION -r4968
# unknown current version, to be fixed
#SVN_REPOSITORY svn://scm.orgis.org/mpg123/trunk
#SVN_REVISION -r4968 ?
# "official" git repo: https://www.mpg123.de/trunk/.git/ but *very* slow (HTTP emulation)
# "official" git mirror (default branch is not master), works too
GIT_REPOSITORY https://github.com/madebr/mpg123
GIT_TAG efedb989a4d300199f09757815409d3a89b8bc63
GIT_TAG aec901b7a636b6eb61e03a87ff3547c787e8c693
GIT_UNSHALLOW ON
)

View File

@ -4,7 +4,7 @@
separate header just for audio format definitions not tied to
library code
copyright 1995-2015 by the mpg123 project
copyright 1995-2020 by the mpg123 project
free software under the terms of the LGPL 2.1
see COPYING and AUTHORS files in distribution or http://mpg123.org
*/
@ -99,7 +99,9 @@ enum mpg123_enc_enum
* \return size of one sample in bytes
*/
#define MPG123_SAMPLESIZE(enc) ( \
(enc) & MPG123_ENC_8 \
(enc) < 1 \
? 0 \
: ( (enc) & MPG123_ENC_8 \
? 1 \
: ( (enc) & MPG123_ENC_16 \
? 2 \
@ -111,7 +113,29 @@ enum mpg123_enc_enum
: ( (enc) == MPG123_ENC_FLOAT_64 \
? 8 \
: 0 \
) ) ) ) )
) ) ) ) ) )
/** Representation of zero in differing encodings.
* This exists to define proper silence in various encodings without
* having to link to libsyn123 to do actual conversions at runtime.
* You have to handle big/little endian order yourself, though.
* This takes the shortcut that any signed encoding has a zero with
* all-zero bits. Unsigned linear encodings just have the highest bit set
* (2^(n-1) for n bits), while the nonlinear 8-bit ones are special.
* \param enc the encoding (mpg123_enc_enum value)
* \param siz bytes per sample (return value of MPG123_SAMPLESIZE(enc))
* \param off byte (octet) offset counted from LSB
* \return unsigned byte value for the designated octet
*/
#define MPG123_ZEROSAMPLE(enc, siz, off) ( \
(enc) == MPG123_ENC_ULAW_8 \
? (off == 0 ? 0xff : 0x00) \
: ( (enc) == MPG123_ENC_ALAW_8 \
? (off == 0 ? 0xd5 : 0x00) \
: ( (((enc) & (MPG123_ENC_SIGNED|MPG123_ENC_FLOAT)) || (siz) != ((off)+1)) \
? 0x00 \
: 0x80 \
) ) )
/** Structure defining an audio format.
* Providing the members as individual function arguments to define a certain
@ -129,7 +153,7 @@ struct mpg123_fmt
int encoding;
};
/* @} */
/** @} */
#endif

File diff suppressed because it is too large Load Diff

View File

@ -15,22 +15,30 @@ mpg123_decoder
mpg123_decoders
mpg123_delete
mpg123_delete_pars
mpg123_delete_string
mpg123_enc_from_id3
mpg123_enc_from_id3_2
mpg123_encodings
mpg123_encsize
mpg123_eq
mpg123_eq2
mpg123_eq_bands
mpg123_eq_change
mpg123_errcode
mpg123_exit
mpg123_feature
mpg123_feature2
mpg123_feed
mpg123_feedseek
mpg123_feedseek_32
mpg123_feedseek_64
mpg123_fmt
mpg123_fmt2
mpg123_fmt_all
mpg123_fmt_none
mpg123_fmt_support
mpg123_format
mpg123_format2
mpg123_format_all
mpg123_format_none
mpg123_format_support
@ -45,22 +53,29 @@ mpg123_framelength_64
mpg123_framepos
mpg123_framepos_32
mpg123_framepos_64
mpg123_free
mpg123_free_string
mpg123_geteq
mpg123_geteq2
mpg123_getformat
mpg123_getformat2
mpg123_getpar
mpg123_getpar2
mpg123_getparam
mpg123_getparam2
mpg123_getstate
mpg123_getstate2
mpg123_getvolume
mpg123_grow_string
mpg123_icy
mpg123_icy2utf8
mpg123_id3
mpg123_id3_raw
mpg123_index
mpg123_index_32
mpg123_index_64
mpg123_info
mpg123_info2
mpg123_init
mpg123_init_string
mpg123_length
@ -68,8 +83,10 @@ mpg123_length_32
mpg123_length_64
mpg123_meta_check
mpg123_meta_free
mpg123_move_string
mpg123_new
mpg123_new_pars
mpg123_new_string
mpg123_noise
mpg123_open
mpg123_open_32
@ -78,12 +95,17 @@ mpg123_open_fd
mpg123_open_fd_32
mpg123_open_fd_64
mpg123_open_feed
mpg123_open_fixed
mpg123_open_fixed_32
mpg123_open_fixed_64
mpg123_open_handle
mpg123_open_handle_32
mpg123_open_handle_64
mpg123_outblock
mpg123_par
mpg123_par2
mpg123_param
mpg123_param2
mpg123_parnew
mpg123_plain_strerror
mpg123_position
@ -101,6 +123,7 @@ mpg123_replace_reader_handle_64
mpg123_reset_eq
mpg123_resize_string
mpg123_safe_buffer
mpg123_same_string
mpg123_scan
mpg123_seek
mpg123_seek_32
@ -114,10 +137,12 @@ mpg123_set_filesize_64
mpg123_set_index
mpg123_set_index_32
mpg123_set_index_64
mpg123_set_moreinfo
mpg123_set_string
mpg123_set_substring
mpg123_spf
mpg123_store_utf8
mpg123_store_utf8_2
mpg123_strerror
mpg123_strlen
mpg123_supported_decoders
@ -136,3 +161,4 @@ mpg123_timeframe_64
mpg123_tpf
mpg123_volume
mpg123_volume_change
mpg123_volume_change_db

Binary file not shown.