[Live-devel] JPEG quanrizer tables origin

Ross Finlayson finlayson at live555.com
Fri Jan 18 08:56:38 PST 2013


> Could you tell me the origin of 'luma' and 'chroma' quantizer tables specified at JPEGVideoRTPSource.cpp?

They were contributed to the code about 10 years ago.


> They are differ from tables specified at RFC2435.

The values in the tables are actually the same, but in a different ('zigzag') order.  I'm not an expert on JPEG, but apparently the tables in RFC 2435 should be copied to the JPEG headers in 'zigzag' order, but the sample code in RFC 2435 does not do this.  I.e., the sample code in RFC 2435 is apparently in error.  Our code corrects this by reordering the tables, so that they can be copied to the JPEG headers using a simple "memcpy()".

Other people's implementations do the same thing.  See
http://massapi.com/source/fmj/src/net/sf/fmj/media/codec/video/jpeg/RFC2035.java.html
	(a Java implementation)
ftp://202.38.97.197/open/multimedia/VLC/ffmpeg/libavformat/rtpdec_jpeg.c
	(a C implementation for FFMPEG)
http://social.msdn.microsoft.com/Forums/nl-NL/mediafoundationdevelopment/thread/ece2b8f5-6487-4c23-8244-cf3bde315f5f
	(a C# implementation)


Ross Finlayson
Live Networks, Inc.
http://www.live555.com/

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.live555.com/pipermail/live-devel/attachments/20130118/b965a4d5/attachment-0001.html>


More information about the live-devel mailing list