From: Tobias Leich Date: Tue, 23 Feb 2010 22:16:07 +0000 (+0100) Subject: docs for SDL::Mixer done X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=3bc8c797322373e5107d166c9c3228eedf807af0;p=sdlgit%2FSDL-Site.git docs for SDL::Mixer done --- diff --git a/pages/SDL-Mixer.html-inc b/pages/SDL-Mixer.html-inc index eb9d1f7..f3bd509 100644 --- a/pages/SDL-Mixer.html-inc +++ b/pages/SDL-Mixer.html-inc @@ -42,55 +42,107 @@ in and out.

init

-
 int SDL::Mixer::init(flags)
+
 my $init_flags = SDL::Mixer::init( $flags );
 
 
-

Note: Only available for SDL::Mixer >= 1.2.10

+

Loads dynamic libraries and prepares them for use. Flags should be one or more flags from init flags OR'd together. +It returns the flags successfully initialized, or 0 on failure.

+

Example:

+
 use SDL::Mixer;
+
+ my $init_flags = SDL::Mixer::init( MIX_INIT_MP3 | MIX_INIT_MOD | MIX_INIT_FLAC | MIX_INIT_OGG );
+
+ print("We have MP3 support!\n")  if $init_flags & MIX_INIT_MP3;
+ print("We have MOD support!\n")  if $init_flags & MIX_INIT_MOD;
+ print("We have FLAC support!\n") if $init_flags & MIX_INIT_FLAC;
+ print("We have OGG support!\n")  if $init_flags & MIX_INIT_OGG;
+
+
+

Flags:

+
    +
  • MIX_INIT_MP3
  • +
  • MIX_INIT_MOD
  • +
  • MIX_INIT_FLAC
  • +
  • MIX_INIT_OGG
  • +
+ +

Note: Only available for SDL_mixer >= 1.2.10

quit

-
 void SDL::Mixer::quit()
+
 SDL::Mixer::quit();
 
 
-

Note: Only available for SDL::Mixer >= 1.2.10

+

This function unloads the liraries previously loaded with init().

+

Note: Only available for SDL_mixer >= 1.2.10

linked_version

-
 const SDL_version * SDL::Mixer::linked_version ()
+
 $version = SDL::Mixer::linked_version();
+
+
+

linked_version gives you the major-, minor-, and patchlevel for SDL_mixer. This way you can check if e.g. init() and quit() +are available.

+

Example:

+
 use SDL::Mixer;
+ use SDL::Version;
+
+ my $version = SDL::Mixer::linked_version();
+
+ printf("%d.%d.%d\n", $version->major, $version->minor, $version->patch); # prints "1.2.8" for me
 
 

open_audio

-
 int SDL::Mixer::open_audio ( frequency, format, channels, chunksize )
+
 my $audio_opened = SDL::Mixer::open_audio( $frequency, $format, $channels, $chunksize );
+
+
+

open_audio will initialize SDL_mixer if it is not yet initialized, see note. SDL_mixer may not be able to provide the exact specifications +your provided, however it will automatically translate between the expected format and the real one. You can retrieve the real format using +query_spec.

+

Returns 0 on success, -1 on error.

+

Note: You must not use AUDIO_S16, AUDIO_U16, AUDIO_S16LSB, or AUDIO_U16LSB. They are not portable, and SDL will not return an +error code when they fail. The result will be a horrible staticy noise. You can usually use AUDIO_S16SYS, though not always. Future versions +of SDL should take this parameter only as a hint, then read back the value that the OS (for example, OSS or ALSA) has chosen to use in case the +desired audio type is not supported.

+

Note: When already initialized, this function will not re-initialize SDL_mixer, nor fail. It will merely increment the number of times +SDL::Mixer::close_audio must be called to actually get it to uninitialize. This serves as a very simplistic method for multiple application +components to use SDL_mixer without necessitating a great deal of inter-component awareness. Be warned however that in such a situation, the +latest components to initialize SDL_mixer will probably not get the SDL_mixer settings they're expecting.

+

Example:

+
 use SDL;
+ use SDL::Mixer;
+
+ printf("Error initializing SDL_mixer: %s\n", SDL::get_error()) unless SDL::Mixer::open_audio(44100, AUDIO_S16, 2, 1024) == 0;
 
 

close_audio

-
 void SDL::Mixer::close_audio ()
+
 SDL::Mixer::close_audio();
 
 
+

Close the mixer and halting all playing audio. This function does not return anything.

query_spec

-
 AV * SDL::Mixer::query_spec ()
-	CODE:
-		int freq, channels, status;
-		Uint16 format;
-		status = Mix_QuerySpec(&freq,&format,&channels);
-		RETVAL = (AV*)sv_2mortal((SV*)newAV());
-		av_push(RETVAL,newSViv(status));
-		av_push(RETVAL,newSViv(freq));
-		av_push(RETVAL,newSViv(format));
-		av_push(RETVAL,newSViv(channels));
-	OUTPUT:
-		RETVAL
+
 my @query_spec = @{ SDL::Mixer::query_spec() };
+
+
+

Find out what the actual audio device parameters are. +This function returns 1 as first array element (status) if the audio has been opened, 0 otherwise.

+

Example:

+
 use SDL::Mixer;
+
+ my ($status, $freq, $format, $channels) = @{ SDL::Mixer::query_spec() };
+
+ printf("%s, %s, %s, %s\n", $status, $freq, $format, $channels);
 
 
@@ -102,7 +154,7 @@ in and out.

SEE ALSO

Top

-

perl, SDL::Music and SDL::Sound.

+

perl, SDL::Mixer::Channels, SDL::Mixer::Effects, SDL::Mixer::Groups, SDL::Mixer::Music.

\ No newline at end of file diff --git a/pages/documentation.html-inc b/pages/documentation.html-inc index bb1e114..f6a72ef 100644 --- a/pages/documentation.html-inc +++ b/pages/documentation.html-inc @@ -1,2 +1,2 @@
-

Documentation (latest development branch)

Core
thumbSDL- Simple DirectMedia Layer for Perl
thumbSDL::Time- a SDL perl extension for managing timers.
Audio
thumbSDL::Audio- SDL Bindings for Audio
Structure
thumbSDL::AudioCVT- Audio Conversion Structure
thumbSDL::AudioSpec- SDL Bindings for structure SDL::AudioSpec
CDROM
thumbSDL::CDROM- SDL Bindings for the CDROM device
Structure
thumbSDL::CD- SDL Bindings for structure SDL_CD
thumbSDL::CDTrack- SDL Bindings for structure SDL_CDTrack
Events
thumbSDL::Events- Bindings to the Events Category in SDL API
Structure
thumbSDL::Event- General event structure
Joystick
thumbSDL::Joystick- SDL Bindings for the Joystick device
Mouse
thumbSDL::Mouse- SDL Bindings for the Mouse device
Structure
thumbSDL::Cursor- Mouse cursor structure
Structure
thumbSDL::Version- SDL Bindings for structure SDL_Version
Video
thumbSDL::Video- Bindings to the video category in SDL API
Structure
thumbSDL::Color- Format independent color description
thumbSDL::Overlay- YUV Video overlay
thumbSDL::Palette- Color palette for 8-bit pixel formats
thumbSDL::PixelFormat- Stores surface format information
thumbSDL::Rect- Defines a rectangular area
thumbSDL::Surface- Graphic surface structure.
thumbSDL::VideoInfo- Video Target Information

Cookbook
thumbSDL::Cookbook
thumbSDL::Cookbook::PDL

Extension
thumbSDL::App- a SDL perl extension

GFX
thumbSDL::GFX::Framerate- framerate calculating functions
thumbSDL::GFX::Primitives- basic drawing functions
Structure
thumbSDL::GFX::FPSManager- data structure used by SDL::GFX::Framerate

Image
thumbSDL::Image- Bindings for the SDL_Image library

Mixer
thumbSDL::Mixer- Sound and music functions
thumbSDL::Mixer::Channels- SDL::Mixer channel functions and bindings
thumbSDL::Mixer::Effects- SDL_Mixer sound effect functions and bindings
thumbSDL::Mixer::Groups- SDL_Mixer groups functions and bindings
thumbSDL::Mixer::Music- SDL_Mixer music functions and bindings
Structure
thumbSDL::Mixer::MixChunk- SDL Bindings for structure SDL_MixChunk
thumbSDL::Mixer::MixMusic- SDL Bindings for structure SDL_MixMusic
TODO
Core
MultiThread
thumbSDL::MultiThread- Bindings to the MultiThread category in SDL API
Structure
thumbSDL::RWOps- SDL Bindings to SDL_RWOPs
GFX
thumbSDL::GFX::BlitFunc- blitting functions
thumbSDL::GFX::ImageFilter- image filtering functions
thumbSDL::GFX::Rotozoom- rotation and zooming functions for surfaces

Tutorials
thumbSDL::Tutorial- introduction to Perl SDL
thumbSDL::Tutorial::Animation
thumbSDL::Tutorial::Images
thumbSDL::Tutorial::LunarLander- a small tutorial on Perl SDL
thumbSDL::Tutorial::Pong- Get started pong
thumbSDL::Tutorial::Tetris- Let's Make Tetris

UNCATEGORIZED
thumbSDL::Font- a SDL perl extension
thumbSDL::Game::Palette- a perl extension
thumbSDL::MPEG- a SDL perl extension
thumbSDL::Music- a perl extension
thumbSDL::OpenGL- a perl extension
thumbSDL::SFont- a perl extension
thumbSDL::SMPEG- a SDL perl extension
thumbSDL::Sound- a perl extension
thumbSDL::TTFont- a SDL perl extension
thumbSDL::Tool::Font- a perl extension
thumbSDL::Tool::Graphic
+

Documentation (latest development branch)

Core
thumbSDL- Simple DirectMedia Layer for Perl
thumbSDL::Time- a SDL perl extension for managing timers.
Audio
thumbSDL::Audio- SDL Bindings for Audio
Structure
thumbSDL::AudioCVT- Audio Conversion Structure
thumbSDL::AudioSpec- SDL Bindings for structure SDL::AudioSpec
CDROM
thumbSDL::CDROM- SDL Bindings for the CDROM device
Structure
thumbSDL::CD- SDL Bindings for structure SDL_CD
thumbSDL::CDTrack- SDL Bindings for structure SDL_CDTrack
Events
thumbSDL::Events- Bindings to the Events Category in SDL API
Structure
thumbSDL::Event- General event structure
Joystick
thumbSDL::Joystick- SDL Bindings for the Joystick device
Mouse
thumbSDL::Mouse- SDL Bindings for the Mouse device
Structure
thumbSDL::Cursor- Mouse cursor structure
Structure
thumbSDL::Version- SDL Bindings for structure SDL_Version
Video
thumbSDL::Video- Bindings to the video category in SDL API
Structure
thumbSDL::Color- Format independent color description
thumbSDL::Overlay- YUV Video overlay
thumbSDL::Palette- Color palette for 8-bit pixel formats
thumbSDL::PixelFormat- Stores surface format information
thumbSDL::Rect- Defines a rectangular area
thumbSDL::Surface- Graphic surface structure.
thumbSDL::VideoInfo- Video Target Information

Cookbook
thumbSDL::Cookbook
thumbSDL::Cookbook::PDL

Extension
thumbSDL::App- a SDL perl extension

GFX
thumbSDL::GFX::Framerate- framerate calculating functions
thumbSDL::GFX::Primitives- basic drawing functions
Structure
thumbSDL::GFX::FPSManager- data structure used by SDL::GFX::Framerate

Image
thumbSDL::Image- Bindings for the SDL_Image library

Mixer
thumbSDL::Mixer- Sound and music functions
thumbSDL::Mixer::Channels- SDL::Mixer channel functions and bindings
thumbSDL::Mixer::Effects- SDL_Mixer sound effect functions and bindings
thumbSDL::Mixer::Groups- SDL_Mixer groups functions and bindings
thumbSDL::Mixer::Music- SDL_Mixer music functions and bindings
Structure
thumbSDL::Mixer::MixChunk- SDL Bindings for structure SDL_MixChunk
thumbSDL::Mixer::MixMusic- SDL Bindings for structure SDL_MixMusic
TODO
Core
MultiThread
thumbSDL::MultiThread- Bindings to the MultiThread category in SDL API
Structure
thumbSDL::RWOps- SDL Bindings to SDL_RWOPs
GFX
thumbSDL::GFX::BlitFunc- blitting functions
thumbSDL::GFX::ImageFilter- image filtering functions
thumbSDL::GFX::Rotozoom- rotation and zooming functions for surfaces

Tutorials
thumbSDL::Tutorial- introduction to Perl SDL
thumbSDL::Tutorial::Animation
thumbSDL::Tutorial::Images
thumbSDL::Tutorial::LunarLander- a small tutorial on Perl SDL
thumbSDL::Tutorial::Pong- Get started pong
thumbSDL::Tutorial::Tetris- Let's Make Tetris

UNCATEGORIZED
thumbSDL::Font- a SDL perl extension
thumbSDL::Game::Palette- a perl extension
thumbSDL::MPEG- a SDL perl extension
thumbSDL::Music- a perl extension
thumbSDL::OpenGL- a perl extension
thumbSDL::SFont- a perl extension
thumbSDL::SMPEG- a SDL perl extension
thumbSDL::Sound- a perl extension
thumbSDL::TTFont- a SDL perl extension
thumbSDL::Tool::Font- a perl extension
thumbSDL::Tool::Graphic