Help - Search - Members - Calendar
Full Version: FFMPEG CVS Win32 build
Hydrogenaudio Forums > Digital Audio/Video > General A/V
lithoc
Hi,

I've exhausted looking for this piece of software on the internet and found nothing at all. Does anyone know where to get this binaries or even start one if possible??
I'm sure it's a big hit!

I'm interested in MPEG1 and MPEG2 encoding as I usually like to convert to SVCD/CVD(mpeg2) or VCD(mpeg1). This is a great software and it's GPL.

I'm very disappointed that no windows user use this s/w or at least give it a shot. May be they couldn't find the binaries on the internet? Found at doom9 forums, but the binaries dated back 2002!!!

I used to have Linux machine back at home. I always download, compile the CVS version and test on a few clips. I've to admitted that there're not perfect but improvement can be seen from time to time.

Thanks in advance

laugh.gif
Latexxx
Maybe you should get yourself mingw and compile it by yourself.
Bonzi
QUOTE
Maybe you should get yourself mingw and compile it by yourself.


Thats is what I do and I would be more than happy to post my binaries but I am concerned about the legal issues. If you like you can PM me and I will send you a build but I don't think I will host any due to the above reason.
lithoc
Thank you for responding. Bonzi, I think it's too much to ask for if I ask you to email me because FFMPEG is constant update every few days if not hours.
And you you did, I think my email will explode in no time.

About the legal issues, I think I can download XVID binaries almost everywhere except the official web page of course due to "legal issues".
I'm not a lawyer but somehow some people can get away with the legal issues and host the binaries. Or may be they are daring.

I tried to email some of them to host FFMPEG. Somehow the email doesn't exist. I wonder?? rolleyes.gif

smile.gif
Bonzi
QUOTE
Thank you for responding. Bonzi, I think it's too much to ask for if I ask you to email me because FFMPEG is constant update every few days if not hours.
And you you did, I think my email will explode in no time.


smile.gif it is a constant update, but I wouldn't have to make a new build every time the cvs is updated, I could make a build like every week and upload if it were not for all the pesky legal issues.

QUOTE
I'm not a lawyer but somehow some people can get away with the legal issues and host the binaries. Or may be they are daring.


They are very daring IMO but possibly also the actual binaries are on a server in a country where they really don't have any law against this sort of thing. I don't really know to be honest though.

QUOTE
I tried to email some of them to host FFMPEG. Somehow the email doesn't exist. I wonder??


Probably, a lot of the email addresses are outdated, probably they would have replied. But none of them use ffmpeg so I sort of doubt they would go to the extra trouble to do the builds anyway but you never know. Anyway I think it would be pretty cool to develop a build system like this for ffmpeg http://xvid.gamrdev.com/ everytime the cvs is updated a new build is made smile.gif and automatically too. Maybe one day someone will do this till now though get mingw and build it yourself I guess sad.gif
i4004
why can't you?
google gave me this after i asked for "ffmpeg"(could it be easier?)
http://www.dvdrhelp.com/tools?tool=263
(google search
http://www.google.com/search?hl=en&ie=UTF-...=UTF-8&q=ffmpeg )

[btw. gui seems to be audio only.....]

on the quality;
i have tried few opensource mpeg encoders and i would choose tmpgenc(which is not freeware mpeg2 encoder) and cce (which costs $$$ too,mpeg1 implementation is silly if compared to tmpgenc's)

i have tried ffmpeg.exe's mpeg4 encoder,and i would pick ffvfw (bonzi,i dunno if i informed you abotu the results of ffmpeg.exe versus ffvfw;two different things my friend;completely diferent....i won't be asking for avs support in ffmpeg.exe....)

opensource mpeg encoder was "2mpeg1_22.zip"....(didn't tried ffmpeg's mpeg encoding...by "mpeg" i mean mpeg1/2 and by mpeg4 i mean mpeg4 in .avi) this one has nasty frame-differences-pumping...not so good at all...

if ffmpeg.exe looks the same on linux as on win,i would go for windows immediately...(and use ffvfw or nandub..as i do..hehe)

indeed it's a silly situation where there are no freely available *GOOD* mpeg2 or mpeg4 encoders(tmpgenc's mpeg1 encoder si free..mpeg1 is free beacuse it's so old and nobody who wants interlaced uses it...as it can't do laced);if you use ffmpeg,you're breaking the law,but it seems like industry is not touching ffmpeg(because it's inferior quality compared to tmpgenc or cce(?),and less people use it(!)...so it's not doing any harm...)

needless to say,if you try it against tmpgenc or cce,i'm interested in results...(i'm not an mpeg man...i use mpeg4)
(i tried mpeg2 in .avi(thru ffvfw) when i did laced mpeg2 vs. mpeg4 test, and it was unusable...very poor quality...)

/ivo
lithoc
About those binaries you've found, I've downloaded. But the CVS version is much improved. I've decided to go back to Linux.

Well, most of the GPL software didn't receiving a lot of industry support mostly due to lack of publicity, marketing and funding and recently M$ launch an attack("Get the fact") on the Linux and open source community to spread FUD. Could this be a terrorist act?? haha...
Sorry for the off-topic. I've read the paper published on their web-site and found it annoying and angry. How can they benchmark a mainframe and a wintel ??? absolutely BIAS!!
they should install Linux on that Intel Xeon. Then the TCO is dramatically reduce.



BTW, FFMPEG doesn't work with Avisynth.
i4004
QUOTE
BTW, FFMPEG doesn't work with Avisynth.


i know,and that's why me and bonzi thougth about asking at ffmpeg....
but i won't as i didn't saw ffmpeg.exe perform good enough...
(avs is a must for me,and an OS that lacks it is not a must at all... biggrin.gif )
Bonzi
Ok, guys I've reconsidered and I put up a build of the latest version from the cvs today, you can get it here http://www.geocities.com/bonzi5252/ if I get asked to take it down then I will. Sorry, I couldn't get the nullsoft installer to work so the zip will have to do. I also put some docs in the zip as well. You guys may also want to check out the mencoder win32 binaries http://ftp5.mplayerhq.hu/MPlayer/releases/win32-beta/
EDIT: pesky typos
i4004
i'll try both
(your ffmpeg ,and "mencoder-mingw32-dev..> 05-Oct-2003 13:32 2.3M ")

let's see if it got any better....
Bonzi
Ok, I have been playing around with various commandline switches. A commandline such as this one will give very nice quality IMO for mpeg4:
ffmpeg -i "c:\test.avi" -hq -b 1104 -pass 1 -vcodec mpeg4 -bf 1 -mbd 2 -mbcmp satd -subcmp satd -cmp satd -4mv -umv -trell "c:\test2.avi"
ffmpeg -i "c:\test.avi" -hq -b 1104 -pass 2 -vcodec mpeg4 -bf 1 -mbd 2 -mbcmp satd -subcmp satd -cmp satd -4mv -umv -trell "c:\test2.avi"
Please note that, when you play it back in ffdshow you must change the idct method to simple. Also, I don't think there is any qpel in this build either sad.gif if anyone knows of any ways to enable it either from the commandline or when building please let me know. Also, I have been having problems with the 2 pass, the first pass seems to work fine it collects all the necessary data but the second pass seems to have some problems and refuses to encode for me. Maybe other people will have better luck with that than me.
i4004
i wasn't in luck either;
CODE
ffmpeg.exe -i 01.avi -f avi -vcodec mpeg4 -b 1500 -hq -4mv  03.avi
ffmpeg.exe -i 01.avi -f avi -vcodec mpeg4 -b 1500 -hq -4mv -qmin 2 -qmax 8  05.avi

second line doesn't really help it....

also i don't know what are the defaults so i can't say if it's tweaked as ffvfw or not...(it looks much uglier anyway...)

clip looks the same as with old version(as if mpeg4 core wasn't changed)
also,it's giving dx50 fourcc,i can't regulate quantizers separately for each type of frames (as i can in ffvfw...)

i didn't tried mencoder as it needs some extra .ini sort of files (or at least some txt file if they cold be produced my itself...)

i'm now doing your stuff
CODE
ffmpeg -i 01.avi -hq -b 1500  -vcodec mpeg4  -mbd 2 -mbcmp satd -subcmp satd -cmp satd -4mv -umv -trell 07.avi


let's wait a bit and see what will happen;
hmm..i waited much longer time only to come up with a clip that still looks much uglier than ffvfw version...still visible blocking/pumping.....unusable......
Bonzi
Ok, the real problem is that we can't seem to use the two pass which obviously is going to seriously handcap the results. BTW, I got the nullsoft installer to work if anyone is interested, I could upload it but I have to zip it to put it on geocities sad.gif.
i4004
with or without 2passes i don't see the point in it;ffvfw simply works better....and faster..(on win)....and it has working 2pass mode (you can't miss it;it's the one doom9 didn't used...hehe)

it's either bad port,or bad encoder....(or milan is a genius we all know he is...)
Latexxx
Mencoder should have 2 pass mode.
mr_khyron
QUOTE(i4004 @ Jan 10 2004, 11:17 PM)
with or without 2passes i don't see the point in it;ffvfw simply works better....and faster..(on win)....and it has working 2pass mode (you can't miss it;it's the one doom9 didn't used...hehe)

it's either bad port,or bad encoder....(or milan is a genius we all know he is...)

FFVFW: MPEG-4 Video for Windows codec based on VFW code from XviD project and using libavcodec library from ffmpeg for compression.
i4004
mr_khyron;to understand my words slightly better;

"bad port" means "ffmpeg.exe might be a bad port of ffmpeg for linux"
"bad encoder" means "port is OK,but encoder is not that good"
"milan is a genius" means "FFVFW has some options that i didn't/don't see in ffmpeg.exe"............

easy,isn't it?
if something works OK on linux,perhaps port alone is not enough...perhaps one needs to adjust the stuff to windows....perhaps only the control of libav needs to be modified...etc.

i only know that with ffmpeg.exe i can't replicate ffvfw results;that's what is certain!

if you can,do inform us all here,and we will consider your thoughts and suggestions.....and if we see ffmpeg could be faster than ffvfw(while producing same quality as ffvfw),then i will ask for avisynth support in ffmpeg....(as i won't/can't encode without avisynth processing...)

cheers

/ivo
Latexxx
Have you tried the mencoder? It is based on the same libavcodec but it allows you to change more options.

QUOTE
if something works OK on linux,perhaps port alone is not enough...perhaps one needs to adjust the stuff to windows....perhaps only the control of libav needs to be modified...etc.


Not true. Lame is the only program known to produce different results using different compiler/os. All the mathematical operations are os-independent.
i4004
QUOTE
Have you tried the mencoder?

i tried to try it( wink.gif )

CODE
mencoder.exe -h

didn't bring me help stuff (as it did on ffmpeg.exe)
i'm now looking at
http://www.mplayerhq.hu/DOCS/HTML/en/index.html
and it's very poor help file!

i feel like almost 10linux users are using mencoder,and therefore no good help files exist...

if you have something more on this,do tell....also(as i said) it seems to need some extra ini type files...but which ones..from where..how do you made them..etc.huh...

QUOTE
All the mathematical operations are os-independent.

that is why i said
"....perhaps only the control of libav needs to be modified..."
(to achieve different/better results than ffmpeg....also,ffmpeg doesn't mention it's own mpeg4,but divx4/5 compatible streams etc.
weird things for anyone who comes from ffvfw....)

for example it's easy to adjust quantizers for particular frame types in ffvfw,but not so in ffmpeg.exe....i limited the quant's to 2-8 in ffmpeg,but video was only marginally better.....and still much worse than ffvfw......
dunno what parts of libav is milan picking,but sure as hell he knows what to choose!
if you don't believe me ,do some tests on your own;i didn't liked ffmpeg.exe,and mencoder looks like a mess from users point of view....

if you're in contact with milan,ask him about it.....(if you care)

ahhh..here,i've found a better explanations
http://mirrors.xmission.com/MPlayer/releas...ld/mplayer.html
hmm..for libav i didn't find anything that wasn't also mentioned in ffmpeg.exe....

this
QUOTE
mjpeg: Motion JPEG
h263: H263
h263p: H263 Plus
mpeg4: DivX 4/5
msmpeg4: DivX 3
rv10: an old RealVideo codec
mpeg1video: MPEG1 video smile.gif

is what i don't get;ffvfw is distinctly different from both divx3 and divx4/5,but here they only have some divx4/5 compatibility mode..(or what?)

linux video encoding makes me go blink.gif
ffvfw makes me go cool.gif
(and i'm not an encoding rookie..i think... smile.gif )

still,if anyone can replicate ffvfw via ffmpeg or mencoder,i'm listening..(something tells me this one will stay silent...heh)..

(btw. bonzi,there is qpel in mencoder;
"qpel
use quarter pel motion compensation"
that should probably work for ffmepg.exe too as it's under libav options...)
Latexxx
Here is a nice command line for mencoder:
mencoder -dvd 2 -o title2.avi -ovc lavc -lavcopts vcodec=mpeg4:vhq:vbitrate=1800 -oac copy
Another one:
mencoder -dvd 2 -o title2.avi -ovc lavc -lavcopts vcodec=mpeg4:vhq:qpel:trell:vqscale=3 -oac copy
Wilbert
QUOTE
BTW, FFMPEG doesn't work with Avisynth.


Small request: Could someone try if it works with the avi wrapper makeAVIS (from ffvfw)?
Bonzi
QUOTE(Wilbert @ Jan 12 2004, 04:42 AM)
Small request: Could someone try if it works with the avi wrapper makeAVIS (from ffvfw)?

No, it doesn't work I just tried and it gave me an error.
i4004
@Latexxx ;
CODE
mencoder  01.avi -o 09.avi -ovc lavc -lavcopts vcodec=mpeg4:vhq:vbitrate=1500:vqmin=2:vqmax=7:
mbqmin=2:mbqmax=7:vqdiff=2:v4mv:vrc_maxrate=2500:
vrc_minrate=800:vqblur=0.0:vqblur=0.0:mpeg_quant


[remove "vhq:" for faster encoding and slightly worse quality..."slightly" means "almost invisible"]

biggrin.gif biggrin.gif

time
vhq=6'10"
no vhq=4'35 [ffvfw was 5'50"]
mencoder made me go: mad.gif sad.gif mellow.gif smile.gif biggrin.gif

last one was:
CODE
mencoder  01.avi -o 11.avi -ffourcc fvfw -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=1500:vqmin=2:vqmax=7:mbqmin=2:
mbqmax=7:vqdiff=2:v4mv:vrc_maxrate=2500:vrc_minrate=800:
vqblur=0.0:vqblur=0.0:mpeg_quant


@wilbert;as bonzi said,not quite;
culprint is this;
QUOTE
abcavi;
Unknown Four Character Code 'AVIS' <0x53495641>, 768x576, 16 bit, 473 frm, 25,0000 frm/s, 0,802 kbit/s
mencoder;
VIDEO:  [AVIS]  768x576  16bpp  25.000 fps    0.8 kbps ( 0.1 kbyte/s)
[V] filefmt:3  fourcc:0x53495641  size:768x576  fps:25.00  ftime:=0.0400
Opening video filter: [expand osd=1]
Expand: -1 x -1, -1 ; -1  (-1=autodetect) osd: 1
======================
Cannot find codec matching selected -vo and video format 0x53495641.
Read DOCS/en/codecs.html!
======================
Exiting...

vdub can't open it either (as it also doesn't find AVIS fcc so it fails...)

i tried to change it's fourcc to source's(MJPG) but no luck....

as we've established (now) that mencoder can be quite nice and fast when tuned properly,someone should probably ask milan if he could make working version of makeAVIS (or provide the standalone vfw decoder that would read those files...)
[i tried september and november versions of ffvfw....]
or if someone else could make mencoder load avs with no extras....who are the big shots in MPlayer-cygwin or mencoder teams?
[simillar question was asked here
http://forum.doom9.org/showthread.php?threadid=68506 ]

/ivo
Wilbert
QUOTE
vdub can't open it either (as it also doesn't find AVIS fcc so it fails...)

Hmm. At least it should work with vdub. Could you try the ffvfw compile on Sh0dan webpage:

http://cultact-server.novi.dk/kpo/avisynth/avs_cvs.html

Could you also check that the avis fcc is linked to the ffvfw codec? I will look at it tonight.
Wilbert
vdub can open them (makeAVIS). But ffmpeg says the following:

C:\Program Files\ffmpeg>ffmpeg -i -testdido.avi -target svcd testdido.mpg
Input #0, avi, from 'testdido.avi':
Duration: 00:00:03.0, bitrate: 12 kb/s
Stream #0.0: Video: AVIS, 640x480, 25.00 fps
Assuming PAL for target.
Output #0, vcd, to 'testdido.mpg':
Stream #0.0: Video: mpeg2video, 480x576, 25.00 fps, q-2-31, 2040 kb/s
Stream mapping:
Stream #0.0 -> #0.0
Unsupported codec <id-0> for input stream #0.0
i4004
my findings are as follows;
i needed to add

CODE
vidc.avis REG_SZ ffvfw.dll


to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Drivers32
in order for vdub to load it (ok,so we made some progress...)

now,vdub loads it,but 1suspicious thing;codec is listed as 16bit one(in windows properties on makeavis produced files) and when i hit PLAY in vdub,indeed,image becomes 16bit(source was NON 16bit mjpeg)
frame by frame goes ok(normal 24bit display)
mencoder also lists it as 16bit,but mencoder still can't load it (why is mencoder not using normal video lowading ways as vdub?)

QUOTE
VIDEO:  [AVIS]  768x576  16bpp  25.000 fps    0.8 kbps ( 0.1 kbyte/s)
[V] filefmt:3  fourcc:0x53495641  size:768x576  fps:25.00  ftime:=0.0400
Opening video filter: [expand osd=1]
Expand: -1 x -1, -1 ; -1  (-1=autodetect) osd: 1
===================
Cannot find codec matching selected -vo and video format 0x53495641.
Read DOCS/en/codecs.html!
===================


looks like both linux encoders use somewhat different approach to loading stuff,or makeavis is confusing them(?)
"aviutil" also loads it fine....

btw. on win98 ,vdub loads makeavis with just this
CODE
msacm.avis=ffvfw.dll

in system.ini (drivers32)

(win2000 registry already had this ( msacm.avis=ffvfw.dll) ,but vdub wasn't loading...btw. i'm on vdub 1.4.10...)

hmm..i think you should ask sh0dan,and i should ask avery...(vdub forum seems to be offline now,so i can't....)

we MUST make this work!(i tested on some dark clip;nandub really made a mess because it tends to overcompress the KF's so pumping is visible when brighness is increased;mencoder did MUCH better on that test....since then i have tried MANY older nandub versions,but no luck;when nandun inserts KF with lo-compression level (2 or 3 quantizer) then everything that follows gets awfully high bitrate....ie. doesn't really work!..that's why we must make this fast and good encoder work! biggrin.gif )

mencoder+avs must be top priority now....(as mencoder seems to be faster even than nandub!this is some SERIOUS shit, boys!)

[edit;oh yeah,i also tried do decode makeavis.avi with libavcodec.dll directly( smile.gif ),but that doesn't work with vdub,so for sure it won't work with mencoder of ffmpeg...]

/ivo
Latexxx
Mencoder doesn't use the Windows' avi loading routines because it's a Linux program! Linux doesn't have any multimedia loading routines built in. That's why mencoder/mplayer has its own avi loading functions.
i4004
i'm off to ask fabrice if this could be remedied......
ak
QUOTE(i4004 @ Jan 12 2004, 05:51 AM)
[ahhh..here,i've found a better explanations
http://mirrors.xmission.com/MPlayer/releas...ld/mplayer.html

And there's more (most) recent version.

As for avisynth, the only way would be adding new entry for 'avis' to codecs.conf and tell mencoder to use avisynth.dll for encoding, I think.

BTW here are some compiles, in case anybody wants to toy with.
lithoc
Thanks for the compile, guys.
I've tested some clips and find it interesting for MPEG-2 video.
It has a trellis quant. For 1 minute clips(-qscale 2), it can save around ~5%.
Quality is awesome. It can reach quant 2 for 400kb/s on low motion.

ffmpeg -hq -i d:\sample.vob -target svcd -bufsize 224 -b 600 -mbd 2 -g 240 -bt 1024 -trell -bf 2 -alt -y -intra_matrix & quot;8,9,12,22,26,27,29,34,9,10,14,26,27,29,34,37,12,14,18,27,29,34,37,38,22,26,27,31,36,37,38,40,26
,27,31,36,37,38,40,48,27,29,34,37,38,40,48,58,29,34,37,38,40,48,58,69,34,37,38,40,48,58,69,79" -inter_matrix & quot;16,18,20,22,24,26,28,30,18,20,22,24,26,28,30,32,20,22,24,26,28,30,32,34,22,24,26,30,32,32,34,36
,24,26,28,32,34,34,36,38,26,28,30,32,34,36,38,40,28,30,32,34,36,38,42,42,30,32,34,36,38,40,42,44" test.mpg

Very good quality for 1CD SVCD encode smile.gif
i4004
ok guys,some good news regarding the ffvfw speed;it turns out that ffvfw's
"macroblock decision mode" setting(under "Motion estimation" tab) is the same thing as the "vhq" setting i wished for (to be precise,i wanted to turn off vhq in ffvfw in order to gain some speed)!!!

from newer mencoder doc;
QUOTE
mbd=<0-2>
Macroblock decision algorithm (high quality mode), encode each macro block in all modes and choose the best. This is slow but results in better quality and file size.
0
use mbcmp (default)
1
select the MB mode which needs the fewest bits (=vhq)
2
select the MB mode which has the best rate distortion
vhq
Same as mbd=1, kept for compatibility reasons.


older doc said;
QUOTE
vhq
high quality mode, encode each macro block in all modes an choose the smallest (slow). (default: HQ disabled)


FFVFW FINALLY BEATS NANDUB AT SPEED!!!

results;
"dark" test sequence;
-nandub->4'36"
-ffvfw(mb decision mode=fewest bits(ffvfw's default))->6'06"
-ffvfw(mb decision mode=simple)->4'05" ( biggrin.gif )

"dynamic" test sequence;
nandub->31'17"
ffvfw(fewest bits)->45'
ffvfw(simple)->31'05" ( biggrin.gif )

screenshots(nandub,ffvfw) and setings (for "dynamic" sequence) can be found on
http://i4004.bizhosting.com/ffvfw_the%20quest/


no need for mencoder mods now...( wink.gif )

cheers

/ivo
i4004
oo..ohh..i forgot to inform you on some nice news about MEncoder(when i write something in upper case,you know it deserved it.. smile.gif )

loading avisynth scripts into mencoder

and

guide

(consider this only a road-map...i dumped kvcd matrix immediately and used "standard" (as used by CCE and Tmpgenc))

some guis(i didn't tried this);

drpenc

qenc

i used vmesquita's build in pure text(command line) form....

both lower and higher bitrate tests went fine....

next time i do music video(or something that needs interlaced encoding) i'll be more precise and post detailed settings used etc. it'll probably be 720x576 laced at cca. 2Mbit/s or so....(tmpgenc vs cce vs MEncoder( wink.gif ) )
(only problem is that i do very lil of interlaced encodings overall...so that may keep you waiting...but you can toy with your own settings anytime you want....it's for free.... smile.gif )

/ivo
Avalon
Nice to see that people find my GUI for MEncoder. So yesterday I build one for FFMPEG.

My question is still:

Is there a resizing filter for ffmpeg? If for example a 16:9 DVD source and want to produce a SVCD. But till now I didn't find a option to resize and expand

like I do in MEncoder
CODE
crop=700:576,scale=464:430,expand=480:576


I also searched in the net for warper. makeAVIs and Link2 dosn't work.

In MEncoder I added the codec into the sourcecode. In FFMPEG I didn't find it yet.
Did somebody of You find a way to resize a DVDSource right to produce a SVCD without the EGGHEADS in ffmpeg?

The new GUI of mine is called DRPEnc XP .

If we find a way this will be nice. blink.gif
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2008 Invision Power Services, Inc.