Category Archives: Technical

Post navigation

Background

It’s needlessly hard to see a movie on the web because there are no widely-accepted standards for how movies should be encoded as data. Currently popular choices become unpopular later and none of them are well-documented (in a technical sense) or legally in the clear so that all browser programmers can implement them. We end up with a set of incompatible methods to do roughly the same thing.

Ogg Theora+Vorbis can change that but Apple and Nokia are fighting it. They want their preferred patent-encumbered formats to become the standard means for distributing video online. This is a real problem for anyone who can’t pay for the relevant patent licenses, which means all free software hackers.

“Ogg” is a wrapper that ties together “Theora” encoded video and “Vorbis” encoded sound. Together, Ogg Theora+Vorbis give users a way to see movies on your computer. Ogg Vorbis+Theora are not known to be encumbered by any patents (the only applicable patent on Theora’s predecessor, called “VP3”, was licensed for everyone to use in any way they want). Ogg Theora+Vorbis are implementable on nearly all modern computers. There is free software (zero-cost and freely to sharable and modifiable) to make and play Ogg Vorbis+Theora movies. Ogg Vorbis+Theora are a great basis for interoperability and a fine choice to recommend in any standard that uses multimedia files precisely because everyone can use Ogg Theora+Vorbis.

Ogg Theora+Vorbis was in the drafts for the next generation of HTML (the lingua franca of webpages) as a suggestion; nobody would have been required to implement support for Ogg Theora+Vorbis. But that didn’t stop the proprietors from complaining.

What’s the holdup?

Ian Hickson, speaking for the HTML5 working group, recently announced that he removed the suggested Ogg Theora+Vorbis language from the HTML5 specification. The replacement language says that there should be unencumbered common audio and video formats in HTML but it doesn’t suggest any specific means of accomplishing that.

How did this situation come to pass? What happened between the time this spec was drafted and now? Corporate influence, in a nutshell. Apple and Nokia’s complaints have found an ear with those working on HTML specs.

What can you do to stop this? Raise the issue far and wide with everyone, even non-technical computer users. It’s time that these issues no longer live exclusively in the realm where only geeks tread.

More Microsoft advocates than I can link to (1, 2 are a couple) recently wrote non-critically about Microsoft’s recent announcement: Internet Explorer 8, the upcoming version of Microsoft’s proprietary web browser, will pass a standards-compliance test called “Acid2“. As this was covered widely in mainstream corporate press, this is not really news.

What’s news is how people commenting in and on this story don’t question why they should believe Microsoft at all. Why shouldn’t everyone continue to push for the use of free software web browsers? Why should we treat vaporware as good news?

It’s quite common to be able to get free software programs as soon as they’re updated to do something new. Firefox, for instance, is recompiled and distributed nightly. You can download a nightly version and test it all you want. All Microsoft did was produce a screenshot ostensibly demonstrating MSIE8 passing Acid2. They distributed no code for people to verify this alleged standards compliance for themselves, not even proprietary code. To me this represents a significant low in how many people are willing to give credit for something they can’t verify, something typically called vaporware.

At best this is another example of a proprietor making tiny steps toward something resembling what users want, but only when the proprietor is pushed: Microsoft’s announcement comes on the heels of Opera (another web browser proprietor) launching a Microsoft antitrust complaint. Merely a coincidence or unsurprising behavior coming from the target of significant antitrust action (the largest American antitrust case is the Microsoft case and a recent EU antitrust action that resulted in Microsoft getting paid to produce some protocol documentation under NDA)?

The Samba team will soon get the fruits of the EU antitrust suit against Microsoft. Samba is software which allows an operating system to communicate with Microsoft Windows shared folders and printers over a network. The network protocols Microsoft uses are secret and had to be determined by Samba programmers by listening on the wire to see what Microsoft’s proprietary software would do given a particular input. Microsoft had to be forced to produce the documentation for various network protocols they use. This protocol documentation allows Samba to fully interoperate with the Microsoft Windows workgroup server products so they can make free software that implements those protocols.

The Samba team will become a subcontractor of the newly-formed Protocol Freedom Information Foundation (PFIF) which will pay Microsoft €10,000 for the documentation and agree to keep certain aspects of the docs secret. The PFIF will allow other programmers access as well, this is not a deal exclusive to Samba programmers. This deal doesn’t include patent licenses for any patents covering anything described in these docs but Microsoft has to list their patents which read on the ideas in these docs.

The latest change to iPod software that rendered the audio listening device less interoperable has been broken. This isn’t the first time iPod and iTunes-related algorithms were broken and it won’t be the last.

Although we -the Linux community- can choose not to buy iPods, many other people will. And it is our goal to make Linux a viable modern computing platform that allows people to use all of their existing devices.

Breaking the hash is not really a long-term solution, as they can keep making the process harder every time. The long-term solution is for iPods to have a standard interface that third parties can communicate with.

This probably should be compounded to the EU’s findings on Apple’s anti-trust practices to ensure open access to a popular device.

Background

Apple has changed the way iPods work so that only Apple’s software can successfully manipulate the songs on an iPod. Until the new arrangement is reverse-engineered, Apple has locked in iPod users into their software, transforming a more useful general-purpose audio listening and file carrying device to something that chiefly obeys Apple’s wishes.

Lennart Poettering is a free software hacker, author of important software including Avahi (which helps computers connect to each other and discover services) and PulseAudio (which allows computers to play multiple sounds simultaneously, even sending audio over networks to be heard somewhere else). He is quite familiar with the relevant protocols Apple uses to allow iTunes to share files and send audio around the network. These aren’t the kinds of programs one uses directly but they’re quite necessary for any modern system.

Analysis

At one point, Poettering concludes to use a technically inferior protocol to do the job DAAP does because DAAP is not an open protocol and UPnP is an open protocol:

I believe that DAAP is the superior protocol in comparison to UPnP MediaServer. (Not really surprising, since I wrote most of Avahi, which is a free implementation of mDNS/DNS-SD (“Zeroconf”), the (open) Apple technology that is the basis for DAAP.) However, due to the closedness of DAAP I would recommend everyone to favour UPnP MediaServer over DAAP. It’s a pity.

Apple did the right thing with the mDNS/DNS-SD protocol (which allows computers to see what services they offer and help make it easier for ordinary users to connect computers together on a local network). Apple allows everyone to use mDNS/DNS-SD and encourage broad acceptance by publishing complete specs under a license that encourages implementation, allow an Apple employee to help with technical questions, and build valuable programs and devices which use the protocol.

But make no mistake, if Apple were a more popular consumer electronics company they would treat you no better than they could get away with. Best not to become dependent on them.

Thanks to Lovely Lizzie for the tip: If you received a passport recently, you’ve probably got one with an RFID tag in it. Radio Frequency Identification tags are a chip and antenna combination that receive a signal from a scanner. When the scanner sends one a signal, the RFID tag uses the energy in the signal to possibly do a light bit of computation and broadcast a signal back.

RFID tags are embedded in a number of goods we already own and that is quite troubling from a privacy standpoint, but chief among them is in the passport and in a human being. By carrying an RFID tagged passport one is basically broadcasting some information about their passport to anyone with an RFID scanner. I don’t need to get into the details of how unwise this as the US bombs the world into democracy.

In case you’re thinking “why would I care about privacy, I have nothing to hide!” Bruce Schneier reminds you that privacy is not about hiding a wrong, it’s a fundamental requirement for human decency. There are plenty of things we commonly do where we desire privacy; we’re not doing something wrong or shameful, we just don’t wish to broadcast our activities. We also use privacy as a check on those in power by denying those who would oppress us the information they’d use against us. Privacy should be respected and not given away without serious consideration about how the information will be used and who will have access to it.

AMD owns ATI, a computer videocard manufacturer. Recent ATI videocards have no free software drivers. The proprietary ATI driver which works with a typical GNU/Linux system is poor quality and as a result many users have problems with it. At the Red Hat summit going on right now, an AMD representative discussed the situation and Tom Calloway blogged about it:

An executive VP from AMD gave a keynote this morning, and he talked up open source and committed to making the ATI driver “better”.

We don’t need the driver to be “better”, Mr. AMD, we need the driver to be “free”. You make it free. Free your specs. Free up a little of your manpower to answer technical queries from developers. Free Dave Airlie from his NDA restrictions. Free your existing code.

One Laptop Per Child (OLPC) is an important project which makes and distributes inexpensive laptop computers for children in poor countries. The machines run a GNU/Linux operating system and use free software for almost everything. The machines require very little power (no more than a child can generate through a crank, as I understand it) and the display is low-power. The machine can be safely disassembled by a child including the screen which has no mercury as is common in LCD displays in every laptop display you’ve seen.

See what they’ve been up to in their new video, the first of what promises to be a series.

The most recent edition of “Questions please…” features an interview with Mark Shuttleworth, head and chief sponsor of Canonical and the Ubuntu GNU/Linux distribution. The license for the recording is as follows:

Verbatim copying and redistribution of these entire recordings is permitted worldwide and without royalty provided this notice is preserved.

Thanks to Questions Please… for making the recording available in a format everyone can play and licensing it to share.

About 12m15s into the recording, the topic of proprietary software came up:

Jonathan Roberts: Do you think there is a danger in trying to attract new users by trying to add proprietary bits to GNU/Linux?

Mark Shuttleworth: Yeah, very much so. So we’ve always resisted the temptation to add proprietary applications. And we have tons of users who wanted Java before Sun had said they would GPL Java, and they still haven’t finished the process of GPLing Java so it’s not completely in Ubuntu. Similarly with Flash and Adobe Acrobat and other sort of, proprietary bits and pieces that people really really do want that we just won’t add to the distro. We absolutely see Ubuntu as a way of introducing people to free software applications; to a complete free software environment.

Now we draw the line in terms of hardware enabling and we draw the line quite hard. We say that […] the driver that it takes to enable the hardware that you bought we will ship. And so we’ve always shipped wireless drivers, for example, and we’re discussing turning on by default the 3D drivers and all this would make things like Compiz and some of the newer video applications and so on just work out of the box. Other distributions take a different view, some say that firmware is unacceptable, some say that firmware is acceptable. So Debian, for example, in all of its recent releases, has made an exception to its free software guidelines for its kernel package to allow it to ship firmware, which is essentially proprietary software. So different distributions have taken different views on that and we take—our dividing line is between kernel and applications. All the applications in Ubuntu are free software only and we stick to that despite suitable pressure to do differently.

Jonathan Roberts: And that’s a good—in my opinion, that’s the best approach I think.

Ubuntu boasts about distributing Opera for Ubuntu users—all the software Ubuntu users need to run the proprietary Opera web browser is available “with a couple of clicks” according to their press release. Ubuntu also claimed that “Ubuntu will always be free, and will not have restrictive licenses associated with it.”.