Module: SDL2::Mixer::MusicChannel
- Defined in:
- mixer.c,
mixer.c
Overview
This module provides the functions to play Music.
Class Method Summary collapse
-
.fade_in(music, loops, ms, pos = 0) ⇒ nil
Play music loops times with fade-in effect.
-
.fade_out(ms) ⇒ nil
Halt the music playback with fade-out effect.
-
.fading ⇒ Integer
Get the fading state of the music playback.
-
.halt ⇒ nil
Halt the music playback.
-
.pause ⇒ nil
Pause the playback of the music channel.
-
.pause? ⇒ Boolean
Return true if a music playback is paused.
-
.play(music, loops) ⇒ nil
Play music loops times.
-
.play? ⇒ Boolean
Return true if a music is playing.
-
.playing_music ⇒ SDL2::Mixer::Music?
Get the Music object that most recently played.
-
.resume ⇒ nil
Resume the playback of the music channel.
-
.rewind ⇒ nil
Rewind the music to the start.
-
.set_position(position) ⇒ nil
Set the position of the currently playing music.
-
.volume ⇒ Integer
Get the volume of the music channel.
-
.volume=(vol) ⇒ void
Set the volume of the music channel.
Class Method Details
.fade_in(music, loops, ms, pos = 0) ⇒ nil
734 735 736 737 738 739 740 741 742 743 |
# File 'mixer.c', line 734
static VALUE MusicChannel_s_fade_in(int argc, VALUE* argv, VALUE self)
{
VALUE music, loops, fade_in_ms, pos;
rb_scan_args(argc, argv, "31", &music, &loops, &fade_in_ms, &pos);
HANDLE_MIX_ERROR(Mix_FadeInMusicPos(Get_Mix_Music(music), NUM2INT(loops),
NUM2INT(fade_in_ms),
pos == Qnil ? 0 : NUM2DBL(pos)));
playing_music = music;
return Qnil;
}
|
.fade_out(ms) ⇒ nil
839 840 841 842 |
# File 'mixer.c', line 839
static VALUE MusicChannel_s_fade_out(VALUE self, VALUE fade_out_ms)
{
Mix_FadeOutMusic(NUM2INT(fade_out_ms)); return Qnil;
}
|
.fading ⇒ Integer
Get the fading state of the music playback.
The return value is one of the following:
-
NO_FADING - not fading in, and fading out
-
FADING_IN - fading in
-
FADING_OUT - fading out
879 880 881 882 |
# File 'mixer.c', line 879
static VALUE MusicChannel_s_fading(VALUE self)
{
return INT2NUM(Mix_FadingMusic());
}
|
.halt ⇒ nil
Halt the music playback.
827 828 829 830 |
# File 'mixer.c', line 827
static VALUE MusicChannel_s_halt(VALUE self)
{
Mix_HaltMusic(); return Qnil;
}
|
.pause ⇒ nil
Pause the playback of the music channel.
781 782 783 784 |
# File 'mixer.c', line 781
static VALUE MusicChannel_s_pause(VALUE self)
{
Mix_PauseMusic(); return Qnil;
}
|
.pause? ⇒ Boolean
Return true if a music playback is paused.
859 860 861 862 |
# File 'mixer.c', line 859
static VALUE MusicChannel_s_pause_p(VALUE self)
{
return INT2BOOL(Mix_PausedMusic());
}
|
.play(music, loops) ⇒ nil
709 710 711 712 713 714 |
# File 'mixer.c', line 709
static VALUE MusicChannel_s_play(VALUE self, VALUE music, VALUE loops)
{
HANDLE_MIX_ERROR(Mix_PlayMusic(Get_Mix_Music(music), NUM2INT(loops)));
playing_music = music;
return Qnil;
}
|
.play? ⇒ Boolean
Return true if a music is playing.
849 850 851 852 |
# File 'mixer.c', line 849
static VALUE MusicChannel_s_play_p(VALUE self)
{
return INT2BOOL(Mix_PlayingMusic());
}
|
.playing_music ⇒ SDL2::Mixer::Music?
Get the SDL2::Mixer::Music object that most recently played.
Return nil if no music object is played yet.
891 892 893 894 |
# File 'mixer.c', line 891
static VALUE MusicChannel_s_playing_music(VALUE self)
{
return playing_music;
}
|
.resume ⇒ nil
Resume the playback of the music channel.
794 795 796 797 |
# File 'mixer.c', line 794
static VALUE MusicChannel_s_resume(VALUE self)
{
Mix_ResumeMusic(); return Qnil;
}
|
.rewind ⇒ nil
Rewind the music to the start.
804 805 806 807 |
# File 'mixer.c', line 804
static VALUE MusicChannel_s_rewind(VALUE self)
{
Mix_RewindMusic(); return Qnil;
}
|
.set_position(position) ⇒ nil
816 817 818 819 820 |
# File 'mixer.c', line 816
static VALUE MusicChannel_s_set_position(VALUE self, VALUE position)
{
HANDLE_MIX_ERROR(Mix_SetMusicPosition(NUM2DBL(position)));
return Qnil;
}
|
.volume ⇒ Integer
Get the volume of the music channel.
752 753 754 755 |
# File 'mixer.c', line 752
static VALUE MusicChannel_s_volume(VALUE self)
{
return INT2FIX(Mix_VolumeMusic(-1));
}
|
.volume=(vol) ⇒ void
767 768 769 770 771 |
# File 'mixer.c', line 767
static VALUE MusicChannel_s_set_volume(VALUE self, VALUE volume)
{
Mix_VolumeMusic(NUM2INT(volume));
return volume;
}
|