= Media Objects = [[TracNav(Python_SIP/TOC)]] == WAV Player == One WAV player object is used to play one WAV file. API's related to player: * [http://www.pjsip.org/python/pjsua.htm#Lib-create_player lib.create_player()] to create the WAV player. This returns the player ID. * [http://www.pjsip.org/python/pjsua.htm#Lib-player_get_slot lib.player_get_slot()] to get the player's conference bridge's slot number. * [http://www.pjsip.org/python/pjsua.htm#Lib-player_set_pos lib.player_set_pos()] to set the file playback position. The typical use of this function probably is to rewind the playback to the starting position. * [http://www.pjsip.org/python/pjsua.htm#Lib-player_destroy lib.player_destroy()] to destroy the player. This will also implicitly remove all connections to/from the player object in the bridge. == WAV Playlist == The WAV playlist can be set to play multiple WAV files in sequence. The playlist provides smooth transition between files. API related to playlist object: * [http://www.pjsip.org/python/pjsua.htm#Lib-create_playlist lib.create_playlist()] to create the playlist, with the list of WAV files specified as the argument. This returns the playlist ID. * [http://www.pjsip.org/python/pjsua.htm#Lib-playlist_get_slot lib.playlist_get_slot()] to get the playlist's conference bridge's slot number. * [http://www.pjsip.org/python/pjsua.htm#Lib-playlist_destroy lib.playlist_destroy()] to destroy the playlist. This will also implicitly remove all connections to/from the playlist object in the bridge. == WAV Recorder == The WAV recorder takes audio input and write it to a WAV file. API's related to WAV recorder: * [http://www.pjsip.org/python/pjsua.htm#Lib-create_recorder lib.create_recorder()] to create the recorder. This returns the recorder ID. * [http://www.pjsip.org/python/pjsua.htm#Lib-recorder_get_slot lib.recorder_get_slot()] to get the recorder's conference bridge's slot number. * [http://www.pjsip.org/python/pjsua.htm#Lib-recorder_destroy lib.recorder_destroy()] to destroy the recorder. This will also implicitly remove all connections to/from the recorder object in the bridge. == Call == Call is also a media object. Media operations to the call will be explained in the next chapter.