[Proposal] Bluray decoding library


Benjamin Zores <ben@...>
 

Proposer: Benjamin Zores

Summary: Create an OpenSource Bluray decoding library

Description: With recent video decoding acceleration features (VDPAU, VAAPI and multi-threaded/core decoders), Linux now can compete efficiently on HomeTheater PC (HTPC) and embedded multimedia SetTopBox market.

One remaining drawback is the complete lack of Bluray movies decoding support. While nearly all video player (FFMpeg, MPlayer, Xine, Gstreamer, VLC) now are able to demux and decode H.264 & VC-1 MPEG-TS streams found on Bluray discs, none of them is able to directly read
and decrypt content from an original disc.

This idea is to create a Bluray access and decrypt library that could be commonly used by all players. Several steps are required to do so:
* be OS portable and written in C, with embedded constraints in mind.
* support AES, SHA1 and ECC decoding, preferably by native implementation or through GnuTLS.
* decode MPLS playlist file format
* support AACS protection [1]
* support BD+ protection [2]
* support BD-J protection (hard, due to JVM) [3]

Such a library has been initiated but development seems discontinued.

Related work:
* libbluray: [4]

Funds:
* Sponsor Bluray drives to developers
* Buy Bluray association specifications (including protection mechanisms).

Scope:
* Write a new lib based on existing work
* Polish its API for extensive media player projects usage
* Extend the on-the-fly decryption algorithms.
This should probably take up to a year of development and tests.

Manpower:
* Various people from GeeXboX project team already interested
* Probably random developers from MPlayer/Xine/VLC/Gstreamer projects.

[1] http://en.wikipedia.org/wiki/Advanced_Access_Content_System
[2] http://en.wikipedia.org/wiki/BD%2B
[3] http://en.wikipedia.org/wiki/BD-J
[4] http://my-trac.assembla.com/libbluray/


Tim Bird <tim.bird@...>
 

Benjamin Zores wrote:
Proposer: Benjamin Zores

Summary: Create an OpenSource Bluray decoding library
This is interesting. I've put it online at:

http://elinux.org/CELF_Project_Proposal/Create_Bluray_decoding_library
-- Tim

=============================
Tim Bird
Architecture Group Chair, CE Linux Forum
Senior Staff Engineer, Sony Corporation of America
=============================


Benjamin Zores <ben@...>
 

On Wed, Dec 9, 2009 at 10:18 PM, Tim Bird <tim.bird@...> wrote:
Benjamin Zores wrote:
Proposer: Benjamin Zores

Summary: Create an OpenSource Bluray decoding library
This is interesting.  I've put it online at:

http://elinux.org/CELF_Project_Proposal/Create_Bluray_decoding_library

Thx Tim,

Nice to hear it reaches some interest.

--
"My life, and by extension everyone else's is meaningless."
Bender, Futurama


Rob Landley
 

On Monday 07 December 2009 14:46:53 Benjamin Zores wrote:
Proposer: Benjamin Zores

Summary: Create an OpenSource Bluray decoding library
Would such a library potentially be something that Linux distros install
openly (instead of surreptitiously ala libdecss), and thus support playback
out of the box instead of "google for a wiki page, fire up a command line
window, and type this magic incantation"?

For that matter, would it be possible to do a clean room decss descrambler
starting from "hoy exhibit B" and get an opinion statement from the SFLC that
this library doesn't infringe anybody's copyrights or trade secrets and that
they'd be willing to defend anybody using it against infringement on either
ground?

I'm aware this leaves trademarks, patents, and contract law for the MPAA to
mess around with, but if the bastards didn't get it patented that's their own
fault isn't it?

http://cyber.law.harvard.edu/openlaw/DVD/dvd-discuss-faq.html#ss2.11.2

(I'm aware that moon bases, flying cars, and Linux on the desktop will probably
occur in that order.)

Rob
--
Latency is more important than throughput. It's that simple. - Linus Torvalds


Benjamin Zores <ben@...>
 

Rob Landley a écrit :
On Monday 07 December 2009 14:46:53 Benjamin Zores wrote:
Proposer: Benjamin Zores

Summary: Create an OpenSource Bluray decoding library
Would such a library potentially be something that Linux distros install openly (instead of surreptitiously ala libdecss), and thus support playback out of the box instead of "google for a wiki page, fire up a command line window, and type this magic incantation"?
As for libdvdcss, I'd say it's always controversial.
It's available everywhere, you get apt-get/yum/... it easily but still
it's supposed to be forbidden to use in some countries.

As for BD, I guess the AACS spec is open, dunno about the others.
But as you said, my fear is that Bluray Alliance (same folks than DVD Alliance) won't be pleased to know that some developers can make BD decoders for free while they're used to get royalties for each sold product ...

Ben


Rob Landley
 

On Sunday 13 December 2009 04:02:13 Benjamin Zores wrote:
Rob Landley a écrit :
On Monday 07 December 2009 14:46:53 Benjamin Zores wrote:
Proposer: Benjamin Zores

Summary: Create an OpenSource Bluray decoding library
Would such a library potentially be something that Linux distros install
openly (instead of surreptitiously ala libdecss), and thus support
playback out of the box instead of "google for a wiki page, fire up a
command line window, and type this magic incantation"?
As for libdvdcss, I'd say it's always controversial.
It's available everywhere, you get apt-get/yum/... it easily but still
it's supposed to be forbidden to use in some countries.

As for BD, I guess the AACS spec is open, dunno about the others.
But as you said, my fear is that Bluray Alliance (same folks than DVD
Alliance) won't be pleased to know that some developers can make BD
decoders for free while they're used to get royalties for each sold
product ...
Hence the need for some legal entity (like the SFLC) to analyze the result,
issue an opinion statement about it, and put out the "oh _please_ bring this
thing to trial so I can defend it" offer.

(Just having the code is useless if it can't/won't actually be deployed...)

More a question for the SFLC than CELF.

Rob
--
Latency is more important than throughput. It's that simple. - Linus Torvalds