Log in

View Full Version : YADIF updates


burfadel
8th November 2008, 17:33
Just wondering whether there is an updated avisynth version of YADIF. I've noticed there have been some improvements of the ffdshow implementation of it, including speed, compatibility, and bug fixes which would be nice in the avisynth version!

The updates I am referring to are referenced in this ffdshow update list.
http://www.xvidvideo.ru/content/view/9/17/

The one that I am mostly interested in is this one:

07.11.2008

SSE/SSSE3 optimization of yadif
1.94x faster on Core2.

Which would help with HD content.

Nightshiver
8th November 2008, 18:37
EDIT: wrong thread

burfadel
8th November 2008, 18:43
Wrong thread? I thought this is where avisynth filters were discussed?!

Scintilla
8th November 2008, 19:33
Nightshiver means that s/he accidentally made a post on this thread that was intended for a different thread, not that you posted your thread in the wrong board.

Fizick
8th November 2008, 23:00
to continue the discussion, I may note, that yadif for avisynth has your own (old) thread, so current thread is really may be considerd as wrong
:)


Link:
http://forum.doom9.org/showthread.php?t=124284

burfadel
9th November 2008, 08:50
Ah ok! I guess you'd be the best person to ask about the YADIF changes though, are there any plans for an avisynth update of YADIF based on the recently applied changes to the ffdshow version?

Fizick
9th November 2008, 09:08
sorry, i have no such plan.

Terka
11th November 2008, 14:10
where is the ffdshow with yadif available for download?

burfadel
11th November 2008, 15:34
Its part of the more recent builds, under deinterlacting --> method of course!

It could normally be downloaded on the site listed in the first thread, but it is currently down...

Atak_Snajpera
11th November 2008, 15:52
Its part of the more recent builds, under deinterlacting --> method of course!
I have r2301 and I don't see yadif.

LoRd_MuldeR
11th November 2008, 15:57
It's only in ffdshow-mt branch!

Builds are usually found here, but it seems the site is currently offline:
http://www.xvidvideo.ru/content/category/1/1/2/


[EDIT]

Here you go: ffdshow_rev2307_20081107-mt.zip (http://www.mediafire.com/file/myt2zcyjwmy/ffdshow_rev2307_20081107-mt.zip)

clsid
11th November 2008, 17:02
I would just like to add the the ffdshow-mt branch contains experimental new stuff. It may be buggy. It also lacks several updates and improvements that are part of the normal ffdshow builds. Once the Yadif deinterlacer is fully working it will be imported into the main ffdshow code trunk.

LoRd_MuldeR
11th November 2008, 17:18
Especially the enormous speed-up in the multi-threaded H.264 decoder is worth making it's way into the "main" branch :cool:

This will give the CoreAVC guys some sleepless nights, I guess :o

(I get more than the double throughput with ffdshow-mt on my Quadcore, compared to ffdshow's current CABAC-based multi-hreading)

burfadel
11th November 2008, 17:25
Its a shame the updated Yadif isn't available as an avisynth filter, twice as fast on SSSE3 capable machines would make a nice boot to deinterlacing high resolution interlaced files (and therefore encoding speed) :)

LoRd_MuldeR
11th November 2008, 17:30
Its a shame the updated Yadif isn't available as an avisynth filter, twice as fast on SSSE3 capable machines would make a nice boot to deinterlacing high resolution interlaced files (and therefore encoding speed) :)

You could incorporate the ffdshow version of Yadif into Avisynth via LoadVirtualDubPlugin(), right? :p

But I really hope the Yadif improvements will be back-ported to it's origin, which is MPlayer...

squid_80
12th November 2008, 06:19
This will give the CoreAVC guys some sleepless nights, I guess :o
Not really, look at the benchmarks you posted here (http://forum.doom9.org/showthread.php?p=1211922#post1211922), ffdshow is still behind divx.... If the current CoreAVC Pro would play crowdrun the speed would be very similar to DivX's decoder.

LoRd_MuldeR
12th November 2008, 22:32
Not really, look at the benchmarks you posted here (http://forum.doom9.org/showthread.php?p=1211922#post1211922), ffdshow is still behind divx.... If the current CoreAVC Pro would play crowdrun the speed would be very similar to DivX's decoder.

Yeah, ffmpeg-mt is still behind DivX H.264 Decoder and hence it is also behind CoreAVC Decoder.
But it made a HUGE step forward: The throughput has more than doubled on my Q6600 processor compared to current "trunk" ffmpeg.
That means: Playing 1080p H.264 footage smoothly with ffdshow-mt & Co should be possible now on many machines.

And if people can play their stuff smoothly with OpenSource software, they will think twice before paying for CoreAVC just to get a few percents of speed-up.
Last but not least we can expect further speed-up in ffmpeg-mt, while CoreAVC has not improved speed-wise recently...

roozhou
13th November 2008, 11:37
You could incorporate the ffdshow version of Yadif into Avisynth via LoadVirtualDubPlugin(), right? :p

But I really hope the Yadif improvements will be back-ported to it's origin, which is MPlayer...

I made this patch for mplayer.

Well the original yadif code already contains MMX2 optimized code. The test results may dissapoint you. On my E2160 SSE2 is only 20% faster than MMX2 and SSSE3 is 30% faster than MMX2. And on most AMD CPUs (socket 754 Semprons excluded) SSE2 is slower than MMX2 by ~5%.

LoRd_MuldeR
13th November 2008, 15:57
I made this patch for mplayer.

Well the original yadif code already contains MMX2 optimized code. The test results may dissapoint you. On my E2160 SSE2 is only 20% faster than MMX2 and SSSE3 is 30% faster than MMX2. And on most AMD CPUs (socket 754 Semprons excluded) SSE2 is slower than MMX2 by ~5%.

Well, I'd say that 20-30% is a BIG speed-up, definitely worth a patch. If you look at the development of x264, they often commit patches to get a few percents of speed-up!

So I hope you will post your patch in the MPlayer developers mailing list (https://lists.mplayerhq.hu/mailman/listinfo/mplayer-dev-eng), so they may consider accepting your patch :)

(Or send a PM to Reimar (http://forum.doom9.org/member.php?u=79288))

roozhou
13th November 2008, 16:26
Well, I'd say that 20-30% is a BIG speed-up, definitely worth a patch. If you look at the development of x264, they often commit patches to get a few percents of speed-up!

So I hope you will post your patch in the MPlayer developers mailing list (https://lists.mplayerhq.hu/mailman/listinfo/mplayer-dev-eng), so they may consider accepting your patch :)

(Or send a PM to Reimar (http://forum.doom9.org/member.php?u=79288))

Already posted.

Maybe you misunderstood my words. I mean "1.94x faster on Core2" is not true, or it was comparing to the plain C version. And if MMX2 cannot do realtime deinterlacing on 1080P with an old P4, neither do SSE2.

LoRd_MuldeR
13th November 2008, 16:38
Already posted.

Maybe you misunderstood my words. I mean "1.94x faster on Core2" is not true, or it was comparing to the plain C version. And if MMX2 cannot do realtime deinterlacing on 1080P with an old P4, neither do SSE2.

It seems there were MMX2 optimizations in the Yadif code (as used by ffdshow-mt) even before the commit :confused:
Well, maybe it was compared against the plain C implementation anyways...

And I think with the new patch any CPU will be able to deinterlace certain videos in realtime, that it couldn't before.
Although a P4 won't be able to deinterlace 1080p content in realtime - even the Core2 Quad still can't ;)

burfadel
20th November 2008, 09:32
The YADIF in ffdshow-MT is now also multithreaded :)

burfadel
30th April 2011, 02:32
I noticed that there have been commits for ffdshow and libav for YADIF since YADIF release (avisynth) v1.7, are any of those numerous changes useful?