Re: What does a track contain?

I think as a matter of good design, resolving the alpha channel should be
delayed until the video sink(s), where the semantics can be correctly
applied, e.g. we don't use VP8 with alpha (althought it's possible
<http://wiki.webmproject.org/alpha-channel> and is used for playback in
Chrome
<https://code.google.com/p/chromium/codesearch#chromium/src/media/filters/vpx_video_decoder.h&sq=package:chromium&type=cs&q=vpxvideodecoder&l=27>)
but other codecs might be happy dealing with it (VP9? Daala?). IOW in the
pipeline <canvas> -> <media stream track> -> <?>, the <track> should not
limit what the <?> element can do, although it does in Cr due to the
hardcoded I420 transport format. For example, think about <?> might be a
MediaRecorder and the user might like to store alpha channel separately.

pthatcher@ I think the transparency of the video stream's individual frames
and the transparency of the <video> element are not linked.

On 24 February 2016 at 08:28, Peter Thatcher <pthatcher@google.com> wrote:

> I don't know enough about <video> to know the answer to this:  if it has
> an alpha channel in it, and it's rendered on top of other web elements, is
> it supposed to render such that you potentially see through the video to
> the other web elements below?  In other words, could I use a <video> to
> make a video of a translucent ghost fly around a web page?  Is that the
> kind of thing we're going for here?   canvas -> track -> <video> -> ghost?
>
> On Wed, Feb 24, 2016 at 8:20 AM, Martin Thomson <martin.thomson@gmail.com>
> wrote:
>
>> On 24 February 2016 at 08:13, Peter Thatcher <pthatcher@google.com>
>> wrote:
>> > What do you mean "throughout the media pipeline"?  Do you expect a track
>> > sent through a PeerConnection to have the alpha channel intact when it
>> comes
>> > out the remote side?
>>
>> Well, we know that RTP video is generally incapable of handling alpha
>> channels, so no.  Unless and until we find a codec that supports an
>> alpha channel (APNG perhaps).
>>
>> But the simple example of <canvas> piped to <video> presents something
>> of a challenge.
>>
>
>


-- 

Miguel Casas-Sanchez |  Gatopardo del Software |  ydog <ydog@google.com> /
mcasas@google.com |  +1 (650) 603 1380

Received on Wednesday, 24 February 2016 17:10:32 UTC