author Vitaly Novichkov
Mon, 23 Dec 2019 14:01:02 +0300
changeset 1119 24ca9a03d51c
parent 901 253f50984a9a
permissions -rw-r--r--
introduce MetaTags api

In some games or players it would be possible to print a title and
some minor tags about playing music.

There are 5 added functions which can give meta-tags from music if
they are available or supported by a codec:
- Mix_GetMusicTitle() gives song title.
Unlike Mix_GetMusicTitleTag, returns filename if tag is blank.
- Mix_GetMusicTitleTag() gives song title
- Mix_GetMusicArtistTag() gives artist name
- Mix_GetMusicAlbumTag() gives album name
- Mix_GetMusicCopyrightTag() gives copyright tag
     2 SDL_mixer 2.0
     4 The latest version of this library is available from:
     7 Due to popular demand, here is a simple multi-channel audio mixer.
     8 It supports 8 channels of 16 bit stereo audio, plus a single channel
     9 of music.
    11 See the header file SDL_mixer.h and the examples playwave.c and playmus.c
    12 for documentation on this mixer library.
    14 The mixer can currently load Microsoft WAVE files and Creative Labs VOC
    15 files as audio samples, it can load FLAC files with libFLAC, it can load
    16 Ogg Vorbis files with Ogg Vorbis or Tremor libraries, it can load MP3 files
    17 using mpg123 or libmad, and it can load MIDI files with Timidity,
    18 FluidSynth, and natively on Windows, Mac OSX, and Linux, and finally it can
    19 load the following file formats via ModPlug or MikMod: .MOD .S3M .IT .XM.
    21 Tremor decoding is disabled by default; you can enable it by passing
    22 	--enable-music-ogg-tremor
    23 to configure, or by defining MUSIC_OGG and OGG_USE_TREMOR.
    25 libmad decoding is disabled by default; you can enable it by passing
    26 	--enable-music-mp3-mad
    27 to configure, or by defining MUSIC_MP3_MAD
    28 vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
    29 WARNING: The license for libmad is GPL, which means that in order to
    30          use it your application must also be GPL!
    31 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    33 The process of mixing MIDI files to wave output is very CPU intensive,
    34 so if playing regular WAVE files sound great, but playing MIDI files
    35 sound choppy, try using 8-bit audio, mono audio, or lower frequencies.
    37 To play MIDI files using FluidSynth, you'll need to set the SDL_SOUNDFONTS
    38 environment variable to a Sound Font 2 (.sf2) file containing the musical
    39 instruments you want to use for MIDI playback.
    40 (On some Linux distributions you can install the fluid-soundfont-gm package)
    42 To play MIDI files using Timidity, you'll need to get a complete set of
    43 GUS patches from:
    45 and unpack them in /usr/local/lib under UNIX, and C:\ under Win32.
    47 iOS:
    48 In order to use this library on iOS, you should include the SDL.xcodeproj
    49 and Xcode-iOS/SDL_mixer.xcodeproj in your application, add the SDL/include
    50 and SDL_mixer directories to your "Header Search Paths" setting, then add the
    51 libSDL2.a and libSDL2_mixer.a to your "Link Binary with Libraries" setting.
    53 This library is under the zlib license, see the file "COPYING.txt" for details.