-
Notifications
You must be signed in to change notification settings - Fork 6k
Closed
Labels
Description
Hello, I'm working on a relatively simple TV and for this I chose ExoPlayer. Now there is a question about reading subtitles from video files. To initialize the player, I use the following code:
DefaultBandwidthMeter bandwidthMeter = new DefaultBandwidthMeter(mainHandler,null);
DataSource dataSource = new DefaultUriDataSource(getContext(), bandwidthMeter, userAgent);
sampleSource = new ExtractorSampleSource(Uri.parse(url), dataSource, allocator, 200 * 64 * 1024);
MediaCodecVideoTrackRenderer videoRenderer = new MediaCodecVideoTrackRenderer(getContext(),sampleSource,
MediaCodec.VIDEO_SCALING_MODE_SCALE_TO_FIT,
1500,
mainHandler,
new MediaCodecVideoTrackRenderer.EventListener() {
@Override
public void onDroppedFrames(int i, long l) {
}
@Override
public void onVideoSizeChanged(int videoWidth, int videoHeight, int i2, float v) {
currentVideoParameters = new VideoParameters(videoWidth,videoHeight,v);
invalidateVideoSize();
}
@Override
public void onDrawnToSurface(Surface surface) {
}
@Override
public void onDecoderInitializationError(MediaCodecTrackRenderer.DecoderInitializationException e) {
}
@Override
public void onCryptoError(MediaCodec.CryptoException e) {
}
@Override
public void onDecoderInitialized(String s, long l, long l1) {
}
},5);
audioRenderer = new MediaCodecAudioTrackRenderer(sampleSource);
// this line was added to read subtitles
TrackRenderer textRenderer = new TextTrackRenderer(sampleSource,this,mainHandler.getLooper());
mMediaPlayer.prepare(videoRenderer, audioRenderer, textRenderer);
mMediaPlayer.sendMessage(videoRenderer, MediaCodecVideoTrackRenderer.MSG_SET_SURFACE, surfaceView.getHolder().getSurface());
Video and audio is playing fine, but the subtitles are not working. If I call getTrackCount(TEXT_RENDER) it gives me 0, but in video file there are three tracks of subtitles. I am not good in any codecs or in the principles of playing, I basically application programmer;
For testing I'm using this video file: http://www.ex.ua/get/201122663
How I can force to work subtitles in my project? Thanks and sorry for my English.
Reactions are currently unavailable