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
My own analyze so far is that qt-webkit does not use the phonon backend as qtmultimedia does.
run video on html5 using QT Webkit on IMX 53 | Qt Project forums | Qt Project
/Peter