Live data from Hacker News

Free Lossless Image Format

flif.info

361–370 of 374 posts

Re: Free Lossless Image Format

#361
post #288
post #255

Earlier quoted context omitted.

Here's the Mandrill test image from SIPI and Utah as a 75% progressive JPEG with just the first scan of the most significant bit of just the DC for Y only, which is a totally expected scheme for the web back in the '90s: https://lh3.googleusercontent.com/-4tX6mfFoY4c/Vg7bg85RwcI/A...

What do you mean by "totally expected"? A Turing machine "totally expects" an infinite ribbon.

Back in the '90s I was doing work funded by DEC and later NSF with JPEG and one of the things I did was find an decent way to store them at a smaller size and resolution. I found that having the first scan be just the MSB of DC of Y and then later the MSBs of the other two DCs was the same as having the first be all three give or take two bytes over more than 90% of our corpus and it let something display in about half the time (when a 9600 baud modem was target).

It's been a long time but I think what I ended-up with was first scan MSB of Y DC, next six bits of Y AC. Then MSB of Cb and Cr DC, then a scan with a few bits of Cb and Cr DC and AC and finally the rest. The idea was that for a B&W, greyscale, or color thumbnail the same JPEG would be used but only the first N scans sent followed by 0xffd9 with a width and height in the img tag. Anyway, I can't be the only one that figured-out in the days of SLIP over modems that doing this trick was a good idea.

Re: Free Lossless Image Format

#362
post #331

Earlier quoted context omitted.

The problem with that line of thought is that the courts don't care if its use or integration , but if the resulting work depends on someone else work. The word used in copyright law is transform, adapt, recast, and such changes requires additional copyright permission. For example, if I buy a painting and cut it into pieces and rearrange them, I actually need an additional license beyond what I got from purchasing t…

> but if the resulting work depends on someone else work. Yes, so obviously your argument cannot be that "in theory, we could replace this with a workalike". You better have the workalike, and that's what you should be shipping. A powerful argument that you aren't infringing is that your shipping media are completely devoid of the work. > don't care if its use or integration For the sake of the GPL, they must care in…

> A proprietary app on a GNU/Linux system can use the C library function system() which might invoke /bin/sh that is GNU Bash, and even depend on that functionality.

And that according to FSF is legal because it do not create a derivative work. You said above that "GPL cannot reasonably rule out dynamic linking", but now you are picking and choosing which part of FSF interpretation of derivative is correct and which is wrong. I just wanted to point out that the law could have been easily interpreted in a different way if someone had challenged FSF interpretation 25 years ago.

> But what if that cut-up never leaves my house? Or what if I only distribute instructions

Again, the law is both clear and quite fuzzy at the same time. The author has the exclusive right to transform their work, and as such, you could get charged even if it never leaves your house. In EU its a bit different, since it talks about moral right which protect the integrity of the authors work, through the end result is likely to be the same in many cases.

As for just giving out instructions, the legal nature of those are extremely fuzzy. If I provide instructions that reproduce a copyrighted video (by compressing/encrypting the data that represent it), I will still run foul of copyright infringement. From what I have seen, courts tend to take a "common sense" approach to this problem and if the end result is an infringement, then the indirect steps that will cause an infringement becomes infringement too. Judges collectively seem to rule against people who they perceives as trying to bypass laws by technicalities.

Re: Free Lossless Image Format

#363
post #362

Earlier quoted context omitted.

> but if the resulting work depends on someone else work. Yes, so obviously your argument cannot be that "in theory, we could replace this with a workalike". You better have the workalike, and that's what you should be shipping. A powerful argument that you aren't infringing is that your shipping media are completely devoid of the work. > don't care if its use or integration For the sake of the GPL, they must care in…

> A proprietary app on a GNU/Linux system can use the C library function system() which might invoke /bin/sh that is GNU Bash, and even depend on that functionality. And that according to FSF is legal because it do not create a derivative work. You said above that "GPL cannot reasonably rule out dynamic linking", but now you are picking and choosing which part of FSF interpretation of derivative is correct and which…

> You said above that "GPL cannot reasonably rule out dynamic linking", but now you are picking and choosing which part of FSF interpretation of derivative is correct and which is wrong.

I don't see how you perceive a position change here. The FSF considers dynamic linking to be derivative; I do not agree.

We both consider the invocation via command line not to be derivative.

> now you are picking and choosing which part of FSF interpretation of derivative is correct and which is wrong.

Have been all along. "Dynamic linking is derivative" is almost complete bullshit in my eyes.

It's pretty much pure use. We map this object into memory and then call it.

Re: Free Lossless Image Format

#364
post #267
post #244

They claim this is good for responsive images: The download or file read operations can be stopped as soon as sufficient detail is available, and if needed, it can be resumed when for whatever reason more detail is needed. -- http://flif.info/responsive.php Unfortunately that's not how HTTP works. Your browser opens several connections to a website, and makes requests for resources. Each connection is in use until th…

Could use range requests (RFC 7233), albeit with some overhead.

To use a range request the client needs to know what range of bytes it needs. Currently your html is:

  
Now, let's say foo.jpg is progressive, and if you examine the file you can see that you need H bytes for the header, N bytes for the first layer, M for the next, and so on. Then you could mark up the html as:

  
but that's a huge pain to generate by hand, and people like to compose html by hand.

If we want something that can catch on, it needs to be something where browsers and servers can negotiate in a fully automated way. Or we can just use srcset/picture.

Re: Free Lossless Image Format

#365
post #262
post #244

They claim this is good for responsive images: The download or file read operations can be stopped as soon as sufficient detail is available, and if needed, it can be resumed when for whatever reason more detail is needed. -- http://flif.info/responsive.php Unfortunately that's not how HTTP works. Your browser opens several connections to a website, and makes requests for resources. Each connection is in use until th…

Why do you say it is a net loss? Maybe the server could signal the end of file based on some request parameters (the resolution of the image).

I say net loss because with current http the loss of closing the connection is typically much higher than the loss of downloading more bytes than you need. Connection reestablishment needs a lot of round trips.

Re: Free Lossless Image Format

#366

Earlier quoted context omitted.

>Doesn't matter what you or I think GPLv3 says. I have read the license. I'm like that. And it still doesn't matter. It's what the lawyers think. And they say it's verboten.

There are only so many options here. Either: * You are lying that you read the license. * You were lying about what the license says. * You really dont want to admit that you have misunderstood the license. Either way, you were wrong then and you are wrong now about what the lawyers think. Speaking of which, there are only a few possibilities here as well, only these are not mutually exclusive: * You are intentionall…

>You were lying about what the license says.

I was reporting what I was told by corporate lawyers. My own reading of the patent section does happen to side with the lawyers' reading: That if you distribute an app that's protected by a patent you own a license to, that you need to arrange a sublicense for all users of that software. Maybe not technically "impossible," but I didn't count "spending millions of dollars to fix the problem" among the likely corporate responses when I said "impossible." Especially when most GPLv3 code can be written from scratch for less than the cost to license patents.

Someone alleged Blizzard uses it; fine, their lawyers either disagree, weren't consulted, or are being ignored, but Blizzard doesn't make Chrome, Firefox, or Internet Explorer, so the point is moot if you care about web adoption, which would make the format relevant to anyone but a game developer.

What matters is what the lawyers for the big companies that control Chrome and IE won't let GPLv3 code into the code base. Many other big company lawyers take the same position (probably all companies above some size threshold), and that's all I've been alleging from the start. Criticize my delivery all you want, but that's what I was trying to say.

My agenda is to get the developers to change to a license that could actually be adopted into a web standard. Since you're refusing to actually read what I'm saying, I agree: Goodbye.

Re: Free Lossless Image Format

#368
> FLIF is based on MANIAC compression. MANIAC (Meta-Adaptive Near-zero Integer Arithmetic Coding) is an algorithm for entropy coding developed by Jon Sneyers and Pieter Wuille. It is a variant of CABAC (context-adaptive binary arithmetic coding), where instead of using a multi-dimensional array of quantized local image information, the contexts are nodes of decision trees which are dynamically learned at encode time. This means a much more image-specific context model can be used, resulting in better compression.

Re: Free Lossless Image Format

#369
post #367

Then it was written, that we had to be doomed by animations everywhere!

Anywhere on the internet where you can post an image today, you can already choose an animated GIF.

If the site doesn't want animations, it will only show the first frame. For example, try uploading an animated GIF to Facebook.

Re: Free Lossless Image Format

#370
post #254

Earlier quoted context omitted.

I want to chime in to say that the lack of a common image format (and displays, for that matter) with true support for high-range photos is really holding back digital photography in my humble opinion.

Nah, it's the camera makers that are holding things back by sticking to proprietary formats and in some cases obfuscating them. There's OpenEXR, HDR, and DNG (the last of which is a true RAW format). The big issue with creating a true interchange format is that RAW files don't have proper color information for all pixels (they instead have red, green, or blue data for any given pixel, sometimes deliberately blurred,…

“nah” is a funny way to say “yes, and”
Post reply on HN