JPG in MMS
How MMS mobile phones handles
corrupted Multimedia Messages?
Student: Zoran Sambol Professor: Nikola Rožić
Multimedia Communications, FESB, University of Split
Task definition
• Multimedia communications is postgraduate
study subject. FESB, University of Split
• Task was to exam how mobile phones
handle corrupted JPEG images which are
part of MM (Multimedia Message).
• Objective for task is student business
participation in MMS project.
JPEG standard
• JPEG is generic standard for continuous-tone still images –
grayscale and color.
• DCT-based method for “lossy” compression and predictive
method for “loseless” compression.
• Four steps algorithm:
– Initialization - MCU
– DCT
– Quantization
– Encoding (Huffman or arithmetic coding)
• File formats – JFIF and SPIFF
• M-JPEG is non-standard JPG variant
JPEG algorithm
• The JPEG Still Picture Compression Standard
• JPEG Overview
• JPEG File Interchange Format
• JPEG File Layout and Format
Independent JPG Group
• A consortium of programmers, the Independent JPEG
Group (IJG), has produced a public domain version of a
JPEG encoder and decoder in C source code form.
• IJG library can be obtained from various FTP sites,
information services, and computer bulletin boards.
• Basic JPG Reference to IJG library - FAQ
• Many projects use IJG – Internet search results
• IJG ReadMe file
• Source code - ftp download or link to disk
IJG JPEG usage
• C software for JPEG image compression and
decompression
• Set of library routines plus sample applications
cjpeg and djpeg – Usage
• The library is intended to be reused in other
applications – APIs
• Project documentation: install, library and
application usage, wizards, examples, structure,
file list and code rules
Restart markers
IJPG Group console applications cjpeg (compress)
and jpegtran (transformations) use “-restart”
option.
- restart N - Emit a JPEG restart marker every N MCU rows, or every N MCU blocks if
"B" is attached to the number. -restart 0 (the default) means no restart markers.
The -restart option inserts extra markers that allow a JPEG decoder to
resynchronise after a ttransmission error. Without restart markers, any damage
to a compressed file will usually ruin the image from the point of the error to
the end of the image; with restart markers, the damage is usually confined to
the portion of the image up to the next restart marker. Of course, the restart
markers occupy extra space. We recommend -restart 1 for images that will be
transmitted across unreliable networks such as Usenet.
CImage freeware
• Freeware
windows imaging
application (JPG,
BMP, GIF, PNG,
TIF and ICO)
• IJPG library
reused as a DLL
• Visual studio
MFC MDI project
Mobile manufacturer
implementation
• Mobile manufacturer uses IJG library in
unchanged form – copyright notice exists
– Copyright (C) 1994-1996, Thomas G. Lane.
• Wrapper functions in MMS client
• Basic IJG functionality remains
Mobile phones test
• Mobile phone with camera used
• JPG image captured
• Image uploaded to PC and its content was
randomly corrupted
• Corrupted image downloaded to Mobile
• MMS with corrupted image created and sent to
mobile
• Received MMS show same image as a PC
Test images
Mobile phone camera image Corrupted image
Conclusion
• Mobiles’ MMS clients uses same JPG
engine as PC
• In different mobile phones MMS corrupted
images are handled on the same way
• Manufacturers uses IJPG library which is
reasonable due to software development
cost reduction