libopenmpt 0.2-beta20.1
[Bug] The test suite could fail on MacOSX or FreeBSD in non-fatal ways when no locale was active.
[Bug] Possible crashes with malformed IT, MED, MPTM, PSM and Startrekker files.
'Makefile' has now explicit support for FreeBSD with no special option or configuration required.
of a header.
Default compiler setup in netbsd disables SSE, we cannot compile stuff
that uses it - but we do have the headers for it.
Allows us to get rid of SSE disabling for sunpro compiler, it should
fail the compile test as well.
Patch from FreeBSD (pointed out by John D. Baker)
Fixes PR pkg/51209: audio/lame build fails on i386-7.99.30
This is a major milestone release!
We worked hard over the years to improve WildMIDI by looking at
how it is used downstream and working with them to offload their
MIDI-related burdens and pushing them to WildMIDI. We've included
support for the following MIDI-like formats: HMI, HMP, KAR, MIDI
Type 2, MUS and XMI. We've expanded our API to help facilitate
error detection, logging and on-the-fly conversion from MIDI-likes
to MIDI without having to initialize the library first.
What's new in 0.4.0:
API change: The library now returns audio data in host-endian format, not little-endian.
API change: WildMidi_GetVersion() added to the api, along with new numeric version macros in the wildmidi_lib.h header. the dso version is changed from 1 to 2.
API change: All long or unsigned long type _WM_Info fields changed into strictly 32bit fields (int32_t or uint32_t.)
API change: WildMidi_OpenBuffer() and WildMidi_GetOutput() changed to accept strictly 32bit size parameters, i.e. uint32_t, instead of unsigned long.
API change: WildMidi_ConvertToMidi() and WildMidi_ConvertBufferToMidi() added for MIDI-like files to be converted to MIDI.
API change: WildMidi_SetCvtOption() added to support conversion options.
API change: WildMidi_SongSeek() added to support Type 2 MIDI files.
API change: WildMidi_GetLyric() added to support embedded text, such as KAR files.
API change: WildMidi_GetError() and WildMidi_ClearError() added to cleanly check for, retrieve and clear error messages. They no longer go to stderr.
Support for loading XMI (XMIDI format) files, thanks Ryan Nunn for releasing his code under the LGPL.
Support for loading MUS (MUS Id format) files, such as from Doom.
Support for loading HMP/HMI files, such as from Arena and Daggerfall.
Support for loading KAR (MIDI with Lyrics) and Type 2 MIDI files.
Build requires cmake-2.8.11 or newer now.
ver 0.19.19 (2016/08/23)
* decoder
- ffmpeg: bug fix for FFmpeg 3.1 support
- wildmidi: support libWildMidi 0.4
* output
- pulse: support 32 bit, 24 bit and floating point playback
* support non-x86 NetBSD
* fix clang 3.9 warnings
1.0.0
-----
- Development taken over by Peter Pentchev.
- Import a Debian patch by Stefan Ott <stefan@ott.net> to
avoid backquotes in the usage string.
- Import a Debian patch by Stefan Ott <stefan@ott.net> and
Peter Pentchev to let the compiler and linker flags be
overridden.
- Let the install program and the strip flag also be overridden.
- Check some more functions' return values for errors.
- Add some preprocessor and compiler flags to specify certain
POSIX and C environment standards.
- Reorder the #include statements.
- Also include <strings.h> for strncasecmp().
- Mark the list of genres in genre.h as "const char".
- Add a lot of GCC-specific compiler warning flags.
- Use the err(3) and warn(3) functions, they're portable enough.
- Mark several global variables as static.
- Break the display of the ID3 tags out into a separate function.
- Use "return" from main(), remove unreachable "break" statements.
- Avoid possible out-of-bound copying when storing command-line
arguments into the new tag structure.
- Expect a C99 compiler and reduce the scope of some variables.
- Use the C99 "bool" type for, well, boolean flags.
- Convert the id3.1 manual page to the mdoc format.
- Fix the fields length in the manual page - only the comment is
limited to 28 characters, the rest of the text fields are at 30.
- Use the more common "file..." instead of "file1 [file2 [file3...]]"
- Fill in some commonly-used manual page sections.
- Validate number-to-string conversions for the genre and track number.
- Fix a signedness error in the track number display.
libopenmpt 0.2-beta20 (2016-08-07)
[Bug] PSM loader was broken on big-endian platforms since forever.
[Bug] load.skip_samples ctl did not work for PSM16 modules.
There is a new "subsong" ctl, which can return the currently selected subsong.
More accurate ProTracker arpeggio wrap-around emulation.
More accurate sample tuning in PSM16 files.
Samples in DSM files were sometimes detuned and some pattern commands were not imported correctly.
More accurate import of MDL 7-bit panning command.
Only import pattern commands supported by the UltraTracker version that was used to save ULT files. Add support for command 5-C (end loop).
DMF sample loop lengths were off by one.
Unis 669 pan slide effect was too deep.
Several valid (but slightly corrupted possibly due to disk failures or data transfer errors) SoundTracker files were no longer loading since libopenmpt 0.2-beta18.
Changelog:
PulseAudio 9.0
Changes at a glance:
* Automatic routing improvements
* Beamforming and various other new features in the WebRTC echo canceller
* Various improvements in module-role-cork and module-role-ducking
* LFE remixing disabled by default
* memfd-backed shared memory transport
* Support for sample rates up to 384 kHz
* webrtc-audio-processing dependency minimum version bumped to 0.2
* Changed the C standard from C99 to C11.
Detailed change log:
http://www.freedesktop.org/wiki/Software/PulseAudio/Notes/9.0
Contributors
Ahmed S. Darwish
Alexander E. Patrakov
Arun Raghavan
Barun Kumar Singh
David Henningsson
Deepak Srivastava
Gabor Kelemen
Georg Chini
Jeremy Huddleston Sequoia
Jonathan Perkin
Juho Hämäläinen
Jungsup Lee
Kamil Rytarowski
Marcin Lewandowski
Milo Casagrande
Muhammet Kara
Nazar Mokrynskyi
Peter Meerwald
Piotr Drąg
Sachin Kumar Chauhan
Sangchul Lee
Tanu Kaskinen
YunQiang Su
Major new features:
- conditionals in format strings, with syntax %{?CONDITION?A[?B]}
- sndio output plugin (OpenBSD)
- VTX (libayemu) input plugin
- optional mouse support (:set mouse=true to enable)
Notable changes:
- lots of new formatting options:
- format_treewin
- format_treewin_artist
- format_trackwin_album
- format_statusline
- play count support (%X or %{play_count} in format strings)
- Bash completion support for cmus and cmus-remote
- support for CMUS_SOCKET environment variable
- format_print remote command
- pwd command
- auto_expand_albums option is split into
- auto_expand_albums_follow
- auto_expand_albums_search
- auto_expand_albums_selcur
libopenmpt 0.2-beta19 (2016-07-23)
[Change] libopenmpt now uses C++14 [[deprecated]] attribute
instead of compiler-specific solutions when appropriate.
[Change] libopenmpt C++ header now uses C++11 noexcept instead
of C++98 throw() exception specification when supported. throw()
is deprecated since C++11. This does not change API or ABI as
they are equivalent. Use LIBOPENMPT_ASSUME_CPLUSPLUS_NOEXCEPT
to override the default.
[Change] The preprocessor macro LIBOPENMPT_ANCIENT_COMPILER_STDINT
is gone. Please use LIBOPENMPT_ASSUME_CPLUSPLUS_CSTDINT instead.
Additionally, the typedefs moved from illegal namespace ::std
into somewhat less dangerous namespace ::openmpt::std. You can
test #ifdef LIBOPENMPT_QUIRK_NO_CSTDINT client-side to check
whether libopenmpt.hpp used the non-standard types. (Note: Of
all supported compilers, this change only affects the 3 compilers
with only limited support: MSVC 2008, GCC 4.1, GCC 4.2.)
[Bug] xmp-openmpt: Crash when viewing sample texts.
The public libopenmpt C++ header has auto-detection logic for
the used C++ standard now. In case your client code compiler
misreports the standard version or you want to override it for
other reasons, #define LIBOPENMPT_ASSUME_CPLUSPLUS to the value
of the standard version you desire to be used. There is also a
macro for each individual aspect, like
LIBOPENMPT_ASSUME_CPLUSPLUS_CSTDINT,
LIBOPENMPT_ASSUME_CPLUSPLUS_DEPRECATED,
LIBOPENMPT_ASSUME_CPLUSPLUS_NOEXCEPT which take precedence over
the general macro.
Portamento with sample swap behaviour was wrong for ProTracker
MODs.
Rewritten loader and various playback fixes for MDL files.
libopenmpt 0.2-beta18 broke import of many pattern commands in
DBM, DMF and ULT files.
Add pulseaudio option, default on to follow upstream.
libopenmpt 0.2-beta18 (2016-07-11)
[Change] openmpt123: Add PulseAudio output support. Autotools and
Makefile build systems now depend on libpulse and libpulse-simple
by default. Disable with --without-pulseaudio or NO_PULSEAUDIO=1
respectively. When enabled, PulseAudio will be the default output
driver,
[Change] xmp-openmpt: Settings are now stored in xmplay.ini like
with every other plugin.
[Regression] openmpt123: Support for FLAC < 1.3.0 has been removed.
FLAC before 1.3.0 is broken beyond repair as it provides assert.h
in the include path.
[Bug] Generated pkg-config file libopenmpt.pc by both Makefile and
Autotools build systems was totally broken.
[Bug] libopenmpt no longer uses the non-thread-safe global std::rand()
function.
[Bug] Sample loops in GDM modules did not work when using Emscripten.
[Bug] XM and MO3 loaders could crash due to unaligned memory accesses.
[Bug] Fixed incorrect handling of custom MPTM tunings on big endian
platforms.
[Bug] Fixed various problems found with clang 3.8 static analyzer,
address sanitizer and undefined behaviour sanitizer.
[Bug] File header probing functionality was broken for most formats.
[Bug] With non-seekable streams, the entire file was almost always
cached even if it was not of any supported module type.
Seeking in allsubsongs-mode now works correctly.
openmpt123: Added subsong support.
Various playback fixes for 669, IT, MT2 and MTM files.
Some MOD files with more than 128 patterns (e.g. NIETNU.MOD) were
not loaded correctly.
A new example libopenmpt_example_c_probe has been added which
demonstrates the usage and flexibility of openmpt_could_open_propability()
in the C API under various constraints.
This Opus 1.1.3 release focuses mainly on optimizations and bug
fixes. Changes include:
* Neon optimizations improving performance on ARMv7 and ARMv8 by up to 15%
* Fixes some issues with 16-bit platforms (e.g. TI C55x)
* Fixes to comfort noise generation (CNG)
* Documenting that PLC packets can also be 2 bytes
* Includes experimental ambisonics work (--enable-ambisonics)
Version 1.3.2 -- July 9, 2016
=============================
- Fixed crash on an invalid audio file that FFmpeg could not decode.
- Fixed build on Ubuntu 14.04 with libav.
Speech Dispatcher:
Key features:
* Common interface to different TTS engines
* Handling concurrent synthesis requests -- requests may come
assynchronously from multiple sources within an application and/or
from different applications
* Subsequent serialization, resolution of conflicts and priorities of
incomming requests
* Context switching -- state is maintained for each client connection
independently, event for connections from within one application
* High-level client interfaces for popular programming languages
* Common sound output handling -- audio playback is handled by Speech
Dispatcher rather than the TTS engine, since most engines have limited
sound output capabilities
What is a very high level GUI library to graphics, Speech Dispatcher is
to speech synthesis. The application neither needs to talk to the devices
directly nor to handle concurrent access, sound output and other tricky
aspects of the speech subsystem.
-----------------------------
Version 3.9:
* support full covariance for 'gmmp' command.
* add -B, -c1 and -c2 option to 'gmmp' command to specify block size and structure of covariance matrix.
* change temporary file path for csh.
* bug fixes.
Version 3.8:
* add 'c2ndps' command for transform from cepstrum to negative derivative of phrase spectrum.
* add 'mgclsp2sp' command for transform from LSP to spectrum.
* add 'ndps2c' command for transform from negative derivative of phrase spectrum to cepstrum.
* add 'wavjoin' command to save stereo wav file.
* add 'wavsplit' command to load stereo wav file.
* add -V option to 'dtw' command for loading DTW results.
* add -e option to calculate inverse matrix stably for 'delta' and 'vc' commands.
* support MAP estimation in 'gmm' command.
* replace -i option to -q option for 'lsp2lpc,' 'lspcheck,' and 'mgclsp2mgc' commands.
* change -c option of 'mlsacheck' command.
* update swipe and hts_engine API.
* bug fixes.
Version 3.7:
* add 'vc' command to perform GMM-based voice conversion.
* add 'lsp2sp' command to transform LSP coefficients to spectrum.
* add -R option to 'mlsacheck' command to specify threshold value.
* add -f option to 'gmmp' command to specify full covariance matrix.
* add -M, -c1 and -c2 option to 'gmm' command to specify block size and structure of covariance matrix.
* add -n option to 'delta' command to specify order of regression polynomial.
* add -magic and -MAGIC option to 'rmse' command to delete and substitute magic number.
* add -n and -t option to 'rmse' command to specify order and number of vector, respectively.
* add -POWX, -LOGX option, and new constant (semitone) to 'sopr' command.
* add -l option to 'decimate' and 'interpolate' command to specify length of vector.
* add -g and -G option to 'lspcheck' command to check value of gain.
* add -L option to 'lspcheck' command to specify log gain.
* add -n option to 'mgc2mgclsp' command to specify split number of unit circle.
* add -p and -d to 'mgc2mgclsp' command to specify maximum number and end condition of interpolation.
* add -x 16, 22, 24 and 48 option of 'glogsp' and 'grlogsp' command to specify more x-axis scales.
* add filter coefficients for 7:4 down-sampling, 3:5 and 7:8 up-sampling.
* unify option to specify log gain into -L option.
* fix -c option of 'mlsacheck' command to specify the type of modification of filter coefficients.
* bug fixes.
Version 1.0.27 (2016-06-19)
* Fix an SF_INFO seekable flag regression introduced in 1.0.26.
* Fix potential infinite loops on malformed input files.
* Add string metadata read/write for CAF and RF64.
* Add handling of CUE chunks.
* Fix enaian-ness issues in PAF files.
* Minor bug fixes and improvements.