I am 90% sure that the '-large' was supposted to be added to the basename of the file, not the extension itself. Some engineer didn't know how to do that or didn't care to fix it, and honestly that's the kind of quality control I expect of Twitter lol
As I understand it this happened because Twitter used :large as a size attribute in the URL, like /IMAGEID.jpg:large and Google Chrome replaced the colon with a hyphen when downloading because colons are invalid in filenames, making it .jpg-large. Twitter changed to use a query string like /IMAGEID?format=jpg&name=large instead to prevent this from happening.
So glad you covered JPEG XL. A lot of FOSS programs already support it, and I hope Adobe pushes it out if experimentation because that might be the stepping stone for people to support it.
Plenty of companies (claim) to have already spent millions to add JPEG XL support, but Chrome removed it anyways. People from companies were asking to do not remove the JPEG XL support, but was removed anyways.
JXL isn't that useful. Only converted legacy JPGs to JXL and some PNGs. But it's way slower than WEBP at its max compression and only slightly more compressed. For new photos, I switched to HEIF.
@@ArthursHD well I imagine for a codec that specializes in lossy compression, they're not going to have the best lossless compression. One thing that is hard to beat is image quality, which AVIF will struggle at because AVIF is based on a video codec (also AVIF has horrible dimension limits) I will say that JPEG XL is an absolute must if you want to compress 4K / 8K images and have near lossless quality with a reasonable footprint. I took VRChat 8K images that were stored as PNGs, and even a small collection will set you back a few gigabytes, with individual images going up to around 40-50MB each. Even using JPEG XL lossless I get it down to 10-30 MB. However, with a quality of 80 each picture averages to 1 MB, with much more detailed images only going to 2-3 MB, and you'll have to really look to notice any quality loss. If it weren't for JPEG XL compression, having an 8K photo collection wouldn't be feasible unless you are willing to cough up a lot of storage space. It should not be something to easily ignore.
@@johnniequinn3215 It wasn't a "limitation" at the time, it was just how it was. It only became a limitation later when less techy people started using computers. Until then, tech people just made do since that's just the way it worked. 🤷 And they never really fixed the filename system; to this day, even in the latest Windows 11, we still can't use question-marks in filenames. 😕 We can use single-quotes in place of double-quotes, but there's no proper ANSI replacement for question-marks, and there's nothing they can do to change that because too many programs would break if they changed wildcard functionality now. Why couldn't they have used a less common character like the tilde? This is a lesson to always think things through beforehand because you can't necessarily "fix" stuff "later". 🤦
@I.____.....__...__ It wasn't written as a bad thing. Fat was originally written by Bill Gates to store data on paper tape. It was limited by the technology for cpu register length and storage capability of its time. My point was that other operating systems at that time had similar issues and calling it a DOS issue seemed a little incorrect l.
JPEG XL is great because it can recompress existing JPEG images to be smaller, losslessly. Think of all the images out there on the internet that only have a JPEG original source, now they can be made smaller without losing any information.
@@spencerwarren8302lots of details that could have been done for various formats. He did mention it has better compression, but not went into details of it like improving current jpgs.
@@AndersHass by 'it' I was referring to the feature, not the format. The format came off to me as a potential candidate for replacing jpg but ultimately it was amongst many others and backward compatibility was the only part of it that made it stand out. But if it could just improve file size across the board without any drawbacks it's gone from 'maybe' to 'definitely'. Again super weird that that feature wasn't mentioned, it easily elevates that format to perfection
Fun bit of trivia: JPEG can actually do that. It has two compression modes: Huffman and arithmetic. The arithmetic mode is just plain better - well, about 10% smaller files. But for historical reasons, it couldn't be used in the early days of JPEG - the mathematics required was subject to a patent. Even though the patent expired, almost no software will display an arithmetic JPEG today - no point, no-one uses it! And no-one will use it because then people wouldn't be able to view it.
I believe PSDs, PDNs, KRAs, and XCFs are just non-compressed files with PNGs inside of them representing each layer and an XML file telling the program how to read each file, this is at least how Krita (KRA) format files work which means that you can just open up a KRA file in say 7zip or Ark as if it was a compressed file similar to the ZIP or RAR formats; I have never opened a PSD, PDN or XCF file in an archiving tool before though so I can only speak as to the way a Krita document file works...
i heard that JPEGXL can be used to compress existing JPEG files to it without loss (lossless) but significant file size savings. this could save a lot of internet bandwidth and storage space without loss of quality.
Yes, about 20% just like Lepton and Brunsli. AVIF lossy is more compressed if some loss is accepted. WEBP lossless has browser support and is quicker than JXL on the max setting with slightly worse compression.
@@ArthursHD i know other formats are better when viewed in isolation but this lossless conversion of arguiably the most prevalent image format on the internet should already be a massive motivation to add JXL support to all browsers. even the AV1 community agrees that JXL should be the primary web/lossy image format.
It was made from PIK and FUIF image formats combined, FUIF (FLIF's successor) created by Cloudinary and PIK (inspired by JPEG), the latter being made, ironically, by... Google. Yup, Google's fighting Google's own image format.
Sidenote: everytime you see a movie in a cinema, everything is encoded in jpeg2000 if it is projected digitally (the files used for that are called a "DCP" and it uses jpg2000 as its standard)
I'm actually really excited for JXL, as the next generation image format, for it's been nigh 30 years since the current release of JPEG, apparently. I wonder how it compares to PNGs.
Cursors are slightly different from icons in the file header, because they need to store the click point of the cursor (e.g. for the wait cursor, it's in the middle, and the regular arrow cursor is in the top left), so you can't just change the file extension to use it as an icon, you need to modify 1-3 bytes of data with a hex editor or use a file converter.
I assume he meant the graphics are stored in the same format, but yes, they're physically different. I learned that the hard way when I wrote a cursor editing program for DOS back in the day. Fun times.
Icons/cursors also have a pixel color not seen in other image formats: "invert background". It's never used in static icons, but works in some contexts. Pixels painted in this color turn the color underneath negative, to make it less likely that the cursor becomes invisible.
Most people have looked at JPEG 2000 images without realizing, as it is used in digital cinema. One interesting feature of JPEG 2000 are resolution layers. JPEG 2000 is compressed and stored in such a way, that only a portion needs to be read and decoded to obtain lower resolution versions of the image. Additionally, low file sizes result in a blurry image instead of blocking artifacts like standard JPEG. One problem with JPEG 2000 was that when it was first introduced, it was very demanding on normal hardware to decode and encode.
@@lawrencedoliveiro9104 You are not wrong per se. At the beginning of DC, as far as I remember, there where some variations that used MPEG-2 (or MPEG-1). But no, interframe compression is not used. Due to quality concerns (250 M/Bits or even higher data rates are uses) and lesser overall complexity. There is no need to keep data for multiple frames in memory. This probably makes it easier to build secure and robust hardware - to decrypt (of course movies are encrypted) and decode frame by frame.
It's also used somewhere more familiar: It's one of the supported lossy image compressions in PDF, along with plain JPEG. And it is often used in PDFs, so even though modern web browsers won't support JPEG2000, they still have JPEG2000 viewing code buried in there somewhere as part of the PDF-viewing functionality.
With regards to jpg-large, that's a quirk of Windows file name restrictions. The url of the image uses a colon to specify image size, e.g. image.png:small or image.jpg:large. But when you try to save it, windows doesn't let you use colons in file names so Chrome replaces the colon with a hyphen.
Oh, okay. I thought Twitter was actually using the hyphen themselves. I don't use Twitter, but I'm sure I've downloaded a file from it at least once or twice before and never saw this. So it must be a Chrome-specific bug because Firefox certainly didn't do that, it recognized the filename ended after the extension. 🤔
the vector image thing once surprised me a lot, because i found a very old animation in flash, and was surprised how high resolution it was. after zooming in more, i realized the original author made the images in vector :p
Specifically, the worst-case scenario (assume no adjacent pixels share the same RGBA value) is that a vectorized photo will be (length x width of the source image) number of square boxes, each being four XY coords plus the fill color. So even if you constrain the vector coords to integers and assume 16-bit ints only (8-bit ints would only work for a 256x256 source image), you turn a 32-bit 0xRRGGBBAA value into [X0,Y0,X1,Y1,X2,Y2,X3,Y3] (8x 16-bit ints) plus 0xRRGGBBAA fill color, equals 160 bits per "pixel", a five-fold increase in filesize (and that's not even including the structural metadata the SVG needs to work, that's the raw data values only, and even that is placing constraints SVG doesn't normally have such as 16-bit int coordinates, they're usually full floats). _Friends don't let friends turn jpegs into svgs._
Whatever happened to an old Macintosh program called “Live Picture”? This had its own file format, called “Functional Interpolating Transformational System” (if you look up “FITS”, you will hit something else entirely), which allowed the raster image to be decoded at different resolutions, so that you only needed to decode the necessary part of the image at the necessary resolution to look good on the screen at the current document scroll and zoom settings. Also, different image operations were applied as additional layers of these transformations, so image manipulations went blazingly fast. Of course, any operation that required the rendering out of full pixels for the entire image (e.g. printing, exporting to other formats) would still take some time. Other names for the file format seem to be “IVUE” and “FlashPix”.
There are tools, that use AI to find out the shape of the objects and convert them into svg shapes. I also saw a method, where objects are randomly placed and if it makes the svg closer to the original, it will be added to the final file.
SVG is basically how some PDF pictures worked. I have a PDF map of the whole bus network of my city (that you can download from official sources), and it can expand indefinitely if I zoom in, and you can see it is made of lines if you zoom in enough.
Close... You are thinking of the relationship between EPS and PDF. Both EPS (Encapsulated PostScript) and PDF (Portable Document Format) have their origins in PS (PostScript) format. SVG was developed independently for W3C.
Thanks for the "demosaic" info. Its an option that pops up when im stacking raw images for Astrophotography but i never really understood what it was doing.
Oh wow man, Theo has really come a long way. I remember being 12 or 13, and watching one of his prank tutorials. Trying to do it, and it didn't work, and the noticing that it was a prank. I honestly got a bit bitter 😂 and didn't watch his content anymore. I SOMEHOW, stumbled upon his channel once again, and honestly speaking, I love the fact that he's making actually useful content! Huge props man! Ig I'm now old enough, and know enough to appreciate those prank tutorial videos. Would love to see if you ever decide to do them again.
This reminded me of another image format. Does anybody else remember FIF (Fractal Image Format) which used compression based on fractal geometry? I think this came out some time in the 1990s, and don't think it was ever widely used.
In regards to your last point, please allow me to re-use the comment I made on your other image format video: For my thesis over 20 years ago, I "invented" an image compression that was based on geometry. So kind of like trying to extract the edges of an image, but instead I went with the "edges of the edges" (2nd derivative so to speak), and store them as splines with a color gradient. As this was the time of DirectX 9, GPGPU was in its infancy, but I (ab)used it to fill in the gaps during reconstruction, which still took QUITE some time. And still left an image that looked more like a cartoon-ized version. Solution: Also store a difference image and compress it with an adapted (written from scratch) jpeg-like algo and apply during reconstruction. The whole thing was VERY sensitive to the kind of image (drawing vs. photo especially), but in most cases I was able to reach file sizes of 20-50% jpeg quality with no visually apparent differences to a 90%+ jpeg. And it had, in a way, a nice inbuilt mechanism for good quality scaling, since a lot of the information was stored as curves instead of discrete pixels! Since all of this was done "by hand", with no ready-made libraries (except DX and the UI parts of the concept program of course), this really was an interesting deep-dive into all aspects of computing and maths. From simple color space conversion, over DCT, splines and convolutions, to programming such an early GPU with pixel shaders in ways it was never intended to. While my professors said that this was definitely at least master's degree worthy, probably PhD stuff with the according extended textwork, I did all of this mostly for fun and got a bachelor's out of it. Ah well. At least it was fun. I love image processing! Thanks for what was for me, a bit of a throwback! So yes, you CAN (to some degree) convert a raster image into a vector description, but the finer the details are you want to capture, file sizes start to explode, and you also start to capture "natural errors" so to speak, as in noise added by prior compression or even the camera sensors themselves.
If we need more green pixels for our eyes to see, that means our eyes are less sensitive to green compare to red or blue. Think about it, the more sensitive you're about something the less you need of that something to feel it.
This is what I found: Eye is sensitive to luminance (shapes, details) and color of an image. It can perceive more resolution in luminance than color so a camera should prioritize luminance resolution. Of the three colors red, green, and blue, green receives the most light for a scene, and the eye is most sensitive to it. Thus a camera can improve the image resolution by just increasing the number of green sensors. Note that the number of sensors doesn't dictate the amount of light that comes out of the display; a camera could have a single blue sensor, whose value set the blue level of every pixel in the image (a multiplier basically).
I believe windows has a basic plain 2d black and white cursor built in that it would fall back onto. I don't think the busy cursor would even work, just a plain cursor.
I already know this answer. I had Windows glitch on me a few days ago. There was no mouse cursor. So, you're stuck with no mouse, essentially. I patched Windows after that.
@@volvo09 Keyboard was fine. Windows button worked, but my solution was to unplug the computer, restart, and it went back to working again. From here, I looked for Windows updates. Patched now, and all is good.👍
2:08 The most important point about JPEG 2000 is that it uses wavelet-based compression, instead of DCT like old JPEG. The difference is what happens when you push the compression too far: DCT gets blocky, while wavelet just gets soft and blurry, which is considered less objectionable.
Having a background in both software development and graphic design with a passion for photography, I'm familiar with most of these except for a couple of JPG formats. In particular, with reference to images supported by Adobe Illustrator is EPS (Encapsulated PostScript) which may have fallen out of favour with newer vector file types. I tell clients that a vector format is the way to go so that their logos don't pixelate when the size changes. They are impressed when I say they can use it at the size of going to Pluto and back without any degradation in quality. 😀
What we talking about obscure jpeg and png variants, if often used in internet webp format, still barely supports in programs without third party solutions.
I don't get how you have 3M Subs but such few views, like under 1K in 10m? That's crazy, the subscribers don't watch the videos? They're always cool and informative! Also you are very close from 3M Subs, congrats already!!
Look at your RU-vid subscriptions. You’re probably subscribed to at least 30 channels. At least 5 of them, you haven’t watched in over a year and it’s not posted in your feed when they drop new videos and they have hundreds of thousands of subscribers also. It’s the same situation. There’s over a million channels on RU-vid, with new channels and videos dropping daily. People move on to new things and forget they’re even subscribed to channels as time passes. I’m guilty of that myself.
This sadly always happens with channels that change their content style (like ThioJoe going from fake tech tips to actual tech information). People subscribed for the old content never unsubscribed, just stopped watching.
After watching the previous video I found myself wishing for a format that carried text data like a sort of note attached to it, emulating the ability to write on the back of photographs.
I have seen images with *".nrg"* file extension _(or something around it, it's a long time ago, Not to be confused with Nero Disc Image with same extension)_ in some S40 Nokia phone several times, it is recognized and sometimes can be opened directly by the phone's file manager. The file will become ".jpg" after some time, So I thought it was a temporary file the phone used to store raw image before converting it to a widely used file format.
Could you please cover HEIC format, specifically on how it compares with JPEG? I use a Samsung Galaxy phone and it provides the option to use HEIC format for the camera. My experience is HEIC files are smaller than JPEG, but I am unclear if it is at the cost of quality compared to JPEG. I have been told by others that HEIC is a newer format and is superior to JPEG, but it is hard to find information that validates this. Thank you.
In the time you wrote that comment, you could have searched it yourself. Adobe wrote that heic uses half of the amount of storage a jpeg would use while offering more quality but you need the Microsoft extension to open heic images on windows.
HEIC has problems: It's subject to patents. So open source software can't go anywhere near it. The only major company pushing HEIC is Apple, who are part of the patent pool that controls it.
It's the same quality at a lower file size(or higher quality at the same size) the downside is lack of compatibility and that it's slow. Should be way better then jpeg but a bit worse then avif
@@KeinNiemand I've some some comparisons myself, and concluded the following: For lossless compression, WebP absolutely wipes the floor with PNG hands-down. Far smaller files practically every time. For lossy compression of graphics such as diagrams and illustration, WebP also beats JPEG by a nice margin. For photographic images, WebP beats JPEG... but not by very much. It's close. I've not tried the same comparison script on AVIF, but I suspect this is where AVIF would really shine.
I'm pretty sure the '-large' files aren't supposed to be customer facing, but rather are arguments! If you open an image from Twitter, you might see other arguments, like 'medium' and '800x600'. You can substitute these for 'orig' and get the highest resolution Twitter has available, which your browser might have attempted to save as '.png-orig'!
JPEG XL is actually really sick, on top of being an extension of JPEG, you can losslessly reencode a JPEG image to and from XL, and the XL reencode saves extra space without any change or loss to the image
Well ... As the creator of .gif made it 100% clear that it is to be pronounced "jif" that only leaves one conclusion: its about time someone tells him hes wrong
As a software dev i can confirm Microsoft encourages you to add 768x768 PNG-compressed image inside an icon (.ico) file. That size is displayed when you have monitor with 300% scale (288 dpi instead of usual 96 dpi) and set your explorer window to display "extra large icons".
It's hilarious how many people pronounce gif like it's a peanut butter because that's what the creator wanted but call png "P-N-G" when the creators said, when it was released, that it was pronounced "ping".
The Xbox Series X saves 4K screenshots in the JXR format (alongside PNG). From my research, the JXR format is based on the HD Photo/Windows Media Photo spec, which would explain why Microsoft uses it.
Been using SVG for years for logo design, i so badly want more things to use it because i see way too many icons and such saved in 128*128 or something
When someone says gif with a "J" sound, I always think of the .jfif file extension or peanut butter. When some says it with a "G" sound, I think of the .gif extension.
I had a co-worker at my old workplace that would joke with me about the .WWF (World Wildlife Fund) file format, which is a .PDF that the reader will prevent you from printing. Didn't stop us from making wrestling puns
As a computer user from the 80s and 90s, I found it strange to see .BMP in this list of uncommon image formats. It was basically the standard in the early days of VGA screens.
JXR which nvidia shadowplay can make from taking screenshots from hdr games are pretty cool, it's practically a hdr still image and windows 11 supports it natively
btw DO YOU KNOW HOW MUCH I HATE CHROME? ITS EXTENSION API THINGY IS THE WORST IN THE WORLD. ALSO THE DOCS R SO SPECIFIC THAT IT WOULDVE GENUINELY BEEN BETTER WITHOUT THEM. So using firefox is np
Back around 2006 wrote an Excel Template that uses enhanced metafiles, "emf", proprietary to Microsoft. The worksheets still convert to pdf just fine. Should probably convert them to svg eventually.
This video helped explained why i found a transparent jpeg one time, back when the little big planet servers and website where still around they used a transparent jpeg for their website. The image was sackboy, the player character, holding a paintbrush with a shade of red on the brush tip.
I have an idea for a video format. This is useful for a animated series where a lot of scenes are the same so they don't have to draw/make it all over again. 1. Make a large file where a lot of things (Like different frames of a character and features of a character) are stored 2. The video file just points to what objects and tiles should be used (Like how old school tile based game consoles worked) For example, in almost all episodes of pokemon, the scene where the main character throws a pokeball is all the same. So the large file just needs to store one scene. And the opening of every episode just needs to be stored once. And the throwing and rotating of the pokeball is very simple so you only need to store one pokeball and some rotations should be enough The only problem that I see is that it would consume system resources
You could extract the assets that studios wouldn't like, and many video codecs offer a similar compression because they only save the difference to the last frame.
I've seen something similar to this technique where all the animation frames for a sprite are tiled across a larger image file. The (usually game) program rendering the animation simply only shows a subset (if done properly, an individual tile of the larger image) of the image for each playback frame.
Playback would be a problem, due to the random access nature. SSDs would be fine, but mechanical drives would thrash around trying to keep up. It's also unstreamable.
TGA is a simple format to transfer into and out of memory in one operation. Just a continuous array of pixels. Since the beginning, it had transparency when needed. In comparison, BMP needs to have each rows padded to 32 bits, which it might not be with 24-bit color, has multiple header versions that were added onto by each new version of Windows, some bitmaps are written to disk upside down, transparency was added later when it became relevant In Win2k or XP, where you could have see-through dialogs for the first time. TGA has a simple RLE compression for solid colors, if needed. But a simple loader need not bother with that. With the row padding, BMP is a bit slower.
@ThioJoe: thanks for inserting text-representations of technical terms or corrections (the text with *[bliblablubb]) - but make the delay a little bit longer. you and your [hypothetical] video cutter seems to be english natives and you know, where and at what to look - but as the one-time-viewer you've to notice, focus and recognize the text ;) and thanks for the summeries of the several topic. it a nice source to have a short lookup for the important points.
Thanks for covering SVG. I have seen SVG on only the U.S. Library of Congress websites. It’s so little used that many federal agencies block webpages with SVG websites until the IT department clears SVG for security. By the way, I have extensive training in linguistics and I have only one thing to say: “You say /tə’mɑto/ and I’ll say /tə’meto/.” With apologies to Fred Astaire and Ginger Rogers.
@13:25 true but there have been news of companies trying to make photographs and even video vector based. Not sure why someone would do that, a camera lens has limitations so zooming into vector photo would not automatically give infinite resolution/zoom ability and the second issue is that i've encountered very complex purely vector based illustrations and their filesizes are huge. we're talking hundredts of megabytes for a picture that still only has shapes with gradients and do not look remotely like something that has been painted or photographed IRL
(7:28) That's a very redundant way of doing that. All you would need for raw image is first define the width of the image. Then each byte is each channel of each pixel, 3 bytes per pixel. So you just list each pixel in order from top left, to top right, and work line by line.
(1:30) When you say "second image as a mask", which I assume is a single channel greyscale image, so what you're actually saying is that it's a fourth channel, just like png, that is the alpha channel (RGBA). Although you might be talking technical here, and technically it might just be a completely separate image in the format itself.
JXL will soon be officially supported in Apple's operating systems and Safari browser. Hopefully Chromium, Firefox, Windows, and Linux will follow suit.
on ifixit i have save an image of a motherboard and the file was named name.large and name.mediuml and thats just just a png with diferent resolution ,the large is when i open the big image on a new tab and the medium is when i open the small image used for view the diferent image of one step of teradown