Log in

View Full Version : New ffdshow build (?)


Pages : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 [19] 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72

max-holz
1st April 2006, 09:15
Where is possible to find a good tutorial how to build ffdshow and create the installer? Like the one that is present in the x264 compilation thread for eample.

videomixer9
2nd April 2006, 23:52
I tried updating the libavcodec code from ffdshow with new one from ffmpeg project and there were still a lot of problems, I then replaced quite some part in the ffmpeg code and used the ffdshow makefile for it with the original ffmpeg but there were always many linker errors in the end with missing links. Even just replacing the few parts about h264 failed.

Whatever I found out that GCC 4.1.1 produced a libavcodec that had a bit better performance than my old one ... lousy result of trying for hours how to fix up libavcodec for ffdshow ... but you also have to add skals code etc.

Negi
3rd April 2006, 01:44
Is milan the only coder on ffdshow?

videomixer9
3rd April 2006, 02:01
yes ... and he even though it is open source there seem to be some mysterious about some things, like there could be a patch or batches or notes about what to do to e.g. modify libavcodec ... but it's not like open source would mean that you get insides on anything without trying to figure it out all by yourself really. After all open source is usually well known for bad documentation upto none at all.

BoNz1
3rd April 2006, 02:11
CVS looks abandoned to me. However, there is some recent activity in the SVN (http://svn.sourceforge.net/viewcvs.cgi/ffdshow/)

Liisachan
3rd April 2006, 03:24
@BoNz1
Right... and what was stopped at Revision 2476 (http://svn.sourceforge.net/viewcvs.cgi/ffdshow?rev=2476&sortby=date&view=rev) @ Jan 27 2006 restarted on Mar 29 2006 as Revision 2477 (http://svn.sourceforge.net/viewcvs.cgi/ffdshow?rev=2477&sortby=date&view=rev), and since then updates have been quite frequent, several times a day; as of writing this, the newest one is Revision 2496 (http://svn.sourceforge.net/viewcvs.cgi/ffdshow?rev=2496&sortby=date&view=rev)

Egh
3rd April 2006, 04:30
@BoNz1
and since then updates have been quite frequent, several times a day; as of writing this, the newest one is Revision 2496 (http://svn.sourceforge.net/viewcvs.cgi/ffdshow?rev=2496&sortby=date&view=rev)

yet that last one happened about 16h ago already.

Plus most those revisions are quite marginal, mostly dealing with x64bit tweaks (changing data format definitions and such). Seems Milan was able to make ffvdub and ffvwf 64bit as well :) And, of course, updating libavcodec and libmpeg.

So can anyone try to build the project now? :P

Liisachan
3rd April 2006, 04:42
yet that last one happened about 16h ago already. Come on, milan has to sleep and eat and do real life too... When I said "updated several times a day" I didn't mean "evey 3 horus"...

Negi
3rd April 2006, 07:30
So milan took a 2-month leave? Good thing he's back on the job. I was getting worried that he'd abandon FFDSHOW. Thanks milan!

PatchWorKs
3rd April 2006, 11:20
So milan took a 2-month leave? Good thing he's back on the job. I was getting worried that he'd abandon FFDSHOW. Thanks milan!

I can't see the problem: isn't ffdshow open source ?
So, everyone can update it... :goodpost:

Negi
3rd April 2006, 22:09
Anyone can contribute to the CVS but an admin (milan) has to commit the patches. If someone wanted to continue it without milan, they'd have to fork it. I think. I could be wrong.

Egh
4th April 2006, 01:31
Come on, milan has to sleep and eat and do real life too... When I said "updated several times a day" I didn't mean "evey 3 horus"...

Yeah, I understand that. But, last change atm is 37 hours ago :) I was merely wondering if milan came back for a long time or just to do some quick fixes :)

Liisachan
4th April 2006, 15:09
i bet 'for a long time'
svn was updated again anyway (twice as of now)

videomixer9
4th April 2006, 15:40
updated libmpeg2 to 0.5.0, the rest is vs2005 project changes.

is there a page on CIA for SVN projects?

Liisachan
4th April 2006, 16:25
http://ffdshow.faireal.net/bakaupdates.php
^^;

LoRd_MuldeR
4th April 2006, 20:39
updated libmpeg2 to 0.5.0, the rest is vs2005 project changes.

is there a page on CIA for SVN projects?

This (http://cia.navi.cx/stats/project/ffdshow) one ???

videomixer9
4th April 2006, 21:06
amazing, suddenly also svn changes appear ... ? ... checked a while ago and it did show only cvs

Liisachan
5th April 2006, 01:21
true, that changelog had been stopped & I un-bookmarked it a few days ago. then it is alive again...

Egh
5th April 2006, 16:41
Good build :approved:

http://kurosu.free.fr/ffdshow-20060403-23H17-athlon.exe

Kuroshu is superior again:0 So far I don't have any problems with it (and yes, it uses latest SVN)

(well latest for 3rd april of course :P I think upto 2496 revision is included)

Shapierian
5th April 2006, 18:53
I noticed that for the Makefile based build systems -msse2 seems to be on by default. This seems kind of dangerous to me considering Athlon-xp doesn't support sse2. Am i missing anything?
Also why is -msse on but it is set to -march=i586? I don't thunk there are any 586 class cpus that support sse?

videomixer9
5th April 2006, 22:05
I usually replace this and used this here:

-D__SSE__ -D__MMX__ -O3 -ftree-vectorize -ffast-math -funsafe-math-optimizations -msse -m3dnow -mmmx -mfpmath=sse -march=athlon-xp -mtune=athlon-xp -fomit-frame-pointer -finline-functions -finline

and for others i get rid of the sse2 part as it otherwise would crash. Dunno about other ppls libavcodec etc. compiles. Dunno what milan thinks with those settings, but I think that it's made for general public, and the optimizations are runtime detected mostly anyways.

Egh
6th April 2006, 04:27
Updated build :approved:

Kuroshu r00x0r :P

http://kurosu.free.fr/ffdshow-20060405-21H28H42-athlon.exe

Kostarum Rex Persia
6th April 2006, 18:14
Updated build :approved:

Kuroshu r00x0r :P

http://kurosu.free.fr/ffdshow-20060405-21H28H42-athlon.exe

Please, post change log for that build.

Egh
7th April 2006, 00:27
Please, post change log for that build.

upto ffdshow SVN rev 2501, which is just one before the current one (2502, which apparently added "20 bit lpcm support" :confused:).

So, if you need, check http://cia.navi.cx/stats/project/ffdshow and see the entry named "new vs2005 projects configurations", that's the revision which was used for that last atm Kuroshu build.

P3 build (no SSE2 (?)) http://kurosu.free.fr/ffdshow-20060405-21H28H42-P3.exe

Athlon64 build (gcc+sse1+sse2)
http://kurosu.free.fr/ffdshow-20060405-21H28H42-k8.exe

max-holz
7th April 2006, 08:19
Is there any updated build for P4?

videomixer9
7th April 2006, 09:31
is this a game like "whoever has the most stupid question wins?" or are you ppl just way too lazy to just visit http://kurosu.free.fr/ffdshow.htm and check for yourself. Some people are just too much for me ...

magnusr
7th April 2006, 14:23
My athlon 64 x2 4200+ supports sse3 also.

But im sticking with the k8 version. Waiting for a athlon64 version with sse3 also then ^^.

videomixer9
7th April 2006, 15:09
libavcodec nor any of the other libs have sse3 optimizations, autovectorization in gcc is shit and most libs are written for it, so using intel compiler for the libs will give you autovectorization but make you lose most other optimizations. I guess you will see SSE3 once ffmpeg implements it fully, not much of a speedup though as it seems and mostly wasted time.

madman1980
7th April 2006, 17:48
Yeah, from what I've read there seems to be little if nothing to gain from SSE3 in this department..

Egh
7th April 2006, 19:04
atm iirc there's no point in SSE3 support in ffdshow.

I know very few filters in AVS which actually use SSE3. The difference between SSE1 and SSE2 is quite huge in terms of video processing, but SSE3 can hardly add much gain to that, imo.

Kostarum Rex Persia
7th April 2006, 19:21
Commit by milan_cutka :: r2504 /trunk/ (120 files in 22 dirs):

64-bit strides in x64 build #

Commit by milan_cutka :: r2503 /trunk/ (7 files in 4 dirs):

add "release unicode" configuration to vs 2003 solution,
compute ac3 and dts average bps only from valid frames


Very good, finally he add necessary 64-bit strides. So, someone can compile new build today.

foxyshadis
7th April 2006, 21:49
magnusr, even if ffdshow was optimized for sse3, a64 still executes sse2/3 as (roughly) multiple sse instructions anyway. :p

videomixer9
7th April 2006, 22:16
SSE, SSE2 and SSE3 are lousy instruction sets to begin with, the vector units in most x86 cpus are quite much of a joke. powerpc or ultrasparc have far better vector units ...

Rash
9th April 2006, 04:34
Humm, I think they've changed that. Apple showed some benchmarks and it seems P4 is really faster than PowerPC nowadays.

foxyshadis
9th April 2006, 04:59
Anyone can make up benchmarks that show that one processor is better than another, or vice versa, depending on what tests you choose or how optimized the software (and underlying libraries) is for the instruction sets. That has nothing to do with the sanity and ease of programming for them, and x86 is a boar. Even x64 is only marginally better (much less named register pressure).

ckjnigel
11th April 2006, 08:06
I just watched a high quality XviD encode with
ffdshow-20060407-19H04-k8.exe
and that's the first time ever that ffdshow rendering seemed a tad better than what I get using whatever is Koepi's latest XviD.
I'm on Win x64 -- a 3.3+ GHz 64-bit-enabled Sempron with an nVidia 6600GT.
Thanks, kurosu!

videomixer9
11th April 2006, 08:31
first ... 3300+ doesn't mean the CPU has 3.3 GHZ, not even near. Second, that build is for Athlon 64, but it's no x64 compile.

Shirokuu
11th April 2006, 09:07
Vm9, he just means he has a 3.3 Ghz EQUIVALENT Sempron. No need to moan about that.

videomixer9
11th April 2006, 11:17
not sure about that, plenty of people think the ratings are equal to mhz. Also the rating was measured in comparision to other CPUs performances, for a while it was the thunderbird, I think AMD changed that though. So saying it's a 3.3 ghz equal, and especially as it is a Sempron I wouldn't count on that comparing to Intel CPUs e.g.

LigH
12th April 2006, 04:32
:(

Most happy people out there get their well optimized build for their current CPUs.

Only very few have to stick with older, but not too optimized (or "generic") builds (having a CPU that supports MMX and ISSE only) until milan may publish the next one...
__

But in general, good to see that some people are interested in keeping this project up-to-date. Well done, go on!

:thanks:

videomixer9
13th April 2006, 10:13
there are plenty of builds optimized for MMX and SSE only, many of them though also for 3dNow! as Athlon-XP e.g. has MMX/SSE and 3dnow. And if you got an Intel CPU you're alone out there as most it seems that most computer nerds and encoding folks have AMD. At least in my little world of people not buying crappy complete PCs from Intel-blackmailed companies like Dell. Other than that P3 optimized builds should also have SSE ...

Besides clsid's build of rev 2405 should be MMX only. Nothing changed since then. We're still at rv. 2405, and if you don't even have MMX I don't think you have a PC that can really decode modern videos ...

Optimization is kinda useless anyways as GCC doesn't do much of a vectorization, it's just hand optimized code in libavcodec that can adjust to anything really. So optimized builds for any CPU are kinda overkill anyways. Most speed is gained simply by using compiler that produce better code. Thus newer GCC usually mean a tad more speed, only Intel Compiler can do proper and good vectorization, GCC verbose mode on this still finds way less parts that can be optimized. ICL also has the bonus that it can produce code optimized for any CPU into a single binary. You just have to enable them all with /Qax, I'm still waiting for GCC to do this, along with automatic vectorization you would have larger ffdshow binaries, but universal ones. However, libavcodec can make use of all units like SSE/SSE2/MMX etc. without optimization switches while compiling, just like mplayer can with automatic detection (the reason to optimize is that there's other things than just libavcodec involved).

celtic_druid
13th April 2006, 11:47
Actually on my poll currently it is
Intel Pentium 4: 655
AMD Athlon-XP/MP: 326
AMD K8 (Opteron, Athlon64, Athlon-fx): 301
Even if you combine the XP's and 64's the P4 is still infront.

LoRd_MuldeR
13th April 2006, 12:32
:(

Most happy people out there get their well optimized build for their current CPUs.

Only very few have to stick with older, but not too optimized (or "generic") builds (having a CPU that supports MMX and ISSE only) until milan may publish the next one...

There are checkboxes in ffdshow to disable CPU features like SSE2 or 3DNow!. Don't know if they have any effect in optimized builds, but have you tried to simply disable the features not supported by your CPU ???

videomixer9
13th April 2006, 17:11
Question is, were those poll participants just viewers or just the random turds happily buying intel as they love shitty core design. Or maybe it's just that my surrounding on irc etc. has too many AMD users ... only Intel users are usually people that buy complete boxes.

bob0r
13th April 2006, 17:28
filename: ffdshow-20060413-gcc4.0.3-sse-x264.nl.exe
url: http://x264.nl

sse2 version: http://files.x264.nl/ffdshow/ffdshow-20060413-gcc4.0.3-sse2-x264.nl.exe

LoRd_MuldeR
13th April 2006, 17:37
filename: ffdshow-20060413-gcc4.0.3-sse-x264.nl.exe
url: http://x264.nl

Seems to work fine here. Thx.

videomixer9
13th April 2006, 18:02
What is strange with all these compiles is the sound libs ... you can hear a difference in kurosu's athlon compile and this one with all gcc. It's seems that compiling can somehow affect decoding precision and quality, I managed to compile libmad e.g. in a way that channels got swapped O_O Or maybe i'm imagining things ...

Negi
13th April 2006, 19:35
filename: ffdshow-20060413-gcc4.0.3-sse-x264.nl.exe
url: http://x264.nl

sse2 version: http://files.x264.nl/ffdshow/ffdshow-20060413-gcc4.0.3-sse2-x264.nl.exe

The SSE2 version breaks on WMV3 (WM9) (decoding it or just running it through uncompressed) with vmr9 while the plain SSE build doesn't.

Athlon 64 3200+ socket 754
Windows XP SP2
DirectX9
Media Player classic with all internal filters off.

Egh
13th April 2006, 19:36
What is strange with all these compiles is the sound libs ... you can hear a difference in kurosu's athlon compile and this one with all gcc. It's seems that compiling can somehow affect decoding precision and quality, I managed to compile libmad e.g. in a way that channels got swapped O_O Or maybe i'm imagining things ...

first kuroshu is all gcc as well iirc, just 3 different versions used to build a whole package :P

As for sound, what sounds better and with what codecs? vorbis i suppose? tremor or libavc?

Shapierian
13th April 2006, 20:07
filename: ffdshow-20060413-gcc4.0.3-sse-x264.nl.exe
url: http://x264.nl

sse2 version: http://files.x264.nl/ffdshow/ffdshow-20060413-gcc4.0.3-sse2-x264.nl.exe


Are these with low accuracy tremor?