| |
Settings |
Decompression |
Compression |
Fast integer |
Fast integer method. This method
is the fastest but considerably less accurate than the other two; its use is not
recommended if high quality is a concern. |
Integer |
Slow but accurate integer
algorithm. |
Float |
Floating-point method. This
method is slightly more accurate than the 'slow' integer method. |
MMX |
If grayed MMX is not detected.
If checked, MMX optimizations are used.MMX
optimizations :
- Inverse DCT and dequantization on fast integer and integer
methods.
- Upsampling, color conversion and merged upsampling and color
conversion for all methods (even with fancy upsampling).
|
If grayed MMX is not detected.
If checked, MMX optimizations are used.MMX
optimizations :
- Forward DCT management and quantization on fast integer and
integer methods.
|
Fancy upsampling |
If checked, do careful upsampling of chroma
components. If unchecked,a faster but sloppier method is used. The visual impact of
the sloppier method is often very small. |
N/A |
3DNow! |
N/A |
If grayed 3DNow! is not detected.
If checked, 3DNow! optimizations are used.3DNow!
optimizations :
- Forward DCT on float method.
|
Enable codec |
If checked, the codec is enabled,
if not it is disabled. |
User FourCC |
If checked, the text in the edit
box is used as the default FourCC for both compression and decompression.
- Matrox Rainbow Runner users should check it and type dmb1 in
the edit box if nescessary.
|
Enabled |
If checked, decompression is enabled, if not
the codec reject every query for decompression. |
If checked, compression is enabled, if not the
codec reject every query for compression. |
Support Interleave |
Apply only if height is more than 288. If checked, decompress and display 2 interleaced fields per frame.
If unchecked decompress and display only the first field
(odd lines). Odd lines are duplicated to fill even lines. |
Apply only if height is more than 288. If
checked, compress 2 fields per frame (2 JPEG images are stored, one per field, for each
frame).
If unchecked compress and srore only the
first field. |
Invert Field order |
Odd lines become even lines and
even lines becomes odd lines. |
|
|
Supported
color spaces |
Decompression
(ouput)(*) |
Compression
(input) |
RGB |
16 bits (555 & 565)
24 bits
32 bits |
16 bits (555 & 565)
24 bits
32 bits |
YUV (DirectDraw) |
YUY2
UYVY
YV12
I420
IYUV
YVU9 **
IF09 **
CLPL |
YUY2
UYVY
YV12
I420
IYUV
Y41P
VYUY (btYUV) |
|
(*) All color space conversions are MMX optimized !
(**) You need to set IF09=1 in M3JPEG.INI
Tested hardware/software codec |
Foreign
stream decompressed by Morgan Multimedia MJPEG codec |
Morgan
Multimedia MJPEG stream decompressed by foreign codec |
Matrox Rainbow Runner |
OK
(Tested in every resolutions.) |
OK
(Tested in every resolutions supported by the RR.) |
Miro/Pinnacle DC30 |
OK
(Tested in 384x288 & 720x540, but it should work in other resolutions, send me
short AVI clips). |
Not tested |
Fast Screen Machine II + MJPEG add-on |
OK
(Tested in 368x276). |
Not tested |
Paradigm Matrix codec |
OK
(Tested in every resolutions.) |
OK
(Tested in every resolutions.) |
MainActor integrated MJPEG coded |
OK for 'Software MJPEG' (4:1:1)(*)
OK for 'Hardware MJPEG' (4:2:2) |
Not tested |
QuickTime 'jpeg' file converted to AVI with
Intel's SmartVid |
OK (4:1:1)(*) |
Not tested |
Miro DC1 |
OK |
Not tested |
Truevision Bravado 1000 |
OK |
Not tested |
Iomega BUZ |
OK |
OK |
Truevision Targa 2000k Pro |
OK |
OK |
... |
|
|
|
(*) 4:1:1 MJPEG streams are always decompressed with
'Fancy upsampling' even if it is unchecked.
Tested software |
Morgan Multimedia MJPEG codec decompression |
Morgan Multimedia MJPEG codec compression |
Adobe Premiere 4.2 & 5.0 |
OK |
OK |
Ulead Media Studio 5.0 |
OK |
OK |
MS Media Player (classic) |
OK |
N/A |
MS Explorer AVI Property |
OK |
N/A |
MS Media Player 2 |
OK |
N/A |
MS ActiveMovie |
OK |
N/A |
MS DirectShow |
OK |
OK |
Cornell's CU-SeeMe |
OK |
OK |
MS VidCap & VidCap32 |
N/A |
OK |
|
Take a look at The MJPEG-Software-Codec
Guide by Uwe Roeder, a very interesting text about using software codecs coexisting
with hardware codec. The mentioned hardware is the Rainbow Runner, but there's many
informations for other hardware users.
FourCC
issue |
MJPEG
hardware in the PC |
Warning
on installing the Morgan Multimedia MJPEG codec(*) |
MJPG |
The most common (Fast, Miro, Iomega, ...). If your hardware handle the 'MJPG' FourCC, you should find the key
"vidc.mjpg=..." in the [Drivers32] section of the SYSTEM.INI file. |
Before installation, edit the SYSTEM.INI file
and add a ; (semilicon) before the line "vidc.mjpg=..." of the [Drivers32]
section. Then install the MM-MJPEG software
codec.
To reactivate the hardware codec, remove the previouly
added ; and add a ; before the line vidc.mjpg=m3jpeg32.dll
Use a similar method to reactivate the software codec. |
dmb1 |
Matrox Rainbow Runner. |
You can install the MM-MJPEG software codec. But before adding the dmb1 support, edit the SYSTEM.INI file and add
a ; (semilicon) before the line "vidc.dmb1=..." of the [Drivers32]
section.
Add a line vidc.dmb1=m3jpeg32.dll in this section.
To reactivate the hardware codec, remove the previouly
added ; and add a ; before the line vidc.dmb1=m3jpeg.dll
Use a similar method to reactivate the software codec. |
jpeg |
No known hardware, used to playback QuickTime
(4:1:1) 'jpeg' streams. |
N/A |
(*) This apply only for Windows 95/98.
For Windows NT, DO NOT install the codec on the machine containing a capture device that
handles 'MJPG'.
Except if you are using a Matrox Rainbow Runner wich handles neither 'MJPG' nor 'dmb1'
FourCC under NT.
It seems that the DC30 does not install an 'avicap' driver under NT, so maybe could you
use the software codec coexisting with the hardware device but it was not tested yet.
Email me if you try it ...
If you are sure of what you're doing, you can modify the provided OEMSETUP.INF file before
installation.
Benchmark(*) |
Morgan Multimedia MJPEG codec v0.90 |
Paradigm Matrix MJPEG codec V1.11N |
RGB 16 555 |
NoDraw : 151.1 fps
DrawDib : 110.7 fps |
NoDraw : 89.6 fps
DrawDib : 85.5 fps |
RGB 16 565 |
NoDraw : 139.9 fps
DrawDib : 110.7 fps |
Not tested |
RGB 24 |
NoDraw : 156.8 fps
DrawDib : 111.3 fps |
NoDraw : 85.5 fps
DrawDib : 81.8 fps |
RGB 32 |
NoDraw : 156.8 fps
DrawDib : 110.7 fps |
NoDraw : 85.9 fps
DrawDib : 85.5 fps |
YUY2 |
NoDraw : 211.1 fps
DirectDraw : 126.2 fps |
NoDraw : 121.8 fps
DirectDraw : 85.5 fps |
UYVY |
NoDraw : 121.8 fps
DirectDraw : N/A on Mill II |
NoDraw : 117.6 fps
DirectDraw : N/A on Mill II |
(*)
Tested for decompression only.
Benchmark program :
Modified DirectDraw sample called Avidd.
Test the frame rate with 3 methods.
1 - NoDraw : No display is performed, it give you the pure frame rate of the codec.
2 - DirectDraw : Display with DirectDraw (YUV modes only).
3 - DrawDib : Windows choose the best display mode, depending on the displau settings and
the codec capabilities.
AVI file : 320 x 240, 24 Bits, 207
frames, 30 fps, 167 Kb/Sec, MJPEG compressed @ 50.
PC :
MB asus P2B 440BX bus @ 103Mhz
PII 333 oveclocked @ 412Mhz (4x103)
128Mb sdRAM
Matrox Millenium II AGP 4Mb + Rainbow Runner (not used to decomp 'MJPG' ;-) it only decomp
'dmb1'...)
Seagate Medialist 6.4Gb UDMA2 + Intel PIIx Bus Master
Windows 95 OSR2.5 + DirectX 6 + Direct Media 5.2b
I'm still looking for a more pro and
standard benchmark program for AVI codecs ... If you know one, email me at m3jpeg@morgan-multimedia.com
History
list :
v0.90
v0.91
- Fix the 'float' method crash on compression.
- Fix the 'display at 0,0' bug with Premiere and Media
Studio.
- Fix a bug that came with transitions in Premiere and Media
Studio when one of the video is interleaved and the other is not.
- Improve multiples instances support.
- Allow to Enable/Disable the codec for decompression and/or
compression.
- Improve speed.
v0.91a
- Fix a bug on preview and output with Premiere (in v0.91).
v0.91d
- Fix a bug with float compression on AMD K6-2.
- Add a 'user FourCC' option to handle and compress in other
format than 'mjpg' ('dmb1'. 'MJPG', ...).
- Add an 'Enable codec' option that allow to enable/disable
the entire codec.
v0.92
- Allow to playback MM streams on Iomega BUZ (and I
think on Miro DCxx and Truevision cards).
- Default FourCC is now MJPG rather than mjpg (OpenDML
specs.)
- Fix the Enable/Disable settings for
decompression and/or compression.
- Support default quality settings (set to 75).
- Support data rate settings from video editing s/w.
- Works with Cornell's CU-SeeMe.
- Add an MMTray.exe utility that allow to
enable/disable the codec (right click) or invoke the codec configuration panel (left
click).
v0.93
- Add RGB 16-bits (555 & 565), RGB 32-bits, YUY2
and UYVY input format support for compression.
- Fix a bug with data rate checking on compression.
v0.94
- Fix a bug in Premier 5.1 with the Miro DC10
- Fix a bug in YUY2 and UYVY compression mode (image
was mirrored).
- Speed up compression (more MMX code !!!).
- Add super fast YV12, I420, Y41P, VYUY (btYUV), input
format support to improve realtime compression (designed for capture cards that do not
perform hardware compression, ATI All In Wonder Pro, Brooktree bt848 chipset based cards
like Hauppauge WinTV or Miro/Pinnacle PCTV,
...).
- Add YV12, I420 support for output.
v0.95
- The trial time out is now 1/Apr/1999
v0.96
- Add advanced setting to support Targa 2000k Pro card
(need to set EmitAPP0_AVI1_14=1 in M3JPEG.INI).
- Add advanced setting to fix JPEG header of
non-standard MJPEG files (need to set FixSOF0=1, FixSOS=1, FixDQT=1 in M3JPEG.INI).
v1.0
- Add YUV9, IF09 support for output (need to set IF09=1
in M3JPEG.INI).
- Add super fast 4:2:0 compression (640x480 @ 25fps on
a PII 400, need to compress from 4:2:0 YUV input format like YV12).
- Add super fast 4:2:0 playback (640x480 @ 25fps on a
PII 400, need to playback a 4:2:0 compressed file).
- Activate 'Support interleave' setting.
- Activate 'Invert field order' setting.
- Support registration key and add a registration
dialog box.
- The trial time out is now 1/Jul/1999
|