Blazemeter / HLSPlugin

A repo to hold the OpenSource HLS JMeter Plugin code
Apache License 2.0
48 stars 16 forks source link

JMeterThread: Error while processing sampler (HLS only. MPEG_DASH works fine): 'bzm_Streaming_Sampler'. java.lang.NullPointerException: null #10

Closed ingoheut closed 4 years ago

ingoheut commented 4 years ago

Hi, thank you for the HLS plugin work. The plugin is of great help for us. MPEG-DASH works fine for us, but when using HLS, we get the following error. Any ideas what the issue could be?

2020-05-26 12:14:45,341 INFO o.a.j.t.ThreadGroup: Starting thread group... number=1 threads=5 ramp-up=2 delayedStart=false
2020-05-26 12:14:45,342 INFO o.a.j.t.JMeterThread: Thread started: Thread Group 1-1
2020-05-26 12:14:45,343 INFO o.a.j.t.ThreadGroup: Started thread group number 1
2020-05-26 12:14:45,343 INFO o.a.j.e.StandardJMeterEngine: All thread groups have been started
2020-05-26 12:14:45,371 ERROR o.a.j.t.JMeterThread: Error while processing sampler: 'bzm_Streaming_Sampler'.
java.lang.NullPointerException: null
    at com.blazemeter.jmeter.videostreaming.hls.Playlist.getRenditionUri(Playlist.java:103) ~[jmeter-bzm-hls-3.0.2.jar:?]
    at com.blazemeter.jmeter.videostreaming.hls.Playlist.solveMediaStream(Playlist.java:72) ~[jmeter-bzm-hls-3.0.2.jar:?]
    at com.blazemeter.jmeter.videostreaming.hls.HlsSampler.sample(HlsSampler.java:43) ~[jmeter-bzm-hls-3.0.2.jar:?]
    at com.blazemeter.jmeter.videostreaming.core.VideoStreamingSampler.sample(VideoStreamingSampler.java:79) ~[jmeter-bzm-hls-3.0.2.jar:?]
    at com.blazemeter.jmeter.hls.logic.HlsSampler.sample(HlsSampler.java:184) ~[jmeter-bzm-hls-3.0.2.jar:?]
    at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1270) ~[ApacheJMeter_http.jar:5.3]
    at org.apache.jmeter.threads.JMeterThread.doSampling(JMeterThread.java:630) ~[ApacheJMeter_core.jar:5.3]
    at org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:558) ~[ApacheJMeter_core.jar:5.3]
    at org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:489) [ApacheJMeter_core.jar:5.3]
    at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:256) [ApacheJMeter_core.jar:5.3]
    at java.lang.Thread.run(Thread.java:832) [?:?]

Master playlist file:

#EXTM3U
## Generated with https://github.com/google/shaka-packager version v2.3.0-atx-0.3-6642829-release

#EXT-X-MEDIA:TYPE=AUDIO,URI="0/audio-hls.m3u8",GROUP-ID="audio",NAME="English",AUTOSELECT=YES,CHANNELS="2"

#EXT-X-MEDIA:TYPE=CLOSED-CAPTIONS,GROUP-ID="cc",NAME="English",LANGUAGE="en",DEFAULT=YES,AUTOSELECT=YES,INSTREAM-ID="CC1"

#EXT-X-STREAM-INF:BANDWIDTH=3202127,AVERAGE-BANDWIDTH=2008141,CODECS="avc1.4d0029,mp4a.40.2",RESOLUTION=1280x720,FRAME-RATE=29.970,AUDIO="audio",CLOSED-CAPTIONS="cc"
0/video-hls.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=1668708,AVERAGE-BANDWIDTH=1108892,CODECS="avc1.4d0029,mp4a.40.2",RESOLUTION=853x480,FRAME-RATE=29.970,AUDIO="audio",CLOSED-CAPTIONS="cc"
1/video-hls.m3u8
mikeinshanghai commented 4 years ago

i got almost the same error

RicardoPoleo commented 4 years ago

Hello @ingoheut,

That's weird. Could you please tell us:

  1. Which version of the plugin are you using?
  2. The URL you are using that gives you that error?
  3. The configurations you are using with that URL

That would allow us to properly review it and check what might be the issue.

At any rate, thanks for taking the time for reporting this, we added it to the backlog and will be tackling it ASAP.

Hope to hear from you soon,

Regards, Ricardo

RicardoPoleo commented 4 years ago

Also, @mikeinshanghai, if you are facing a similar problem, could you also provide the same things that I asked in my last comment?

If you can do so, that would help to figure out a way to help you out.

thanks in advance and,

Have a great day!

ingoheut commented 4 years ago

Hello @RicardoPoleo , thank you for looking at this issue.

  1. Which version of the plugin are you using? We are using plugin version 3.0.2.

  2. The URL you are using that gives you that error? The URL is an internal one in our lab, so you cannot access it (https://streaming0.watchdishtv.com/7d554515188c5fd2ab8b4dc632877a68a05736813518e4c524c15b43bff277eb/hls/Main.m3u8 ). It is a live streaming channel (CNN in this case), but results are the same for any other channel. The video streaming works, MPEG_DASH as well. We just see the issue with HLS.

  3. The configurations you are using with that URL What configuration information for the URL can I send you. Let me know some details and I will try to get them.

I just tried to execute the test again: Attached is a meter screenshot: Screen Shot 2020-07-09 at 9 22 43 AM

Let me know if I can do anything else to assist.

RicardoPoleo commented 4 years ago

Hello @ingoheut,

We made a new release with some improvements and issue fixing. Can you try again with that version and see if it fixes your issue?

Thanks in advance

ingoheut commented 4 years ago

Hi @RicardoPoleo I just retested with 3.0.3 plugin (and did the latest OS software update on my mac as well. This is working fine now. Closing the issue. Thank you so much! Ingo