Closed Bug 1210960 Opened 9 years ago Closed 7 years ago

Intermittent test_peerConnection_basicH264Video.html | application crashed [@ mozilla::WebrtcGmpVideoEncoder::Encode_g(webrtc::I420VideoFrame const*, webrtc::CodecSpecificInfo const*, std::vector<webrtc::VideoFrameType, std::allocator<webrtc::VideoFrameTy

Categories

(Core :: Audio/Video: MediaStreamGraph, defect, P3)

defect

Tracking

()

RESOLVED INCOMPLETE

People

(Reporter: KWierso, Unassigned)

Details

(Keywords: intermittent-failure)

Dup?
Component: WebRTC → Audio/Video: MSG/cubeb/GMP
Flags: needinfo?(cpearce)
I don't know of a dupe.

You're hitting Unexpected VideoFrameType here:

https://dxr.mozilla.org/mozilla-central/source/media/webrtc/signaling/src/media-conduit/WebrtcGmpVideoCodec.cpp#130

That's not code media playback ever hits.
Flags: needinfo?(cpearce)
(In reply to Chris Pearce (:cpearce) from comment #2)
> I don't know of a dupe.
> 
> You're hitting Unexpected VideoFrameType here:
> 
> https://dxr.mozilla.org/mozilla-central/source/media/webrtc/signaling/src/
> media-conduit/WebrtcGmpVideoCodec.cpp#130
> 
> That's not code media playback ever hits.

Thanks.  And looking over that code it seems pretty impossible; Encode() in generic_encoder in webrtc.org is preceded by ConvertFrameType, which asserts on anything that isn't a key or delta frame.  The initialization of nextFrameTypes in video_sender.cc is wrong ("1, kVideoFrameDelta" - 1 is kAudioFrameSpeech, but that should trigger an assert() when converted -- and if it doesn't, it'll end up Delta anyways.  And in GMP, Encode() dispatches Encode_g() via DISPATCH_SYNC.

So this should be truly impossible.
backlog: --- → webrtc/webaudio+
Rank: 35
Priority: -- → P3
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → INCOMPLETE
You need to log in before you can comment on or make changes to this bug.