[jitsi-users] H264 video not displayed by Jitsi


#1

Hi guys,

I'm experimenting with calling a media server with video support using
Jitsi, and while Jitsi plays the audio stream just fine, it fails to
play the incoming video stream:

15:17:59.067 SEVERE: [203] net.sf.fmj.media.Log.error() The input format
is not compatible with the given codec plugin:
org.jitsi.impl.neomedia.codec.video.h264.DePacketizer@103325ac
15:17:59.070 SEVERE: [203] net.sf.fmj.media.Log.error() Failed to
realize: net.sf.fmj.media.ProcessEngine@3594fb0e
15:17:59.071 SEVERE: [203] net.sf.fmj.media.Log.error() Cannot build a
flow graph with the customized options:
15:17:59.072 SEVERE: [203] net.sf.fmj.media.Log.error() Unable to
add customed codecs:
15:17:59.074 SEVERE: [203] net.sf.fmj.media.Log.error()
org.jitsi.impl.neomedia.codec.video.h264.DePacketizer@103325ac
15:17:59.075 SEVERE: [203] net.sf.fmj.media.Log.error()
org.jitsi.impl.neomedia.codec.video.h264.JNIDecoder@1649039f
15:17:59.076 SEVERE: [203] net.sf.fmj.media.Log.error()
org.jitsi.impl.neomedia.device.VideoMediaDeviceSession$PlayerScaler@138cc727
15:17:59.089 INFO: [203] net.sf.fmj.media.Log.info() Stopping
RTPSourceStream.
15:17:59.090 INFO: [203] net.sf.fmj.media.Log.info() Stopping
RTPSourceStream.
15:17:59.096 SEVERE: [200] net.sf.fmj.media.Log.error() Error: Unable to
realize net.sf.fmj.media.ProcessEngine@3594fb0e

The SDP which Jitsi is sending in regards to video is this:

m=video 30600 RTP/AVP 102 99
a=rtpmap:102 H264/90000
a=fmtp:102 profile-level-id=42E01f;packetization-mode=1
a=imageattr:102 send * recv [x=[0-1920],y=[0-1080]]
a=rtpmap:99 H264/90000
a=fmtp:99 profile-level-id=42E01f
a=imageattr:99 send * recv [x=[0-1920],y=[0-1080]]

The media server replies this:

m=video 9878 RTP/AVP 102
a=rtpmap:102 H264/90000
a=fmtp:102
packetization-mode=1;profile-level-id=42c01f;sprop-parameter-sets=Z0LAH9oFBv5f/AQkAsBAAAD6QAA6mCPGDKg=,aM48gA==;

One difference I can see is the profile-iop set by Jitsi is E0 in the
profile-level-id, while the media server sets C0. profile-idc and
profile-level is the same (constraint baseline with level 3.1). Is this
a problem?

Jitsi receives the packets just fine according to the RTCP report, the
only thing which makes me wonder is that it logs "call stats for
incoming rtpmap:-1 H264/90000" while it should be rtpmap:102.

15:18:08.755 INFO: [212] org.jitsi.impl.neomedia.MediaStreamImpl.info()
rtpstat:call stats for incoming rtpmap:-1 H264/90000
fmtp:profile-level-id=42c01f;packetization-mode=1;sprop-parameter-sets=Z0LAH9oFBv5f/AQkAsBAAAD6QAA6mCPGDKg=,aM48gA==
stream SSRC:126963874
rtpstat:packets received: 271
rtpstat:bytes received: 263985
rtpstat:packets lost: 0
rtpstat:min interarrival jitter : 1286
rtpstat:max interarrival jitter : 1384
rtpstat:RTCPs received: 2
rtpstat:bad RTCP packets: 0
rtpstat:bad RTP packets: 1
rtpstat:local collisions: 0
rtpstat:malformed BYEs: 0
rtpstat:malformed RRs: 0
rtpstat:malformed SDESs: 0
rtpstat:malformed SRs: 0
rtpstat:packets looped: 0
rtpstat:remote collisions: 0
rtpstat:SRRs received: 1
rtpstat:transmit failed: 0
rtpstat:unknown types: 0

Any help where to start troubleshooting that is highly appreciated!

Andreas