How to play video even if subtitle urls are not accessible
- Dominant language
- Java
- Stars
- 21.9k
- Forks
- 6k
- PR merge metrics
- No merged PRs in 30d
Description
### [REQUIRED] Searched documentation and issues
Saw similar topic as part of ticket https://github.com/google/ExoPlayer/issues/6640
Need to know latest status for this
### [REQUIRED] Question
We have a video url and a subtitle url but the subtitle url is not accessible.
When we pass both the urls to exoplayer, exoplayer throws an error 400
The player then goes to idle state and does not start video playback because of this error
We are using exoplayer version **r2.11.3**
Logs from exoplayer
```
04-06 16:44:45.588 25422 25422 I ExoPlayerImpl: Init cb1e226 [ExoPlayerLib/2.11.3] [HWHRY-HF, HRY-AL00, HUAWEI, 29]
04-06 16:44:45.612 25422 25422 D EventLogger: seekStarted [eventTime=0.00, mediaPos=0.00, window=0]
04-06 16:44:45.613 25422 25422 D EventLogger: positionDiscontinuity [eventTime=0.00, mediaPos=0.00, window=0, SEEK]
04-06 16:44:45.616 25422 25422 D EventLogger: state [eventTime=0.01, mediaPos=0.00, window=0, false, BUFFERING]
04-06 16:44:46.302 25422 25422 D EventLogger: timeline [eventTime=0.69, mediaPos=0.00, window=0, periodCount=1, windowCount=1, reason=PREPARED
04-06 16:44:46.303 25422 25422 D EventLogger: period [7568.77]
04-06 16:44:46.303 25422 25422 D EventLogger: window [7568.77, true, false]
04-06 16:44:46.303 25422 25422 D EventLogger: ]
04-06 16:44:46.303 25422 25422 D EventLogger: seekProcessed [eventTime=0.69, mediaPos=0.00, window=0]
04-06 16:44:46.330 25422 25422 D EventLogger: mediaPeriodCreated [eventTime=0.72, mediaPos=0.00, window=0, period=0]
04-06 16:44:46.331 25422 25422 D EventLogger: loading [eventTime=0.72, mediaPos=0.00, window=0, period=0, true]
04-06 16:44:46.476 25422 25422 D EventLogger: decoderEnabled [eventTime=0.87, mediaPos=0.00, window=0, period=0, video]
04-06 16:44:46.484 25422 25422 D EventLogger: decoderEnabled [eventTime=0.88, mediaPos=0.00, window=0, period=0, audio]
04-06 16:44:46.486 25422 25422 D EventLogger: tracks [eventTime=0.88, mediaPos=0.00, window=0, period=0,
04-06 16:44:46.486 25422 25422 D EventLogger: Renderer:0 [
04-06 16:44:46.487 25422 25422 D EventLogger: Group:0, adaptive_supported=YES [
04-06 16:44:46.487 25422 25422 D EventLogger: [ ] Track:0, id=1, mimeType=video/avc, bitrate=3500000, codecs=avc1.640028, res=1920x1080, fps=25.0, supported=YES
04-06 16:44:46.487 25422 25422 D EventLogger: [ ] Track:1, id=2, mimeType=video/avc, bitrate=2000000, codecs=avc1.64001f, res=1280x720, fps=25.0, supported=YES
04-06 16:44:46.487 25422 25422 D EventLogger: [ ] Track:2, id=3, mimeType=video/avc, bitrate=1200000, codecs=avc1.4d401f, res=1280x720, fps=25.0, supported=YES
04-06 16:44:46.487 25422 25422 D EventLogger: [X] Track:3, id=4, mimeType=video/avc, bitrate=900000, codecs=avc1.4d401f, res=960x540, fps=25.0, supported=YES
04-06 16:44:46.487 25422 25422 D EventLogger: [X] Track:4, id=5, mimeType=video/avc, bitrate=664000, codecs=avc1.42c01e, res=640x360, fps=25.0, supported=YES
04-06 16:44:46.487 25422 25422 D EventLogger: [X] Track:5, id=6, mimeType=video/avc, bitrate=412000, codecs=avc1.42c015, res=512x288, fps=25.0, supported=YES
04-06 16:44:46.487 25422 25422 D EventLogger: [X] Track:6, id=7, mimeType=video/avc, bitrate=224000, codecs=avc1.42c00d, res=384x216, fps=25.0, supported=YES
04-06 16:44:46.487 25422 25422 D EventLogger: [X] Track:7, id=8, mimeType=video/avc, bitrate=108000, codecs=avc1.42c00c, res=256x144, fps=25.0, supported=YES
04-06 16:44:46.487 25422 25422 D EventLogger: ]
04-06 16:44:46.487 25422 25422 D EventLogger: ]
04-06 16:44:46.487 25422 25422 D EventLogger: Renderer:1 [
04-06 16:44:46.487 25422 25422 D EventLogger: Group:0, adaptive_supported=N/A [
04-06 16:44:46.488 25422 25422 D EventLogger: [X] Track:0, id=9, mimeType=audio/mp4a-latm, bitrate=64000, codecs=mp4a.40.2, sample_rate=48000, language=en, supported=YES
04-06 16:44:46.488 25422 25422 D EventLogger: ]
04-06 16:44:46.488 25422 25422 D EventLogger: ]
04-06 16:44:46.488 25422 25422 D EventLogger: Renderer:2 [
04-06 16:44:46.488 25422 25422 D EventLogger: Group:0, adaptive_supported=N/A [
04-06 16:44:46.488 25422 25422 D EventLogger: [X] Track:0, id=ENG, mimeType=text/vtt, language=en, supported=YES
04-06 16:44:46.488 25422 25422 D EventLogger: ]
04-06 16:44:46.488 25422 25422 D EventLogger: Group:1, adaptive_supported=N/A [
04-06 16:44:46.488 25422 25422 D EventLogger: [ ] Track:0, id=ENG, mimeType=text/vtt, language=en, supported=YES
04-06 16:44:46.488 25422 25422 D EventLogger: ]
04-06 16:44:46.488 25422 25422 D EventLogger: ]
04-06 16:44:46.488 25422 25422 D EventLogger: ]
04-06 16:44:46.490 25422 25422 D EventLogger: mediaPeriodReadingStarted [eventTime=0.88, mediaPos=0.00, window=0, period=0]
04-06 16:44:46.567 25422 25422 D EventLogger: downstreamFormat [eventTime=0.96, mediaPos=0.00, window=0, period=0, id=9, mimeType=audio/mp4a-latm, bitrate=64000, codecs=mp4a.40.2, sample_rate=48000, language=en]
04-06 16:44:46.843 25422 25422 D EventLogger: decoderInitialized [eventTime=1.23, mediaPos=0.00, window=0, period=0, audio, c2.android.aac.decoder]
04-06 16:44:46.844 25422 25422 D EventLogger: decoderInputFormat [eventTime=1.24, mediaPos=0.00, window=0, period=0, audio, id=9, mimeType=audio/mp4a-latm, bitrate=64000, codecs=mp4a.40.2, channels=2, sample_rate=48000, language=en]
04-06 16:44:47.031 25422 25422 D EventLogger: audioSessionId [eventTime=1.42, mediaPos=0.00, window=0, period=0, 63969]
04-06 16:44:47.297 25422 25422 D EventLogger: downstreamFormat [eventTime=1.69, mediaPos=0.00, window=0, period=0, id=4, mimeType=video/avc, bitrate=900000, codecs=avc1.4d401f, res=960x540, fps=25.0]
04-06 16:44:47.581 25422 25422 D EventLogger: decoderInitialized [eventTime=1.97, mediaPos=0.00, window=0, period=0, video, OMX.hisi.video.decoder.avc]
04-06 16:44:47.582 25422 25422 D EventLogger: decoderInputFormat [eventTime=1.97, mediaPos=0.00, window=0, period=0, video, id=4, mimeType=video/avc, bitrate=900000, codecs=avc1.4d401f, res=960x540, fps=25.0]
04-06 16:44:52.783 25422 25422 D EventLogger: decoderDisabled [eventTime=7.17, mediaPos=0.00, window=0, period=0, video]
04-06 16:44:52.790 25422 25422 D EventLogger: decoderDisabled [eventTime=7.18, mediaPos=0.00, window=0, period=0, audio]
04-06 16:44:52.856 25422 25422 D EventLogger: mediaPeriodReleased [eventTime=7.25, mediaPos=0.00, window=0, period=0]
04-06 16:44:52.858 25422 25422 E EventLogger: playerFailed [eventTime=7.25, mediaPos=0.00, window=0, period=0]
**04-06 16:44:52.858 25422 25422 E EventLogger: com.google.android.exoplayer2.ExoPlaybackException: com.google.android.exoplayer2.upstream.HttpDataSource$InvalidResponseCodeException: Response code: 400**
04-06 16:44:52.858 25422 25422 E EventLogger: at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:394)
04-06 16:44:52.858 25422 25422 E EventLogger: at android.os.Handler.dispatchMessage(Handler.java:103)
04-06 16:44:52.858 25422 25422 E EventLogger: at android.os.Looper.loop(Looper.java:213)
04-06 16:44:52.858 25422 25422 E EventLogger: at android.os.HandlerThread.run(HandlerThread.java:67)
04-06 16:44:52.858 25422 25422 E EventLogger: Caused by: com.google.android.exoplayer2.upstream.HttpDataSource$InvalidResponseCodeException: Response code: 400
04-06 16:44:52.858 25422 25422 E EventLogger: at com.google.android.exoplayer2.upstream.DefaultHttpDataSource.open(DefaultHttpDataSource.java:300)
04-06 16:44:52.858 25422 25422 E EventLogger: at com.google.android.exoplayer2.upstream.DefaultDataSource.open(DefaultDataSource.java:177)
04-06 16:44:52.858 25422 25422 E EventLogger: at com.google.android.exoplayer2.upstream.cache.CacheDataSource.openNextSource(CacheDataSource.java:487)
04-06 16:44:52.858 25422 25422 E EventLogger: at com.google.android.exoplayer2.upstream.cache.CacheDataSource.open(CacheDataSource.java:288)
04-06 16:44:52.858 25422 25422 E EventLogger: at com.google.android.exoplayer2.upstream.StatsDataSource.open(StatsDataSource.java:83)
04-06 16:44:52.858 25422 25422 E EventLogger: at com.google.android.exoplayer2.source.SingleSampleMediaPeriod$SourceLoadable.load(SingleSampleMediaPeriod.java:404)
04-06 16:44:52.858 25422 25422 E EventLogger: at com.google.android.exoplayer2.upstream.Loader$LoadTask.run(Loader.java:391)
04-06 16:44:52.858 25422 25422 E EventLogger: at java.util.concurrent.ThreadPoolExecutor.processTask(ThreadPoolExecutor.java:1187)
04-06 16:44:52.858 25422 25422 E EventLogger: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
04-06 16:44:52.858 25422 25422 E EventLogger: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
04-06 16:44:52.858 25422 25422 E EventLogger: at java.lang.Thread.run(Thread.java:929)
04-06 16:44:52.861 25422 25422 D EventLogger: loading [eventTime=7.25, mediaPos=0.00, window=0, false]
04-06 16:44:52.861 25422 25422 D EventLogger: state [eventTime=7.25, mediaPos=0.00, window=0, false, IDLE]
```
Is there any way we can resolve this?
Contributor guide
Assessment
This issue has not been assessed yet.