Re: [whatwg] More YouTube response

2010-08-21 Thread Laxminarayan Kamath
Hardly an expert in this field, but wouldn't implementing media tags
(video and audio) a tad like websockets be a good idea. Using the tag
should add a special header that says it can upgrade conneciton to
something like media which constantly lets client have duplex
conversation with the server, which can give all sorts of information
about the client side like desired bitrate, desired camera, player
state(pause, resume,etc) which will have reasonable default behaviour,
but can be set or taken over by javascript if needed.

On the other hand, if the server end was not happy with the upgrade
request, the browser cann fall back to current behaviour

just my two cents

-- 
Laxminarayan Kamath Ammembal
http://lankerisms.blogspot.com
(+91) 9945036093


Re: [whatwg] More YouTube response

2010-08-20 Thread Ian Hickson

This is a bulk reply to the feedback that resulted from the following blog 
post from YouTube's API team:

   http://apiblog.youtube.com/2010/06/flash-and-html5-tag.html


On Wed, 30 Jun 2010, Tab Atkins Jr. wrote:

 So, for a quick recap, their problems are:
 
 1. Standard video format
 2. Robust video streaming
 3. Content Protection
 4. Encapsulation + embedding
 5. Fullscreen video
 6. Camera and Microphone access
 
 The blog itself successfully covers the current responses to 1, 2, 5, 
 and 6.  #3 is a different story; it doesn't appear that anyone in this 
 space is working on that or intends to.  And I'm happy with that.  #4 is 
 kind of silly - flash embedding doesn't protect anyone's private data - 
 the plugin can do plenty of malicious stuff if it wants to. Spreading 
 videos by embedding script tags would be equally safe.  I think people 
 just don't realize that fact.  In any case, embedding videos via [iframe 
 should work fine]

Indeed. To reiterate for the record:

 1. Standard video format

This is up to browser vendors; we have several options. The market will 
likely end up resolving this.

 2. Robust video streaming

This is at the stage where we should get browser implementation 
experience.

 3. Content Protection

Fingerprinting is already possible; DRM is mathematically impossible. See 
below for slightly more on this, but this was covered in depth in the 
threads so I won't add much.

 4. Encapsulation + embedding

Should be possible with existing technologies (a number of people 
discussed this on these threads so I won't reiterate further here).

 5. Fullscreen video

See recent threads; this will likely be solved in due course via CSSOM 
extensions.

 6. Camera and Microphone access

This is in early stages, but see the device element for ideas here. It's 
currently stalled waiting for people to volunteer to work on protocol-side 
work.


On Wed, 30 Jun 2010, Marques Johansson wrote:

 What is the problem with #3?  My recent emails on this list concern #3.
 
 I know that anything that has been seen or heard can be recorded, 
 replayed, and redistributed by illegitimate parties but that doesn't 
 mean content protection is silly.

Content protection is silly because it is impossible to simultaneously 
prevent someone from accessing data, and allow someone to access it. It's 
_especially_ silly in an open standard implemented by open source 
software, since you can't even rely on the usual obfuscation technique. (I 
haven't responded to any other e-mails on these threads regarding DRM, 
since none got beyond this problem.)


 For pay-per-video services I would think a watermark + sue policy for 
 files distributed over HTML5/HTTP could handle content protection as 
 well as any flash based solution.

Sure, that's already possible.


 For pay-per-minute or pay-per-byte services I believe the HTTP and/or 
 HTML5 specification needs some minor changes to allow the server to 
 dictate the amount of data the UA should attempt to fetch from an open 
 and standard file over an open and standard protocol.

Why can't the server control this already?


On Wed, 30 Jun 2010, Marques Johansson wrote:
 
 The problem with throttling alone (yes, the server would be throttling 
 as well) is that when a user seeks to some point in the video the UA 
 request will look like Range: bytes 0- or Range: bytes 1500-. 
 The server is then expected to keep this connection open (idling or 
 trickling data) while the user takes a break and plays 5 seconds or 5 
 minutes of video.

There is definitely room for more advanced protocols than just straight 
HTTP for media streaming. This is an area where we should start with 
browser experimentation.


On Thu, 1 Jul 2010, Kevin Carle wrote:

 One part of (2) [well, debatably part, but related to video streaming] 
 is the lack of visibility into stream behavior. I can't ask the video 
 element questions about dropped frames, bitrate, etc. This is incredibly 
 useful in Flash for getting streaming feedback, and means I really don't 
 know how well the HTML5 player is working for users. The best I can do 
 is waiting/stalled events which is nowhere near as granular.

Exposing this information is one of the features queued up for the next 
version (after we get the subtitles stuff sorted out).

You can see the current list of such feedback here:

   
http://www.whatwg.org/issues/#video--new-features-awaiting-stable-implementations

-- 
Ian Hickson   U+1047E)\._.,--,'``.fL
http://ln.hixie.ch/   U+263A/,   _.. \   _\  ;`._ ,.
Things that are impossible just take longer.   `._.-(,_..'--(,_..'`-.;.'


Re: [whatwg] More YouTube response

2010-07-08 Thread Aryeh Gregor
On Wed, Jul 7, 2010 at 4:54 PM, John Harding jhard...@google.com wrote:
 MySpace is my canonical example - they allow arbitrary SWFs to be embedded
 in profiles, but not iframes.  Flash added support a while back that
 allows containing pages to block SWFs from executing script or accessing the
 contents of the page, which MySpace enforces by rewriting the embed tag
 that users post.  Before that, yes, allowing arbitrary SWFs to be posted by
 users was a huge security hole.

Interesting.  I wonder what the rationale was behind banning iframe.

 Regardless, I think we're all agreed on the path forward (Use iframes to
 embed content instead of naked embed tags) and just need to start moving
 on it, and the ball is largely in YouTube's court on this point.

Great to hear you see it that way.


Re: [whatwg] More YouTube response

2010-07-07 Thread Philip Jägenstedt
On Tue, 06 Jul 2010 23:19:42 +0200, Marques Johansson  
marq...@displague.com wrote:



On Tue, Jul 6, 2010 at 4:37 PM, Aryeh Gregor
simetrical+...@gmail.comsimetrical%2b...@gmail.com

wrote:



On Tue, Jul 6, 2010 at 10:24 AM, Marques Johansson
marq...@displague.com wrote:
 The benefit to the user is that they could have less open network
 connections while streaming video from server controlled sites and  
those

 sites will have the ability to meter their usage more accurately.
 Inserting an extra clip at the end is more of a playlist or scripting
 answer.  Or perhaps a a live re-encoding answer.   I'm looking for a  
way

to
 give the user the raw video file in a metered way.

It sounds like your use-case is very special, and best handled by
script.  I suggested server-side script -- you could do that today.
Just cut off the HTTP connection when the user has used up their
allotted time.  Alternatively, it might be reasonable to have
client-side scripting for video that's flexible enough to do what you
want.  But a dedicated declarative feature is just not reasonable for
such a specific purpose.



I tested cutting off the HTTP connection and browsers didn't handle  
this.  I
realize I may need to test a deeper sever than a php exit() can  
provide.  I
have essentially tested this (but not this exactly - filehandles,  
sessions,

additional code, etc):
?php
header(HTTP/1.1 206 partial);
header(Accept-Ranges: bytes);
header(Content-Range: bytes 0-99/100);
header(Content-Length: 100);  // report 1000k
echo str_repeat( , 1000); // return 1k
exit();

and found that browsers do not attempt to refetch the data or continue  
with

a 206 for the next block.

Shouldn't something like this be be worked into the protocol or the  
language


One thing that you mustn't lie about is Content-Length, so I assume that  
the real size of this resource if 1000k. If you're trying to return a too  
short range, you should say so in the Content-Range header. In other  
words, in the above you should have used


header(Content-Range: bytes 0-999/100);

I'm not sure it will work anyway, though.

--
Philip Jägenstedt
Core Developer
Opera Software


Re: [whatwg] More YouTube response

2010-07-07 Thread Philip Jägenstedt
On Tue, 06 Jul 2010 17:42:22 +0200, Marques Johansson  
marq...@displague.com wrote:


On Tue, Jul 6, 2010 at 10:59 AM, Philip Jägenstedt  
phil...@opera.comwrote:



On Tue, 06 Jul 2010 16:24:45 +0200, Marques Johansson 
marq...@displague.com wrote:
Some UAs request video without sending Range: bytes 0-.  The server  
has

no

way to negotiate that the UA (a) must use ranges to complete the  
request

or
that (b) the range requested is too large, retry will a smaller range.



The first request is tricky for the browser too. Having no idea of how  
big

the resource is or what the bitrate is, there is no bounded request that
makes sense, in my opinion. The downside is that for a conservative
approach, the only solution is to abort the connection half way through,
with the server having no idea when this will happen. I haven't seen any
negative effects of this in practice yet, but this thread has me  
thinking
that it could be better. Handling a short reply gracefully would be a  
good

start.



For webm files, Chrome requests 0-1024 and then some block near the end  
of

the file.  I assume that the meta data / time ranges are stored at these
locations.

As for bounded requests that make sense - I'm sure the server hosting the
content could suggest something ;-)


If the index is stored in the beginning of the file, there should be no  
need to seek to the end. What we want is to get at least metadata and the  
first frame in a single request, and I can't guess any number that doesn't  
risk being larger than the file itself. Somehow involving the server just  
amounts to two network roundtrips, which was exactly what we were trying  
to avoid.


I've tried having the server disconnect a HTTP/1.1 200 response by doing  
a

php exit() before having sent the Content-Length specified number of
bytes.  Browsers did not attempt to pick up where the server left off.

I think you are suggesting that the client disconnect but without  
scripting


I don't really have control over that and if with scripting that doesn't
seem doable unless the video element could be feed with an appendBytes()
type of function.


Yes, the browser disconnects, and scripts have no influence over it. With  
preload=metadata implemented, it should disconnect as soon as possible  
after getting enough data for the first frame. For preload=auto, it will  
disconnect after buffering X seconds of data. If you need more granularity  
than that, I suggest server-side control informed by information collected  
by JavaScript. If browsers handled a short reply to a range request, it  
should work just fine, no?


--
Philip Jägenstedt
Core Developer
Opera Software


Re: [whatwg] More YouTube response

2010-07-07 Thread Schalk Neethling
Could not agree more Anne

-Original Message-
From: whatwg-boun...@lists.whatwg.org [mailto:whatwg-boun...@lists.whatwg.org] 
On Behalf Of Anne van Kesteren
Sent: Friday, July 02, 2010 1:38 PM
To: Henri Sivonen; Shane Fagan
Cc: Andy Berkheimer; John Harding; wha...@whatwg.org
Subject: Re: [whatwg] More YouTube response

On Fri, 02 Jul 2010 12:13:00 +0200, Shane Fagan shanepatrickfa...@ubuntu.com 
wrote:
 Well this isnt really a list where we should talk about the dos and 
 donts of web content distribution. DRM content can be embedded in the 
 video tag and decoded using installable plugins so its not really an 
 issue for this list I dont think. We cant dictate how the specs are 
 used so try to keep the conversation technology neutral.

Whether playing video requires a plugin is very much an issue for this list, I 
think. What Henri explained -- not having lock-in to a particular platform 
because of proprietary plugins -- is a large part of the reason why we have 
video in the first place.


--
Anne van Kesteren
http://annevankesteren.nl/



Re: [whatwg] More YouTube response

2010-07-07 Thread Marques Johansson

 Yes, the browser disconnects, and scripts have no influence over it. With
 preload=metadata implemented, it should disconnect as soon as possible
 after getting enough data for the first frame. For preload=auto, it will
 disconnect after buffering X seconds of data. If you need more granularity
 than that, I suggest server-side control informed by information collected
 by JavaScript. If browsers handled a short reply to a range request, it
 should work just fine, no?


Yes.  I started my quest as a Firefox bug report
https://bugzilla.mozilla.org/show_bug.cgi?id=570755  .. The developers
weren't sure that the HTTP spec actually permits a browser to handle a short
response in this way.  When I went fishing around through the spec I found
some things that seemed to permit this and other things that contradicted
them (noted in the bug report).  I started mailing the HTTP-bis group but
they were not convinced either
http://lists.w3.org/Archives/Public/ietf-http-wg/2010AprJun/0339.html.

Chrome handles short 206s the same way Opera's ogg handler does but nothing
else does.


Re: [whatwg] More YouTube response

2010-07-07 Thread John Harding
MySpace is my canonical example - they allow arbitrary SWFs to be embedded
in profiles, but not iframes.  Flash added support a while back that
allows containing pages to block SWFs from executing script or accessing the
contents of the page, which MySpace enforces by rewriting the embed tag
that users post.  Before that, yes, allowing arbitrary SWFs to be posted by
users was a huge security hole.

Regardless, I think we're all agreed on the path forward (Use iframes to
embed content instead of naked embed tags) and just need to start moving
on it, and the ball is largely in YouTube's court on this point.

-John

On Fri, Jul 2, 2010 at 6:20 PM, Maciej Stachowiak m...@apple.com wrote:


 On Jul 2, 2010, at 6:04 PM, Maciej Stachowiak wrote:

 
  Any site which does that has a giant security hole, since Flash can be
 used to arbitrarily script the embedding page. It's about as safe as
 allowing embedding of arbitrary off-site script. If you are aware of sites
 that allow embedding of arbitrary off-site Flash, you should alert them to
 the potential security risks. For example a social network site that allowed
 this would be vulnerable to a self-propagating worm.
 
  What I have heard before is that sites whitelist specific SWFs or Flash
 from specific domains. I'm don't have any first-hand knowledge of how sites
 actually do it.

 With testing I found at least one site where I can apparently embed
 arbitrary SWFs. However, this site has per-user domains, so it might be
 relatively safe. This site also allows me to embed arbitrary content in an
 iframe.

 Regards,
 Maciej





Re: [whatwg] More YouTube response

2010-07-07 Thread John Harding
Ok - sounds like pretty much unanimous objection to the idea of DRM plugins
being instantiated via video tag.  I'll still be pushing on the DRM plugin
providers to implement an interface that mimics the video tag - my primary
goal is to be able to have a single player implementation independent of
whether or not DRM is involved.  It's not the end of the world if one uses
video and the other uses embed.

-John

On Mon, Jul 5, 2010 at 8:45 AM, Nils Dagsson Moskopp 
nils-dagsson-mosk...@dieweltistgarnichtso.net wrote:

 John Harding jhard...@google.com schrieb am Thu, 1 Jul 2010 15:59:37
 -0700:

  1. Standard Video Format
  […]
  On the current path, a content provider knows
  that by offering H.264 and WebM, they can reach all HTML5-capable
  browsers.  This honestly is a reasonable state for YouTube right now
  - we use H.264 in cases outside the video tag as well, but it would
  be nice to converge on a single baseline format at some point in the
  future.

 Practically, I think the ball is / was in Apple's court to decide this.
 While to this day other browser makers have decided to ship two (!)
 royalty-free video formats (Theora and VP8), Apple is the single H.264
 holdout, and they have a tight itegration to their hardware as well.

 Sadly, I do not have hope for any consolidation regarding video
 formats. And while Youtube may be fine with having to provide only two
 formats instead of a dozen, for the common smaller webmaster this is a
 significant task, as transcoding resources are limited.

 Recently, I have been discussing video implementation with the
 administrator of an imageboard. It was ultimately decided to not add
 this feature, precisely because of the multitude of video formats of
 which none can be played in every modern browser. It's a shame.

  […]

  3. Content Protection
  […]
  The basic requirements
  around content protection that we get from content owners basically
  consist of encrypting the content and limiting the decryption to a
  verified and authorized client - the realm of traditional DRM.

 This can not possibly work if you have an open standard, which by
 design has to be implementable by everyone who cares, which includes a
 wide range of free and proprietary software vendors.

  Rather than ask browsers to get into the DRM business, what I think
  would work best is having a means for 3rd party DRM providers to
  supply browser plug-ins which implement the video tag for protected
  content - not all that different than selecting a pluggable codec.

 To define a feature like that would hurt an otherwise open standard and
 help to balkanize the browser market even more. If you really want to
 do this, why not just use flash / java / whatever can deliver using
 already available proprietary means ?

  […]


 Greetings,
 --
 Nils Dagsson Moskopp // erlehmann
 http://dieweltistgarnichtso.net



Re: [whatwg] More YouTube response

2010-07-06 Thread Marques Johansson
On Mon, Jul 5, 2010 at 10:25 PM, Henri Sivonen hsivo...@iki.fi wrote:

 On Jul 5, 2010, at 13:10, Marques Johansson wrote:

  For the content that is not protected the download or stream is metered
 so the client can be charged only for the time they spent watching the
 content.  We error on the customer's side for things like buffering and
 misreported play segments.

 There'd be no problem if you were selling content by title (plus free
 trailer for sampling) instead of selling it by minute.


If a user is paying for bandwidth why should they need to pay for a download
of the full movie when they are only interested in a few scenes or a few key
seconds of the video.

A friend of mine called this weekend to confirm that a scene in Back to the
Future 3 that has been popping up online was actually in the movie and not
just some Internet hoax.  He called to have me watch a particular segment on
the DVD.  I watched all of 3 minutes of the movie to confirm the original
scene contents.  Doc Brown's young blond haired train companion (who only
appears at the end of the movie) displays a very preverse set of gestures in
his 10 seconds of screen time that should have been edited out (I dodged all
spoilers).  There is a market for this kind of viewing habit that does not
insist on the consumer purchasing a full right/license to the entire video
nor the bandwidth or storage to accommodate it.

When you are selling adult content - many users are much happier to pay for
a few minutes of content that they seek through rather than a full movie
that they will have little interest in watching again.  The difference can
easily be $.16 versus $16.  As for trailers, many of our plans include
additional time and all users that have ever purchased get 3 free 30 second
plays weekly.  That being said, I don't think the business models of one of
the largest online video markets should put be on trial through a by a
standards list.

 I think the discussion that DRM is irrelevant has its merits, but the
 contracts and services at play have a real value regardless of how
 distribution is restricted.

 I think the technology providers shouldn't feel an obligation to cater to
 particular contract models--especially when it complicates the technology.
 It makes more sense to draft contracts that are reasonable given the
 technology. (An example of a contract that I think technology providers
 shouldn't attempt to cater for is a content licensing contract that tries to
 distinguish between desktops, mobile devices and TVs. Such a contract makes
 no sense when devices of any kind can support the same standards.)


I think providers cater to the technology that's available.  At the time
these contracts were drawn up Windows Media player and Real were leading the
streaming video market.  The contracts and services in place now were
created pre-Youtube, when most users accessed the site with a 56 modem or
less.  The service was geared toward online streaming and streaming rentals
rather than downloads - which could take some users days to complete - or
longer when coupled with bad re-try behaviors in browsers.  Cell phones
couldn't play let alone download a video over their 14kbps connection.


  For my purposes I am interested in application-controlled video delivery.
  I want to be able to deliver unprotected mp4, webm, or ogv content in a
 metered way.  If the user has payed to watch the entire video once and has
 managed to work around HTTP no-cache and the other constraints that a normal
 browser viewed experience would have, then they will have succeeding in
 downloading a copy of the video - a task which they could have accomplished
 with a VM session or through other means regardless of DRM.

 If the customers pay for seeing an entire title, why is it a problem if a
 customer once in a while downloads the bytes twice? Surely it is simpler to
 bake the average bandwidth cost into the price and not complicate the way
 the delivery technology behaves.


We have different plans available.  Some allow a user to stream a chosen
video as often as they want.  There are plans that allow users to stream an
entire studios selection of videos on demand.  This likens the service to a
monthly membership site and the company I work for has found that many users
prefer to not have that sort of commitment - preferring instead to pay for
what they watch when they watch it. The choice is determined by the content
provider and the user - we accomodate both parties to the best of our
ability.


  These requests can be seen as generally allowing servers to reduce load
 for video or large file downloads.  Since a client may be able to download 5
 minutes of video in under a minute I would like to see the client disconnect
 from the server and reconnect in 5 minutes to get the additional content.

 Wouldn't this be a non-problem if the customers paid by title? In that
 case, it would seem pointless to worry about the content getting downloaded
 faster 

Re: [whatwg] More YouTube response

2010-07-06 Thread Marques Johansson
On Mon, Jul 5, 2010 at 7:53 PM, Bjartur Thorlacius svartma...@gmail.comwrote:

 On Mon, 5 Jul 2010, Marques Johansson marq...@displague.com wrote:
  The company I work for, VOD.com (sfw) (aka Hotmovies .com and clips .com
 -
  nsfw (spaces added)), offer video on demand services to thousands of

If I understand correctly, you are content distributors and video encoders.


Yes.


  Customers can watch movies by purchasing packages of time or paying for
 DRM
  protected rentals or for some of our sites and videos they can pay for
  unprotected video.  The protected content (rentals) comes in the form of
 WMV
  or DivX files using either DivX's service of Windows Media Server.
 So you sell copies for money and a promise to delete the copy after
 it's use. That's like selling a book, printing Burn after reading
 on it and calling yourself a library. Also the book shall not be used
 for unauthorized uses, e.g. put under a table foot, lent to a friend
 or read repeatedly. The latter two cases may be solved by going to the
 library and buying another copy, other can't.

 Many people see DRM as an hybrid between a lock and a automagical fire
 lighter.


Yes, let's get Amazon MP3 and the Itunes store closed down immediately.  I'm
not lobbying for DRM inclusion into HTML5 - I'm looking for server side HTML
or HTTP ways to limit transfer sizes.

Once a user has bought a copy, the copy has been bought and how
 (often) he uses said copy isn't your probem. You've successfully
 distributed and charged for the content. Job's done. A technical user
 will probably be able to copy the video to permanent storage whatever
 you do. Multi-pricing can also be achieved by other means, such as by
 resolution crippling. Watermarking to aid with tracking down grand scale
 pirates seems to be an OK thing to do.


I know that a technical user will have the ability to do this.  They will
have at least paid for one copy.


 Server load can also be reduced by e.g. P2P, though users may want the
 price to drop in proportion to their uploads.


I am using a standard video format and standard HTTP/HTML to distribute
video.  You don't see many P2P HTTP solutions around these days.

Bandwidth isn't the issue in my case, but I would rather have the user
disconnect from the server and play the video they've got before requesting
more.  The less open / throttled connections the server has to deal with the
better it performs.


Re: [whatwg] More YouTube response

2010-07-06 Thread Philip Jägenstedt
On Tue, 06 Jul 2010 15:19:35 +0200, Marques Johansson  
marq...@displague.com wrote:



On Mon, Jul 5, 2010 at 10:25 PM, Henri Sivonen hsivo...@iki.fi wrote:


On Jul 5, 2010, at 13:10, Marques Johansson wrote:

 For the content that is not protected the download or stream is  
metered

so the client can be charged only for the time they spent watching the
content.  We error on the customer's side for things like buffering and
misreported play segments.

There'd be no problem if you were selling content by title (plus free
trailer for sampling) instead of selling it by minute.



If a user is paying for bandwidth why should they need to pay for a  
download
of the full movie when they are only interested in a few scenes or a few  
key

seconds of the video.

A friend of mine called this weekend to confirm that a scene in Back to  
the
Future 3 that has been popping up online was actually in the movie and  
not
just some Internet hoax.  He called to have me watch a particular  
segment on

the DVD.  I watched all of 3 minutes of the movie to confirm the original
scene contents.  Doc Brown's young blond haired train companion (who only
appears at the end of the movie) displays a very preverse set of  
gestures in
his 10 seconds of screen time that should have been edited out (I dodged  
all
spoilers).  There is a market for this kind of viewing habit that does  
not
insist on the consumer purchasing a full right/license to the entire  
video

nor the bandwidth or storage to accommodate it.

When you are selling adult content - many users are much happier to pay  
for

a few minutes of content that they seek through rather than a full movie
that they will have little interest in watching again.  The difference  
can

easily be $.16 versus $16.  As for trailers, many of our plans include
additional time and all users that have ever purchased get 3 free 30  
second
plays weekly.  That being said, I don't think the business models of one  
of

the largest online video markets should put be on trial through a by a
standards list.


I think the discussion that DRM is irrelevant has its merits, but the
contracts and services at play have a real value regardless of how
distribution is restricted.

I think the technology providers shouldn't feel an obligation to cater  
to
particular contract models--especially when it complicates the  
technology.

It makes more sense to draft contracts that are reasonable given the
technology. (An example of a contract that I think technology providers
shouldn't attempt to cater for is a content licensing contract that  
tries to
distinguish between desktops, mobile devices and TVs. Such a contract  
makes

no sense when devices of any kind can support the same standards.)



I think providers cater to the technology that's available.  At the time
these contracts were drawn up Windows Media player and Real were leading  
the

streaming video market.  The contracts and services in place now were
created pre-Youtube, when most users accessed the site with a 56 modem or
less.  The service was geared toward online streaming and streaming  
rentals

rather than downloads - which could take some users days to complete - or
longer when coupled with bad re-try behaviors in browsers.  Cell phones
couldn't play let alone download a video over their 14kbps connection.


 For my purposes I am interested in application-controlled video  
delivery.

 I want to be able to deliver unprotected mp4, webm, or ogv content in a
metered way.  If the user has payed to watch the entire video once and  
has
managed to work around HTTP no-cache and the other constraints that a  
normal

browser viewed experience would have, then they will have succeeding in
downloading a copy of the video - a task which they could have  
accomplished

with a VM session or through other means regardless of DRM.

If the customers pay for seeing an entire title, why is it a problem if  
a
customer once in a while downloads the bytes twice? Surely it is  
simpler to
bake the average bandwidth cost into the price and not complicate the  
way

the delivery technology behaves.



We have different plans available.  Some allow a user to stream a chosen
video as often as they want.  There are plans that allow users to stream  
an
entire studios selection of videos on demand.  This likens the service  
to a
monthly membership site and the company I work for has found that many  
users
prefer to not have that sort of commitment - preferring instead to pay  
for
what they watch when they watch it. The choice is determined by the  
content

provider and the user - we accomodate both parties to the best of our
ability.


 These requests can be seen as generally allowing servers to reduce  
load
for video or large file downloads.  Since a client may be able to  
download 5
minutes of video in under a minute I would like to see the client  
disconnect
from the server and reconnect in 5 minutes to get the additional  
content.


Wouldn't 

Re: [whatwg] More YouTube response

2010-07-06 Thread Marques Johansson
On Mon, Jul 5, 2010 at 4:26 PM, Aryeh Gregor
simetrical+...@gmail.comsimetrical%2b...@gmail.com
 wrote:

 On Mon, Jul 5, 2010 at 4:10 PM, Marques Johansson marq...@displague.com
 wrote:
  For my purposes I am interested in application-controlled video delivery.
  I
  want to be able to deliver unprotected mp4, webm, or ogv content in a
  metered way.  If the user has payed to watch the entire video once and
 has
  managed to work around HTTP no-cache and the other constraints that a
 normal
  browser viewed experience would have, then they will have succeeding in
  downloading a copy of the video - a task which they could have
 accomplished
  with a VM session or through other means regardless of DRM.

 There's no way to stop this at the markup level, since the user could
 just configure a user-agent to ignore the attributes, or manually
 remove them with a tool like Firebug.  More to the point, since this
 feature doesn't provide significant benefit to many users or authors,
 no user agent would bother implementing it in the first place.

 You should instead look into to writing server-side scripts that meet
 your needs.  When the user requests a video, have the script check how
 much video the user is authorized to view, and just truncate it after
 that point.  Or have it insert an extra clip at the end of what
 they're allowed to view saying you have to pay more to keep viewing,
 then truncate it.  Or whatever.  This is pretty easy to do, and not
 possible for the user to circumvent.


If the UA didn't follow the prescribed size constraints they would get a 403
response (or a better 4xx range too large if it existed).

The benefit to the user is that they could have less open network
connections while streaming video from server controlled sites and those
sites will have the ability to meter their usage more accurately.

Inserting an extra clip at the end is more of a playlist or scripting
answer.  Or perhaps a a live re-encoding answer.   I'm looking for a way to
give the user the raw video file in a metered way.  A 200 response or
partial 206 responses that returns less than the full requested range is not
handled by browsers in a consistent or usable way (for this purpose).  Only
Chrome will continue to fetch where the previous short 206 response left off
(request 1-10, server replies 1-5, request 6-10, server replies 6-10).  The
HTTP spec isn't clear about whether UAs should take this behavior - and so
they don't.

Some UAs request video without sending Range: bytes 0-.  The server has no
way to negotiate that the UA (a) must use ranges to complete the request or
that (b) the range requested is too large, retry will a smaller range.

 These requests can be seen as generally allowing servers to reduce load
 for
  video or large file downloads.  Since a client may be able to download 5
  minutes of video in under a minute I would like to see the client
 disconnect
  from the server and reconnect in 5 minutes to get the additional content.
  I
  would like to see the server have the ability to enforce this (through
 HTTP
  errors) or at least suggest it (through HTML5 attributes or additional
 HTTP
  headers).

 Well-written clients should already buffer only as much as they need
 to ensure the video will play smoothly.  The preload= attribute is
 already provided to allow authors to control this behavior.  When the
 client has read enough for now, it will just stop reading new content
 from the server until it needs more.  If the server thinks that the
 client is reading too fast, on the other hand, it can just send fewer
 packets.  Again, I don't think anything needs to be changed in HTML
 here.


All of the current video clients make requests like Range: 0- or (when you
seek) Range: 0-end_of_file.  I don't want to give them the whole 2gb file
right now, they may seek to the end of the video at any moment while the
server is paying to send that data and the transfer will have been wasted.
 I don't want to throttle the connection because that is also a waste of
resources.  I want the UA to request X many bytes (which equates to some
fragment of time), disconnect if they will be busy beyond the keep-alive
time, and come back when they need more video data.  A 200 response and an
unbounded 206 response do not permit this.

If the video tag included a minbuffer and a maxbuffer (at least the
latter) then the client would always have an upper bound on video ranges
requested.  If the UA failed to include this the server can give them a 403,
416, or some 4xx that does not yet exist.


Re: [whatwg] More YouTube response

2010-07-06 Thread Marques Johansson
On Tue, Jul 6, 2010 at 10:12 AM, Philip Jägenstedt phil...@opera.comwrote:

 On Tue, 06 Jul 2010 15:19:35 +0200, Marques Johansson 
 marq...@displague.com wrote:

 Is preload=none not enough? I can't imagine the actual bandwidth savings
 of more fine-grained control to be significant, probably any attempt by the
 browser to stop buffering after some time is good enough.


I have been using preload=metadata in my testing.  If the browser fetches
the metadata then they should be able to seek through the video more easily
and should have all the information they need to make partial requests with
upper bounds.  Again - I have no HTML or HTTP way to suggest the UA only
take X many bytes for now and come back later for more.

Since I see you are with Opera - I noticed that Opera will play ogg files in
a different way than webm files.  The ogg handler will handle short 206
responses by making requests for the next range (client requests 0-10,
server responds with a 206 status, bytes 0-5, client plays then fetches
bytes 6-10).  The webm handler will only play the range that was sent in the
initial 206 (client requests 0-10, server responds with a 206 status, bytes
0-5, client stops playing).

I also noticed that Opera will ignore no-cache headers on video content so a
206 fragment marked as no-cache can be rewinded and replayed without making
additional requests.  Chrome refetches the data.  Looking at this as a pure
HTTP matter I believe Chrome is taking the correct action.


Re: [whatwg] More YouTube response

2010-07-06 Thread Kornel Lesinski
On 6 Jul 2010, at 15:24, Marques Johansson wrote:

 A 200 response or partial 206 responses that returns less than the full 
 requested range is not handled by browsers in a consistent or usable way (for 
 this purpose).  Only Chrome will continue to fetch where the previous short 
 206 response left off (request 1-10, server replies 1-5, request 6-10, server 
 replies 6-10).  The HTTP spec isn't clear about whether UAs should take this 
 behavior - and so they don't.

It might be easier to get that fixed in browsers, than to get 
spec+implementation of a completely new feature.

 Some UAs request video without sending Range: bytes 0-.  The server has no 
 way to negotiate that the UA (a) must use ranges to complete the request or 
 that (b) the range requested is too large, retry will a smaller range.

You could respond with HTTP/1.0 and close connection. You could split movie 
into separate video files and hide that fact in the player's UI (sort-of like 
Apple's HTTP live streaming).

-- 
regards, Kornel



Re: [whatwg] More YouTube response

2010-07-06 Thread Philip Jägenstedt
On Tue, 06 Jul 2010 16:33:47 +0200, Marques Johansson  
marq...@displague.com wrote:


On Tue, Jul 6, 2010 at 10:12 AM, Philip Jägenstedt  
phil...@opera.comwrote:



On Tue, 06 Jul 2010 15:19:35 +0200, Marques Johansson 
marq...@displague.com wrote:

Is preload=none not enough? I can't imagine the actual bandwidth  
savings
of more fine-grained control to be significant, probably any attempt by  
the

browser to stop buffering after some time is good enough.



I have been using preload=metadata in my testing.  If the browser  
fetches
the metadata then they should be able to seek through the video more  
easily
and should have all the information they need to make partial requests  
with

upper bounds.  Again - I have no HTML or HTTP way to suggest the UA only
take X many bytes for now and come back later for more.


Opera hasn't implemented support for the preload attribute yet, I'm not  
sure what the status of other browsers are. I suspect that once all  
browsers have more conservative bandwidth management, the problem will be  
solved.


Since I see you are with Opera - I noticed that Opera will play ogg  
files in

a different way than webm files.  The ogg handler will handle short 206
responses by making requests for the next range (client requests 0-10,
server responds with a 206 status, bytes 0-5, client plays then fetches
bytes 6-10).  The webm handler will only play the range that was sent in  
the
initial 206 (client requests 0-10, server responds with a 206 status,  
bytes

0-5, client stops playing).


The demuxers and decoders are several layers away from the actual HTTP  
requests and responses, so I think the problem could be reproduced with  
either Ogg or WebM depending on chance.


Opera doesn't handle the case where the server returns the wrong amount of  
data very well. Fortunately, I've seen no live servers doing this yet.


I also noticed that Opera will ignore no-cache headers on video content  
so a
206 fragment marked as no-cache can be rewinded and replayed without  
making
additional requests.  Chrome refetches the data.  Looking at this as a  
pure

HTTP matter I believe Chrome is taking the correct action.


Thanks, I've noted this in our bug tracking system.

--
Philip Jägenstedt
Core Developer
Opera Software


Re: [whatwg] More YouTube response

2010-07-06 Thread Philip Jägenstedt
On Tue, 06 Jul 2010 16:24:45 +0200, Marques Johansson  
marq...@displague.com wrote:



On Mon, Jul 5, 2010 at 4:26 PM, Aryeh Gregor
simetrical+...@gmail.comsimetrical%2b...@gmail.com

wrote:


On Mon, Jul 5, 2010 at 4:10 PM, Marques Johansson  
marq...@displague.com

wrote:
 For my purposes I am interested in application-controlled video  
delivery.

 I
 want to be able to deliver unprotected mp4, webm, or ogv content in a
 metered way.  If the user has payed to watch the entire video once and
has
 managed to work around HTTP no-cache and the other constraints that a
normal
 browser viewed experience would have, then they will have succeeding  
in

 downloading a copy of the video - a task which they could have
accomplished
 with a VM session or through other means regardless of DRM.

There's no way to stop this at the markup level, since the user could
just configure a user-agent to ignore the attributes, or manually
remove them with a tool like Firebug.  More to the point, since this
feature doesn't provide significant benefit to many users or authors,
no user agent would bother implementing it in the first place.

You should instead look into to writing server-side scripts that meet
your needs.  When the user requests a video, have the script check how
much video the user is authorized to view, and just truncate it after
that point.  Or have it insert an extra clip at the end of what
they're allowed to view saying you have to pay more to keep viewing,
then truncate it.  Or whatever.  This is pretty easy to do, and not
possible for the user to circumvent.



If the UA didn't follow the prescribed size constraints they would get a  
403

response (or a better 4xx range too large if it existed).

The benefit to the user is that they could have less open network
connections while streaming video from server controlled sites and those
sites will have the ability to meter their usage more accurately.

Inserting an extra clip at the end is more of a playlist or scripting
answer.  Or perhaps a a live re-encoding answer.   I'm looking for a way  
to

give the user the raw video file in a metered way.  A 200 response or
partial 206 responses that returns less than the full requested range is  
not
handled by browsers in a consistent or usable way (for this purpose).   
Only
Chrome will continue to fetch where the previous short 206 response left  
off
(request 1-10, server replies 1-5, request 6-10, server replies 6-10).   
The
HTTP spec isn't clear about whether UAs should take this behavior - and  
so

they don't.

Some UAs request video without sending Range: bytes 0-.  The server  
has no
way to negotiate that the UA (a) must use ranges to complete the request  
or

that (b) the range requested is too large, retry will a smaller range.


The first request is tricky for the browser too. Having no idea of how big  
the resource is or what the bitrate is, there is no bounded request that  
makes sense, in my opinion. The downside is that for a conservative  
approach, the only solution is to abort the connection half way through,  
with the server having no idea when this will happen. I haven't seen any  
negative effects of this in practice yet, but this thread has me thinking  
that it could be better. Handling a short reply gracefully would be a good  
start.



These requests can be seen as generally allowing servers to reduce load
for
 video or large file downloads.  Since a client may be able to  
download 5

 minutes of video in under a minute I would like to see the client
disconnect
 from the server and reconnect in 5 minutes to get the additional  
content.

 I
 would like to see the server have the ability to enforce this (through
HTTP
 errors) or at least suggest it (through HTML5 attributes or additional
HTTP
 headers).

Well-written clients should already buffer only as much as they need
to ensure the video will play smoothly.  The preload= attribute is
already provided to allow authors to control this behavior.  When the
client has read enough for now, it will just stop reading new content
from the server until it needs more.  If the server thinks that the
client is reading too fast, on the other hand, it can just send fewer
packets.  Again, I don't think anything needs to be changed in HTML
here.



All of the current video clients make requests like Range: 0- or (when  
you
seek) Range: 0-end_of_file.  I don't want to give them the whole 2gb  
file

right now, they may seek to the end of the video at any moment while the
server is paying to send that data and the transfer will have been  
wasted.

 I don't want to throttle the connection because that is also a waste of
resources.  I want the UA to request X many bytes (which equates to some
fragment of time), disconnect if they will be busy beyond the keep-alive
time, and come back when they need more video data.  A 200 response and  
an

unbounded 206 response do not permit this.

If the video tag included a minbuffer and a maxbuffer (at 

Re: [whatwg] More YouTube response

2010-07-06 Thread Marques Johansson
On Tue, Jul 6, 2010 at 10:59 AM, Philip Jägenstedt phil...@opera.comwrote:

 On Tue, 06 Jul 2010 16:24:45 +0200, Marques Johansson 
 marq...@displague.com wrote:
 Some UAs request video without sending Range: bytes 0-.  The server has
 no

 way to negotiate that the UA (a) must use ranges to complete the request
 or
 that (b) the range requested is too large, retry will a smaller range.


 The first request is tricky for the browser too. Having no idea of how big
 the resource is or what the bitrate is, there is no bounded request that
 makes sense, in my opinion. The downside is that for a conservative
 approach, the only solution is to abort the connection half way through,
 with the server having no idea when this will happen. I haven't seen any
 negative effects of this in practice yet, but this thread has me thinking
 that it could be better. Handling a short reply gracefully would be a good
 start.


For webm files, Chrome requests 0-1024 and then some block near the end of
the file.  I assume that the meta data / time ranges are stored at these
locations.

As for bounded requests that make sense - I'm sure the server hosting the
content could suggest something ;-)

I've tried having the server disconnect a HTTP/1.1 200 response by doing a
php exit() before having sent the Content-Length specified number of
bytes.  Browsers did not attempt to pick up where the server left off.

I think you are suggesting that the client disconnect but without scripting
I don't really have control over that and if with scripting that doesn't
seem doable unless the video element could be feed with an appendBytes()
type of function.


Re: [whatwg] More YouTube response

2010-07-06 Thread Aryeh Gregor
On Tue, Jul 6, 2010 at 10:24 AM, Marques Johansson
marq...@displague.com wrote:
 The benefit to the user is that they could have less open network
 connections while streaming video from server controlled sites and those
 sites will have the ability to meter their usage more accurately.
 Inserting an extra clip at the end is more of a playlist or scripting
 answer.  Or perhaps a a live re-encoding answer.   I'm looking for a way to
 give the user the raw video file in a metered way.

It sounds like your use-case is very special, and best handled by
script.  I suggested server-side script -- you could do that today.
Just cut off the HTTP connection when the user has used up their
allotted time.  Alternatively, it might be reasonable to have
client-side scripting for video that's flexible enough to do what you
want.  But a dedicated declarative feature is just not reasonable for
such a specific purpose.

 A 200 response or
 partial 206 responses that returns less than the full requested range is not
 handled by browsers in a consistent or usable way (for this purpose).  Only
 Chrome will continue to fetch where the previous short 206 response left off
 (request 1-10, server replies 1-5, request 6-10, server replies 6-10).  The
 HTTP spec isn't clear about whether UAs should take this behavior - and so
 they don't.
 Some UAs request video without sending Range: bytes 0-.  The server has no
 way to negotiate that the UA (a) must use ranges to complete the request or
 that (b) the range requested is too large, retry will a smaller range.

You don't need to return less than the browser requests, until it
actually uses up the bandwidth the user has paid for.  Let the browser
fetch as much of the video as the user wants to view, using
preload=metadata when that's supported by all browsers.  Every time
the server sends a new chunk of video to the user, it should deduct
that much from the user's current balance.  When the user has received
as much video as he's paid for, just have the script exit without
sending more output.

You don't have to return a proper Range header and expect the browser
to issue new requests.  Just pretend you're serving the whole
resource, then cut it off unexpectedly before you've actually returned
all the content.  The browser will handle this fine, it will just
treat it as a network error.  A client-side script can then detect the
error and present nice UI.

 All of the current video clients make requests like Range: 0- or (when you
 seek) Range: 0-end_of_file.  I don't want to give them the whole 2gb file
 right now, they may seek to the end of the video at any moment while the
 server is paying to send that data and the transfer will have been wasted.
  I don't want to throttle the connection because that is also a waste of
 resources.  I want the UA to request X many bytes (which equates to some
 fragment of time), disconnect if they will be busy beyond the keep-alive
 time, and come back when they need more video data.  A 200 response and an
 unbounded 206 response do not permit this.

This part is handled by the preload attribute already.  You just have
to wait for browsers to actually support it.


Re: [whatwg] More YouTube response

2010-07-06 Thread Henri Sivonen
On Jul 6, 2010, at 06:19, Marques Johansson wrote:
 That being said, I don't think the business models of one of the largest 
 online video markets should put be on trial through a by a standards list.

Well, if you are suggesting that your use case needs to be addressed by 
introducing browser-side features, putting the use case on trial is a routine 
part of how specs are developed at the WHATWG.

In particular, it's worthwhile to examine if the use case or a close 
approximation thereof could be addressed without adding features to the browser 
side.

One crude approximation would be breaking the video title into chunks similar 
to the chunks between commercials on TV such that each chunk would be a video 
file and a JS-based UI would continue from one chunk to the next. This way, 
billing could be per chunk. (But see below for an even better way.)

  Partial requests are native to HTTP and seeking is natural for a healthy 
 streamed viewing habit - I'm look for a way to get the browser to take the 
 servers recommendation that the content be fetched in a particular way - we 
 have content negotiation of transfer encoding and image quality, why not 
 allow the server to negotiate the transfer size for the benefit of the user 
 and the server?

I think it's not particularly natural to put bandwidth rate control on the 
browser side or on/above the HTTP layer. 

I think it's more natural to control bandwidth on the TCP level, and, of the 
two sides of TCP, the server is the one that you can trust to do it per your 
parameters. The server could write data into the TCP stream only a little ahead 
of the playback time. This way, you could assume that the video has been played 
to the precision of how much data you send ahead of the playback position. To 
know the playback position, you could have a JS-based video player send the 
current playback position to the server periodically using XHR or a Web Socket 
connection. Whenever you receive a playback position heartbeat, you'd flush a 
bit more data into the video file's TCP stream and account it as viewed.

Downsides: Two TCP connections instead of one, but having two data channels 
isn't so different from RTSP/RTP.
Upsides: No additional browser features required. No need to trust the browser 
to do bandwidth rate control according to your parameters, since you decide how 
often to send the heartbeat and how much data to send per heartbeat. Avoidance 
of the header overhead of multiple HTTP requests (in the Web Socket case--not 
in the XHR case).

-- 
Henri Sivonen
hsivo...@iki.fi
http://hsivonen.iki.fi/




Re: [whatwg] More YouTube response

2010-07-05 Thread Mikko Rantalainen

2010-07-05 01:56 EEST: David Gerard:

On 4 July 2010 13:57, bjartursvartma...@gmail.com  wrote:


I fail to see how BBC would be harmed by the usage of alternative
software. Its business model is about content, not software, right?


See, you're using logic and sense ... about half the BBC want to just
*make their stuff available*, the other half are worried about the
thicket of laws and agreements that made sense in the days of analogue
tape broadcast on analogue television that, despite not making sense
on the Internet, still bind them legally. (Broadcast rights, residuals
for actors and writers, etc.) These are serious and real concerns and
they can't just ignore them.


So, you're arguing that DRM is not required, right?

Basically the whole problem is about how current content distributors 
(e.g. BBC) have made stupid contracts in the history and are trying to 
work around those stupid contracts with DRM instead of doing the right 
thing and do one of the following:


(1) renegotiate the contracts to allow redistribution, or
(2) stop trying to redistribute content you don't have proper rights to do.

Especially, the content distributors should immediately stop pretending 
that DRM allows for any kind of protection. It's mathematically 
impossible. It's like trying to send an encrypted message to Bob with a 
requirement that Bob cannot have access to the message. That problem 
cannot be solved. For that problem, a decision needs to be made:


(1) Bob is allowed to get access to the message, or
(2) Bob is not allowed to get access to the message (never send it!)

Notice how this is similar to the DRM case above?

Introducing a DRM system is about *trying to not do the decision* if you 
really *want to distribute the content or not*. Such system should not 
ever be standardized because it really cannot ever work, by definition.


--
Mikko


Re: [whatwg] More YouTube response

2010-07-05 Thread David Gerard
On 5 July 2010 07:51, Mikko Rantalainen mikko.rantalai...@peda.net wrote:

 So, you're arguing that DRM is not required, right?


I'm arguing that it can't possibly make sense. And that standardising
a DRM is not something anyone sensible should touch.


 Especially, the content distributors should immediately stop pretending that
 DRM allows for any kind of protection. It's mathematically impossible. It's
 like trying to send an encrypted message to Bob with a requirement that Bob
 cannot have access to the message. That problem cannot be solved. For that
 problem, a decision needs to be made:
 (1) Bob is allowed to get access to the message, or
 (2) Bob is not allowed to get access to the message (never send it!)
 Notice how this is similar to the DRM case above?
 Introducing a DRM system is about *trying to not do the decision* if you
 really *want to distribute the content or not*. Such system should not ever
 be standardized because it really cannot ever work, by definition.


Yes, precisely. Law can contain absurdities - in the BBC case above,
streaming and downloading are legally different things, even
though technically they're identical - but putting such absurdities
into a technical spec is nonsensical.


- d.


Re: [whatwg] More YouTube response

2010-07-05 Thread Schalk Neethling
Hi John,

 

Many good responses and I agree with most but, what I think would work best
is having a means for 3rd party DRM providers to supply browser plug-ins
which implement the video tag for protected content, I am not so sure. Is
one of the reasons for tags such as video not to move away from third
party plugin's and have this baked into the UA instead?

 

The general idea is good, I just believe implementing this via 3rd party
plugin's is not the best way forward.

 

Schalk Neethling

 

From: whatwg-boun...@lists.whatwg.org
[mailto:whatwg-boun...@lists.whatwg.org] On Behalf Of John Harding
Sent: Friday, July 02, 2010 1:00 AM
To: wha...@whatwg.org
Cc: Andy Berkheimer
Subject: [whatwg] More YouTube response

 

Glad to see my post spurred some good discussion - I'll try to address topic
by topic below, but one of the great points made is that some of the
functionality YouTube needs from browsers probably doesn't belong in the
HTML5 spec (e.g. streaming, content protection).  I'm happy to take those
discussions elsewhere if this forum is inappropriate, but it seems like it
would likely be the same group of people, just on a different mailing list.

 

1. Standard Video Format

Yes, this has been debated a lot, and I generally agree that leaving it out
of the spec was the best way forward for the spec.  Shane Fagan pointed out
that Flash supports multiple different codecs, which is true, but every
version since Flash 7 has supported Sorenson Spark video and MP3 audio.  I
don't think anyone is suggesting that browsers shouldn't support multiple
codecs, but having a consistent baseline is important.  On the current path,
a content provider knows that by offering H.264 and WebM, they can reach all
HTML5-capable browsers.  This honestly is a reasonable state for YouTube
right now - we use H.264 in cases outside the video tag as well, but it
would be nice to converge on a single baseline format at some point in the
future.

 

2. Robust Video Streaming

Andy Berkheimer on our team has been putting some thought into this, so I'll
defer to him for more specific proposals.  For an app like YouTube, it is
extremely useful to have fine-grained control over how the browser fetches
media from the server.  Whether the details belong in the HTML5 spec or not
depends on the preferred design - something similar to Flash 10.1's
appendBytes() mechanism would affect the video tag interface, for example,
while a transport protocol could be completely separate.

 

3. Content Protection

Some of the discussion here seems to have conflated application-controlled
video delivery with content protection, but in an ideal world, the two are
independent.  The basic requirements around content protection that we get
from content owners basically consist of encrypting the content and limiting
the decryption to a verified and authorized client - the realm of
traditional DRM.  Rather than ask browsers to get into the DRM business,
what I think would work best is having a means for 3rd party DRM providers
to supply browser plug-ins which implement the video tag for protected
content - not all that different than selecting a pluggable codec.  

 

4. Encapsulation and Embedding

As several people pointed out (and which I tried to get at in my post), this
is really an ecosystem issue rather than a change needed in the spec or in
browsers.  I suspect it's going to take some time, but the flexibility of
embedding content via iframe will be a big step forward.

 

5. Fullscreen

Maciej actually covered YouTube's requirements pretty well.  I'd add that
it's not just controls that are important for us to maintain: we have a lot
of additional content that needs to display with and sometimes on top of the
video - our interactive annotations, captions, and ads most notably.
Maciej's proposal also looks fairly reasonable, though some thoughts on it:

When limiting keyboard input, I'd suggest devices w/ onscreen keyboards
simply disable the keyboard.  Applications that work well with touch
interfaces generally provide gesture alternatives for the limited set of
keys that would be available.  Alternately, devices could limit the keyboard
to the set of allowed keys.

Keyboard restrictions are better than not having fullscreen support, though
they do limit functionality - it would prevent us from supporting search in
fullscreen mode, for example.  

 

6. Camera and Micrphone access

As pointed out, this is not strictly an issue for video tag, though
certainly related especially for local preview.  I have not been closely
following the work on the device element, though that seems to be where
this is headed.

 

-John



Re: [whatwg] More YouTube response

2010-07-05 Thread Nils Dagsson Moskopp
John Harding jhard...@google.com schrieb am Thu, 1 Jul 2010 15:59:37
-0700:

 1. Standard Video Format
 […]
 On the current path, a content provider knows
 that by offering H.264 and WebM, they can reach all HTML5-capable
 browsers.  This honestly is a reasonable state for YouTube right now
 - we use H.264 in cases outside the video tag as well, but it would
 be nice to converge on a single baseline format at some point in the
 future.

Practically, I think the ball is / was in Apple's court to decide this.
While to this day other browser makers have decided to ship two (!)
royalty-free video formats (Theora and VP8), Apple is the single H.264
holdout, and they have a tight itegration to their hardware as well.

Sadly, I do not have hope for any consolidation regarding video
formats. And while Youtube may be fine with having to provide only two
formats instead of a dozen, for the common smaller webmaster this is a
significant task, as transcoding resources are limited.

Recently, I have been discussing video implementation with the
administrator of an imageboard. It was ultimately decided to not add
this feature, precisely because of the multitude of video formats of
which none can be played in every modern browser. It's a shame.

 […]

 3. Content Protection
 […]
 The basic requirements
 around content protection that we get from content owners basically
 consist of encrypting the content and limiting the decryption to a
 verified and authorized client - the realm of traditional DRM.

This can not possibly work if you have an open standard, which by
design has to be implementable by everyone who cares, which includes a
wide range of free and proprietary software vendors.

 Rather than ask browsers to get into the DRM business, what I think
 would work best is having a means for 3rd party DRM providers to
 supply browser plug-ins which implement the video tag for protected
 content - not all that different than selecting a pluggable codec.

To define a feature like that would hurt an otherwise open standard and
help to balkanize the browser market even more. If you really want to
do this, why not just use flash / java / whatever can deliver using
already available proprietary means ?

 […]


Greetings,
-- 
Nils Dagsson Moskopp // erlehmann
http://dieweltistgarnichtso.net


signature.asc
Description: PGP signature


Re: [whatwg] More YouTube response

2010-07-05 Thread Shane Fagan
On Mon, 2010-07-05 at 17:45 +0200, Nils Dagsson Moskopp wrote:
 John Harding jhard...@google.com schrieb am Thu, 1 Jul 2010 15:59:37
 -0700:
 
  1. Standard Video Format
  […]
  On the current path, a content provider knows
  that by offering H.264 and WebM, they can reach all HTML5-capable
  browsers.  This honestly is a reasonable state for YouTube right now
  - we use H.264 in cases outside the video tag as well, but it would
  be nice to converge on a single baseline format at some point in the
  future.
 
 Practically, I think the ball is / was in Apple's court to decide this.
 While to this day other browser makers have decided to ship two (!)
 royalty-free video formats (Theora and VP8), Apple is the single H.264
 holdout, and they have a tight itegration to their hardware as well.
 
 Sadly, I do not have hope for any consolidation regarding video
 formats. And while Youtube may be fine with having to provide only two
 formats instead of a dozen, for the common smaller webmaster this is a
 significant task, as transcoding resources are limited.
 
 Recently, I have been discussing video implementation with the
 administrator of an imageboard. It was ultimately decided to not add
 this feature, precisely because of the multitude of video formats of
 which none can be played in every modern browser. It's a shame.

If I remember correctly and dont ask me for a link to where I read it
but the problem is still patent suits I believe. MPEG-LA as soon as they
heard about the VP8 codec open sourcing they said they were getting a
patent pool together to challenge its adoption anywhere. Although I
believe that there is nothing to worry about because Google has a huge
patent pool to fight back with. 

I think this issue is still a huge sticking point for everyone and I
dont see a resolution other than to let everyone use whats comfortable
and see what sticks. Its a waiting game im afraid but as for adding webm
to the HTML5 spec I still dont think we can add it at this stage IMHO.

As for Apple not picking it up you would have to ask someone at Apple.
Id say its still the threat from MPEG-LA's patent pool that still hasnt
attacked Theora like it said it would a few years back so it seems like
an empty threat to me. 

--fagan




Re: [whatwg] More YouTube response

2010-07-05 Thread Marques Johansson
The company I work for, VOD.com (sfw) (aka Hotmovies .com and clips .com -
nsfw (spaces added)), offer video on demand services to thousands of
studios.  Our sites are central locations for customers who want to watch
something - this is a service in itself.  We handle encoding and content
distribution and streaming sales for these studios without any cost to them.
 They send us video content and we send them a monthly check. Without
services like the ones we provide many of these studios (some are mom and
pop shops) wouldn't otherwise have the ability to sell their content online
in this fashion.

Customers can watch movies by purchasing packages of time or paying for DRM
protected rentals or for some of our sites and videos they can pay for
unprotected video.  The protected content (rentals) comes in the form of WMV
or DivX files using either DivX's service of Windows Media Server.

For the content that is not protected the download or stream is metered so
the client can be charged only for the time they spent watching the content.
 We error on the customer's side for things like buffering and misreported
play segments.

I think the discussion that DRM is irrelevant has its merits, but the
contracts and services at play have a real value regardless of how
distribution is restricted.

For my purposes I am interested in application-controlled video delivery.  I
want to be able to deliver unprotected mp4, webm, or ogv content in a
metered way.  If the user has payed to watch the entire video once and has
managed to work around HTTP no-cache and the other constraints that a normal
browser viewed experience would have, then they will have succeeding in
downloading a copy of the video - a task which they could have accomplished
with a VM session or through other means regardless of DRM.  If we need
additionally protection we can add watermarking to legally go after content
thieves since we know the IP and username of the viewer in most cases.

My requests have focused on things like video minbuffer=100k
maxbuffer=200k which could also apply to a source element.  I want to make
sure that the browser always uses Range: bytes x-y in requests (since I
have no other way to require that a browser use ranges or use ranges with an
upper bound).  I can use this tool to make sure UAs do not download more
content than the user has watched (which costs them money in some way).
 I've also been suggesting HTTP changes that would permit this UA behavior
(a 4xx for Ranges Required, a 4xx for Range too large, or explicitly
defining that a 206 response can include less bytes than requested and the
UA should follow-up with additional ranged requests).

While an HTML5 solution is easy to make possible as their is no legacy to
worry about and the spec is still floating about, an HTTP solution would
allow me to provide metered content flow without leaving HTTP sessions open
(throttling) and without the need for a video element - permitting users to
use their native http streaming players.

These requests can be seen as generally allowing servers to reduce load for
video or large file downloads.  Since a client may be able to download 5
minutes of video in under a minute I would like to see the client disconnect
from the server and reconnect in 5 minutes to get the additional content.  I
would like to see the server have the ability to enforce this (through HTTP
errors) or at least suggest it (through HTML5 attributes or additional HTTP
headers).
On Mon, Jul 5, 2010 at 2:51 AM, Mikko Rantalainen 
mikko.rantalai...@peda.net wrote:

 2010-07-05 01:56 EEST: David Gerard:

  On 4 July 2010 13:57, bjartursvartma...@gmail.com  wrote:

  I fail to see how BBC would be harmed by the usage of alternative
 software. Its business model is about content, not software, right?


 See, you're using logic and sense ... about half the BBC want to just
 *make their stuff available*, the other half are worried about the
 thicket of laws and agreements that made sense in the days of analogue
 tape broadcast on analogue television that, despite not making sense
 on the Internet, still bind them legally. (Broadcast rights, residuals
 for actors and writers, etc.) These are serious and real concerns and
 they can't just ignore them.


 So, you're arguing that DRM is not required, right?

 Basically the whole problem is about how current content distributors (e.g.
 BBC) have made stupid contracts in the history and are trying to work around
 those stupid contracts with DRM instead of doing the right thing and do one
 of the following:

 (1) renegotiate the contracts to allow redistribution, or
 (2) stop trying to redistribute content you don't have proper rights to do.

 Especially, the content distributors should immediately stop pretending
 that DRM allows for any kind of protection. It's mathematically impossible.
 It's like trying to send an encrypted message to Bob with a requirement that
 Bob cannot have access to the message. That problem cannot be 

Re: [whatwg] More YouTube response

2010-07-05 Thread Aryeh Gregor
On Mon, Jul 5, 2010 at 11:45 AM, Nils Dagsson Moskopp
nils-dagsson-mosk...@dieweltistgarnichtso.net wrote:
 Practically, I think the ball is / was in Apple's court to decide this.
 While to this day other browser makers have decided to ship two (!)
 royalty-free video formats (Theora and VP8), Apple is the single H.264
 holdout, and they have a tight itegration to their hardware as well.

Internet Explorer 9 will not support VP8 unless the user manually
installs the codec.  This puts it at the same level of support as
Safari has for Theora, as far as I know.  So even if we assume every
user upgraded to the latest alphas of the browser they used, H.264 is
supported by about 65% of users' browsers, and VP8 by about 40%.  Of
course, in reality, less than half of users' browsers support video
at all right now, and given IE uptake rates, that's only going to
change slowly.

On Mon, Jul 5, 2010 at 4:10 PM, Marques Johansson marq...@displague.com wrote:
 For my purposes I am interested in application-controlled video delivery.  I
 want to be able to deliver unprotected mp4, webm, or ogv content in a
 metered way.  If the user has payed to watch the entire video once and has
 managed to work around HTTP no-cache and the other constraints that a normal
 browser viewed experience would have, then they will have succeeding in
 downloading a copy of the video - a task which they could have accomplished
 with a VM session or through other means regardless of DRM.

There's no way to stop this at the markup level, since the user could
just configure a user-agent to ignore the attributes, or manually
remove them with a tool like Firebug.  More to the point, since this
feature doesn't provide significant benefit to many users or authors,
no user agent would bother implementing it in the first place.

You should instead look into to writing server-side scripts that meet
your needs.  When the user requests a video, have the script check how
much video the user is authorized to view, and just truncate it after
that point.  Or have it insert an extra clip at the end of what
they're allowed to view saying you have to pay more to keep viewing,
then truncate it.  Or whatever.  This is pretty easy to do, and not
possible for the user to circumvent.

 These requests can be seen as generally allowing servers to reduce load for
 video or large file downloads.  Since a client may be able to download 5
 minutes of video in under a minute I would like to see the client disconnect
 from the server and reconnect in 5 minutes to get the additional content.  I
 would like to see the server have the ability to enforce this (through HTTP
 errors) or at least suggest it (through HTML5 attributes or additional HTTP
 headers).

Well-written clients should already buffer only as much as they need
to ensure the video will play smoothly.  The preload= attribute is
already provided to allow authors to control this behavior.  When the
client has read enough for now, it will just stop reading new content
from the server until it needs more.  If the server thinks that the
client is reading too fast, on the other hand, it can just send fewer
packets.  Again, I don't think anything needs to be changed in HTML
here.


Re: [whatwg] More YouTube response

2010-07-05 Thread Shane Fagan
 Internet Explorer 9 will not support VP8 unless the user manually
 installs the codec.  This puts it at the same level of support as
 Safari has for Theora, as far as I know.  So even if we assume every
 user upgraded to the latest alphas of the browser they used, H.264 is
 supported by about 65% of users' browsers, and VP8 by about 40%.  Of
 course, in reality, less than half of users' browsers support video
 at all right now, and given IE uptake rates, that's only going to
 change slowly.

For windows maybe there should be a .exe/.msi with the entire package of
VP8+Theora+Vorbis or just VP8+Vorbis to make it easier to install but
adoption isnt really our issue thats Microsoft's issue if WebM takes
off. I dont foresee it being any harder than Adobe Flash to install for
the regular user so websites could just direct users to the download if
they dont have it already.

Oh and IE is dropping in use according to the media over the past 3
months ever since the browser selection screen came so its becoming less
of an issue in time. 

--fagan



Re: [whatwg] More YouTube response

2010-07-05 Thread ニール・ゴンパ
On Mon, Jul 5, 2010 at 3:46 PM, Shane Fagan shanepatrickfa...@ubuntu.comwrote:

  Internet Explorer 9 will not support VP8 unless the user manually
  installs the codec.  This puts it at the same level of support as
  Safari has for Theora, as far as I know.  So even if we assume every
  user upgraded to the latest alphas of the browser they used, H.264 is
  supported by about 65% of users' browsers, and VP8 by about 40%.  Of
  course, in reality, less than half of users' browsers support video
  at all right now, and given IE uptake rates, that's only going to
  change slowly.

 For windows maybe there should be a .exe/.msi with the entire package of
 VP8+Theora+Vorbis or just VP8+Vorbis to make it easier to install but
 adoption isnt really our issue thats Microsoft's issue if WebM takes
 off. I dont foresee it being any harder than Adobe Flash to install for
 the regular user so websites could just direct users to the download if
 they dont have it already.

 Oh and IE is dropping in use according to the media over the past 3
 months ever since the browser selection screen came so its becoming less
 of an issue in time.

 --fagan


The marketshare drop has been very small, about a percentage point a month.
And Ian and other people in WHATWG made it our issue if Microsoft or Apple
doesn't fully adopt WebM. He made it clear that unless all the browser
vendors adopted a video format, it would never be specified in the spec as
the baseline format to support.

We do need a baseline format in the spec. Supporting video will be difficult
unless content providers can be certain that a single format will be
supported across the board


Re: [whatwg] More YouTube response

2010-07-05 Thread Mike Wilcox
It's the iPhone and especially the iPad which has really pushed the adoption of 
HTML5 video. And afaik, you can't install WebM on them. To me (and my company) 
that's where the issue lies.

Mike Wilcox
http://clubajax.org
m...@mikewilcox.net



On Jul 5, 2010, at 3:46 PM, Shane Fagan wrote:

 Internet Explorer 9 will not support VP8 unless the user manually
 installs the codec.  This puts it at the same level of support as
 Safari has for Theora, as far as I know.  So even if we assume every
 user upgraded to the latest alphas of the browser they used, H.264 is
 supported by about 65% of users' browsers, and VP8 by about 40%.  Of
 course, in reality, less than half of users' browsers support video
 at all right now, and given IE uptake rates, that's only going to
 change slowly.
 
 For windows maybe there should be a .exe/.msi with the entire package of
 VP8+Theora+Vorbis or just VP8+Vorbis to make it easier to install but
 adoption isnt really our issue thats Microsoft's issue if WebM takes
 off. I dont foresee it being any harder than Adobe Flash to install for
 the regular user so websites could just direct users to the download if
 they dont have it already.
 
 Oh and IE is dropping in use according to the media over the past 3
 months ever since the browser selection screen came so its becoming less
 of an issue in time. 
 
 --fagan
 



Re: [whatwg] More YouTube response

2010-07-05 Thread Benjamin M. Schwartz
On 07/05/2010 04:46 PM, Shane Fagan wrote:
 For windows maybe there should be a .exe/.msi with the entire package of
 VP8+Theora+Vorbis or just VP8+Vorbis to make it easier to install

There is:
http://downloads.xiph.org/releases/oggdsf/opencodecs_0.84.17315.exe
http://lists.xiph.org/pipermail/theora/2010-June/004065.html

In addition to system codecs, the package also includes an ActiveX plugin
that implements a limited form of video in IE 8.

--Ben



signature.asc
Description: OpenPGP digital signature


Re: [whatwg] More YouTube response

2010-07-05 Thread Nils Dagsson Moskopp
Shane Fagan shanepatrickfa...@ubuntu.com schrieb am Mon, 05 Jul 2010
17:20:12 +0100:

 If I remember correctly and dont ask me for a link to where I read it
 but the problem is still patent suits I believe. MPEG-LA as soon as
 they heard about the VP8 codec open sourcing they said they were
 getting a patent pool together to challenge its adoption anywhere.

MPEG LA cannot allow other video formats to succeed; that would hurt
the fundamental purpose of the organisation. Considering this, it was
entirely expected.

 Although I believe that there is nothing to worry about because
 Google has a huge patent pool to fight back with. 

First, Google fighting back is pure speculation. Second, VP8 getting
attacked by MPEG LA (which would be a prerequisite for that scenario)
is pure speculation as well. As far as I am aware of the issue, nothing
has happened yet.

 I think this issue is still a huge sticking point for everyone and I
 dont see a resolution other than to let everyone use whats comfortable
 and see what sticks.

That is, if anything sticks at all.

 Its a waiting game im afraid but as for adding
 webm to the HTML5 spec I still dont think we can add it at this stage
 IMHO.

As Hixie has stated, HTML5 is primarlily a descriptive specification,
not a prescriptive one. If vendors cannot agree for one reason or
another, then something will not be specced.

The only reasonable behaviour for web masters who wish to excert their
influence would be to not support specific clients, same as many pages
prompt you to upgrade Flash.

Speaking for myself, the 3% or whatever Safari users coming to my blog
are advised to install Xiph codecs to be able to check out my Podcast
(please, no etymological arguments about the perceived iPod heritage of
that word). But then I do not run a commercial operation — porn site
operators will probably use every fallback they can and quickly adapt
to new and relevant clients like the iPad.

 As for Apple not picking it up you would have to ask someone at Apple.
 Id say its still the threat from MPEG-LA's patent pool that still
 hasnt attacked Theora like it said it would a few years back so it
 seems like an empty threat to me. 

May Apple engineers on this list chime in and tell us if patent
uncertainity is still an issue ? AFAIK neither Google, nor Mozilla, nor
Apple have had difficulties. Or should I write to Apple legal
regarding this query ?


Greetings,
-- 
Nils Dagsson Moskopp // erlehmann
http://dieweltistgarnichtso.net


signature.asc
Description: PGP signature


Re: [whatwg] More YouTube response

2010-07-05 Thread Nils Dagsson Moskopp
Nils Dagsson Moskopp nils-dagsson-mosk...@dieweltistgarnichtso.net
schrieb am Tue, 6 Jul 2010 00:42:13 +0200:

 May Apple engineers on this list chime in and tell us if patent
 uncertainity is still an issue ? AFAIK neither Google, nor Mozilla,
 nor Apple have had difficulties.

s/nor Apple/nor Opera/

Apparently I am of duck today.


Quack.
-- 
Nils Dagsson Moskopp // erlehmann
http://dieweltistgarnichtso.net


signature.asc
Description: PGP signature


Re: [whatwg] More YouTube response

2010-07-05 Thread Bjartur Thorlacius
On Mon, 5 Jul 2010, Marques Johansson marq...@displague.com wrote:
 The company I work for, VOD.com (sfw) (aka Hotmovies .com and clips .com -
 nsfw (spaces added)), offer video on demand services to thousands of
 studios.  Our sites are central locations for customers who want to watch
 something - this is a service in itself.  We handle encoding and content
 distribution and streaming sales for these studios without any cost to them.
 They send us video content and we send them a monthly check. Without
 services like the ones we provide many of these studios (some are mom and
 pop shops) wouldn't otherwise have the ability to sell their content online
 in this fashion.
If I understand correctly, you are content distributors and video encoders.

 Customers can watch movies by purchasing packages of time or paying for DRM
 protected rentals or for some of our sites and videos they can pay for
 unprotected video.  The protected content (rentals) comes in the form of WMV
 or DivX files using either DivX's service of Windows Media Server.
So you sell copies for money and a promise to delete the copy after
it's use. That's like selling a book, printing Burn after reading
on it and calling yourself a library. Also the book shall not be used
for unauthorized uses, e.g. put under a table foot, lent to a friend
or read repeatedly. The latter two cases may be solved by going to the
library and buying another copy, other can't.

Many people see DRM as an hybrid between a lock and a automagical fire
lighter.

 For the content that is not protected the download or stream is metered so
 the client can be charged only for the time they spent watching the content.
 We error on the customer's side for things like buffering and misreported
 play segments.
This seems like a saner alternative.
 I think the discussion that DRM is irrelevant has its merits, but the
 contracts and services at play have a real value regardless of how
 distribution is restricted.
 
 For my purposes I am interested in application-controlled video delivery.  I
 want to be able to deliver unprotected mp4, webm, or ogv content in a
 metered way.  If the user has payed to watch the entire video once and has
 managed to work around HTTP no-cache and the other constraints that a normal
 browser viewed experience would have, then they will have succeeding in
 downloading a copy of the video - a task which they could have accomplished
 with a VM session or through other means regardless of DRM.  If we need
 additionally protection we can add watermarking to legally go after content
 thieves since we know the IP and username of the viewer in most cases.
Once a user has bought a copy, the copy has been bought and how
(often) he uses said copy isn't your probem. You've successfully
distributed and charged for the content. Job's done. A technical user
will probably be able to copy the video to permanent storage whatever
you do. Multi-pricing can also be achieved by other means, such as by
resolution crippling. Watermarking to aid with tracking down grand scale
pirates seems to be an OK thing to do.

 My requests have focused on things like video minbuffer=100k
 maxbuffer=200k which could also apply to a source element.  I want to make
 sure that the browser always uses Range: bytes x-y in requests (since I
 have no other way to require that a browser use ranges or use ranges with an
 upper bound).  I can use this tool to make sure UAs do not download more
 content than the user has watched (which costs them money in some way).
 I've also been suggesting HTTP changes that would permit this UA behavior
 (a 4xx for Ranges Required, a 4xx for Range too large, or explicitly
 defining that a 206 response can include less bytes than requested and the
 UA should follow-up with additional ranged requests).
 
 While an HTML5 solution is easy to make possible as their is no legacy to
 worry about and the spec is still floating about, an HTTP solution would
 allow me to provide metered content flow without leaving HTTP sessions open
 (throttling) and without the need for a video element - permitting users to
 use their native http streaming players.
 
 These requests can be seen as generally allowing servers to reduce load for
 video or large file downloads.  Since a client may be able to download 5
 minutes of video in under a minute I would like to see the client disconnect
 from the server and reconnect in 5 minutes to get the additional content.  I
 would like to see the server have the ability to enforce this (through HTTP
 errors) or at least suggest it (through HTML5 attributes or additional HTTP
 headers).
Server load can also be reduced by e.g. P2P, though users may want the
price to drop in proportion to their uploads.


Re: [whatwg] More YouTube response

2010-07-05 Thread Henri Sivonen
On Jul 5, 2010, at 13:10, Marques Johansson wrote:

 For the content that is not protected the download or stream is metered so 
 the client can be charged only for the time they spent watching the content.  
 We error on the customer's side for things like buffering and misreported 
 play segments.

There'd be no problem if you were selling content by title (plus free trailer 
for sampling) instead of selling it by minute.

 I think the discussion that DRM is irrelevant has its merits, but the 
 contracts and services at play have a real value regardless of how 
 distribution is restricted.

I think the technology providers shouldn't feel an obligation to cater to 
particular contract models--especially when it complicates the technology. It 
makes more sense to draft contracts that are reasonable given the technology. 
(An example of a contract that I think technology providers shouldn't attempt 
to cater for is a content licensing contract that tries to distinguish between 
desktops, mobile devices and TVs. Such a contract makes no sense when devices 
of any kind can support the same standards.)

 For my purposes I am interested in application-controlled video delivery.  I 
 want to be able to deliver unprotected mp4, webm, or ogv content in a metered 
 way.  If the user has payed to watch the entire video once and has managed to 
 work around HTTP no-cache and the other constraints that a normal browser 
 viewed experience would have, then they will have succeeding in downloading a 
 copy of the video - a task which they could have accomplished with a VM 
 session or through other means regardless of DRM.

If the customers pay for seeing an entire title, why is it a problem if a 
customer once in a while downloads the bytes twice? Surely it is simpler to 
bake the average bandwidth cost into the price and not complicate the way the 
delivery technology behaves.

 These requests can be seen as generally allowing servers to reduce load for 
 video or large file downloads.  Since a client may be able to download 5 
 minutes of video in under a minute I would like to see the client disconnect 
 from the server and reconnect in 5 minutes to get the additional content.  

Wouldn't this be a non-problem if the customers paid by title? In that case, it 
would seem pointless to worry about the content getting downloaded faster than 
it is played.

It seems to me that your problem is picking a pricing model that's unnatural 
for the technology.

-- 
Henri Sivonen
hsivo...@iki.fi
http://hsivonen.iki.fi/




Re: [whatwg] More YouTube response

2010-07-04 Thread bjartur


Lachlan Hunt lachlan.h...@lachy.id.au wrote:
 On 2010-07-02 21:01, John Harding wrote:
  On Fri, Jul 2, 2010 at 5:50 AM, Lachlan Huntlachlan.h...@lachy.id.auwrote:
 As Henri pointed out, major content producers already broadcast their TV
 shows and movies over the air without DRM.  Although the BBC iPlayer
 uses DRM for the desktop version, they broadcast the show DRM free over
 the air and they make DRM free content available to the iPhone.  People
 have even found ways to access that from other devices too.  So the DRM
 really isn't there to protect the content.  It's just to force users to
 use the BBC's own iPlayer software, rather than letting users use their
 own choice of software.
 
I fail to see how BBC would be harmed by the usage of alternative
software. Its business model is about content, not software, right?

 The industry even releases content on DVD knowing that the DRM is
 completely ineffective, because they only use it so they can control the
 DVD player market, rather than actually doing anything practical about
 illegal copying.
 
How can the industry have control over the DVD player market and not their own
government-designated markets?


Re: [whatwg] More YouTube response

2010-07-04 Thread Aryeh Gregor
On Fri, Jul 2, 2010 at 3:09 PM, John Harding jhard...@google.com wrote:
 Yes, it's pretty straightforward to offer iframe-based embed code, but it
 needs to be coupled with getting sites to accept them, or we end up with a
 lot of confused, unhappy users.

This will only happen if the iframe support is widely advertised,
though.  I assume that practically everyone who embeds YouTube videos
just copies the code given under the video.  If iframe support were
only mentioned in out-of-the-way places (like only if you've opted
into the HTML5 beta) and labeled with only use this if you're sure
you don't want the normal embed code, it would allow people who cared
to use it, and they could push sites to whitelist it if any don't.

This is probably low-priority from your perspective, I can see that.
But it's pretty sad when the IE blog is now consistently using video
instead of Flash, while the Chrome blog only uses Flash embeds
(because of the YouTube dependency).

 Note that sites don't generally whitelist
 specific SWFs - they generally allow all Flash embeds.

I'd be very surprised if major sites allowed arbitrary Flash but not
arbitrary iframe.  The former is extremely dangerous, the latter is
not (although it could still create annoying popups, etc.).  Do you
have an example of such a site?

On Fri, Jul 2, 2010 at 4:56 PM, Lachlan Hunt lachlan.h...@lachy.id.au wrote:
 YouTube would do better to address this issue by bringing the major players
 in the content industry to the table to discuss methods of publishing their
 content in interoperable ways without DRM.

Given how many lawsuits those major players have filed against Google
*despite* concessions on DRM, I don't think it's practical to suggest
that Google should provoke them even *more*.  However, this isn't
something standards groups have to deal with, since standardized DRM
is more or less a contradiction in terms (in the absence of hardware
support).  Flash can continue to be used for video indefinitely where
DRM is desired, just as Flash is occasionally used for still image
galleries to prevent easy copying.


Re: [whatwg] More YouTube response

2010-07-04 Thread David Gerard
On 4 July 2010 13:57, bjartur svartma...@gmail.com wrote:

 I fail to see how BBC would be harmed by the usage of alternative
 software. Its business model is about content, not software, right?


See, you're using logic and sense ... about half the BBC want to just
*make their stuff available*, the other half are worried about the
thicket of laws and agreements that made sense in the days of analogue
tape broadcast on analogue television that, despite not making sense
on the Internet, still bind them legally. (Broadcast rights, residuals
for actors and writers, etc.) These are serious and real concerns and
they can't just ignore them.

It's all very complicated when real money is at stake.

(c.f. The Innovator's Dilemma.)


That said: DRM is a provably broken concept. Anyone who demands it be
incorporated into a standard is fundamentally, deeply wrong and can
work around it with some sort of proprietary plugin, because that way
they won't be requiring anyone else to pretend mathematics doesn't
work.


- d.


Re: [whatwg] More YouTube response

2010-07-04 Thread Ashley Sheridan
On Sun, 2010-07-04 at 23:56 +0100, David Gerard wrote:

 On 4 July 2010 13:57, bjartur svartma...@gmail.com wrote:
 
  I fail to see how BBC would be harmed by the usage of alternative
  software. Its business model is about content, not software, right?
 
 
 See, you're using logic and sense ... about half the BBC want to just
 *make their stuff available*, the other half are worried about the
 thicket of laws and agreements that made sense in the days of analogue
 tape broadcast on analogue television that, despite not making sense
 on the Internet, still bind them legally. (Broadcast rights, residuals
 for actors and writers, etc.) These are serious and real concerns and
 they can't just ignore them.
 
 It's all very complicated when real money is at stake.
 
 (c.f. The Innovator's Dilemma.)
 
 
 That said: DRM is a provably broken concept. Anyone who demands it be
 incorporated into a standard is fundamentally, deeply wrong and can
 work around it with some sort of proprietary plugin, because that way
 they won't be requiring anyone else to pretend mathematics doesn't
 work.
 
 
 - d.


I agree. I don't condone illegally distributing digital content, but DRM
doesn't have a good track record. At best, it disrupts illegal copyright
infringement, at its worst, it harms the honest consumer. The game Spore
was arguably one of the most copyrighted games ever, despite (or maybe
because of) its almost draconian DRM. DVD's suffered for a long time
with being locked into regions by DRM, making it difficult for people
who travelled a lot but wanted to watch films, and made little or no
impact on those that obtained an illegal DRM-free copy. There are
countless more tales all like this, but until a fiscally viable
alternative is offered to the media companies (as let's face it, it's
not the artists pushing for DRM!) then we will continue to see more
measures brought into place and broken.

Thanks,
Ash
http://www.ashleysheridan.co.uk




Re: [whatwg] More YouTube response

2010-07-04 Thread Bjartur Thorlacius
David Gerard dger...@gmail.com wrote:
 On 4 July 2010 13:57, bjartur svartma...@gmail.com wrote:
 
  I fail to see how BBC would be harmed by the usage of alternative
  software. Its business model is about content, not software, right?
 
 
 See, you're using logic and sense ... about half the BBC want to just
 *make their stuff available*, the other half are worried about the
 thicket of laws and agreements that made sense in the days of analogue
 tape broadcast on analogue television that, despite not making sense
 on the Internet, still bind them legally. (Broadcast rights, residuals
 for actors and writers, etc.) These are serious and real concerns and
 they can't just ignore them.
 
AFAIK BBC hasn't been harmed by the usage of VHS players made and
distributed by 3rd partys nor do I know about any laws that require them
to technically and legally restrict consumer ability to play their media
with their ware of choice.

Limiting who and how their media can be consumed should harm BBC rather than 
the other way around.


Re: [whatwg] More YouTube response

2010-07-02 Thread Henri Sivonen
John Harding jhard...@google.com wrote:

 Rather than ask browsers to get into the DRM
 business,
 what I think would work best is having a means for 3rd party DRM
 providers
 to supply browser plug-ins which implement the video tag for
 protected
 content - not all that different than selecting a pluggable codec.

I think this would defeat a huge chunk of the value of video. A big part of 
the value of video is that competition and innovation on the computing 
platform space will be fostered when the vendor of a computing platform can 
port (or have ported) one of the Open Source browsers to the platform, pay 
Opera to port Presto or write their own (like Microsoft) without having to 
persuade a plug-in proprietor that it's worth the plug-in proprietor's effort 
to port a certain plug-in to the platform.

Pluggable DRM or codec modules would regress back to the situation where the 
proprietors of those plug-ins act as gatekeepers for the success of computing 
platforms.

I observe that Hollywood movies (the most premium of content, supposedly) are 
routinely licensed for DVB broadcast without DRM, and on the Internet every 
other form of content is distributed without DRM. It may well be that when the 
potential audience grows enough, at some point the ability to reach that 
audience weighs more than protection and the problem gets solved without DRM 
(and without the ill effects of DRM to computing platform freedom, competition 
and innovation).

-- 
Henri Sivonen
hsivo...@iki.fi
http://hsivonen.iki.fi/


Re: [whatwg] More YouTube response

2010-07-02 Thread Marques Johansson
On Thu, Jul 1, 2010 at 6:59 PM, John Harding jhard...@google.com wrote:
 2. Robust Video Streaming
 Andy Berkheimer on our team has been putting some thought into this, so I'll
 defer to him for more specific proposals.  For an app like YouTube, it is
 extremely useful to have fine-grained control over how the browser fetches
 media from the server.  Whether the details belong in the HTML5 spec or not
 depends on the preferred design - something similar to Flash 10.1's
 appendBytes() mechanism would affect the video tag interface, for example,
 while a transport protocol could be completely separate.
 3. Content Protection
 Some of the discussion here seems to have conflated application-controlled
 video delivery with content protection, but in an ideal world, the two are
 independent.  The basic requirements around content protection that we get

I was muddling my recent requests related to browser fetch behavior
and application-controlled video delivery: with the despised topic of
DRM and content protection.  Thanks for clearing that up, John.

If a seek on a HTMLMediaElement's exposed and passed along the XHR
Request to a fetcher method then I could set my constraints for the
impending request.  I would add HTTP Range headers if they are not
present and set a Range upper bound (since the server will return
402,403, or 416 on any Range: bytes x- request to retrieve the full
remaining content).

The initiating caller would need to understand that the length of data
requested may have shrunk (which would require the browser to seek
again when the content was all played up or when the buffer was
running low - things that should already be in place).  This, to me,
seems like an alternative to an addBytes method (if that does what I
think it does).

This would provide me with a strictly Javascript solution.  Other
methods I have been asking for would give me a purely HTTP solution
(with new range related 4xxs and, spec endorsed, shorter than
requested 206 responses) to achieve this or an HTML solution (using
new video+source element attributes for buffer (min request size) and
max request size).


Re: [whatwg] More YouTube response

2010-07-02 Thread Shane Fagan
On Fri, 2010-07-02 at 02:37 -0700, Henri Sivonen wrote:
 John Harding jhard...@google.com wrote:
 
  Rather than ask browsers to get into the DRM
  business,
  what I think would work best is having a means for 3rd party DRM
  providers
  to supply browser plug-ins which implement the video tag for
  protected
  content - not all that different than selecting a pluggable codec.
 
 I think this would defeat a huge chunk of the value of video. A big part of 
 the value of video is that competition and innovation on the computing 
 platform space will be fostered when the vendor of a computing platform can 
 port (or have ported) one of the Open Source browsers to the platform, pay 
 Opera to port Presto or write their own (like Microsoft) without having to 
 persuade a plug-in proprietor that it's worth the plug-in proprietor's effort 
 to port a certain plug-in to the platform.
 
 Pluggable DRM or codec modules would regress back to the situation where the 
 proprietors of those plug-ins act as gatekeepers for the success of computing 
 platforms.
 
 I observe that Hollywood movies (the most premium of content, supposedly) 
 are routinely licensed for DVB broadcast without DRM, and on the Internet 
 every other form of content is distributed without DRM. It may well be that 
 when the potential audience grows enough, at some point the ability to reach 
 that audience weighs more than protection and the problem gets solved 
 without DRM (and without the ill effects of DRM to computing platform 
 freedom, competition and innovation).
 
Hey Henri,

Well this isnt really a list where we should talk about the dos and
donts of web content distribution. DRM content can be embedded in the
video tag and decoded using installable plugins so its not really an
issue for this list I dont think. We cant dictate how the specs are used
so try to keep the conversation technology neutral.

--fagan



Re: [whatwg] More YouTube response

2010-07-02 Thread Marques Johansson
If the seek method was further hookable it should be possible to add decrypt
or  transcode methods to interpret the fetched content, possibly requesting
more data to the filter stream bucket, before apending the bytes of media.

On Jul 2, 2010 6:10 AM, Marques Johansson marq...@displague.com wrote:

On Thu, Jul 1, 2010 at 6:59 PM, John Harding jhard...@google.com wrote:
 2. Robust Video Streamin...
I was muddling my recent requests related to browser fetch behavior
and application-controlled video delivery: with the despised topic of
DRM and content protection.  Thanks for clearing that up, John.

If a seek on a HTMLMediaElement's exposed and passed along the XHR
Request to a fetcher method then I could set my constraints for the
impending request.  I would add HTTP Range headers if they are not
present and set a Range upper bound (since the server will return
402,403, or 416 on any Range: bytes x- request to retrieve the full
remaining content).

The initiating caller would need to understand that the length of data
requested may have shrunk (which would require the browser to seek
again when the content was all played up or when the buffer was
running low - things that should already be in place).  This, to me,
seems like an alternative to an addBytes method (if that does what I
think it does).

This would provide me with a strictly Javascript solution.  Other
methods I have been asking for would give me a purely HTTP solution
(with new range related 4xxs and, spec endorsed, shorter than
requested 206 responses) to achieve this or an HTML solution (using
new video+source element attributes for buffer (min request size) and
max request size).


Re: [whatwg] More YouTube response

2010-07-02 Thread Anne van Kesteren
On Fri, 02 Jul 2010 12:13:00 +0200, Shane Fagan  
shanepatrickfa...@ubuntu.com wrote:

Well this isnt really a list where we should talk about the dos and
donts of web content distribution. DRM content can be embedded in the
video tag and decoded using installable plugins so its not really an
issue for this list I dont think. We cant dictate how the specs are used
so try to keep the conversation technology neutral.


Whether playing video requires a plugin is very much an issue for this  
list, I think. What Henri explained -- not having lock-in to a particular  
platform because of proprietary plugins -- is a large part of the reason  
why we have video in the first place.



--
Anne van Kesteren
http://annevankesteren.nl/


Re: [whatwg] More YouTube response

2010-07-02 Thread Julian Reschke

On 02.07.2010 13:38, Anne van Kesteren wrote:

On Fri, 02 Jul 2010 12:13:00 +0200, Shane Fagan
shanepatrickfa...@ubuntu.com wrote:

Well this isnt really a list where we should talk about the dos and
donts of web content distribution. DRM content can be embedded in the
video tag and decoded using installable plugins so its not really an
issue for this list I dont think. We cant dictate how the specs are used
so try to keep the conversation technology neutral.


Whether playing video requires a plugin is very much an issue for this
list, I think. What Henri explained -- not having lock-in to a
particular platform because of proprietary plugins -- is a large part of
the reason why we have video in the first place.


That may be true.

But there's nothing in the spec that actually disallows adding support 
for plugin-based DRM, right? (Just clarifying)


Best regards, Julian



Re: [whatwg] More YouTube response

2010-07-02 Thread Shane Fagan
On Fri, 2010-07-02 at 13:38 +0200, Anne van Kesteren wrote:
 On Fri, 02 Jul 2010 12:13:00 +0200, Shane Fagan  
 shanepatrickfa...@ubuntu.com wrote:
  Well this isnt really a list where we should talk about the dos and
  donts of web content distribution. DRM content can be embedded in the
  video tag and decoded using installable plugins so its not really an
  issue for this list I dont think. We cant dictate how the specs are used
  so try to keep the conversation technology neutral.
 
 Whether playing video requires a plugin is very much an issue for this  
 list, I think. What Henri explained -- not having lock-in to a particular  
 platform because of proprietary plugins -- is a large part of the reason  
 why we have video in the first place.
 
 

Well I got that from what Henri was saying. The reason why I said that
was that we cant tell people how to use the spec. The video tag could be
used for any kind of video be it a DRM video or non DRM .webm or .mp4
video, its really vendor preference on what they use. Shipping the DRM
codec as a plugin will be a lot smaller and a lot easier than shipping
the entire flash platform so it would be better than the current
situation. 

I have to clarify that im against DRM anyway because not only does it
not protect the content well in most cases but also most of it doesnt
work on Linux by default. All im saying is that if youtube has a problem
with html5 and want content protection through DRM then thats their
decision. 

--fagan



Re: [whatwg] More YouTube response

2010-07-02 Thread Marques Johansson
If there were hooks for handling the bytes being requested and
supplied to the media object, would you agree that DRM modules could
be written with Javascript (if a bit of a straw man - as all DRM is
perceived to varying degrees)? I think this could prevent the need for
some plugins.

On Fri, Jul 2, 2010 at 8:17 AM, Shane Fagan
shanepatrickfa...@ubuntu.com wrote:
 On Fri, 2010-07-02 at 13:38 +0200, Anne van Kesteren wrote:
 On Fri, 02 Jul 2010 12:13:00 +0200, Shane Fagan
 shanepatrickfa...@ubuntu.com wrote:
  Well this isnt really a list where we should talk about the dos and
  donts of web content distribution. DRM content can be embedded in the
  video tag and decoded using installable plugins so its not really an
  issue for this list I dont think. We cant dictate how the specs are used
  so try to keep the conversation technology neutral.

 Whether playing video requires a plugin is very much an issue for this
 list, I think. What Henri explained -- not having lock-in to a particular
 platform because of proprietary plugins -- is a large part of the reason
 why we have video in the first place.



 Well I got that from what Henri was saying. The reason why I said that
 was that we cant tell people how to use the spec. The video tag could be
 used for any kind of video be it a DRM video or non DRM .webm or .mp4
 video, its really vendor preference on what they use. Shipping the DRM
 codec as a plugin will be a lot smaller and a lot easier than shipping
 the entire flash platform so it would be better than the current
 situation.

 I have to clarify that im against DRM anyway because not only does it
 not protect the content well in most cases but also most of it doesnt
 work on Linux by default. All im saying is that if youtube has a problem
 with html5 and want content protection through DRM then thats their
 decision.

 --fagan




Re: [whatwg] More YouTube response

2010-07-02 Thread Lachlan Hunt

On 2010-07-02 13:56, Julian Reschke wrote:

On 02.07.2010 13:38, Anne van Kesteren wrote:

On Fri, 02 Jul 2010 12:13:00 +0200, Shane Fagan
shanepatrickfa...@ubuntu.com wrote:

Well this isnt really a list where we should talk about the dos and
donts of web content distribution. DRM content can be embedded in the
video tag and decoded using installable plugins so its not really an
issue for this list I dont think. We cant dictate how the specs are used
so try to keep the conversation technology neutral.


Whether playing video requires a plugin is very much an issue for this
list, I think. What Henri explained -- not having lock-in to a
particular platform because of proprietary plugins -- is a large part of
the reason why we have video in the first place.


That may be true.

But there's nothing in the spec that actually disallows adding support
for plugin-based DRM, right? (Just clarifying)


Correct. Vendors can theoretically implement any codec or container they 
like, with any features or limitations they like.


MP4 already has various DRM schemes in use.  Apple, for example, could 
support FairPlay protected videos, though the use of such content with 
video would effectively be limited to within iTunes.


Even Matroska has elements that can be used for general purpose 
encryption and DRM purposes, though these features were not included 
within WebM.  But theoretically, those features could be added and 
implemented with some agreed upon encryption scheme.


I would still, however, argue against anything of the sort being added 
to WebM because DRM doesn't do anything to protect content, but is 
rather used as a way for content providers to control the market by 
blocking unwanted innovation and competition that they don't like, 
including open source software.


--
Lachlan Hunt - Opera Software
http://lachy.id.au/
http://www.opera.com/


Re: [whatwg] More YouTube response

2010-07-02 Thread John Harding
On Fri, Jul 2, 2010 at 5:50 AM, Lachlan Hunt lachlan.h...@lachy.id.auwrote:

 On 2010-07-02 13:56, Julian Reschke wrote:

 On 02.07.2010 13:38, Anne van Kesteren wrote:

 Whether playing video requires a plugin is very much an issue for this
 list, I think. What Henri explained -- not having lock-in to a
 particular platform because of proprietary plugins -- is a large part of
 the reason why we have video in the first place.


 That may be true.

 But there's nothing in the spec that actually disallows adding support
 for plugin-based DRM, right? (Just clarifying)


 Correct. Vendors can theoretically implement any codec or container they
 like, with any features or limitations they like.

 MP4 already has various DRM schemes in use.  Apple, for example, could
 support FairPlay protected videos, though the use of such content with
 video would effectively be limited to within iTunes.

 Even Matroska has elements that can be used for general purpose encryption
 and DRM purposes, though these features were not included within WebM.  But
 theoretically, those features could be added and implemented with some
 agreed upon encryption scheme.

 I would still, however, argue against anything of the sort being added to
 WebM because DRM doesn't do anything to protect content, but is rather used
 as a way for content providers to control the market by blocking unwanted
 innovation and competition that they don't like, including open source
 software.


I think it's unavoidable that the functionality of the video tag in some
browsers will be extended by various add-ons to the browser.  IE's
implementation uses whatever codecs are installed and available to
DirectShow; my understanding is that Safari operates this way as well.  My
point here is primarily that it would be good for video tag adoption in
general if browsers enabled traditional DRM solutions to integrate in this
way.  It still requires that users will have some non-open software
installed on their machine (that's unavoidable as long as content owners
require it of us), but means that users can continue using their browser of
choice, and content distributors don't need to write a completely new player
for each DRM provider they need to support.


Re: [whatwg] More YouTube response

2010-07-02 Thread Jonas Sicking
On Fri, Jul 2, 2010 at 5:50 AM, Lachlan Hunt lachlan.h...@lachy.id.au wrote:
 On 2010-07-02 13:56, Julian Reschke wrote:

 On 02.07.2010 13:38, Anne van Kesteren wrote:

 On Fri, 02 Jul 2010 12:13:00 +0200, Shane Fagan
 shanepatrickfa...@ubuntu.com wrote:

 Well this isnt really a list where we should talk about the dos and
 donts of web content distribution. DRM content can be embedded in the
 video tag and decoded using installable plugins so its not really an
 issue for this list I dont think. We cant dictate how the specs are used
 so try to keep the conversation technology neutral.

 Whether playing video requires a plugin is very much an issue for this
 list, I think. What Henri explained -- not having lock-in to a
 particular platform because of proprietary plugins -- is a large part of
 the reason why we have video in the first place.

 That may be true.

 But there's nothing in the spec that actually disallows adding support
 for plugin-based DRM, right? (Just clarifying)

 Correct. Vendors can theoretically implement any codec or container they
 like, with any features or limitations they like.

 MP4 already has various DRM schemes in use.  Apple, for example, could
 support FairPlay protected videos, though the use of such content with
 video would effectively be limited to within iTunes.

 Even Matroska has elements that can be used for general purpose encryption
 and DRM purposes, though these features were not included within WebM.  But
 theoretically, those features could be added and implemented with some
 agreed upon encryption scheme.

 I would still, however, argue against anything of the sort being added to
 WebM because DRM doesn't do anything to protect content, but is rather used
 as a way for content providers to control the market by blocking unwanted
 innovation and competition that they don't like, including open source
 software.

Indeed.

Also compare to the recent battle that was fought over font formats.
Some parties where heavily pushing for DRM formats, however ultimately
we were able to persuade them that this wasn't needed, and we ended up
with a format that everyone is happy with.

/ Jonas


Re: [whatwg] More YouTube response

2010-07-02 Thread John Harding
On Thu, Jul 1, 2010 at 9:16 PM, Aryeh Gregor
simetrical+...@gmail.comsimetrical%2b...@gmail.com
 wrote:

  As several people pointed out (and which I tried to get at in my post),
 this
  is really an ecosystem issue rather than a change needed in the spec or
 in
  browsers.  I suspect it's going to take some time, but the flexibility of
  embedding content via iframe will be a big step forward.

 Wouldn't it be straightforward for YouTube to offer iframe support
 right now, in addition to object?  The backend support should be
 simple to do.  If you keep the object code as the default embed
 recommendation and hide the iframe embed code somewhere so people
 will only use it if they look for it, you won't risk confusing anyone.
  Sites that currently whitelist object from YouTube will eventually
 whitelist iframe from YouTube too -- I hope there aren't many sites
 that permit *arbitrary* objects to be inserted by untrusted users.
 Allowing iframe will have other benefits, like allowing fallback
 install Flash content (currently omitted from the object code, I
 assume to keep the size down).

Yes, it's pretty straightforward to offer iframe-based embed code, but it
needs to be coupled with getting sites to accept them, or we end up with a
lot of confused, unhappy users.  Note that sites don't generally whitelist
specific SWFs - they generally allow all Flash embeds.



 Another thing that occurs to me is that you might show HTML5 video
 when Flash isn't installed/enabled, or when the Flash player crashes.
 Or at least you could give an option, instead of just failing silently
 (for embeds) or saying the user should install Flash (on the site
 itself).  My primary machine runs Linux, and Flash usually doesn't
 work at all.  If I didn't know about the HTML5 beta, I wouldn't be
 able to use YouTube at all.  And as it is, I can't use any YouTube
 embeds most of the time.

Yes, this is the main point of using an iframe to embed code - it allows
the site providing embeddable content to tailor the presentation to the
user/device/context at runtime, rather than requiring the presentation to be
fixed up-front.



  When limiting keyboard input, I'd suggest devices w/ onscreen keyboards
  simply disable the keyboard.  Applications that work well with touch
  interfaces generally provide gesture alternatives for the limited set of
  keys that would be available.  Alternately, devices could limit the
 keyboard
  to the set of allowed keys.

 The problem is if the program makes a fake keyboard and then directly
 intercepts touch events to that location, without invoking the OS's
 keyboard at all.  The user won't be able to tell that the keypresses
 are going to the website instead of the OS.  But I can't see this as
 being a big issue -- screen space is so limited on these devices that
 websites are fullscreen anyway, or practically.  On my Nexus One,
 unless you're scrolled to the top of the site, websites take up the
 whole screen except for the bar at the top, which is present in all
 apps.  So they could already trivially spoof any application, if they
 know the target platform.  Not if the user presses the menu button, I
 guess.

Yeah, I realized that loophole after I sent the mail.  The same
vulnerability is there if fullscreen is initiated by a control the browser
chrome, though - at the end of the day, the primary problem to solve is
ensuring that users understand they're still viewing a web page, and the
contents are provided by the web page rather than the OS.



  As pointed out, this is not strictly an issue for video tag, though
  certainly related especially for local preview.  I have not been closely
  following the work on the device element, though that seems to be where
  this is headed.

 device adoption shouldn't interfere with video adoption, though.
 Even if YouTube switched to video by default, it could keep Flash
 for recording until device was implemented.  It's probably best for
 implementers to focus on perfecting video (and maybe canvas, etc.)
 before they put too much work into device, since those are much
 bigger use-cases.


You're absolutely right, and I think the order things are going is correct -
video is more important than device


Re: [whatwg] More YouTube response

2010-07-02 Thread Lachlan Hunt

On 2010-07-02 21:01, John Harding wrote:

On Fri, Jul 2, 2010 at 5:50 AM, Lachlan Huntlachlan.h...@lachy.id.auwrote:

Correct. Vendors can theoretically implement any codec or container they
like, with any features or limitations they like.

MP4 already has various DRM schemes in use...

I would still, however, argue against anything of the sort being added to
WebM...


I think it's unavoidable that the functionality of thevideo  tag in some
browsers will be extended by various add-ons to the browser.


Right, as I said, it's possible.  But that doesn't mean we should 
support it in any way.


YouTube would do better to address this issue by bringing the major 
players in the content industry to the table to discuss methods of 
publishing their content in interoperable ways without DRM.


As Henri pointed out, major content producers already broadcast their TV 
shows and movies over the air without DRM.  Although the BBC iPlayer 
uses DRM for the desktop version, they broadcast the show DRM free over 
the air and they make DRM free content available to the iPhone.  People 
have even found ways to access that from other devices too.  So the DRM 
really isn't there to protect the content.  It's just to force users to 
use the BBC's own iPlayer software, rather than letting users use their 
own choice of software.


The industry even releases content on DVD knowing that the DRM is 
completely ineffective, because they only use it so they can control the 
DVD player market, rather than actually doing anything practical about 
illegal copying.


The music industry have already largely dropped DRM.  Even Spotify, 
which does use DRM, permits the open source application deSpotify that 
bypasses the DRM to continue unimpeded for premium subscribers.  (The 
developers opted not to work around the blocks placed on free accounts 
though).


It's all about the business model.  The industry thinks they need their 
DRM so they can hold onto the same business model they've had for years, 
without adapting. That's why they've gone to court over every new 
innovation in the last 50 years, before slowly catching up.  The truth 
is they don't need DRM, as so many independent content producers are 
demonstrating.


YouTube and other video streaming sites just needs to push them to 
accept a reasonable and fair business model that will work.  Make it 
easy for users to stream the content, and even easier for users who want 
to buy and download the content legally.


Users currently go to torrent sites because it's easier than fighting 
with the industry to get what they want.  Make it easier to do the right 
thing.  Don't punish the legitimate them with DRM, while the pirates 
get away with a better user experience.


Give users a real reason to buy, and they will. e.g. Make the purchased 
content have a higher bit-rate and resolution, surround sound, no ads, 
no visible logo watermark, and/or other added features.  Provide some 
incentive, maybe a reward system that benefits the subscribers in some 
tangible way.  Do whatever you do to find a business model that works; 
just say no to DRM.  It's not needed. The big content industry knows 
that, they just won't admit it.


--
Lachlan Hunt - Opera Software
http://lachy.id.au/
http://www.opera.com/


Re: [whatwg] More YouTube response

2010-07-02 Thread Maciej Stachowiak

On Jul 2, 2010, at 12:09 PM, John Harding wrote:

 
 
 On Thu, Jul 1, 2010 at 9:16 PM, Aryeh Gregor simetrical+...@gmail.com wrote:
  As several people pointed out (and which I tried to get at in my post), this
  is really an ecosystem issue rather than a change needed in the spec or in
  browsers.  I suspect it's going to take some time, but the flexibility of
  embedding content via iframe will be a big step forward.
 
 Wouldn't it be straightforward for YouTube to offer iframe support
 right now, in addition to object?  The backend support should be
 simple to do.  If you keep the object code as the default embed
 recommendation and hide the iframe embed code somewhere so people
 will only use it if they look for it, you won't risk confusing anyone.
  Sites that currently whitelist object from YouTube will eventually
 whitelist iframe from YouTube too -- I hope there aren't many sites
 that permit *arbitrary* objects to be inserted by untrusted users.
 Allowing iframe will have other benefits, like allowing fallback
 install Flash content (currently omitted from the object code, I
 assume to keep the size down).
 Yes, it's pretty straightforward to offer iframe-based embed code, but it 
 needs to be coupled with getting sites to accept them, or we end up with a 
 lot of confused, unhappy users.  Note that sites don't generally whitelist 
 specific SWFs - they generally allow all Flash embeds. 

Any site which does that has a giant security hole, since Flash can be used to 
arbitrarily script the embedding page. It's about as safe as allowing embedding 
of arbitrary off-site script. If you are aware of sites that allow embedding 
of arbitrary off-site Flash, you should alert them to the potential security 
risks. For example a social network site that allowed this would be vulnerable 
to a self-propagating worm.

What I have heard before is that sites whitelist specific SWFs or Flash from 
specific domains. I'm don't have any first-hand knowledge of how sites actually 
do it.

Regards,
Maciej



Re: [whatwg] More YouTube response

2010-07-02 Thread Maciej Stachowiak

On Jul 2, 2010, at 6:04 PM, Maciej Stachowiak wrote:

 
 Any site which does that has a giant security hole, since Flash can be used 
 to arbitrarily script the embedding page. It's about as safe as allowing 
 embedding of arbitrary off-site script. If you are aware of sites that 
 allow embedding of arbitrary off-site Flash, you should alert them to the 
 potential security risks. For example a social network site that allowed this 
 would be vulnerable to a self-propagating worm.
 
 What I have heard before is that sites whitelist specific SWFs or Flash from 
 specific domains. I'm don't have any first-hand knowledge of how sites 
 actually do it.

With testing I found at least one site where I can apparently embed arbitrary 
SWFs. However, this site has per-user domains, so it might be relatively safe. 
This site also allows me to embed arbitrary content in an iframe.

Regards,
Maciej




[whatwg] More YouTube response

2010-07-01 Thread John Harding
Glad to see my post spurred some good discussion - I'll try to address topic
by topic below, but one of the great points made is that some of the
functionality YouTube needs from browsers probably doesn't belong in the
HTML5 spec (e.g. streaming, content protection).  I'm happy to take those
discussions elsewhere if this forum is inappropriate, but it seems like it
would likely be the same group of people, just on a different mailing list.

1. Standard Video Format
Yes, this has been debated a lot, and I generally agree that leaving it out
of the spec was the best way forward for the spec.  Shane Fagan pointed out
that Flash supports multiple different codecs, which is true, but every
version since Flash 7 has supported Sorenson Spark video and MP3 audio.  I
don't think anyone is suggesting that browsers shouldn't support multiple
codecs, but having a consistent baseline is important.  On the current path,
a content provider knows that by offering H.264 and WebM, they can reach all
HTML5-capable browsers.  This honestly is a reasonable state for YouTube
right now - we use H.264 in cases outside the video tag as well, but it
would be nice to converge on a single baseline format at some point in the
future.

2. Robust Video Streaming
Andy Berkheimer on our team has been putting some thought into this, so I'll
defer to him for more specific proposals.  For an app like YouTube, it
is *extremely
*useful to have fine-grained control over how the browser fetches media from
the server.  Whether the details belong in the HTML5 spec or not depends on
the preferred design - something similar to Flash 10.1's appendBytes()
mechanism would affect the video tag interface, for example, while a
transport protocol could be completely separate.

3. Content Protection
Some of the discussion here seems to have conflated application-controlled
video delivery with content protection, but in an ideal world, the two are
independent.  The basic requirements around content protection that we get
from content owners basically consist of encrypting the content and limiting
the decryption to a verified and authorized client - the realm of
traditional DRM.  Rather than ask browsers to get into the DRM business,
what I think would work best is having a means for 3rd party DRM providers
to supply browser plug-ins which implement the video tag for protected
content - not all that different than selecting a pluggable codec.

4. Encapsulation and Embedding
As several people pointed out (and which I tried to get at in my post), this
is really an ecosystem issue rather than a change needed in the spec or in
browsers.  I suspect it's going to take some time, but the flexibility of
embedding content via iframe will be a big step forward.

5. Fullscreen
Maciej actually covered YouTube's requirements pretty well.  I'd add that
it's not just controls that are important for us to maintain: we have a lot
of additional content that needs to display with and sometimes on top of the
video - our interactive annotations, captions, and ads most notably.
 Maciej's proposal also looks fairly reasonable, though some thoughts on it:
When limiting keyboard input, I'd suggest devices w/ onscreen keyboards
simply disable the keyboard.  Applications that work well with touch
interfaces generally provide gesture alternatives for the limited set of
keys that would be available.  Alternately, devices could limit the keyboard
to the set of allowed keys.
Keyboard restrictions are better than not having fullscreen support, though
they do limit functionality - it would prevent us from supporting search in
fullscreen mode, for example.

6. Camera and Micrphone access
As pointed out, this is not strictly an issue for video tag, though
certainly related especially for local preview.  I have not been closely
following the work on the device element, though that seems to be where
this is headed.

-John


Re: [whatwg] More YouTube response

2010-07-01 Thread Aryeh Gregor
On Thu, Jul 1, 2010 at 6:59 PM, John Harding jhard...@google.com wrote:
 Some of the discussion here seems to have conflated application-controlled
 video delivery with content protection, but in an ideal world, the two are
 independent.  The basic requirements around content protection that we get
 from content owners basically consist of encrypting the content and limiting
 the decryption to a verified and authorized client - the realm of
 traditional DRM.  Rather than ask browsers to get into the DRM business,
 what I think would work best is having a means for 3rd party DRM providers
 to supply browser plug-ins which implement the video tag for protected
 content - not all that different than selecting a pluggable codec.

I suspect that it would be best to just leave this use-case to Flash.
It would be basically impossible to get the kind of obfuscation that
content owners will want via open standards, because people will just
implement clients that skip the obfuscation.  So you're pretty much
stuck with nonstandard plugins anyway.  This decision could be
revisited if there's still a lot of demand for this once the basic
non-DRM use-cases are covered.

 As several people pointed out (and which I tried to get at in my post), this
 is really an ecosystem issue rather than a change needed in the spec or in
 browsers.  I suspect it's going to take some time, but the flexibility of
 embedding content via iframe will be a big step forward.

Wouldn't it be straightforward for YouTube to offer iframe support
right now, in addition to object?  The backend support should be
simple to do.  If you keep the object code as the default embed
recommendation and hide the iframe embed code somewhere so people
will only use it if they look for it, you won't risk confusing anyone.
 Sites that currently whitelist object from YouTube will eventually
whitelist iframe from YouTube too -- I hope there aren't many sites
that permit *arbitrary* objects to be inserted by untrusted users.
Allowing iframe will have other benefits, like allowing fallback
install Flash content (currently omitted from the object code, I
assume to keep the size down).

Another thing that occurs to me is that you might show HTML5 video
when Flash isn't installed/enabled, or when the Flash player crashes.
Or at least you could give an option, instead of just failing silently
(for embeds) or saying the user should install Flash (on the site
itself).  My primary machine runs Linux, and Flash usually doesn't
work at all.  If I didn't know about the HTML5 beta, I wouldn't be
able to use YouTube at all.  And as it is, I can't use any YouTube
embeds most of the time.

 When limiting keyboard input, I'd suggest devices w/ onscreen keyboards
 simply disable the keyboard.  Applications that work well with touch
 interfaces generally provide gesture alternatives for the limited set of
 keys that would be available.  Alternately, devices could limit the keyboard
 to the set of allowed keys.

The problem is if the program makes a fake keyboard and then directly
intercepts touch events to that location, without invoking the OS's
keyboard at all.  The user won't be able to tell that the keypresses
are going to the website instead of the OS.  But I can't see this as
being a big issue -- screen space is so limited on these devices that
websites are fullscreen anyway, or practically.  On my Nexus One,
unless you're scrolled to the top of the site, websites take up the
whole screen except for the bar at the top, which is present in all
apps.  So they could already trivially spoof any application, if they
know the target platform.  Not if the user presses the menu button, I
guess.

 As pointed out, this is not strictly an issue for video tag, though
 certainly related especially for local preview.  I have not been closely
 following the work on the device element, though that seems to be where
 this is headed.

device adoption shouldn't interfere with video adoption, though.
Even if YouTube switched to video by default, it could keep Flash
for recording until device was implemented.  It's probably best for
implementers to focus on perfecting video (and maybe canvas, etc.)
before they put too much work into device, since those are much
bigger use-cases.