sipsorcery icon indicating copy to clipboard operation
sipsorcery copied to clipboard

VP8: Crash on Video Input from an Android Device

Open ChristopheI opened this issue 2 years ago • 1 comments

Using last version of SIPSorcery (master branch) and SIPSorcery.FFmpeg v1.0.0 I have always a crash when decoding a input video frame from an Android device.

Sending a video stream in VP8 to the Android is working perfectly.

It could occur after a correct display of the video for some seconds but generally it's happening as soon as the stream is received. I have already seen this error message: "Discarding RTP packet, VP8 header Start bit not set."

I have never this problem when the Peer is a Chrome client ... It's very strange.

Does anyone have the same problem ?

Is-it working well with SIPSorceryMedia.Encoders ?

I'm wondering if the code in RtpVideoFramer.GotRtpPacket is correct. Perhaps in a mobile context, to preserve resources, the packets are managed in a more "compressed way" which is not handle in this code ?

ChristopheI avatar Apr 02 '22 17:04 ChristopheI

My first guess would be that the resolution of the video stream changes. Most of the, very crude, video decoding logic I wrote dealt with only the most basic cases and assumed the video resolution would be static. If it changes some of the buffers that have been reserved may be too small.

sipsorcery avatar Apr 02 '22 20:04 sipsorcery