1 /*****************************************************************************
2 * audio.hpp: audio part of the media player
3 *****************************************************************************
4 * Copyright (C) 2010 the VideoLAN team
7 * Authors: RĂ©mi Duraffort <ivoire@videolan.org>
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation; either version 2 of the License, or
12 * (at your option) any later version.
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
19 * You should have received a copy of the GNU General Public License
20 * along with this program; if not, write to the Free Software
21 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
22 *****************************************************************************/
24 #ifndef LIBVLCPP_AUDIO_HPP
25 #define LIBVLCPP_AUDIO_HPP
27 #include <vlc/libvlc.h>
28 #include <vlc/libvlc_media.h>
29 #include <vlc/libvlc_media_player.h>
48 * @return true if the sound is muted
54 * @param mute: true to mute, otherwise unmute
56 void setMute( int mute );
59 * Get the current volume
60 * @return the current volume
66 * @param volume: the new volume
68 void setVolume( int volume );
72 * Get the current track
73 * @return the current audio track
78 * Get the number of audio tracks
79 * @return the number of audio tracks
85 * @param track: the audio track
87 void setTrack( int track );
90 * Get the current audio channel
91 * @return the current audio channel
96 * Set the audio channel
97 * @param channel: the new audio channel
99 void setChannel( int channel );
101 /** trackDescription */
104 /** The media player instance of libvlc */
105 libvlc_media_player_t *m_player;
108 * The constructor is private so only the MediaPlayer can create an instance of this class
112 /** Destructor only used by the MediaPlayer associated with this class */
116 * Set the media player. This function can only be used by the MediaPlayer class
117 * @param player: the media player
119 void setMediaPlayer( libvlc_media_player_t *player);
122 friend class MediaPlayer;
127 #endif // LIBVLCPP_AUDIO_HPP