Live data from Hacker News

Save Firefox

eff.org

241–250 of 266 posts

Re: Save Firefox

#241
post #198

Earlier quoted context omitted.

I used to make an effort to use FF, but it gradually got slower, froze up more often, had problems with content I was viewing. The final straw was when they had a big update. Instead of fixing any of these issues, they gave me the ability to call people with service I don't use by clicking a link :/

Similar boat here. I abandoned Firefox back in the day due to the memory and freezing problems, and general lack of responsiveness compared to Chrome. The difference in everyday use was massive here; we went from having a browser that could hardly handle having 3 tabs open while using a gigabyte of memory, to one that worked flawlessly and used a fraction of the resources. Firefox then put in a lot of effort fixing t…

>I'm not a superfan of the information I imagine Google collects from my using Chrome, but the browser itself is just too good to give up.

If you don't want to send information back to Google, don't use Chrome.

Use Chromium instead. It's Chrome, but without the spyware, and only has the open-source components.

It won't work for Netflix though, but for all your other browsing, it should work exactly the same as Chrome. Keep Chrome around for Netflix.

Re: Save Firefox

#242

Earlier quoted context omitted.

First, the app only works on Windows 8/8.1/10 and a lot of people are still running earlier versions of Windows. Why not port it to Windows 7?

Windows 7 doesn't provide the Windows Runtime infrastructure to support sandboxed, remotely-maintained, universal apps. They'd have to write a new desktop program, and that's pretty unlikely.

Maybe, but Netflix isn't some little 2-bit company, they're huge and definitely have the resources to build a new program. Now obviously, building a new desktop program to support a dying OS might not make that much sense, but if the customers demand it, Netflix can do it.

Re: Save Firefox

#243

Earlier quoted context omitted.

Sadly, the assumption is false. The EME standard is a standard for a way for scripts on a page to ask the browser to talk to the CDM. The actual interaction between the browser and the CDM is completely unspecified; it just needs to enable the browser to implement the EME APIs. I think a more apt comparison is that EME is to CDMs more like the 2D canvas API is to graphics libraries. At least in a world in which graph…

Thank you, bzbarsky. Please help us (me) understand the situation a bit better if you have the time. 1. Could you please describe a bit more about the browser-CDM interaction and what is implemented there? 2. Why do you think the browser-CDM interaction was left unspecified? Wouldn't a standard be beneficial to all parties, even CDM developers (no need to back-and-forth with browser developers: just follow the standa…

> Could you please describe a bit more about the browser-CDM interaction and what is implemented there?

I don't really know what this interaction looks like in non-Firefox browsers. Last I checked, the CDMs Chrome ships didn't work with Chromium, but I don't know whether that's still true, and I don't know whether the browser-side bits involved are implemented at all in Chromium or just in Chrome. Likewise, I don't know whether the CDM interaction bits in Safari are in the public WebKit repo or not. IE's source is not available, of course. In the case of Firefox, https://hacks.mozilla.org/2014/05/reconciling-mozillas-missi... really does cover most of the details. We put together an API that made sense on our (Firefox) end internally. We then worked with some CDM vendors to integrate their products, by building shims to convert the API their CDMs exposed to the API we wanted to be using internally. That's probably all I can say on the subject.

https://hsivonen.fi/eme/ has a reasonably in-depth discussion of the way these bits fit together from someone who was much more intimately involved in this than I was.

> Why do you think the browser-CDM interaction was left unspecified?

Because the people writing the spec pushed back pretty explicitly on doing so, claiming that this would take too much time and overconstrain things too much in terms of both CDM and browser implementations.

> Wouldn't a standard be beneficial to all parties, even CDM developers (no need to back-and-forth with browser developers)

The CDM developers I'm aware of are Google, Apple, Microsoft, and Adobe. Three of these are also browser developers, who are shipping their own CDM in their own browser. Two of those three, along with Netflix, happened to be the spec editors.

There was literally zero incentive for them to standardize the browser/CDM interaction, and some incentives to NOT do so. So they didn't.

> For a browser to support a CDM, is a developer required to write CDM-specific browser code?

Yes. Not just that, but for actual CDMs on the market the developer is also required to work with the CDM vendor to accept that particular browser as a trusted enough party.

This is because CDMs are supposed to prevent the decoded data being captured, so they must either handle their own on-screen display or do so via an intermediary they trust. See also the "What does this mean for downstream users of the Firefox code base?" section of https://hacks.mozilla.org/2014/05/reconciling-mozillas-missi... and note that in the setup described there the CDM basically bakes in some sort of signature of the actual browser _binary_ that it's willing to work with. So just compiling the same, or worse yet slightly modified, source is not enough to get something that works with the same CDM.

> Maybe this is obvious but I can't believe this is the state of things.

It's totally the state of things.

> I, and I believe many others, have been under the impression from the beginning that EME was intended to globally constrain CDM behaviour.

EME describes a set of things that a CDM must effectively support. This means that a browser can demand that a CDM run in a sandbox that limits its interactions with the outside world to whatever is needed to support the EME APIs. This is the approach Firefox is taking with its CDMs.

Of course the CDM vendor can tell the browser vendor to go take a hike with its sandboxing demands and simply refuse to run in such a sandbox. Then the browser vendor can either back down or not ship that particular CDM.

There was a lot of talk about how EME opened the _possibility_ of CDMs that were more constrained than NPAPI plugins are (because the NPAPI includes all sorts of stuff, whereas a CDM could be built with a much smaller and more sandboxable API). And some people (the Netflix ones in particular, iirc) sure made it sound like this possibility would be a definite reality. And to some extent they were right: the CDMs in Firefox are certainly a lot more sandboxed than NPAPI plugins! But that's because Firefox decided to make it so, and EME somewhat enabled it to make that decision, and the CDM vendors involved agreed to play along.

> (ie. Web standards, not browser standards)

I'm not sure the distinction is that meaningful.

That said, the W3C can, when it wants to, work with other standards bodies on joint things. Examples include WebSocket (API defined by W3C, wire protocol defined by IETF), WebRTC (similar), JavaScript (API and integration points defined by W3C, language defined by ECMA), and probably other things I'm forgetting. If people had really cared about standardizing the browser/CDM interaction and had really decided that the W3C was the wrong venue for it (which is not obvious), another venue could have been found.

> because there wasn't enough interest (or coordination) in establishing a standard browser-agnostic environment for them to run in.

Correct. The only interest expressed in such a thing was from Mozilla and Opera, as I recall. Oddly enough, those were the only major browser vendors that were not also CDM vendors. What a coincidence!

> Is this an accurate representation?

I think the time to establish such an environment is not any more gone than it used to be, because nothing has much changed. Apple, Google, and Microsoft are still both browser vendors and CDM vendors, and still not interested in standardizing CDM stuff. Mozilla could create a "standard" on its own, but it would be rather meaningless in practice. And the problem of CDMs wanting to authenticate exactly who they're talking to on the binary level would remain.

Re: Save Firefox

#244
post #175

Earlier quoted context omitted.

You can turn it off in the options. From https://support.mozilla.org/en-US/kb/enable-drm Opt out of CDM playback, uninstall CDMs and stop all CDM downloads You have the choice to globally opt out of HTML5 DRM playback. Once you opt out, Firefox will delete any downloaded CDMs from your hard drive, cease all future CDM downloads and disable DRM playback. This affects only DRM-controlled HTML5 audio and video. To opt o…

No such option in Firefox 46.0 on Ubuntu 16.04.

EME is not enabled by default in Firefox on Linux.

Re: Save Firefox

#245
post #175

Earlier quoted context omitted.

You can turn it off in the options. From https://support.mozilla.org/en-US/kb/enable-drm Opt out of CDM playback, uninstall CDMs and stop all CDM downloads You have the choice to globally opt out of HTML5 DRM playback. Once you opt out, Firefox will delete any downloaded CDMs from your hard drive, cease all future CDM downloads and disable DRM playback. This affects only DRM-controlled HTML5 audio and video. To opt o…

For a normal user, the problem is that the Play DRM content checkbox is hidden by default. In order to enable it, you must go to about:config and enable browser.eme.ui.enabled . While you are there, you can just disable media.eme.enabled and media.eme.apiVisible .

Are you on Linux? The "Play DRM content" checkbox is shown by default on Windows and Mac OS X.

Re: Save Firefox

#246

Earlier quoted context omitted.

For a normal user, the problem is that the Play DRM content checkbox is hidden by default. In order to enable it, you must go to about:config and enable browser.eme.ui.enabled . While you are there, you can just disable media.eme.enabled and media.eme.apiVisible .

Are you on Linux? The "Play DRM content" checkbox is shown by default on Windows and Mac OS X.

The default for OSX is hidden - http://imgur.com/3AdT6Vs (46.0.1)

On Windows, it is shown indeed (45.1.1 ESR).

Re: Save Firefox

#247
post #221

Earlier quoted context omitted.

> If there was a safe way to deliver what they want (encrypted tamper-proof streaming) in an open-source package, they would likely consider it. But there isn't, afaik. The problem is fundamentally that "encrypted tamper-proof streaming" is not possible regardless of whether the implementation is open source. It would be trivial to write free software that respects copying restrictions. And then people would be able…

> The problem is fundamentally that "encrypted tamper-proof streaming" is not possible In an absolute sense maybe not, but you can have decent approximations. As OP points out, music ended up being ok with watermarking. Hollywood might be ok with something like hardware tokens (which imho would be superior to "just download and execute this blob and shut up"). > There is no risk to money or jobs. If that was the case…

> In an absolute sense maybe not, but you can have decent approximations.

No you can't. It's all inherently snake oil. The nature of the universe is such that if you can see something then you can copy it. Either you get people to respect copyright by believing in the social contract or you lose. There is no technological solution.

> As OP points out, music ended up being ok with watermarking.

Watermarking isn't DRM. (Though it shares a lot of the same failings in the sense that it reduces quality for legitimate purchasers and can be removed by pirates.)

> Hollywood might be ok with something like hardware tokens (which imho would be superior to "just download and execute this blob and shut up").

That kind of hardware is just software embedded in silicon. Any "hardware token" can be fully emulated in software as soon as you extract the keys out of it, which somebody is going to figure out how to do and then tell all their pirate friends how to do. By the time the hardware is in enough hands that you can require it to be used, it's already broken. And you can't patch silicon over the internet, so the pirates win for a decade. Then you come out with some new hardware that pirates have several years to break before it's in enough hands that you can require it again.

> If that was the case, we wouldn't be hearing musicians crying foul about Spotify every other day.

Spotify has DRM. Losing money to competition is not the same thing as losing money to piracy.

> At current prices, that's unlikely. The experience is not terrible with current players either; what drives privacy at this point is mostly price.

It's mostly not. A Netflix subscription is extremely affordable. The problem with it is that their app kind of sucks, and even that is rainbows and sunshine compared to the unmitigated horror of cable TV set top boxes. Movie companies should stick to making movies and leave the software to Canonical and Apple and Google.

> Hollywood doesn't want to give up margins that are unrealistic in the digital age, which is why they fixate on DRM.

Except that those two things have nothing to do with each other.

> There is teaching and there is shaming. Shouting at them that they are morally-corrupt buffoons is not "teaching".

That's because there are three different sets of people: The actual artists, the morally-corrupt buffoons, and legislators. Teaching is what the artists need. The others need something else.

Re: Save Firefox

#248

Earlier quoted context omitted.

No it wouldn't have - we'd just continue on the existing path of multiple different plugins with their own incompatibilities and security holes, which is strictly worse for the user. Furthermore, you imply a level of informal cooperation between the browser vendors that doesn't exist. It turns into a game of prisoners dilemma, where the first person to defect gets to claim a massive feature that none of the others do…

> we'd just continue on the existing path of multiple different plugins with their own incompatibilities and security holes, which is strictly worse for the user. And this is how it should be. I want users to get tired of installing more plugins. I want them to roll their eyes when a site says "you need to do add $x to be able to use this site." We had the same problems with mp3's, and we won out. I see no reason we…

And this is how it should be

Only if you ignore:

* Users "rolling their eyes" means nothing when they'll gladly click OK to dismiss all the security warnings and installations of n plugins so they can watch Netflix. They'll complain, but the plugin will still be installed at the end of the day. I'd rather that plugin be sandboxed.

* That the practical implications of lessened security are more real, hence important than the theoretical concerns by a sandboxed plugin who's entire mission in life is stopping you from recording a fscking video stream.

The user you're talking about, the one who signs up for Netflix, gets prompted to download a plugin, shakes their head sadly and cancels their subscription because DRM is evil, doesn't exist outside of FSF patrons.

Re: Save Firefox

#249

Earlier quoted context omitted.

Windows 7 doesn't provide the Windows Runtime infrastructure to support sandboxed, remotely-maintained, universal apps. They'd have to write a new desktop program, and that's pretty unlikely.

Maybe, but Netflix isn't some little 2-bit company, they're huge and definitely have the resources to build a new program. Now obviously, building a new desktop program to support a dying OS might not make that much sense, but if the customers demand it, Netflix can do it.

They don't need to build a desktop program for Windows 7 when they can show video in a browser.

The advantage of building a Universal app using Windows Runtime is that it will run on Windows 8/8.1/10, Xbox One and Windows Phone. That's more than half a billion users....

Re: Save Firefox

#250

Earlier quoted context omitted.

> Because what they want to achieve is fundamentally impossible, and have to be done in a security-through-obscurity way. Which clearly cannot both be true at the same time. It isn't that it's impossible but there is actually some way to do it. It's just regular unadulterated impossible. So why not give up the charade and publish the source code to the DRM? That can't cause it to be ineffective because it's already i…

> Which clearly cannot both be true at the same time. They meant that all they can do is delay the inevitable for some time by security-through-obscurity. And yes, the IP holders are perfectly aware of that, but preventing piracy even for a few weeks after release can have a measurable impact on their profits.

If that argument was supposed to mean anything then DRM would only be required in the first few weeks after release.

And it assumes that it currently takes weeks before new content makes it to torrent sites, which is not the case.

Post reply on HN