H264 decoding in Chrome WebView: "The NullVideoDecoder doesn't support decoding."

544 views
Skip to first unread message

Lander Noterman

unread,
Oct 30, 2018, 4:41:47 AM10/30/18
to discuss-webrtc
I have a native WebRTC "server" on a Raspberry Pi on which I implemented a custom H264 video encoder which I give as an argument to webrtc::CreatePeerConnectionFactory.

I can connect to this server using Chrome on any device and it works perfectly.
However, in a Cordova application on Android, the video fails to play (no error messages in the JavaScript console, just a blank video element) and in LogCat I can see lots of "The NullVideoDecoder doesn't support decoding." error messages.
I've tried latest stable Chrome and the latest Canary (setting the WebView implementation in Developer Options).

Again, this stream works perfectly well in the actual Chrome browser on the same device, but not in the WebView.

Is this a bug or is there some reason I can't decode a H264 WebRTC stream in a WebView? I've tried on multiple devices.

which perfectly describes my problem, but it seems like no solution has been provided there, hence my post here.

When I switch to VP8 encoder on the server side, the stream does play (although very choppy), so it is something specific to H264 decoding.
Encoding VP8 video is not feasible on the server side (no hardware encoding), so I must use H264 to get a smooth video stream.

Hopefully I've made myself clear and this is something that can be resolved.

51501...@gmail.com

unread,
Dec 10, 2018, 9:44:12 PM12/10/18
to discuss-webrtc
Hi Lander Noterman,

I am very interesting on how to add h264 hardware encoding to webrtc.
Can you post the code to me?
Reply all
Reply to author
Forward
0 new messages