Background Music

Mix background music with your live audio stream using ConoStreamMusicMixer.

Initialize Music Mixer

ConoStreamMusicMixer musicMixer = new ConoStreamMusicMixer(manager, context);

Play Music

// From local file
musicMixer.startMusic("/sdcard/Music/song.mp3");

// From assets
musicMixer.startMusicFromAssets("music/background.mp3");

// From URL
musicMixer.startMusicFromUrl("https://example.com/song.mp3");

Playback Controls

// Pause
musicMixer.pauseMusic();

// Resume
musicMixer.resumeMusic();

// Stop
musicMixer.stopMusic();

// Seek
musicMixer.seekTo(30000); // milliseconds

Volume Control

// Music volume (0.0 to 1.0)
musicMixer.setMusicVolume(0.5f);

// Microphone volume (0.0 to 1.0)
musicMixer.setMicrophoneVolume(1.0f);

// Get current volumes
float musicVol = musicMixer.getMusicVolume();
float micVol = musicMixer.getMicrophoneVolume();

Playback Status

// Check if playing
boolean isPlaying = musicMixer.isPlaying();

// Get current position
long position = musicMixer.getCurrentPosition();

// Get duration
long duration = musicMixer.getDuration();

Music Player Callback

musicMixer.setCallback(new MusicMixerCallback() {
    @Override
    public void onMusicStarted() {
        updatePlayButton(true);
    }

    @Override
    public void onMusicPaused() {
        updatePlayButton(false);
    }

    @Override
    public void onMusicEnded() {
        // Play next song or loop
        playNextSong();
    }

    @Override
    public void onError(String error) {
        showError(error);
    }
});

Cleanup

@Override
protected void onDestroy() {
    super.onDestroy();
    musicMixer.release();
}
⚠️

Background music is mixed with microphone audio and streamed to all participants. Adjust volumes to ensure voice is audible over music.