I'm subscribed to a French Internet provider which provides some IPTV streams in RTSP, something like this: rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=201&flavour=hd
I noticed sometimes playback failed with this stacktrace:
com.google.android.exoplayer2.demo E/LoadTask: Unexpected exception loading stream
java.lang.ArrayIndexOutOfBoundsException: src.length=65507 srcPos=0 dst.length=76 dstPos=0 length=-3
at java.lang.System.arraycopy(Native Method)
at com.google.android.exoplayer2.source.rtp.extractor.RtpExtractorInput.peek(RtpExtractorInput.java:110)
at com.google.android.exoplayer2.source.rtp.RtpPacket.sniffHeader(RtpPacket.java:308)
at com.google.android.exoplayer2.source.rtp.extractor.RtpMp2tExtractor.read(RtpMp2tExtractor.java:69)
at com.google.android.exoplayer2.source.rtsp.RtspSampleStreamWrapper$MediaStreamLoadable.readInternal(RtspSampleStreamWrapper.java:904)
at com.google.android.exoplayer2.source.rtsp.RtspSampleStreamWrapper$UdpMediaStreamLoadable.loadMedia(RtspSampleStreamWrapper.java:1012)
at com.google.android.exoplayer2.source.rtsp.RtspSampleStreamWrapper$MediaStreamLoadable.load(RtspSampleStreamWrapper.java:784)
at com.google.android.exoplayer2.upstream.Loader$LoadTask.run(Loader.java:415)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:919)
It turns out that in RtpExtractorInput.readFromDataSource() the dataSource.read() call might return -3.
I'm subscribed to a French Internet provider which provides some IPTV streams in RTSP, something like this: rtsp://mafreebox.freebox.fr/fbxtv_pub/stream?namespace=1&service=201&flavour=hd
I noticed sometimes playback failed with this stacktrace:
It turns out that in
RtpExtractorInput.readFromDataSource()
thedataSource.read()
call might return -3.