package com.exovlc;
import org.videolan.libvlc.LibVLC;
import android.os.Handler;
import com.google.android.exoplayer.ExoPlaybackException;
import com.google.android.exoplayer.MediaCodecAudioTrackRenderer;
public class VLCAudioTrackRenderer extends VLCTrackRenderer {
public VLCAudioTrackRenderer(VLCSampleSource source, Handler eventHandler,
MediaCodecAudioTrackRenderer.EventListener eventListener, LibVLC vlc) {
super(source, eventHandler, eventListener, vlc);
}
@Override
protected boolean isSupportedMime(String mimeType) {
System.out.println("VLCAudioTrackRenderer.isSupportedMime(" + mimeType + ")");
return com.exovlc.ExoVlcUtil.isVLCAudioMimeType(mimeType);
}
public void handleMessage(int messageType, Object message) throws ExoPlaybackException {
if (messageType == com.google.android.exoplayer.MediaCodecAudioTrackRenderer.MSG_SET_VOLUME) {
/* the volume in percents (0 = mute, 100 = 0dB) */
int v = com.exovlc.ExoVlcUtil.media2vlcVolume((Float) message);
if (vlc.setVolume(v) == -1)
ExoVlcUtil.log(this, "Err when setting VLC audio level :" + v);
;
} else {
super.handleMessage(messageType, message);
}
}
@Override
protected void onStarted() throws ExoPlaybackException {
if (!source.hasVideo()) // TODO : depending on selected track !!
super.onStarted();
}
}