[Ffmpeg-devel] JPEG-LS codec
Wed Feb 1 09:44:45 CET 2006
> Now I have JPEG-LS both decoder and encoder. Use FFmpeg "-pred x" option to set near-lossless compression. Please test and consider for inclusion.
> Encoder is not relying on MPV_* funcs because MPV_init won't let encode RGB images, and as I don't need MjpegContext it's easier to write own header than use mjpeg_picture_header.
> Maybe I will also implement some JPEG-LS 2 (ITU T.870/ISO-14495-2) features in the future, but not now.
I haven't tested it yet, but I have some comments. First, let me say
that the code is beautiful. It's clear, simple, and well-documented.
Also, I am SO glad you did this.
The more I study lossless image encoders, the more I'm impressed with
JPEG-LS. There are better compressors out there, but few quite so
simple and fast with competitive compression to match. FFV1 looks
pretty interesting, too. At a glance, it looks similar to JPEG-LS, but
with a better entropy coder.
I have implemented a LOCO encoder/decoder myself (not the JPEG stuff),
and I have to say I like a lot of your solutions, namely to the run-mode
stuff, which is a little tricky.
I haven't seen much about JPEG-LS 2. I tried to download the spec from
ITU and it didn't recognize my 3 free specs account anymore...oh well.
Does anything in it look interesting or worth implementing?
As a side note, I recently recently came across another good lossless
image coder in a paper by Microsoft. It creates and encodes a tree for
each block based on the log2 of the magnitude of prediction errors.
This essentially approximates a good bitdepth to encode each pixel
without too much overhead. It's quite simple and has compression and
speed similar to JPEG-LS. Here's a link.
I implemented a standalone encoder & decoder if anyone is interested.
I look forward to testing this patch out and will do so very soon.
More information about the ffmpeg-devel