include/SDL_hints.h
changeset 10849 bc671e6906ae
parent 10812 a2d6288be599
child 10852 494d0f56ae7a
equal deleted inserted replaced
10848:7764aba2f211 10849:bc671e6906ae
   774  *
   774  *
   775  */
   775  */
   776 #define SDL_HINT_OPENGL_ES_DRIVER   "SDL_OPENGL_ES_DRIVER"
   776 #define SDL_HINT_OPENGL_ES_DRIVER   "SDL_OPENGL_ES_DRIVER"
   777 
   777 
   778 /**
   778 /**
       
   779  *  \brief  A variable controlling speed/quality tradeoff of audio resampling.
       
   780  *
       
   781  *  If available, SDL can use libsamplerate ( http://www.mega-nerd.com/SRC/ )
       
   782  *  to handle audio resampling. There are different resampling modes available
       
   783  *  that produce different levels of quality, possibly using more CPU.
       
   784  *
       
   785  *  If this hint isn't specified to a valid setting, or libsamplerate isn't
       
   786  *  available, SDL will act as if this hint was set to "fast".
       
   787  *
       
   788  *  Note that this is currently only applicable to resampling audio that is
       
   789  *  being written to a device for playback or audio being read from a device
       
   790  *  for capture. SDL_AudioCVT always uses the "fast" resampler (although this
       
   791  *  might change for SDL 2.1).
       
   792  *
       
   793  *  Most things can probably live with the "fast" resampler, but if quality
       
   794  *  is important or you can spare some CPU cycles, the other options are
       
   795  *  worth exploring!
       
   796  *
       
   797  *  libsamplerate's interpolators, that these hints map to, are explained here:
       
   798  *     http://www.mega-nerd.com/SRC/api_misc.html#Converters
       
   799  *
       
   800  *  This hint is only checked at audio subsystem init time and changes to it
       
   801  *  at other times are ignored.
       
   802  *
       
   803  *  This variable can be set to the following values:
       
   804  *
       
   805  *    "default"  - Use SDL's internal, resampler. (Default when not set. low quality, fast.)
       
   806  *    "linear" - Use libsamplerate's Linear interpolator (low quality, fast).
       
   807  *    "zero_order_hold" - Use libsamplerate's Zero Order Hold interpolator (low quality, fast).
       
   808  *    "sinc_fastest" - Use libsamplerate's fastest (lowest quality) sinc interpolator.
       
   809  *    "sinc_medium" - Use libsamplerate's medium quality sinc interpolator.
       
   810  *    "sinc_best" - Use libsamplerate's best quality sinc interpolator.
       
   811  */
       
   812 #define SDL_HINT_AUDIO_RESAMPLER_MODE   "SDL_AUDIO_RESAMPLER_MODE"
       
   813 
       
   814 /**
   779  *  \brief  An enumeration of hint priorities
   815  *  \brief  An enumeration of hint priorities
   780  */
   816  */
   781 typedef enum
   817 typedef enum
   782 {
   818 {
   783     SDL_HINT_DEFAULT,
   819     SDL_HINT_DEFAULT,