red5pro / streaming-ios

This repository contains a simple project with a number of iOS examples that can be used for testing and reference.
Other
92 stars 29 forks source link

NetStream.Play.InSufficientBW.Video , Dropping late video before decode #108

Open mohammadshalhoob opened 6 years ago

mohammadshalhoob commented 6 years ago

hi , we are facing what i believe a small problem. the problem is: Video freezing after few seconds from starting the stream, Attached debug return from the red5,

part of bug -: Dropping late video before decode with time 24.169000 wall time: 31.349868 pending: 0 [R5 DEBUG]WAITING FOR REBUFFER!!!! 0.000000 NetStream.Play.InSufficientBW.Audio NetStream.Play.InSufficientBW.Video

and i use last sdk 4.0.0,xcode 9.0/swift 4 .

thanks . debug.txt

beetlejesss commented 6 years ago

the InSufficientBW generally means that your network doesn't have enough bandwidth to support the stream. Try adjusting the resolution and bitrate down and see if that helps.

mohammadshalhoob commented 6 years ago

i use R5AdaptiveBitrateController for publishStream , is that help or i need to remove it .

beetlejesss commented 6 years ago

The AdaptiveBitrateContoller is for the publisher - so it will use as much bandwidth as it can (and the example is set to a very high bitrate); there is not currently an AdaptiveBitrateController for the subscriber. So - yes I would advise removing that, or at least modifying the settings on it to use a lower resolution/bitrate combination than what is set in the example (https://github.com/red5pro/streaming-ios/blob/master/R5ProTestbed/tests.plist#L75)

mohammadshalhoob commented 6 years ago

i add resolution and bitrate for publisher ex: video-: let camera = R5Camera(device: videoDevice, andBitRate: 500) camera?.width = 320 camera?.height = 240 camera?.orientation = 90 audio -: let microphone = R5Microphone(device: audioDevice) microphone?.bitrate = 3 microphone?.sampleRate=8000

, did i need to add resolution and bitrate subscriber , and if i nedd how i can please .

beetlejesss commented 6 years ago

No, you don't need to add resolution and bitrate for the subscriber. They will get what is sent.