1

Windows 8.1 (64 ビット) で Wowza 3.6.2 を実行しており、Transcoder アドオンを有効にしています。トランスコーダを使用して、ライブ ストリームから JPEG スナップショットを取得しています。hereで説明されているものと同様のカスタム HTTPProvider を構築しました。これは問題なく動作し、HTTPProvider を介してストリームから JPG スナップショットを取得できます。

onPublish問題は、トランスコーダを有効にしてから、サーバーのログオンやonUnPublishストリームでイライラするエラー メッセージが表示されることです。

トランスコーダー テンプレートとして、Wowza のインストールに付属するデフォルトの transrate.xml を変更せずに使用しました。

ストリーム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)

パブリッシュ/アンパブリッシュするときに、それぞれ 3 つの例外が発生します (transrate.xml ファイルで有効になっている Encode ブロックごとに 1 つ)。

誰がこれを引き起こしているのかについて考えを持っていますか?

4

2 に答える 2

1

ストリームがトランスコードされたストリームであり、ソース ストリームではないかどうかを判断するためのより良い方法を次に示します。

if(stream.isTranscodeResult()) return;
于 2014-01-13T19:23:05.037 に答える