Я запускаю Wowza 3.6.2 на Windows 8.1 (64 бит) и включил надстройку Transcoder. Я использую транскодер для съемки JPEG-снимков из прямого потока. Я создал собственный HTTPProvider, похожий на то, что описано here. Это прекрасно работает, и я могу получить JPG-снимки из потока через мой HTTPProvider.Wowza Transcoder Add-on throws ArrayIndexOutOfBoundsException
Проблема заключается в том, что, поскольку я включил транскодер, я получаю раздражающие сообщения об ошибках на моем сервере, зарегистрировав onPublish
и onUnPublish
любого потока.
В качестве шаблона транскодера я использовал файл transrate.xml по умолчанию, который поставляется с установкой Wowza, без каких-либо изменений.
Когда я опубликовать в поток asdf
я получаю ошибки похож на это:
ERROR server comment - TranscoderSessionDestination.init[livereceiver/_definst_/asdf]: [asdf_160p]:java.lang.ArrayIndexOutOfBoundsException: 1
java.lang.ArrayIndexOutOfBoundsException: 1
at com.foo.wms.module.IncomingStreamEventHandler.getQueryStringMap(IncomingStreamEventHandler.java:191)
at com.foo.wms.module.IncomingStreamEventHandler.onPublish(IncomingStreamEventHandler.java:83)
at com.wowza.wms.stream.MediaStream.notifyActionPublish(Unknown Source)
at com.wowza.wms.stream.publish.Publisher.publish(Unknown Source)
at com.wowza.wms.stream.publish.Publisher.publish(Unknown Source)
at com.wowza.wms.transcoder.model.TranscoderSessionDestination.init(Unknown Source)
at com.wowza.wms.transcoder.model.TranscoderSession.a(Unknown Source)
at com.wowza.wms.transcoder.model.TranscoderSession.handleOnMetadata(Unknown Source)
at com.wowza.wms.transcoder.model.LiveStreamTranscoder.handleOnMetadata(Unknown Source)
at com.wowza.wms.stream.live.LiveStreamTranscoderRunner.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)
И когда я с публикации потока я получаю это:
ERROR server comment - TranscoderSessionDestination.shutdown: [asdf_160p]:java.lang.NullPointerException
java.lang.NullPointerException
at com.foo.wms.module.IncomingStreamEventHandler.onUnPublish(IncomingStreamEventHandler.java:166)
at com.wowza.wms.stream.MediaStream.notifyActionUnPublish(Unknown Source)
at com.wowza.wms.stream.publish.Publisher.publish(Unknown Source)
at com.wowza.wms.stream.publish.Publisher.unpublish(Unknown Source)
at com.wowza.wms.transcoder.model.TranscoderSessionDestination.shutdown(Unknown Source)
at com.wowza.wms.transcoder.model.TranscoderSession.c(Unknown Source)
at com.wowza.wms.transcoder.model.TranscoderSession.shutdown(Unknown Source)
at com.wowza.wms.transcoder.model.LiveStreamTranscoder.shutdown(Unknown Source)
at com.wowza.wms.stream.live.LiveStreamTranscoderRunner.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)
я получаю три из каждого исключения, когда я publish/unpublish (по одному для каждого блока Encode, который включен в файле transrate.xml).
Есть ли у кого-нибудь идея о том, что может быть причиной этого?
Это гораздо лучшее решение, на самом деле, не было известно о той собственности. Я дал вам +1 за это, но сейчас я сохраню свой ответ как принятый, так как он объясняет причину исключений. –