Bug 145380 - [PATCH] Support for <video> and <audio> elements of HTML 5
Summary: [PATCH] Support for <video> and <audio> elements of HTML 5
Status: RESOLVED FIXED
Alias: None
Product: konqueror
Classification: Applications
Component: khtml (show other bugs)
Version: unspecified
Platform: Debian stable Linux
: NOR wishlist
Target Milestone: ---
Assignee: Konqueror Developers
URL:
Keywords:
: 191651 (view as bug list)
Depends on:
Blocks:
 
Reported: 2007-05-13 14:24 UTC by Ivo Emanuel Gonçalves
Modified: 2011-01-09 23:35 UTC (History)
22 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
Adds basic support for HTML5 video and audio (20.48 KB, patch)
2009-06-04 05:08 UTC, Michael
Details
video-tag-dl.pl - perl script to download videos from pages using <video> (3.02 KB, text/x-perl)
2009-10-26 20:23 UTC, BartZilla
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Ivo Emanuel Gonçalves 2007-05-13 14:24:40 UTC
Version:            (using KDE KDE 3.5.6)
Installed from:    Debian stable Packages

The W3C is now adopting the HTML 5 created by the WHATWG, result of the many discussions going on in their mailing list.  In some ways, they just turned the royalty-free Theora into a web standard through the <video> declaration.  I believe this a great victory for free software and for everyone on the web, as <video> will provide a very easy way for anyone to host a video like they host an image without the need of Youtube or other private-owned services.

So, the fastest we have <video> and <audio> support on the major browsers, the better.  I think Konqueror and all the browsers that use the KHTML engine should have support for those two elements.  It may even force Microsoft to adopt those tags by public demand on their proprietary browser and, by effect, forcing their operating system to support Theora and Vorbis, thus promoting the use of non-proprietary media formats.

It's a win-win situation, and although HTML 5 is pretty much new, lots of things are mature enough to come to the major browsers now; the <video> and <audio> elements being one of them.

This is my request.  Thanks for reading and congratulations to everyone involved in the development of KHTML.
Comment 1 Allan Sandfeld 2007-09-25 15:26:58 UTC
This stuff is still under discussion, and is already a failure. Implementing it right now is not wise.

It's a failure because of the three companies implementing it Opera will only support MPEG, Firefox will only support Ogg/Theora and Apple absolutely refuses to support anything but DRM Quicktime in Safari.

So right there, before even being implemented the <video> and <audio> tags are already incompatible between browsers.

Btw. It might be an idea to implement <bgsound> which is more widely used than <audio>.
Comment 2 Ivo Emanuel Gonçalves 2007-09-25 17:06:29 UTC
Mr Sandfeld,

> This stuff is still under discussion, and is already a
> failure. Implementing it right now is not wise.

It's under discussion for improvements and to reach consensus.  Nothing bad in that, and it's not unwise to start supporting whatever from the spec is already stated to be stable.  The <video> and <audio> proposals fall under that category and will not be seeing radical changes in the future.

> Opera will only support MPEG

Where have you heard this?  You should source such bold claim.  I'm in contact with Opera developers like Mr van Kesteren, who have confirmed that they do intend to support Theora and Vorbis as Opera does not wish to pay licenses for every video/audio format out there.

> Firefox will only support Theora

Yes, and you know what, Firefox is free software.  Do you know that free software relies on free formats?  Are you perhaps stating that KDE does not wish to support free formats?  Are you as an individual not willing to support free software and free formats?  Do you know that free software needs to stay united, or the movement will be crushed under the big monopolies out there like Apple?

> and Apple absolutely refuses to support anything but DRM Quicktime in Safari.

Yes, and the KHTML team should fight against that by providing an alternative browser with support for free formats.  The question is: why is it not doing that?

> So right there, before even being implemented the <video> and <audio> tags are already incompatible between browsers.

HTML also started as incompatible across browsers.  Does that make HTML a bad thing?  Or is it the browser developers themselves who do not wish to use a common framework?  Guess what the <video> and <audio> proposals in HTML 5 are?  A common framework!

> Btw. It might be an idea to implement <bgsound> which is more widely used than <audio>.

I hope that was intended to be sarcastic, Mr Sandfeld, because otherwise it just makes you look silly.  Following that line of thought, Konqueror should also support ActiveX.  I mean, it's more widely used than most HTML 5 elements that do the same thing, so ActiveX must be a good thing, right?
Comment 3 Allan Sandfeld 2007-09-27 22:17:50 UTC
Okay Opera and Firefox will support Ogg/Theora. Given Konqueror's basic design we will support whatever is installed on the system when we support <video>, that could mean Ogg/Theora, it could mean anything or nothing. It will depend on the actual installation.

I am not saying we won't support <video>, I am saying it is low priority. Personally I don't like it, but that's only an argument for the standardization debate, not here.
Comment 4 Helmut Pozimski 2007-11-10 16:33:40 UTC
Now that Opera already has an implementation and Firefox is going to implement it, I think Konqueror shouldn't fall back. There are many great things that could be done with svg and <video> for example. Also it is the best possibility to spread free codecs.
Comment 5 S Clark 2008-11-05 23:31:13 UTC
Leaving aside the issue of codecs - it looks like the two main browsers that don't seem to be interested in support of the tags are Konqueror...and Internet Explorer[1].  Since I suspect the majority of systems running KDE have relatively easy access to Xiph's codecs, I wouldn't expect there to be much that the KHTML developers would need to do to worry specifically about Theora/Vorbis support.

Either way, while I'm also not sure I "like" the <audio> and <video> tags, I definitely think support for them on parity with Firefox and Opera (and superior to Safari's "Quicktime"-limited version) would be a desirable thing.

[1] Actually I shouldn't say that - I'm not sure if Chrome is planning to do it, either.
Comment 6 Andreas Nordal 2009-02-10 23:55:37 UTC
In 2007:
> Implementing it right now is not wise.

Could it be wise to do it for KDE 4.3? In the meantime, we could celebrate this feature request's second anniversary...

To illustrate the problem:
With Konqueror 4.2.0, I can "Preview in Dragon Player Part" to play any local Ogg+Theora video inside the browser window. However, trying to play a video on http://commons.wikimedia.org/wiki/Category:Video pops up "Sorry, your system does not appear to have any supported player software. Please download a player". Regardless of technical details, this only appears to users as Konqueror's plain unwillingness!

<video> and <audio> is _the_ solution, what we all want. Correct me if I am wrong. For Wikipedia to start using it, and to fight today's diversity of embedding, plugin and codec non-standards, the FOSS community needs every (including KHTML's) support for the only good solution. For the sake of Theora, sooner is better than later, in order to defacto-ise before Apple, Nokia or anyone else says anything more.
Comment 7 Dario Andres 2009-05-08 17:00:39 UTC
*** Bug 191651 has been marked as a duplicate of this bug. ***
Comment 8 mursusoft 2009-05-31 17:54:44 UTC
Just got to add that http://tinyvid.tv/ and wikimedia commons videos looks very impressive these days. Seeking, volume sliders and so on... all is there. Seriously this free software tech has to be supported :)
Comment 9 Michael 2009-06-04 05:08:19 UTC
Created attachment 34254 [details]
Adds basic support for HTML5 video and audio

Will anyone not accept free code? :)
Comment 10 A. Spehr 2009-06-12 12:46:15 UTC
Note to watchers: This was posted to the kfm-devel mailing list.
Comment 11 Andy 2009-06-15 18:02:00 UTC
I also would like to see support for Ogg Theora and the video tag. I have written a plugin to support it for DragonflyCMS. The more browsers that support it the better.
Comment 12 Zayed Al-Saidi 2009-06-30 18:25:50 UTC
@ Michael 

Will you patch will go in svn for KDE4.4 ?
Comment 13 Beat Wolf 2009-08-20 21:34:41 UTC
Just want to add myself as CC and show my support for that patch (well, for the idea, no idea about the code quality ;-) ).

I hope the right people got informed?
Comment 14 Maksim Orlovich 2009-08-22 17:04:35 UTC
@ Michael: do you have any updates on top of this? If not, I think I'll go ahead and commit it, after slight KHTMLization.

Thanks, you rock!
Comment 15 Hernán 2009-10-17 18:17:43 UTC
Ogg theora/thusnelda, ogg vorbis is one of the growing web codecs these days. Not supporting it will make h264 to stablish as the defacto. 

It is also the wish of most users to have the audio video tag.
Comment 16 Arne Babenhauserheide 2009-10-21 17:31:44 UTC
I'd wish to have it, too. I don't use flash, because it's proprietary and badly integrated to boot, but the video tag with ogg theora provides a great way to get video for users of really free systems. 

So please add the video tag - I don't really like having to start firefox whenever I want to look at non-flash videos (flash videos are done via youtube-dl). 

Also tinyvid has a list of browsers who support the tag: 
"Firefox 3.5, Opera experimental builds, Google Chrome and Safari with XiphQT installed can playback videos with varying degrees of success"
Comment 17 Arne Babenhauserheide 2009-10-25 19:26:43 UTC
@Maksim Orlovich: Did you already commit the patch?
Comment 18 BartZilla 2009-10-26 16:26:07 UTC
(In reply to comment #16)
> (...)
> So please add the video tag - I don't really like having to start firefox
> whenever I want to look at non-flash videos (flash videos are done via
> youtube-dl). 

You don't have to start firefox to play videos from <video> tag: just see HTML code of the page, download video file and play it with some external app (just as you do, I guess, with flash videos).
Comment 19 Arne Babenhauserheide 2009-10-26 16:33:25 UTC
I know, but using firefox is a lot more convenient than reading the source and switching to the console and mplayer. theora and <video> offer the opportunity to make online videos fun, but reading the source isn't (youtube-dl saves me from having to read the source. It parses youtube pages to get the videos.
Comment 20 BartZilla 2009-10-26 20:23:18 UTC
Created attachment 37853 [details]
video-tag-dl.pl - perl script to download videos from pages using <video>

(In reply to comment #19)
> I know, but using firefox is a lot more convenient than reading the source and
> switching to the console and mplayer. theora and <video> offer the opportunity
> to make online videos fun,

Why only theora? What's wrong with H.264? AFAIK it is technically superior to theora. AFAIK software patents are not enforceable in Europe. If someone believes this is not the case, please explain to me why VLC (http://www.videolan.org) still exists.

> but reading the source isn't (youtube-dl saves me
> from having to read the source. It parses youtube pages to get the videos.

I know. Your message inspired me to write a perl script that downloads videos from <video> tag(s) from the page given as an argument. I'm attaching it to this bug. Just download it, put it in your PATH, make it executable and edit it to set writable directory where videos are saved ($ConfVideodir variable). Also note that it requires wget.

In many cases you really don't have to start Mozilla Firefox(R)(TM) to watch these videos.

--
Mozilla Firefox is a registered trademark of the Mozilla Foundation. (*)

(*) I only follow "basic guidelines" outlined on http://www.mozilla.com/en-US/about/logo/legal.html ...
Comment 21 Arne Babenhauserheide 2009-10-27 09:43:42 UTC
> Why only theora? What's wrong with H.264? AFAIK it is technically superior to theora. 

Since Thusnelda (theora 1.1) that's only true anymore by fractions - and Theora is still moving pretty fast. 

In a test I did myself, I got a (small size: 226x170) music video down to 64kbit/s with theora 1.1 - including audio (ogg vorbis). That's 2.5MiB for over 5 minutes of video. It's small enough to establish two-way video telephony over an ISDN line (though when trying to use icecast for that, the lag is still too high due to some buffers in intermediate programs). 

-> http://infinite-hands.draketo.de/filme/Infinite_Hands-2008-Thusnelda-2009-09-18.ogv

(this video includes some evil optimizations, though - for example ripping out almost all keyframes :) ). 

> AFAIK software patents are not enforceable in Europe. If someone believes this is not the case, please explain to me why VLC (http://www.videolan.org) still exists.

The problem is that they are not *yet* enforeceable - many people in europe fight to keep software patents illegal in Europe, but we don't know if who'll win in the end. 

And for companies wanting to distribute software with some device, not having that device distributable in the USA often is a showstopper. 

AFAIK H.264 will begin to take royalties from playback software in the next years, so a program like Firefox can't include it without fear of having to rip it out again later - and the same is true for distributions shipping KDE, so H.264 shouldn't be a webstandard. 

-> http://theora.org/benefits/

> Your message inspired me to write a perl script that downloads videos from <video> tag(s) from the page given as an argument.

Cool! Many thanks! (moved to ~/bin/ :) )
Comment 22 Beat Wolf 2009-10-27 09:53:32 UTC
i think the discussion is irrelevant what codec is better, but the only discussion that should be made is if or if not that patch goes into khtml in time for kde 4.4!
Comment 23 Arne Babenhauserheide 2009-10-27 10:14:35 UTC
> the only discussion that should be made is if or if not that patch goes into khtml in time for kde 4.4!

You're right - sorry. 

So my view on that: I tried various different ways of hosting video on my site, and the <video> tag is by far the most convenient and best working version. 

So I urge you to look at it from the small webdevelopers side: The <video> tag makes including video as easy as including images, so it opens up online-videos for every webauthor. 

You don't need more than a simple FTP-server (maybe including a .htaccess file for the video/theora mimetype) and minimal HTML-skills to host your selfmade videos. It would for example allow kdenlive to add an option "create an accompanying website for your video and upload it to your FTP server". 

Even the (now closed) geocities accounts had enough power for hosting videos with the video-tag. 

Naturally I'm biased: I want my sites to work as easy as possible, without the need of any convoluted java- or flashscripts. And I want to allow people who visit my sites to directly play my songs and videos without having to start an external program. 

Since I am a KDE user, I want KDE users to be able to use my website easily, and for reaching both of these goals, I need <video> support konqueror. 

So please include the patch in 4.4. 

How I use <audio> and <video>: 
- <audio>: http://draketo.de/podcasts/lieder-im-zeitenwind/
- <video>: http://infinite-hands.draketo.de/#html5-tag
Comment 24 Beat Wolf 2009-10-27 10:22:59 UTC
before i forget it, i urge you to get this into kde 4.4, because that will be the version kubuntu 10.04 will use, which will be a LTS, so many people will be without video and audio support in konqueror for years to come.

If i could i would help, but i'm really not familiar with the khtml codebase
Comment 25 nowardev 2009-11-02 11:17:17 UTC
html5 supports is a priority for every damned browser.
doesn't support html5 it will mean to reduce khtml engine spreading.

if konqueror will not support html5 i will not user anymore. 

i ma looking for rekonq arora and sadly opera.
if firefox will be ported on qt some day i will use firefox.
Comment 26 Germain Garand 2009-11-04 04:27:09 UTC
I intend to play with the patch in the next days, and see if we can get
something reasonnably effective for hard freeze.
I consequently added this to the feature plan.

But maybe Maksim already has something more than the initial patch, and would
prefer doing the initial commit?
Comment 27 Maksim Orlovich 2009-11-04 05:23:55 UTC
I am quite busy, so it would be good if you could take care of it --- there still quite a few bugs I need to fix...
Comment 28 Germain Garand 2009-11-25 19:56:24 UTC
SVN commit 1054224 by ggarand:

add fullscreen playback support to 'video'.

CCBUG: 145380

 M  +29 -1     media_controls.cpp  
 M  +7 -1      media_controls.h  
 M  +1 -1      render_media.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1054224
Comment 29 Germain Garand 2009-11-25 19:56:31 UTC
SVN commit 1054225 by ggarand:

make the layouting code actually work.

CCBUG: 145380

 M  +16 -13    render_media.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1054225
Comment 30 Germain Garand 2009-11-25 20:49:52 UTC
ah, sorry, I didn't CC the initial commit with the work from Michael:

------------------------------------------------------------------------
r1054222 | ggarand | 2009-11-25 19:56:11 +0100 (mer. 25 nov. 2009) | 5 lignes

start adding functionality to video and audio tags, via a Phonon player.

patch by Michael Howell <mhowell123@gmail.com>

(benignly modified and massaged in some ways)
------------------------------------------------------------------------

thank you! :)
Comment 31 Arne Babenhauserheide 2009-11-26 03:11:59 UTC
*bow* Many thanks, Michael and Germain!
Comment 32 Germain Garand 2010-01-06 05:55:28 UTC
SVN commit 1070585 by ggarand:

Update audio/video elements' interface to match latest draft
specification.

CCBUG: 145380

 M  +52 -117   html/HTMLMediaElement.cpp  
 M  +10 -23    html/HTMLMediaElement.h  
 M  +25 -31    html/HTMLMediaElement.idl  
 M  +1 -1      html/MediaError.h  
 M  +1 -0      html/MediaError.idl  
 M  +0 -4      misc/htmlattrs.in  
 M  +1 -4      misc/htmlnames.cpp  
 M  +426 -429  misc/htmlnames.h  
 M  +10 -0     xml/dom_elementimpl.cpp  
 M  +1 -0      xml/dom_elementimpl.h  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1070585
Comment 33 Samuel Brack 2011-01-09 23:35:24 UTC
I think this wish can be closed because these HTML5 tags are working now (using 4.5.4).