AnsweredAssumed Answered

Playing video in qt4 browser

Question asked by Peter Bergin on Feb 13, 2014
Latest reply on Feb 14, 2014 by Peter Bergin

Hi,

 

I am trying to show a video in a browser based on Qt4. I am building an fsl-image-gui Linux image with Yocto (based on Dora branch) and run this on a i.Mx6 based platform. I am trying to show a h264 encode video in the demo browser shipped with qt4, for example like this:

 

/usr/bin/qt4/demos/browser/browser http://www.quirksmode.org/html5/tests/video.html

 

The browser does not say that video format is not supported but nothing is played. Looking on the network traffic the browser does not start loading the video from server. Any ideas how to enable video playback in the Qt browser?

 

In order to track down the problem I have done the following:

- Tested video playback support for Qt+gstreamer on the i.Mx6 target with correct result.

  /usr/bin/qt4/qmediaplayer/qmediaplayer http://media.w3.org/2010/05/sintel/trailer.mp4

- On a XUbuntu 12.04 x86 machine compiled and installed qt-everywhere-opensource-src-4.8.5. Runnint the demo browser on this platform it plays the video and it work correct.

 

Any ideas how to go on is welcome!

Thanks,

/Peter

 

 

 

Update:

I have investigated further. I have executed the qt4 demo browser with GST_DEBUG enabled in order to see what happens in gstreamer.

 

>GST_DEBUG=4 /usr/bin/qt4/demos/browser/browser <internal page with mp4 video in>

 

What I see in this log is:

0:00:28.278817002 30870 0x4e388780 DEBUG              h264parse gsth264parse.c:296:gst_h264_parse_format_from_caps: parsing caps: video/x-h264, parsed=(boolean)true, width=(int)640, height=(int)360, framerate=(fraction)24/1, codec_data=(buffer)000000012742e01ea9181405ff2e00d418041adb0ad7bdf0100000000128de09c8

0:00:28.278964336 30870 0x4e388780 DEBUG              h264parse gsth264parse.c:1566:gst_h264_parse_set_caps:<h264parse0> have packetized h264

0:00:28.279019336 30870 0x4e388780 DEBUG              h264parse gsth264parse.c:1682:gst_h264_parse_set_caps:<h264parse0> wrong avcC version

0:00:28.279072002 30870 0x4e388780 WARN               h264parse gsth264parse.c:1692:gst_h264_parse_set_caps:<h264parse0> refused caps video/x-h264, parsed=(boolean)true, width=(int)640, height=(int)360, framerate=(fraction)24/1, codec_data=(buffer)000000012742e01ea9181405ff2e00d418041adb0ad7bdf0100000000128de09c8

....

0:00:28.283756336 30870 0x4d952400 WARN               aiurdemux aiurdemux.c:3903:aiurdemux_push_pad_buffer: Pad video push error type -4

 

Can anyone help me to analyze why the default gstreamer pipeline (based on playbin2) does not work in webkit?

 

Thanks,

/Peter

Outcomes