All of lore.kernel.org
 help / color / mirror / Atom feed
From: Carlos Rafael Giani <dv@pseudoterminal.org>
To: Richard Cochran <richardcochran@gmail.com>
Cc: meta-freescale@yoctoproject.org
Subject: Re: imx6: webkit html5 video with hardware acceleration
Date: Tue, 23 Sep 2014 21:20:52 +0200	[thread overview]
Message-ID: <5421C814.101@pseudoterminal.org> (raw)
In-Reply-To: <20140923191449.GC24931@netboy>

On 2014-09-23 21:14, Richard Cochran wrote:
> On Tue, Sep 23, 2014 at 09:02:03PM +0200, Carlos Rafael Giani wrote:
>> With stock WebKit, you can pretty much forget about that. Look at
>> this source: https://github.com/WebKit/webkit/blob/master/Source/WebCore/platform/graphics/gstreamer/VideoSinkGStreamer.cpp#L138
>> note how it copies pixels with the CPU.
> Right, I saw that, too.
>
> For zero copy, you would need a imx6-specific hack^H^H^H^H modification.
>
> So the first question becomes is this.
>
> Q. Does Freescale provide any kind of support for hardware accelerated
>     HTML5 video on the imx6?
>
> A. No.
>
> I already knew this. The *next* question, which I am trying to ask
> here, is, does anyone have this working at all, like with some kind of
> unoffical or alpha-quality patch?

It is working for Chromium. I added patches for that. WebKit though, I 
don't know.

>
>> There is apparently a GL-based alternative, but I haven't seen it in
>> action yet.
> GL is something completely else entirely.
>
>

Not necessarily. Keep in mind what I wrote about the direct textures. If 
WebKit has a GLES-based rendering backend, these textures could be used 
for smooth video playback. It'd have to extract the physical address out 
of the decoded GStreamer frame (possible by using the appsink GStreamer 
element) and pass it on to the texture, and release the GStreamer frame 
once that video frame has been shown and the next frame is to be displayed.

I also use the direct textures for smooth zerocopy playback in Chromium.

One remark: Power consumption wise, using a 3D API (and therefore the 
GPU's 3D core) for 2D operations isn't so efficient. But, adding a 
G2D-based backend for example would be much more work. (G2D is a 
highlevel API for controlling the GPU's 2D core, which uses less power.)


  reply	other threads:[~2014-09-23 19:20 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-09-23 18:13 imx6: webkit html5 video with hardware acceleration Richard Cochran
2014-09-23 18:33 ` Gerard Bucas
2014-09-23 18:55   ` Bin Lin
2014-09-23 19:02     ` Carlos Rafael Giani
2014-09-23 19:14       ` Richard Cochran
2014-09-23 19:20         ` Carlos Rafael Giani [this message]
2014-09-23 19:30           ` Richard Cochran
2014-09-23 19:32             ` Carlos Rafael Giani
2014-09-23 19:52               ` Richard Cochran
2014-09-23 19:56                 ` Carlos Rafael Giani
2014-09-23 19:57                 ` Otavio Salvador
2014-09-23 20:12                   ` Richard Cochran
2014-09-23 20:27                     ` Otavio Salvador
2014-09-23 20:42                       ` Richard Cochran
2014-09-23 20:46                         ` Carlos Rafael Giani
2014-09-24  4:50                           ` Richard Cochran
2014-09-24 16:42                             ` Eric Nelson
2014-09-24 17:05                               ` Richard Cochran
2014-09-24  8:58                       ` Richard Cochran
2014-09-24 11:21                         ` Otavio Salvador
2014-09-24 12:07                           ` Richard Cochran
2014-09-24 15:28                             ` Daiane Angolini
2014-09-24 15:32                         ` Bin Lin
2014-09-23 19:26       ` Bin Lin
2014-09-23 19:29         ` Carlos Rafael Giani
2014-09-23 19:06     ` Richard Cochran
2014-09-23 19:15       ` Carlos Rafael Giani
2014-09-23 19:23         ` Richard Cochran
2014-09-23 19:29           ` Carlos Rafael Giani
2014-09-23 19:39             ` Richard Cochran
2014-09-23 19:44               ` Bin Lin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5421C814.101@pseudoterminal.org \
    --to=dv@pseudoterminal.org \
    --cc=meta-freescale@yoctoproject.org \
    --cc=richardcochran@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.