EventLogger: com.google. android .exoplayer2.ParserException: смещение до конца mdat было отрицательным - PullRequest
0 голосов
/ 29 марта 2020

Я использую версию 2.6.1. Для некоторого контента (защищенного контента) воспроизведение прошло успешно, а для некоторого контента я получил ошибку простоя из-за ошибки readsample, как показано ниже.

В данном конкретном случае использования (HEV C 8-битное безопасное воспроизведение) Похоже, что открытие файла прошло успешно, экстрактор успешно создан, и вызов readsample возвращает успех в течение нескольких итераций. после этого выдается «Смещение до конца mdat было отрицательным». ошибка.

ЖУРНАЛЫ:

03-28 07: 18: 58.610 9995 9995 E EventLogger: internalError [19.28, loadError]

03-28 07: 18: 58.610 9995 9995 E EventLogger: com.google. android .exoplayer2.ParserException: Смещение до конца mdat было отрицательным.

03-28 07: 18: 58.610 9995 9995 E EventLogger: на com.google. android .exoplayer2.extractor.mp4.FragmentedMp4Extractor.readSample (FragmentedMp4Extractor. java: 1088)

03-28 07: 18: 58,610 9995 9995 E EventLogger: на com.google. android .exoplayer2.extractor.mp4.FragmentedMp4Extractor.read (FragmentedMp4Extractor. java: 286)

03-28 07: 18: 58.610 9995 9995 E EventLogger: на com.google. android .exoplayer2.source.ExtractorMediaPeriod $ ExtractingLoadable.load (ExtractorMediaPeriod. java: 749)

03-28 07: 18: 58.610 9995 9995 E EventLogger: на com.google . android .exoplayer2.upstream.Loader $ LoadTask.run (Loader. java: 315)

03-28 07: 18: 58.610 9995 9995 E EventLogger: at java .util. concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor. java: 1167)

03-28 07: 18: 58.610 9995 9995 E EventLogger: в java .util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPo. java: 641)

журналы отладки:

03-28 07: 18: 41.764 9995 10045 Вт FragmentedMp4Extractor: mahe sh: readSample STATE_READING_SAMPLE_START

03-28 07: 18: 41.764 9995 10045 Вт FragmentedMp4Extractor: mahe sh: currentTrackBundle имеет значение NULL

03-28 07: 18: 41.764 9995 10045 W FragmentedMp4Extractor: mahe sh: getNextFragment: is NULL

03-28 07: 18: 41.764 9995 10045 E FragmentedMp4Extractor: mahe sh: getLength = 78736985

03-28 07: 18: 41.764 9995 10045 E FragmentedMp4Extractor: mahe sh: getPosition = 3098898

03-28 07: 18: 41.764 9995 10045 E FragmentedMp4Extractor: mahe sh: endOfMdatPosition = 3098890

03-28 07: 18: 41.764 9995 10045 E FragmentedMp4Extractor: mahe sh: byte sToSkip = -8

Что может быть причиной того, что getposition превышает endOfMdatPosition, вызывая значение -ve ??

Заранее спасибо

...