Agora Java API Reference for Android
Classes | Public Member Functions | List of all members
io.agora.musiccontentcenter.IAgoraMusicPlayer Interface Reference
Inheritance diagram for io.agora.musiccontentcenter.IAgoraMusicPlayer:
io.agora.mediaplayer.IMediaPlayer

Classes

enum  MusicPlayMode
 Playback modes for music resources. More...
 

Public Member Functions

int open (long songCode, long startPos)
 Opens a music resource by its resource ID. More...
 
int open (String url, long startPos)
 Opens a music resource via URL. More...
 
int destroy ()
 Destroys the music player. More...
 
String getPlaySrc ()
 Gets the identifier or URL of the currently playing music resource. More...
 
int stop ()
 Stops playing the music resource. More...
 
int setPlayMode (MusicPlayMode mode)
 Sets the playback mode for a music track. More...
 
- Public Member Functions inherited from io.agora.mediaplayer.IMediaPlayer
int getMediaPlayerId ()
 Gets the ID of the media player. More...
 
int open (Uri uri, long startPos)
 Opens a media file through a URI address. More...
 
int openWithMediaSource (MediaPlayerSource source)
 Opens a media file and configures the playback scenarios. More...
 
int play ()
 Plays the media file. More...
 
int pause ()
 Pauses the playback. More...
 
int resume ()
 Resumes playing the media file. More...
 
int seek (long newPos)
 Seeks to a new playback position. More...
 
int setAudioPitch (int pitch)
 Sets the pitch of the current media resource. More...
 
int mute (boolean muted)
 Sets whether to mute the media file. More...
 
boolean getMute ()
 Reports whether the media resource is muted. More...
 
int adjustPlayoutVolume (int volume)
 Adjusts the local playback volume. More...
 
int getPlayoutVolume ()
 Gets the local playback volume. More...
 
long getPlayPosition ()
 Gets current local playback progress. More...
 
long getDuration ()
 Gets the duration of the media resource. More...
 
int getAudioBufferDelay ()
 Gets the audio buffer delay when playing the media file. More...
 
Constants.MediaPlayerState getState ()
 Gets current playback state. More...
 
int getStreamCount ()
 Gets the number of the media streams in the media resource. More...
 
int setView (View videoView)
 Sets the view. More...
 
int setRenderMode (int mode)
 Sets the render mode of the media player. More...
 
MediaStreamInfo getStreamInfo (int index)
 Gets the detailed information of the media stream. More...
 
int setLoopCount (int loopCount)
 Sets the loop playback. More...
 
int setPlaybackSpeed (int speed)
 Sets the channel mode of the current audio file. More...
 
int selectAudioTrack (int index)
 Selects the audio track used during playback. More...
 
int selectMultiAudioTrack (int playoutTrackIndex, int publishTrackIndex)
 Selects the audio tracks that you want to play on your local device and publish to the channel respectively. More...
 
int setPlayerOption (String key, int value)
 Sets media player options. More...
 
int setPlayerOptionString (String key, String value)
 Sets media player options. More...
 
int takeScreenshot (String filename)
 
int selectInternalSubtitle (int index)
 
int setExternalSubtitle (String url)
 
int adjustPublishSignalVolume (int volume)
 Adjusts the volume of the media file for publishing. More...
 
int getPublishSignalVolume ()
 Gets the volume of the media file for publishing. More...
 
int switchSrc (String src, boolean syncPts)
 Switches the media resource being played. More...
 
int preloadSrc (String src, long startPos)
 Preloads a media resource. More...
 
int playPreloadedSrc (String src)
 Plays preloaded media resources. More...
 
int unloadSrc (String src)
 Unloads media resources that are preloaded. More...
 
int registerPlayerObserver (IMediaPlayerObserver playerObserver)
 Registers a media player observer. More...
 
int unRegisterPlayerObserver (IMediaPlayerObserver playerObserver)
 Releases a media player observer. More...
 
int registerAudioFrameObserver (IMediaPlayerAudioFrameObserver audioFrameObserver, int mode)
 Registers an audio frame observer object. More...
 
int registerMediaPlayerAudioSpectrumObserver (IAudioSpectrumObserver observer, int intervalInMS)
 
int unregisterMediaPlayerAudioSpectrumObserver (IAudioSpectrumObserver observer)
 
int setAudioDualMonoMode (int mode)
 Sets the channel mode of the current audio file. More...
 
int registerVideoFrameObserver (IMediaPlayerVideoFrameObserver videoFrameObserver)
 Registers a video frame observer object. More...
 
int openWithAgoraCDNSrc (String src, long startPos)
 
int getAgoraCDNLineCount ()
 
int switchAgoraCDNLineByIndex (int index)
 
int getCurrentAgoraCDNIndex ()
 
int enableAutoSwitchAgoraCDN (boolean enable)
 
int renewAgoraCDNSrcToken (String token, long ts)
 
int switchAgoraCDNSrc (String src, boolean syncPts)
 
int setSpatialAudioParams (SpatialAudioParams params)
 Enables or disables the spatial audio effect for the media player. More...
 

Member Function Documentation

◆ open() [1/2]

int io.agora.musiccontentcenter.IAgoraMusicPlayer.open ( long  songCode,
long  startPos 
)

Opens a music resource by its resource ID.

Before calling this method, make sure the music resource you want to play has been fully loaded. You can call the isPreloaded method to check whether the music resource has been preloaded, or listen for the onPreLoadEvent callback. After calling this method, the onPlayerStateChanged callback will be triggered. Once you receive a playback state report of PLAYER_STATE_OPEN_COMPLETED, you can call the play method to play the media file.

Note
If the music resource you want to open is protected by digital rights management, you must use this method to open it. For music resources that are not protected by digital rights management, you can choose to open them using either this method or the open(String url, long startPos) method in the IMediaPlayer class.
Parameters
songCodeThe resource ID of the music resource, used to identify the music.
startPosThe starting playback position in milliseconds. The default value is 0.
Returns
  • 0: The method call was successful.
  • < 0: The method call failed. Refer to Error Codes for details and troubleshooting suggestions.

◆ open() [2/2]

int io.agora.musiccontentcenter.IAgoraMusicPlayer.open ( String  url,
long  startPos 
)

Opens a music resource via URL.

Calling this method triggers the onPlayerStateChanged callback. After receiving a report that the playback state is PLAYER_STATE_OPEN_COMPLETED, you can call the play method to play the media file.

Note
If the music resource you want to open is protected by digital rights, you must use this method to open it. For music resources that are not protected by digital rights, you can choose to open them using this method or the open(String url, long startPos) method under the IMediaPlayer class.
Parameters
urlThe path to the music resource, supporting both local and online files.
startPosThe starting position for playback in milliseconds. Default is 0.
Returns
  • 0: Method call succeeded.
  • < 0: Method call failed. See Error Codes for details and troubleshooting suggestions.

Implements io.agora.mediaplayer.IMediaPlayer.

◆ destroy()

int io.agora.musiccontentcenter.IAgoraMusicPlayer.destroy ( )

Destroys the music player.

Deprecated:
use IAgoraMusicContentCenter#destroyMusicPlayer(IAgoraMusicPlayer player) instead.
Returns
  • 0: The method call succeeds.
  • < 0: The method call fails. See Error Codes for details and troubleshooting suggestions.

Implements io.agora.mediaplayer.IMediaPlayer.

◆ getPlaySrc()

String io.agora.musiccontentcenter.IAgoraMusicPlayer.getPlaySrc ( )

Gets the identifier or URL of the currently playing music resource.

You need to call this method after opening the music resource:

Returns
  • If the method call succeeds, returns the identifier or URL of the music resource.
  • If the method call fails, returns NULL.

Implements io.agora.mediaplayer.IMediaPlayer.

◆ stop()

int io.agora.musiccontentcenter.IAgoraMusicPlayer.stop ( )

Stops playing the music resource.

Returns
  • 0: The method call succeeds.
  • < 0: The method call fails. See Error Codes for details and troubleshooting tips.

Implements io.agora.mediaplayer.IMediaPlayer.

◆ setPlayMode()

int io.agora.musiccontentcenter.IAgoraMusicPlayer.setPlayMode ( MusicPlayMode  mode)

Sets the playback mode for a music track.

You can call this method to enable the original vocals, accompaniment, or vocal guide. If you do not call this method to set the mode, the accompaniment is played by default; if the music resource does not include accompaniment, the original vocals are played. Applicable scenarios: In entertainment scenarios such as online karaoke or talent shows, if you need to play licensed music provided by the Agora Content Center, you can call this method to set the playback mode. Call timing: You must call this method after createMusicPlayer.

Note
You can get detailed information about the music resource through the onMusicCollectionResult callback, and use the list parameter in the callback to check which playback modes are supported for the licensed music.
Parameters
modeThe playback mode. See MusicPlayMode for details.
Returns
  • 0: The method call succeeds.
  • < 0: The method call fails. See Error Codes for details and troubleshooting.
    • -2: Invalid parameter. Please reset the parameter.