36 ms·
BPG Image format
- jason_slack 12y agoThere was an interesting article about Fabrice: http://blog.smartbear.com/careers/fabrice-bellard-portrait-of-a-super-productive-programmer/ http://blog.smartbear.com/careers/fabrice-bellard-portrait-o... Does anyone know if he has a day job or does he just lock himself away and work on these interesting projects?
- paraboul 12y agoAs far as I know : http://www.amarisoft.com/?p=about http://www.amarisoft.com/?p=about
- deleted 12y ago[deleted]
- vmarsy 12y agoImpressive! Right now it requires a .js decoder, of 75kb. Assuming a fast C++ decoder instead,(possibly GPU accelerated if the decoding algorithm is well suited for it) and not using JS but what would be the rendering times? PNG are 4x bigger in his experiments, but interlaced PNG makes it more pleasant to users since it can be rendered progressively, can BPG benefit from such a thing? edit: Interlacing is also used in JPEG, isn't it ? It's a tradeoff, as a user, it's obvisouly a win situation when we have a low bandwidth, and as a server it's obviously a win.
- TD-Linux 12y agoProgressive rendering of HEVC is not possible in the same way as it is done for JPEG or PNG. It is also not very suited to GPU rendering. A C++ decoder with assembly optimizations could easily run four times as fast as the Javascript version. Unfortunately distributing it would not be possible due to patents.
- faragon 12y agoFour times? You can expect the C/C++ version (with some SIMD intrinsics) to run 10-30x faster than the JIT-optimized JS version.
- mischanix 12y agoThere is also the overhead of using a canvas element as a render target instead of a normal image surface, and using the canvas API instead of just writing color values straight to a buffer.
- kinghajj 12y agoWhy would a C++ version have to worry about patents but the JS one does not?
- TD-Linux 12y agoThey both have to worry, just a different person. For JS, it is the page author / publisher. For C++, it would be the browser vendor.
- masklinn 12y ago> edit: Interlacing is also used in JPEG, isn't it ? Yes, and contrary to PNG it actually makes files smaller.
- faragon 12y agoBellard is a genius.
- ChuckMcM 12y agoIs there anything this guy can't do? Seriously. I have been wishing there was a JPEG equivalent with an alpha channel for like forever. That allows better compositing to arbitrary background images or patterns. Now the question is how long before browsers might support it natively.
- SeyelentEco 12y agoWebp is has lossless and lossy support, and alpha channel. It's also much smaller than JPG and much better looking for small JPGs (like this one). It's also supported natively on all newish (4.0+) Android devices and Chrome.
- threeseed 12y agoUnfortunately given the relationship between Google and Apple and also between Web* and H.26* there is little chance of it going anywhere since without iOS you have nothing.
- pornel 12y ago> I have been wishing there was a JPEG equivalent with an alpha channel for like forever. JPEG 2000 works in Safari. JPEG XR in IE. A gracefully-degrading JPEG XT is in the works: http://www.jpeg.org/jpegxt/index.html http://www.jpeg.org/jpegxt/index.html Lossy PNG with alpha works in all browsers: http://pngquant.org http://pngquant.org (not equivalent in compression ratios, but still 4 times better than normal PNG).
- spb 12y agoDon't we already have WebP?
- muizelaar 12y agoFrom the article: "Mozilla did a study of various lossy compressed image formats. HEVC (hence BPG) was a clear winner by a wide margin. BPG files are actually a little smaller than raw HEVC files because the BPG header is smaller than the corresponding HEVC header." This study includes WebP.
- mda 12y agoBut he conveniently excluded webp from his comparison shots :)
- WhitneyLand 12y agoYes but webp hasn't taken off as much as some would like as a defacto standard. BPG looks good upon cursory inspection. It seems to be more efficient than WebP and supports 42-bit color. It also has .png's features of transparency and lossless compression although I didn't see anything mentioned about animation to replace .gif. Bonus: since it's based on h.265 hardware support will come naturally and should be just a software update for devices that already have HEVC capability.
- _nickwhite 12y agoI really dig it, but I'm not yet familiar with BPG. It seems that decoding it would take more processing power, and potentially be slower than JPG. Is this the case? Under the "performance" section, decoding speed was not mentioned.
- sp332 12y agoYes, it's slower and takes more RAM than JPG. I can see a delay of about a second in my browser. (Edit: I assume my browser is caching the data, but if not, some of that time could be re-downloading the data.)
- Xorlev 12y agoIf the decoder wasn't in JS, that might not be the case. It'd undoubtably be a more efficient native implementation (possibly with hardware support) were it integrated.
- deleted 12y ago[deleted]
- biot 12y ago[Edit] I had misunderstood the quoted Mozilla performance claims[0] to be related to processing speed, whereas they refer to performance being a measurement of quality. Thanks sp332 for the correction. [0] http://people.mozilla.org/~josh/lossy_compressed_image_study_july_2014/ http://people.mozilla.org/~josh/lossy_compressed_image_study...
- sp332 12y agoCompression performance does not mean speed. It just means how well it compressed the images. None of the tests on that page even mention speed.
- userbinator 12y agoIts purpose is to replace the JPEG image format when quality or file size is an issue. Some of the HEVC algorithms may be protected by patents in some countries There have been some patent disputes over JPEG, but I don't think replacing it with another possibly patented format is a good idea, even if it's technically superior in some ways.
- reidrac 12y ago"Most devices already include or will include hardware HEVC support, so we suggest to use it if patents are an issue." I don't know if that suggestion makes much sense, but you missed it in your quote.
- TD-Linux 12y agoI can't imagine ever wanting to spin up a hardware HEVC decoder context every time I want to render an image. That would enormously slow down display of a web page with this format. Edit: decoder, not encoder
- dedward 12y agoThat would be decoding, not encoding.
- sp332 12y agoWhat kinds of devices have hardware HEVC acceleration? Phones, PC graphics cards, Blu-ray players?
- WhitneyLand 12y agoOne of Samsung's cameras, iPhone 6 uses it for FaceTime, various 4k TV's.
- wmf 12y agoNone of them today, but all of them in a few years.
- sp332 12y agoWow, I didn't even know there were open-source HEVC encoders. I thought there were patent issues. Now I'm off to re-encode my bluray collection!
- cjensen 12y agoThe x265 [1] Project is great. That said, you might want to wait a year for them to improve the encode before messing with your entire collection. [1] http://x265.org http://x265.org
- sp332 12y agohttps://bitbucket.org/multicoreware/x265/wiki/TODO https://bitbucket.org/multicoreware/x265/wiki/TODO Yeah, who am I kidding, I'll just buy more hard drives to keep the originals :)
- TD-Linux 12y agoThere are still patent issues, and you still need to obtain a license to use the software. You will never see this image format integrated into any other open source projects, like Firefox, for this reason.
- wmf 12y agoLike how you'll never see H.264, DRM, or WebKit in Firefox?
- sp332 12y agoWebKit in Firefox?
- ChrisGranger 12y agoFor use in iOS, I imagine.
- derf_ 12y ago
- than 12y agoPronounced 'bee-peg'?
- artmageddon 12y agoKinda curious about this as well. I wonder if the alternate would be "bee-pee-gee" which feels way too long to say :)
- dluan 12y agoI naturally started saying in my head "bee-pee-gee", but since the P stands for portable, maybe even "bee-porg" instead of "bee-peg"? :)
- thought_alarm 12y agoI've always pronounced it "bee-pedge".
- anigbrowl 12y agoEDIT: I didn't expect this comment to be so popular and feel like I've hijacked the thread a little - sorry. Feel free to continue at https://news.ycombinator.com/item?id=8706850 https://news.ycombinator.com/item?id=8706850 I would much rather someone revived the Fractal Image format, which is now out of patent. It's very expensive to encode, but that's nowhere near as big a problem as it used to be. It's very fast to decode, very small, and the files are resolution independent: http://en.wikipedia.org/wiki/Fractal_compression http://en.wikipedia.org/wiki/Fractal_compression I was blown away when I encountered it at PC Magazine in the 90s and it seems like it would be very responsive to the needs of today's web.
- bane 12y agohttp://www.verrando.com/pulcini/gp-uw1.html http://www.verrando.com/pulcini/gp-uw1.html They have a 6-minute figure on their page. I wonder what modern hardware could do with it? Anybody care to give it a whirl?
- jason_slack 12y agoThis looks like a fun project!
- ChrisGranger 12y agoI wonder how much that figure would drop if one could optimize the process for modern CPUs...
- tachyonbeam 12y agoEven without optimizations. That page is from 1997. They probably ran this on a 200MHz machine at best. Modern CPUs are 30-50x faster just in terms of instructions per second. Then once you factor in multiple cores, we have desktop machines that are easily 100x faster. In terms of optimizations we have SIMD and GPGPUs to make it even faster. Not unrealistic to think we could bring that 6 minute figure down to one second... And then, of course, there might be algorithmic tweaks that help us even more. Get 100 people looking at that code, and for sure they'd find ways to speed it up.
- 1ris 12y agoWhy not use Daala to start from? The overlapping transform probably help especially for still images, and the patent situation is probably at least better.
- pdknsk 12y agoI notice the container has no ICC profile support. Trivial do add as an extension tag, but should definitely be in the first spec IMO. And if I read this correctly, extension tags are hardcoded as numbers, rather than using a tag name. I don't think that's a good idea.
- aidenn0 12y agoWell you can think of it as a tag name limited to 4 ascii characters if you like.
- pdknsk 12y agoYes, that makes it even stranger. Why use an unsigned 4-byte integer when tags are mapped to a number internally. Unless they anticipate to map more than 2^8-1 or 2^16-1 different tags. Maybe I'm reading it wrong. extension_tag ue7(32) ... 'extension_tag' is the extension tag. The following values are defined: 1: EXIF data. PS. I think I understand now. It's just meant as a shortcut. Not sure why this is done when EXIF fits just as well.
- deleted 12y ago[deleted]
- lukeh 12y agoSeems like EXIF data was originally to be included as part of the base spec (see dangling reference to exif_present_flag).
- panic 12y agoIs there a situation where 14-bit sRGB isn't enough? There are a lot of weird color matching issues on the web caused by inconsistent application of ICC profiles to PNG images by different browsers / platforms.
- jml7c5 12y agoAn image that is in Adobe RGB, for example.
- mark-r 12y agoI was ready to pass by this post with a yawn until I saw where it was coming from: Fabrice Bellard. He's no doubt an absolute freakin' genius. And if anybody knows about image conversion, it's him. Even the things he does just for fun are impressive. Have you ever booted up Linux inside your browser? http://bellard.org/jslinux/ http://bellard.org/jslinux/
- simonebrunozzi 12y ago100% agree with you, and in fact, as a proof, I didn't even know about Javascript Linux and I'm going to check it now :)
- higherpurpose 12y agoHe should be working on Daala next (for both video and image formats). Let's make the next media formats for the web truly open source. > Based on a subset of the HEVC open video compression standard. So BPG is patent-encumbered, right?
- sounds 12y agoAt the bottom of the linked article is the answer to your question, with links to more information. tl;dr (obviously tl;dr): This format is very, very easy to implement despite the patent risk, simply by assuming that any device new enough to be considering including it will have already licensed the relevant patents.
- TD-Linux 12y agoThe patents would only cover the implementation that comes with the hardware, not any other software implementation running on it. This means you'd have to use the hardware decoder APIs to decode images, which is less than ideal when you want fast, low latency decoding.
- waps 12y agoBut suing the party doing the infringing would be much harder. They can't just go after Google/Apple/Microsoft because all they're including is a javascript interpreter. They'd have to sue thousands and thousands of sites, most of them for amounts no larger than 1000 dollars.
- loudmax 12y agoI appreciate the historical tradition of using the photo of beautiful young Lena Söderberg as a test image, but it's time to move on. It's fun for us hetero males, but like it or not, this sends a message to young women that they aren't welcome in this field. I wish Fabrice Bellard would have left them out of the demo set. Having said that, all those demo photos do look good. I was wondering how we were going to see a demo in the browser without built-in support, but leave it to the man who put Linux in the browser to write a decoder in javascript. This is an encouraging project.
- gambiter 12y agoPeople are too sensitive. I'm a hetero male, and I don't find the image 'fun' at all... it's just an image. It doesn't send a message to anyone. If anything, I don't really care for it for image algorithm tests because the palette is fairly flat. No matter how you feel about the image itself, though, there is value in continuing to use it... people are familiar with it, to the point of it becoming almost cliché. This takes the focus off of the image and subject and puts it squarely on the image algorithm.
- minikites 12y ago> I'm a hetero male ... it's just an image. That's the exact privilege you get to enjoy as a hetero male. You get to ignore things like this when your female colleagues (if you're lucky enough to work with any) have to look at the image and be reminded that many people continue to view them as objects.
- gambiter 12y agoNot sure if you're trolling, but I have a spare minute... - If I post a picture of a cute kitten, does it mean I look at a cat as an object? That I will only under-appreciate all animals because I liked a photo of one? - If I post a picture of my mother or father, am I objectifying them? - What if I take a picture of a street performer who's doing some awesome thing and post it... am I reducing them to simply an object of attraction? I just said it didn't affect me one way or another... that it is just an image. If someone thinks this image means I view a woman as an object, they are projecting THEIR OWN ISSUES onto me. That is the ONLY way that it could be offensive, in that they are choosing to be offended by something that 99% of the population think nothing about.
- ChrisGranger 12y agoLooking at the Lena pictures demo, the extremely low file size comparison at the top shows just how good .bpg is in that use case. That could make for some much lighter websites when used for less important items like image thumbnails on shopping sites, for example. When the file size gets larger at the end, it looks like there might be a little loss of detail. Ideally I'd like to compare them by switching back and forth using the original image and the .bpg as Photoshop layers...
- akavel 12y agoPrintScreen should let you do it, I suppose?
- Animats 12y agoThe results only show marginal improvement. What's needed is a compression method that doesn't introduce artifacts on hard edges, as JPEG does, but is otherwise no worse at compression than JPEG. Then we wouldn't need to do some things in JPEG and others in PNG, and we'd be spared the pain of JPEG screenshots. Much better results on the Tecnick image set (which is mostly hard edges) would indicate one had been found. The results only indicate modest improvement in that area.
- sillysaurus3 12y agoThe results only show marginal improvement. The improvement is far from marginal. In particular: ... I just tried to link you to a BPG image, and discovered that I can't. Well, I'm going to ignore that little flaw for the moment, because that's just a browser feature. If BPG catches on, that's sure to change. Anyway, the improvement is far from marginal: http://a.pomf.se/cdywsc.png http://a.pomf.se/cdywsc.png In particular, look around her face, eyes, and the background. The JPG is not just worse, but in fact very worse. A more serious flaw is that it doesn't support animation. It doesn't need to be a video format. It just needs to be able to play a sequence of frames in succession. This is as easy as including a header that specifies how many frames are in the animation and the duration of each frame, followed by the image data itself. The fact that PNG doesn't have this has plagued the format since the internet became popular. That may seem like "a video format," but it's not. Video decoders optimize for inter-frame compression, not intra-frame compression, so it's a different problem altogether. BPG doesn't need to do everything, but it should probably have basic animation.
- cwyers 12y agoThat depends on what you mean by "worse" and "very". I think for most use-cases, those differences are not something likely to be noticed by the majority of users.
- sillysaurus3 12y agoThe purpose of a test like this is to measure visual performance, and the JPG result is performing very badly. Open these two images in a separate browser tab, then switch back and forth between them: http://a.pomf.se/fsnfxz.png http://a.pomf.se/fsnfxz.png http://a.pomf.se/lfzyrh.png http://a.pomf.se/lfzyrh.png Those are the upper images of the test. Also try these, the lower images: http://a.pomf.se/bgqcag.png http://a.pomf.se/bgqcag.png http://a.pomf.se/hxlwcm.png http://a.pomf.se/hxlwcm.png Again, JPG is not merely worse, but very worse. In fact, JPG makes it look like she's wearing a hat that's made of crosshatch material at the top, when in fact the top is composed of rings of fiber, not crosshatch.
- aidenn0 12y agoHow many "better JPEGs" have been created now, without significantly displacing JPEG's market share?
- cjensen 12y agoJPEG-2000, for example, is very hard to decode in a CPU. Many implementations take a second to decode an image. There are two really hopeful things about this new project: (1) by leveraging HEVC, we get cheap (energy efficient) and fast decode on future mobile devices and (2) Since he is demonstrating pretty quick decode in JavaScript now, it clearly isn't a CPU pig like JPEG-2000.
- derf_ 12y agoJPEG 2000, JPEG XR, and WebP are the best-known (e.g., not toy research projects).
- ChrisGranger 12y agoIndeed. Without out-of-the-box support in the major image editors like Photoshop and all the popular web browsers, I don't think we'll see JPEG overtaken any time soon.
- dluan 12y agoHonestly, just last night I was looking and editing photos of a recent trip, and I uploaded them to tumblr to share on a small photo blog I just recently started. After spending some time trying to get the colors right, I realized that tumblr's image compression is god awfully horrendous. I felt so bad looking at my source JPEGs next to the tumblr post that I created a new flickr account right then. I don't necessarily think JPEG is bad, or that it's even Tumblr's fault that I first thought to share photos there, but if any service/software started using BPG I think I would excitedly try it out. [e.g. http://www.huddug.com/ http://www.huddug.com/ vs https://www.flickr.com/photos/127341162@N03/15762469070/ https://www.flickr.com/photos/127341162@N03/15762469070/]
- slig 12y agoIf Chrome and Firefox implements this, then mod_pagespeed, for instance, can do the conversion on-the-fly also, services like CloudFlare can also do the conversion automatically.
- jason_slack 12y agoNo doubt Fabrice is very smart. I read about his 4G base station the other day. I'd love to be a fly on the wall while he codes and thinks out these projects. His accomplishments are impressive: QEMU, FFMPEG, TCC, JSLinux, the list goes on
- joelthelion 12y agoFabrice Bellard strikes again!
- frontsideair 12y agoVery out of topic but, is lena.jpg still acceptable? I mean, tech industry is getting better at inclusion but come on, are we still using that crop from Playboy?
- CamperBob2 12y agoConsidering that Lenna herself is fine with it, I'd say so. (Unless you want to deny a woman the right to permit the use of her own body for aesthetic, erotic, or academic purposes, which is the logical if ironic outcome of some schools of feminism.) The problem with the Lenna imagery isn't political correctness, it's the fact that it's a crappy scan from a magazine that always had crappy photography to begin with.
- j2kun 12y agoThe "fine" thing would be to let Lena use photographs of herself in her own work. The problem is that women in science cannot read a paper on image processing without being reminded that it's a boy's club.
- CamperBob2 12y agoThe problem is that women in science cannot read a paper on image processing without being reminded that it's a boy's club. I find this attitude far more patronizing than any conceivable choice of test imagery in a graphics research project. Suggest reading this before posting anything else about the delicate sensibilities of "women in science": http://www.nytimes.com/2014/12/07/magazine/my-great-great-aunt-discovered-francium-and-it-killed-her.html?_r=0 http://www.nytimes.com/2014/12/07/magazine/my-great-great-au... Do you think any of those women would have spared a half-second's thought about this issue? Somehow, I don't think so. I think they were too busy doing science.
- j2kun 12y agoI'm sure they do, because I can point to them speaking up about it. http://en.wikipedia.org/wiki/Lenna#Controversy http://en.wikipedia.org/wiki/Lenna#Controversy I'm not saying all women are crippled by it, because they have to deal with such nonsense while walking down the street every day. But can't we as scientists strive to improve the status quo?
- msoad 12y agoHow does it compare to WebP? Also, how you measures lossy image quality? What are the metrics? I hope it's not just by looking at result and judging.
- TD-Linux 12y agoLooking at the result and judging is actually the best and most important metric. There are numerical metrics, like SSIM, but they are always worse than human comparison trials. You're optimizing for what looks best to a human in the end, after all.
- pornel 12y agoIt's very hard to create a fair test. The problem with human judgement that it's very imprecise. You're unlikely to notice difference between JPEG at Q=90 and Q=95, but you can't say it doesn't matter, because that can cause 40% difference in file size. OTOH objective metrics can easily spot that. "Looks the same to me" leaves a lot of room for error and you could be unfairly telling one format to save much more detail than the other. And almost by definition these are the details you're least likely to be able to see. There's also a pitfall of choosing image that looks subjectively "nicer" rather than closer to the original. Codecs that are better (e.g. faithfully preserve noise) may be judged as worse than another codec that's an accidental Instagram filter.
- pronoiac 12y agoI think we crashed the site. Coral Cache has the front page, at least: http://bellard.org.nyud.net/bpg/ http://bellard.org.nyud.net/bpg/
- beefsack 12y agohttps://webcache.googleusercontent.com/search?q=cache:http%3A%2F%2Fbellard.org%2Fbpg%2F https://webcache.googleusercontent.com/search?q=cache:http%3...
- jason_slack 12y agobellard.org seems to be back up now..
- hyp0 12y agoI guess the JS is just for proof of concept until support is shipped with browsers etc, but it isn't rendering properly in the stock Android browser (4.2.2). It gets to Lena's head in the first image, then becomes brigtly multi-coloured, though it looks like the difference between colours right... as if maybe an int overflow in the browser's JS implementation?
- pslam 12y agoThe big story here is this introduces a new image file format without requiring you to upgrade a browser or download a plugin. Those aren't PNGs of representative images you're looking at - that's BPG decoding happening in your browser. So we don't like HVEC due to patent worries? Fine, we can swap in another format and use the same technique. We don't have an I-frame format for Daala that's finalized yet? Fine, we can use work-in-progress. The format does not need to be finalized. If you update it, you rebuild your images and bundle a new JavaScript decoder. The ability to ship media along with a sandboxed, runnable decoder is awesome, and I'm surprised it hasn't caught on until now. I remember Google a while back implemented their own "video" codec in JavaScript using JPEGs and primitive inter-frame processing, exactly because there wasn't a universal video codec format they could use.
- deleted 12y ago[deleted]
- sillysaurus3 12y agoProblem is that you can't link to BPG images yet. Specifically, right click -> copy link location. If only the rightclick menu could be customized by JS. Adding only a limited number of entries to the menu seems like it'd be okay.
- rinon 12y agoWith additional effort you can by including the proper JS. However, many sites would find this a benefit rather than a problem, since hotlinking takes away page-views.
- xanderjanz 12y agoYou wouldn't really have to change the right click menu. You could put an invisible html div over top the images, and give them the correct link, instead of the raw decompressed image data. So a user would think they are right clicking the image, when really they are right clicking our overlay.
- wmf 12y agoPolyfills have been around for a while; this isn't the first one. e.g. http://webpjs.appspot.com/ http://webpjs.appspot.com/ http://badassjs.com/post/12035631618/broadway-an-h-264-decoder-in-javascript-running http://badassjs.com/post/12035631618/broadway-an-h-264-decod...
- joegaudet 12y agoLooks like his site is down, too much HN traffic.
- wtbob 12y ago> Supported by most Web browsers with a small Javascript decoder Well, so much for that. Executing code in order to view an image is just begging to be exploited…
- lorddoig 12y agoDoes anyone know what percentage of traffic is JPG/PNG? My curiosity wants to try to put a dollar-value on the potential global bandwidth savings.
- ahoge 12y agohttp://httparchive.org/interesting.php http://httparchive.org/interesting.php
- justinmayer 12y agoAfter making a few needed tweaks to get libbpg to compile on Mac OS X, I used the compiled bpgenc binary to convert a test PNG to BPG format. I also converted the PNG to a JPEG for comparison purposes. You can see the results here: http://justinmayer.com/bpg-test/ http://justinmayer.com/bpg-test/ Size of PNG before conversion: 186K Size after conversion to JPEG: 52K Size after conversion to BPG: 9K I took the liberty of submitting a Homebrew formula, so hopefully this will soon be a quick "brew install libbpg" away. (^_^) https://github.com/Homebrew/homebrew/pull/34722 https://github.com/Homebrew/homebrew/pull/34722
- dingdingdang 12y agoWould love to have not just the source file but also the output files posted if you can be bothered (im fine with png screenshots if you can't be arsed with actual js setup)
- justinmayer 12y agoSure, no problem. I updated my comment above to include a link to all the relevant files. As you'll see, despite the significant differences in file size, there is very little discernible difference in image quality.
- dingdingdang 12y agoThanks a lot - my God this format has potential on some files!
- cal2 12y agoBefore I finished reading your reply, I was going to say "but someone just submitted a formula for libbpg!" Thank you, sir. :)
- justinmayer 12y agoMost welcome! Glad to help out where I can.
- AshleysBrain 12y agoThis definitely looks like it compares favourably against both JPEG and PNG. The test doesn't directly compare against JPEG-2000, JPEG XR or WebP, but the results are more convincing than any examples I've seen for any other formats, and the Mozilla study showed HEVC's format did best on quality metrics. I hope browser vendors take note. The patent issues are concerning, but if that can be worked around and a new spec designed, then we might just actually have a new image format for the web which really is better than what we've already got.
- GhotiFish 12y agoSo can anyone talk about the patent issues? I hear there are multiple holders of HVEC patents and they are willing to use them. So if you use this library, wouldn't you be liable? I'd really like to know that. Because I'd really like to use this.
- asah 12y agoholy crap, check this out: http://img1.buyersbestfriend.com/mkg/snackspage/images/bpg.html http://img1.buyersbestfriend.com/mkg/snackspage/images/bpg.h... 186,967 ==> 29,872 and indistinguishable, 6.25:1 (and pls tell me if it breaks on your browser - I want to push this live!!!) adam
- brunobowden 12y agoWorked for me on Chrome, Safari and Firefox Your issue if anything will be older browsers. Is there a way that it can detect browser side if something has failed?
- ChrisGranger 12y agoThat's far from indistinguishable to me. It's actually quite obvious that the BPG is blurring detail at that compression ratio. Edit: it's particularly noticeable in the wood grain patterns. Also, there's a soft grey dot to the left of the top of the lamp, 100px or so, that's entirely missing in the BPG. There are loads more examples... Edit again: the color saturation of the rug is pretty washed-out as well.
- galago 12y agoThe bpg image on your link has much lower contrast. I'm not sure if that can be fixed, but the images are substantially different. I wonder if jacking up the contrast on the bpg might make it look much worse.
- 12y ago
- thewarrior 12y agoThe best coders seem to have the simplest websites.
- tericho 12y agoI'm not qualified to comment on BPG, but this is the first I've heard of Mr. Bellard. I enjoy reading works from minds of this caliber. He seems to be a model citizen for the programming community. Are there others I should know about like Fabrice?
- azakai 12y agoLooks like the JS decoder is compiled using emscripten, very nice.
- ajmurmann 12y agoThis worked awesome on my MacBook and my PC, but I am getting some massive rendering errors in Safari on my iPad 3: https://dl.dropboxusercontent.com/u/18855215/bpg.PNG https://dl.dropboxusercontent.com/u/18855215/bpg.PNG
- grondilu 12y agoI've tried it with a picture of mine. The encoding process was painfully slow, but I guess that does not concern the end-user much. The file size went from 1.2M in jepg to 164K in bpg, and the decoding was fairly fast. After turning the image back into PNG the quality seemed OK but that's tough to assess objectively. The coolest thing is this javascript program that can decode and display the pictures on-the-fly. Definitely an image format that could save storage space and bandwith, IMHO.
- xyproto 12y agoThis is the guy behind Tiny C Compiler, jslinux.org (running Linux in JavaScript in the browser) and Qemu. (And several other interesting projects). This alone makes me have great faith in BPG.
- ksec 12y agoFew questions and thoughts on top of my head. 1. Why a Subset of HEVC Still Picture Profile? Why not just a use HEVC Picture instead? 2. Since JS sources are readable and being interpreted by VM ( Free Speech ), patents issues should not be a problem? 3. I am assuming the quality of BGP still has Lots and Lots improvement to be made? Since all H.265 encoder hasn't had the time to be tuned. ( Compared to x264 )
- PythonicAlpha 12y agoI would guess, that decoding speed can become an issue for websites, where many images are already in the cache but are re-displayed rather often... I write this, because I am building such an application and for now it has many PNGs ... and yes, using a format like BPG would be fine, because I use the PNGs only because of transparency ... but when redisplay is done via a Java Script, I doubt that I could have the same speed. Loading is not so much a limiting factor, since after some time, all relevant PNGs are already in the browser cache. Can anybody say something to this topic? Of course, it would be great to have this integrated into the mayor browsers soon ...
- libroj 12y agoUnfortunately, a lot of what I do with images is constrained by what can be losslessly embedded in a PDF. Even if no influential organisation is opposed to BPG it will take at least 3 years, I would guess, for BPG to become part of the PDF standard, and then another year or so for it to become reasonable to expect people to have PDF readers that can handle it. However, I wouldn't be surprised to see BPG being widely used in 2020.
- tbro 12y agoHas anyone installed the bpg encoder bpg-0.9.2-win32 on a windows 7 machine, and if so how did you do it?