Log in

View Full Version : Free MJPEG codec


vlada
9th April 2004, 01:22
Hi,
I have a question. Do You know about a free DirectShow MJPEG codec? The only one I've seen is the one from FFDShow, but it is very slow. It uses 90% CPU on my Athlon 2000+ (full PAL). I was able to capture 768x576@25 fps with PicVideo MJPEG on my old Duron 600 MHz. This is very big difference in perforamce. Why? Is it normal, that the FFDShow MJPEG encoder (version from 20040405] is so slow? Is there something faster, that could be used for 1 GHz CPUs or even slower ones? Thank You, Vlada

hartford
13th April 2004, 03:34
Long ago, in another era, there was a "free" coder
available from Morgan by simply giving your email address.

It may be "floating" around the internet. I seem to remember
that it was version 3.0.0.8. But, I'm old, and my memory
is bad.

bb
14th April 2004, 18:40
The PicVideo codec was free once upon a time, too. Nowadays you have to pay for it, though.

bb

boyer98
15th April 2004, 07:48
you can use ffvfw selecting mjpeg format.

FIHW
15th April 2004, 11:20
<Rule 6>

rfmmars
15th April 2004, 19:12
Not free but almost......$9.95 US form Leadtools is the fastest Mjpeg I have found. The demo puts very small watermarks at the top & bottom edges. You can easly crop them out, but come on,... it's $9.95.

A lot of other goodies on their site. www.leadtools.com

richard
photorecall.net

vlada
16th April 2004, 09:38
rfmmars: Thanks, I'll try it out.
bb: I knew this, but unfortunately, they're not offering this for some years anymore.
boyer98: Didn't I mention it? In the last builds the FFDShow and FFVfW are merged, so I was talking about the same MJPEG. And I already mentioned it ir maybe 5x slower then PicVideo.
I just hoped that someone made a DirectShow codec using source maybe from MJPEG tools for Linux. But it doesen't seem so. Or do You have any other idea for an "almost lossles" free codec for video capturing? But with better compresion then lossles codecs like HuffYUV. Thank You, Vlada
P.S. I write a TV capturing guide and I want to use only freeware or even better opensource software in this guide. The only part I'm missing is MJPEG codec. The software I use is ATV2000 (MJPEG) -> BeSweet Wizard, VDubMod (XviD) -> MKVToolnix or Avisynth -> QuEnc -> DVDAuthor GUI.

scharfis_brain
16th April 2004, 09:48
is there somewhere a MJPEG-Codec comparision of those Codecs?
(PicVideo, Morgan, LeadTools, ffvfw/dshow, forgot one?!?)

Size vs. Quality

(especially ringing)

sh03z
23rd April 2004, 01:17
You don't really need a comparison test, Leadtools MJPEG can be adjusted so that it produces different quality video/bigger filesize, or visa versa...

it's a very versitile codec,

and like rfmmars said,
you can crop 16 pixels off top/bottom

I just bought it though...

ac-chan123
23rd April 2004, 03:04
give smjpeg (http://www.lokigames.com/development/smjpeg.php3) a chance. Itīs open source.

AC-Chan(Robert Vincenz)

bb
23rd April 2004, 06:56
Originally posted by ac-chan123
give smjpeg (http://www.lokigames.com/development/smjpeg.php3) a chance. Itīs open source.
As far as I can see it's not a VfW codec, and it uses a special file format, not AVI. And it seems to be for Linux. And it's available through the awful 3D downloads only, which means that you are put in a queue and have to wait 6 minutes before you can actually start the download. All other download links are broken (at least for me).

Not to mention that you have to compile it yourself...

bb

sh03z
23rd April 2004, 18:18
Format, install linux, compile codec,

sounds like fun

vidiot
24th April 2004, 18:27
AFAIK you can achieve the best quality results in capturing
by taking a DV codec (some of them are free like MS or Panasonic which are the same?).
DV is the successor to MJPEG - the only downside is the you couldnīt
choose a level of compression.
If you want more quality - simply donīt compress - choose huffyuv or any other lossless codec.

JoeShrubbery
24th April 2004, 23:39
I used mjpeg for a couple years, but a few month's back switched to capping directly to mpeg4 configured for interlaced, I-frame only, no motion estimation but high-as-hell bitrate. I've been using the implemantation in ffvfw/ffdshow and have been more satisfied with mpeg4 constant quant 2 than I was with any of the mjpeg codecs I've tried. I've been capping at full NTSC D1 without a problem on my old Duron 1300, so provided you've got it all tweaked properly is SHOULD be quite a reasonable option on your box.

bb
25th April 2004, 10:16
Originally posted by vidiot
[...]DV is the successor to MJPEG - the only downside is the you couldnīt
choose a level of compression.[...]
I wouldn't say that DV is the successor of MJPEG, which would mean that MJPEG are legacy codecs nowadays. DV was designed with a different goal in mind: a high-quality, constant bitrate codec for use in digital camcorders. The technique is similar to MJPEG, but there are certain improvements like different block sizes etc.

For capturing purposes DV is a good choice if you can live with the 720x576 / 720x480 resolution restriction. E.g. if you prefer to capture at 768x576, DV can't be used.

bb

vidiot
25th April 2004, 15:54
bb,
what you say is true (as usual:rolleyes: )- my opinion was based on an 6 years old article from Guy Bonneau and Adam J. Wilt.
They compared MJPEG an DV and their conclusion is that DV is best.

So my conclusion is:
DV gives me better pictures than (for example) PICVIDEO with Q19
at comparable videosize. The downsize is that the capturesize couldnīt be choosen.
(BTW: I capture my analog stuff with PICVIDEO since 4 years, but the question was "FREE MJPEG Codec?").

vlada
25th April 2004, 21:10
(BTW: I capture my analog stuff with PICVIDEO since 4 years, but the question was "FREE MJPEG Codec?")
I currently write a TV card capturing guide (it is in czech, so You probably wouldn't understand it :-)). I try to use only freeware software. The only part I miss is a good quality codec. HuffYUV is lossles, but the compresion isn't very good. DV codec is a good option, bu is there a free one? Also I belive, I have to switch from YUY2 to RGB. But this shouldn't be a problem. Thaks to all of You. Vlada
P.S. I use ATV2000 (http://mikecrash.wz.cz/atv2000/atv2000.htm) for capturing, it is freeware, so You can give it a try.

vidiot
25th April 2004, 22:00
vlada,

I did use VD first and switched over to VirtalVCR which is also a
very nice and free capture software.
I cut and filter with VDMod and Avisynth later.

For a free MJPEG codec or capture codec you can choose all codecs mentioned here. There are also other lossless codecs like loco or a modified huffyuv (not really sure about that) for YV12 colourspace
from MarcFD from the Avisynth forum.
Simply try what the people above mentioned allready and choose the one that fits your needs.

vlada
25th April 2004, 22:41
vidiot> Hi, I personally use Picvideo MJPEG codec (it used to be free). I jast tried to find something as good as this codec, that I can suggest to other people. So I was wondering, if there is something for free, that could replace PicVideo MJPEG. I know VirtualVCR, I also use Avisynth and VDM (not for capturing, because it doesen't support WDM). The probelm with HuffYUV is, that it has a very high bitrate and not all harddisk are able to save data at this speed. Vlada

vidiot
26th April 2004, 11:52
Originally posted by vlada
The probelm with HuffYUV is, that it has a very high bitrate and not all harddisk are able to save data at this speed. Vlada
True,- but i remember a few years ago I captured TV Ful PAL (but cropped 16 Lines top and bottom and 24 lines left and right during capturing) using highest available compression of huffyuv and simply captured everything making XSVCD (720x576 with black borders) afterwards.

My system then?
800 mhz Duron (450 Mhz K6 before which also worked)
5600 rpm HD (not really fast compared to present hardware)

So speed shouldnīt be a problem today.
The only thing is with codecs like divx or xvid you have to have a
pretty decent CPU to capture without dropped frames.

What about simply suggesting different codecs in your guide,
depending on the actual "machine" of your reader?


PS: Anyone saw bbīs 2k post already? Congorats bb - great work!

scharfis_brain
26th April 2004, 12:32
you cannot directly compare the quality vs. filesize of DV and MJPEG, because DV uses interlaced YV12 (interlaced YUV 4:2:0 or YUV 4:1:1 I really HATE that!) and MJPEG uses almost YUY2 (YUV 4:2:2).

this makes MJPEG needing 50% more space for achieving the same (luma) quality like DV.

And like stated some lines above, I HATE interlaced YV12 (PAL) or YUV 4:1:1 that is used within the DV-Codec. this means chroma gets unnessesary messed up.
Especially, if you want to postprocess your Video.
If you do direct encodes from you captures, PAL-DV will be quite okay.
But on NTSC, DV will suck. You have to convert from YUV 4:1:1 to interlaced YUV 4:2:0. Crap.

Thats, why I am either capping with HuffYUV or MJPEG. DV-is crap if you want precise chroma.

bb
26th April 2004, 16:14
Originally posted by vidiot
PS: Anyone saw bbīs 2k post already? Congorats bb - great work!
Thank you for the flowers! :)

bb

sh03z
26th April 2004, 22:54
I agree, DV is crap

rfmmars
27th April 2004, 00:00
Is DV crap or not? I don't know. What I have run into is a DV capture from a Sony TRV 310 digital 8 in NTSC. It did not look like crap? Not at all. I think we have to make things clearer when we post. What is our DV source, is it Sat,Off Air, DVD, or Camcoder?

When it comes to DVcamcorders, most of them have verious problems. If it is SAT, then I can tell you that most of the so called video engineers at these feeds should be dismissed, or maybe shot. The same is true of off air here in the US.

It is frustrating to have good video equipment only to have less than 230 lines of smeared resolution sent to you on a daly basis. No body gives a damm anymore except us.

When was the last time you had a pay for view program look equal to its DVD?

We make judgements on formats, is Pal better than NTSC. Pal specs are better in certain areas, and NTSC has its strong points. We need a standard signal to make the tests.

Take a NTSC DVD and display it on a Lowe or Bangs & Olson high end receivers exported to the US from Europe. The picture is super crap. Why?

They built it to NTSC specs. What is technically correct doesn't mean it will look good. Long ago the US engeneers found ways to make NTSC pictures look super good. A number years ago when Sky began service, I was ask to design a PAL 14gig Satellite test set.

I didn't go out and buy a multi standard imported receiver, I bought a Grundig & a Bargo Pal Video Monitor. My signal feed was a 12" Laserdisk player with Pal LVs I ordered for Europe.

I needed to know what a Pal signal look like on a native receiver. Japan is one country that does takes real pride in their NTSC signal. You won't find the sets that are exported to the US there, oh no, their sets are deep in demension with high quality CRTs and video circuits.

So it's easy to say that a Codec is no good or it's the best, but we need to compare apples to apples.

Remember there is only one product or service that is the best, and only one that is the worst, and all the others fill in the gap somewhere.

richard
photorecall.net

rling
20th September 2004, 07:57
So, errr, returning to the subject.... :rolleyes: :rolleyes: :D

Anyone know where can be found a free MJPEG codec, for Avisynth/VfW? The Morgan and Pegasus PicVideo ones appear to be not free now
(20 Sept 2004), and though I found a PicVideo version 2 which was
apparently free when it was released, it still needs a registration
code which was issued from Pegasus web site and seems they do not
issue any more...

Thanks for any help...!!

R

buzzqw
20th September 2004, 12:08
Use ffdshow ! Include even a mjpeg encoder (libavcodec)

BHH

Darksoul71
21st September 2004, 21:43
@buzzqw:
Wrong answer !
ffvfw would be correct :D

@rling:
Try to find a working version of ffvfw PLUS ffdshow.
There is a whole bunch of codec (even MPEG2) included in ffvfw.
Even a MJPEG Codec ;)

Of course buzzqw is correct and ffvfw is based on libavcodec.

-D$

ac-chan123
22nd September 2004, 02:01
ffvfw is now more supported/developed. ffdshow have now a vfw interface and is the replacement for ffvfw.

buzzqw
22nd September 2004, 07:03
@ac-chan123

Thanks :D

BHH

rling
22nd September 2004, 09:36
I have considered ffvfw/ffdshow but am a bit unsure for 2 reasons...
one is: http://www.hydrogenaudio.org/forums/lofiversion/index.php/t18924.html
.... basically that ffvfw cannot decode MJPEG for avisynth.

The other is... I remember reading another article on fixing codec problems (I think it was on the zoomplayer site)... it said the more codecs you install the more likely you are to get codec conflicts and other problems, for example multiple codecs for the same content type etc, codecs overwriting each other, codecs that cannot be uninstalled, codecs that stop working together and even reinstall does not help... and it mentioned ffdshow as one of the ones that can cause trouble.

The main one though, is the first one.

stephanV
22nd September 2004, 10:18
as for concern #1:

as long as you enable mjpeg in the VFW decoder, it works with me (using avisource)

i dont understand that thread anyway... but it is old though.

rling
23rd September 2004, 01:24
I don't see an option in the ffvfw Decoding settings for MJPG.
There are checkboxes for XVID,DIVX,DIV3,DX50,MP41/2/3,HFYU,
various WMVs, MPEG1/2, & raw.

I also found that when I encode MJPEG it puts the fourcc 'fvfw'
instead of 'mjpg'. But even when I try to open this in avisynth
it says it cannot find a decoder for fourcc fvfw!! Something is
badly broken....

I have downloaded version Sep 27 2003.

ac-chan123
23rd September 2004, 02:36
We have say you should use ffdshow and not ffvfw. the newest ffdshow ist from 28.08.2004. you can find it under http://www.free-codecs.com/download/FFDShow.htm

Inc
23rd September 2004, 16:55
Problem (AFAIK) with ffdshows mjpeg internal codec is, that it only supports framebased encoding, you cant set any fieldbased or interlaced prameter ... and if capturing/encoding an interlaced input the result will look "stripe-destroyed" ;-)

So IMHO the only way to encode/capture in ffdshow as 4:2:2 is using its HuffYUV ?? Or maybe I'm wrong IF the latest ffdshow gots some nice addings I dont know of.