View Full Version : dffshow filter
Pages :
1
2
3
4
5
6
7
[
8]
9
10
11
12
13
14
milan
4th October 2002, 07:20
@athos
I wanted to ask you to release new build today, but it's OK, the change I need to be tested is there.
I've updated libavcodec. Now IDCT selection is applied only when reopening movie again (it's not applied instantly) and reference IDCT and XviD IDCT were replaced by libavcodec internal counterparts. Please test them and if results will differ (especially for XviD IDCT) I will put those two IDCTs back again.
Next: bug workaround mode for old opendivx AVIs shouldn't be needed anymore. Michael implemented autodetection. Please test if it's correct.
Custom quantizer matrix decoding should be fixed too.
MPEG1/2 seeking should be a little bit better.
And at last I added -finline-functions switch to libavcodec.dll makefile which made it a little bit bigger and should made it a little bit faster too. Please test this too.
I hope I didn't forgot anything. Happy testing. And don't forget to read changelog :)
Poy
4th October 2002, 10:29
Originally posted by athos
New alpha release uploaded.
To where?
Bluedan
4th October 2002, 11:53
You can find ffdshow installer here (http://sourceforge.net/projects/ffdshow) .
Latest version is also working great for me.
What I'm missing is some documentation on the available options which might be usefull because I'd like to know what I'm actually changing when playing around with the features. Well, there is some info but it's outdated.
But don't mind, it's not high priority. Just in case you get bored with all the coding numbers...
thanks alot for your work!
Smiff
5th October 2002, 01:41
ooh think i found a bug - the overlay controls aren't enabled unless/until you go into the config (?)
mi5
6th October 2002, 10:42
Originally posted by athos
New alpha release uploaded. I have disabled DEBUG, and compiled in "Blend" mode instead of "Penitum Pro and higher", so it should work with older cpu's (K6, Pentium I).
athos - thanks a lot. my k6-2 400 saw a major improvement with the new compilation. still not as fast as the original (June) release, but already very close 2-4% of the CPU utilization.
milan
7th October 2002, 07:29
@Bluedan
In know the documentation is realy missing. Atleast some Howto document shold be written. I don't want to give some false promises, but I hope I will write something like that soon.
@Smiff
Thanks, I will look at this.
@mi5
Now ffdshow has a little bit higher overhead caused by changed image filters architecture. However now I finally have working profiler and can focus on optimizing most time critical parts of ffdshow.
athos
10th October 2002, 17:50
New alpha-build is up (it's been a week).
Blight
11th October 2002, 00:09
Milan, I've had a user request for an ability to be able to save/load ffdshow settings.
Can you write an external interface for the filter with functions for:
LoadFilterData(PathToFileName)
and
SaveFilterData(PathToFileName)
Making it future-compatible, or at least with some checks so it won't crash on future versions?
milan
11th October 2002, 08:33
@Blight
IffDecoder methods saveActivePresetToFile and loadActivePresetFromFile should do that. They store/restore image processing settings. This should be future-compatible because now I'm taking care to not break IffDecoder compatibility.
I thought about implementing IPersistStream methods too.
Or do you need some new simple interface which would contain only those two methods and wouldn't be changed anymore?
@athos
Ok. But if you would wait for few days, ffdshow would have complete (I hope) support for translations. I'm now working on it - I've never did something like this before, but results are quite promising.
athos
11th October 2002, 14:26
@milan: my intention is to release builds about once or twice a week, so i figured i'll just do another build in a few days or so with the finished code.
Koepi
11th October 2002, 14:32
athos:
you forgot to disable debug output again ;)
Thanks for the new build!
Regards,
Koepi
milan
11th October 2002, 14:33
If you want to check translation capabilities download CVS, and in languages directory you'll find original english version and my currect slovak translation. If you want you can try to translate ffdshow to other languages.
Not everything can be translated now, but I'm working on it. I hope on monday it will be finished.
Blight
11th October 2002, 15:24
Milan:
I just want very simple functions that will directly save the filter data to a file (excluding such information as selected codecs).
It should only take one parameter (a string) which is to point to the file load/save. The functions should be exposed as a standard DLL, thus when my player detects the CLSID of the filter, it can then use these functions.
Also, Is there any chance your decoder will support the VP31 format, I think it's open sourced now and their decoder is buggy under XP (shows B&W image unless you disable overlay mixer and vmr).
wizzzard
12th October 2002, 14:11
Hello,
on AVS is a problem report with the gradual de-noise. You find it here. (http://www.avsforum.com/avs-vb/showthread.php?s=&threadid=179264)
Xenoproctologist
13th October 2002, 11:34
I ran a bunch of video files through ffdshow and noticed a couple bugs. Hopefully at least one of these treads new ground.
A). YV12 output results in the chroma being shifted 2 pixels to the right. Other colorspaces don't have this problem. Happens regardless of whether source is divx/xvid/raw avi.
B). I have a 314x235 12fps cinepak video clip which results in some god-awful artifacting. There's a large, diagonal swath cut through it where the remains of frame buffers from previous video clips show through. Is this a mod(4/8/16) issue? Just in case it isn't, here is a 92kb clip of the first 5 frames, which serves to illustrate the problem quite well: (http://home.adelphia.net/~feltmate/files/ffdshow-artifact.avi)
C). In certain circumstances, video output is flipped. Most players play fine on my nVidia Geforce3 (detonator v30.82), the exception being Sasami2k (http://www.sasami2k.com/). My Matrox G200 (driver v5.86.32.0), on the other hand, plays all ffdshow output flipped, regardless of player. I'd put it down as a bug in Matrox's drivers and Sasami2k if it weren't for the fact that all other codecs play perfectly fine.
System Info:
AMD AthlonXP 1.6ghz
nVidia Geforce3 TI200 (driver v30.82)
Matrox G200 Millenium (driver v5.86.32.0)
Windows XP SP1
DirectX 8.1b
Windows Media Player 9 Beta
(Note: Problems existed well before I installed WMP9)
iago
13th October 2002, 21:25
hello all,
First, once again many thanks to everyone working on this filter. I just wanted to mention that the option of "mplayer noise" is really great and very successful in deblocking/hiding blocks in dark/black areas as well as the ones in sky, fire, smoke, etc.
It's really like a safety belt especially for those who don't/didn't use lumoff=-2 with MPEG2Dec3.dll (by Marc FD) in their encodes and those who care about watching their encodes on TV too ;)... (i.e. with a luminance noise stregth of 8-15 as needed)
best regards,
iago
Defiler
13th October 2002, 21:29
Xeno: I don't see any particular artifacting in that test clip of yours. What ffdshow build are you using?
I've got the October 3rd build here.
Athlon XP 2400+
Tyan Tiger MPX
GeForce4 Ti4600 (30.82 drivers)
Windows XP SP1
Your test clip looks good to me in Media Player 6.4 and Zoom Player 2.9 beta.
Smiff
14th October 2002, 01:51
sorry if this is mentioned before but - Xvid Qpel support (please)! (crazy colours atm) (- for anyone with this problem, select "use Xvid" on codecs tab)
MaTTeR
14th October 2002, 03:13
Originally posted by Smiff
(- for anyone with this problem, select "use Xvid" on codecs tab)
Actually that "may" no longer work with Nic's latest build on 10-13. You need to use Nic's DSF without ffdshow for the time being it seems, otherwise the player(s) seem to crash when you open a file that contains B Frames(not sure about Qpel encodes). I tested this on two different machines.
Xenoproctologist
14th October 2002, 06:02
Defiler: ffdshow-alpha 10/10/02
I'd attach a screencap or huffyuv of what I'm getting, but ffdshow's internal screencap is apparently broken and I can't get ffdshow's output to attach to anything but a renderer or overlay mixer in graphedit. In the meantime, I tried it on my Matrox G200 and managed to grab a screencap of the first frame.
PNG, 103KB, Capped in RGB24(flipped) Colorspace (ignore the fact that it's flipped; I've already established that as a separate problem):
(http://home.adelphia.net/~feltmate/files/ffdshow-error-matrox.png)
And now, to better describe what I'm seeing, here is a piss-poor ASCII representation:o:
KEY:1234567890 : good pixels (in sequence)
!@#$%^&*() : pixels with good luma; chroma-shifted to green
_ : green garbage from off the side of the framebuffer
- : black pixels from off the bottom of the framebufferNote: Aspect ratio is, of course, screwed because the characters aren't square. Pretend each character is about 60% wider than it actually is and ignore it.
YV12 Colorspace:1234567890123456789012345678901_
123456789012345678901234567890__
12345678901234567890123456789___
1234567890123456789012345678____
123456789012345678901234567_____
12345678901234567890123456_____7
1234567890123456789012345_____67
123456789012345678901234_____567
12345678901234567890123_____4567
1234567890123456789012_____34567
123456789012345678901_____234567
12345678901234567890_____1234567
1234567890123456789_____01234567
123456789012345678_____901234567
12345678901234567_____8901234567
1234567890123456_____78901234567
123456789012345_____678901234567
12345678901234_____5678901234567
1234567890123_____45678901234567
123456789012_____345678901234567
12345678901_____2345678901234567
1234567890_____12345678901234567
123456789_____012345678901234567
12345678_____()!@#$%^&*()!@#$%^&
YUY2 Colorspace:1234567890123456789012345678901_
456789012345678901234567890__123
678901234567890123456789___12345
890123456789012345678____1234567
012345678901234567_____123456789
234567890123456_____712345678901
456789012345_____671234567890123
678901234_____567123456789012345
890123_____456712345678901234567
012_____345671234567890123456789
_____23456712345678901234567890_
__12345671234567890123456789____
1234567123456789012345678_____90
3456712345678901234567_____89012
5671234567890123456_____78901234
7123456789012345_____67890123456
2345678901234_____56789012345671
4567890123_____45678901234567123
6789012_____34567890123456712345
8901_____23456789012345671234567
0_____12345678901234567123456789
___01234567890123456712345678___
()!@#$%^&*()!@#$%^&-------------
--------------------------------
Semi-educated guess: the video pitch is screwed up.
athos
14th October 2002, 14:44
I decided to put up a new build allready today, so you can try milan's new translation, and also libavcodec has been updated (see changelog).
I have to warn everyone though; in order to compile i had to cange "MIIM_STRING" to "MIIM_TYPE" on line 264 of TconfPage.cpp. MIIM_STRING was not defined, and I found similar statements that used MIIM_TYPE. It is very possible, that by doing this, I broke something, so be ware that bugs in this release might be because of this ugly 'hack' or whatever you want to call it.
Still, a quick check tells me that ffdshow does install and play a text xvid file ok.
I also disabled DEBUG (thanks, Koepi, for reminding me :)). I have more or less finished a script for checking out CVS, applying minor changes to the makefiles (for example not automatically registering ffdshow.ax), compiling and packaging installer. Hopefully, this way I wont forget to disable debug and such things in the future.
I have updated todays alpha release at Sourceforge with a swedish language translation.
To the swedish-speaking people here:
Om ni ser något fel eller har förslag på en bättre översättning, meddela mig!
To everyone:
If you can help with translating ffdshow to some other language, please do!
ZeB
14th October 2002, 23:08
Originally posted by athos
To the swedish-speaking people here:
Om ni ser något fel eller har förslag på en bättre översättning, meddela mig!
OK :)
I OSD verkar det som en del av orden försvunnit..
Teckenu
Tjockle
Särstavade ord:
Bild inställningar
Bild egenskaper
Under bildinställningar finn det en knapp som det står "r automatisk inladdning av förinst" på.
Under denna knapp finns det en checkbox som heter "automatisk inladdning av"
Under efterbehandling finns det en checkbox som heter "Helt luma spect"
Tror det var allt :)
Bra jobb förresten!
athos
14th October 2002, 23:34
Here is a slightly improved swedish translation, tack för hjälpen!
Put in C:\Program Files\ffdshow\languages, or wherever you have installed ffdshow.
I had to shorten some words to fit in the GUI.
lighty
14th October 2002, 23:44
Originally posted by Smiff
sorry if this is mentioned before but - Xvid Qpel support (please)! (crazy colours atm) (- for anyone with this problem, select "use Xvid" on codecs tab)
Selecting XviD in ffd doesn't help a bit. I had to deinstall ffd and then reinstall it only with XviD support totaly disabled.
With original XviD decoder QPel doesn't produce any "crazy coulors" (Nic's compile from 13.10.). I hope this get fixed soon since I used to watch all movies via ffdshow- some of the filters are of great help.
Smiff
15th October 2002, 00:31
sorry, i only posted that because it worked for me - there's no need to uninstall anything, just load the config and (un)select what you want until you find a combination that works... ffdshow is very powerful in that respect. things are a little messy right now with all the changes in XviD and FFdshow happening at once... it's probably best if no-one tries to give any advice atm, except "use what works" :)
A problem i _am_ having with the current ffdshow is that it often crashes when switching between different videos, e.g. going from an ogm/xvid to an avi/divx or vice-versa (zoomplayer reports error in ffshow).
Also seeking with b-frames is a nightmare (? - i assume it's b-frames messing it up)... this might be ZoomPlayer again.. it would be nice if the ZoomPlayer, Xvid and ffdshow guys all got together to perhaps clear some things up, if you're not already, that is :)
EDIT: forget that, it's not b-frames, it's something unrelated with ZP's rewind.
lighty
15th October 2002, 00:58
Ehh-- my mistake...
Your solution does work and it saved me a lot of trouble. It seems I haven't updated my version of ffdshow for a LONG time... :eek:
Now it seems that everything is working as it suppose to work. Just encoded Monsters Inc. with XviD QPel turned on and boy does it seems sharp with almost no visible artifacts and no excessive smoothing like in DivX5. It is a magic using it with precise resize filter like Lanczos... :D
Anyway- now I found a Sourceforge link to alpha builds of ffdshow and I think I am going to keep more attention to updates.
BTW- Milan-- could you pls put link to Sourceforge ffdshow repository to your sig? It could save some less patient ppl trouble of asking for it's location...;)
milan
15th October 2002, 07:52
Again sorry for not respondig for a while, but I had too much work.
First I'm now finally reworking resize/aspect/black borders. This will take some time and I'm not sure if backward compatibility with current settings will be preserved, but I will try do my best.
I just want very simple functions that will directly save the filter data to a file (excluding such information as selected codecs).
It should only take one parameter (a string) which is to point to the file load/save. The functions should be exposed as a standard DLL, thus when my player detects the CLSID of the filter, it can then use these functions.
saveActivePresetToFile saves only settings which affects the output image.
If I understand you correctly, you want those functions to be exported by dll as for example configure function is? But how those functions should know about current IffDecoder instance? I would like to know that, because someone else asked me to export other function which would do some things with subtitles.
on AVS is a problem report with the gradual de-noise. You find it here.
Yes, there is incorrect rounding. I'll look at this soon.
YV12 output results in the chroma being shifted 2 pixels to the right. Other colorspaces don't have this problem. Happens regardless of whether source is divx/xvid/raw avi.
Try to uncheck YV12 output in codecs page. Or you can move chroma planes in offset filter. Or I should fix this, but I don't know how as this seems to be graphic card dependent.
314x235: I surely should handle this automatically by extending width to 320. I'll implement this to new resize system.
"MIIM_STRING to MIIM_TYPE" - You should install new Platform SDK with updated headers. However I can #ifdef it if it won't break anything.
As you surely have noticed, translation support isn't finished. Some strings can't be translated yet, but I'm working on it. The biggest problems will be with Configuration string in property sheet page header (that's why it was changed to ffdshow) and with those short helps at the bottom of cfg pages. I also would like to know how to fit checkboxes and radio buttons to their captions. This would realy help much.
libavcodec doesn't decode xvid qpel correctly. Or xvid doesn't encode qpel correctly? I don't know, but I hope developers will find ways how to fix this.
A problem i _am_ having with the current ffdshow is that it often crashes when switching between different videos, e.g. going from an ogm/xvid to an avi/divx or vice-versa (zoomplayer reports error in ffshow).
[/qoute]
I will test this. As it seems these problems are appearing in ffdshow since its beginning.
[quote]
BTW- Milan-- could you pls put link to Sourceforge ffdshow repository to your sig? It could save some less patient ppl trouble of asking for it's location...
OK. And maybe some funny quote too... And maybe some nice avatar... :)
billou2k
15th October 2002, 15:32
I've done a french translation for ffdshow
I've done the best I could, it's sometimes a bit tricky with some short text fields but nothing ununderstanble.
bon apres midi ;-)
Btw it looks like the pan & scan texts (horizontal and vertical position are not read from the language file, maybe it is still hardcoded.
billou2k
15th October 2002, 15:34
and the file needed:
Blight
15th October 2002, 18:05
Milan:
how those functions should know about current IffDecoder instance
I'm not sure what you mean, I just check the filter graph, find the CLSID for your decoder, there should only be one per filtergraph, once detected, I type-cast it into a class structure that contains the exported functions and then use them...
oddball
15th October 2002, 19:37
Milan: Glad to hear you are finally doing some work on the black borders. For me this is my most awaited feature as you already know. I look forward to testing it out. :)
milan
16th October 2002, 07:21
@billou2k
Thank you for translation.
Pan & scan isn't working yet, so no need for translation.
Tsui
16th October 2002, 19:10
Is it possible to include playback for Angelpotion (fourcc : ap41, same as divx 3.11) and realMagic MPEG-4 Video (fourcc : rmp4, same as xvid) ?
Smiff
16th October 2002, 20:32
Originally posted by Tsui
Is it possible to include playback for Angelpotion (fourcc : ap41, same as divx 3.11) and realMagic MPEG-4 Video (fourcc : rmp4, same as xvid) ?
angelpotion is a con, i think including support would give it legitimacy, better to change the FourCC, i think - ?
Tsui
16th October 2002, 20:55
I know that the Angelpotion Codec is really bad and I personally never used it, but I know someone who has some of those movies on a cdr, so it would be very kind if he can play those videos with the ffdshow filter _without_ patching the fourcc-code which is impossible, when they are allready burnt.
It would be only _one_ checkbox in the config-dialog and all is fine.
Smiff
17th October 2002, 01:04
how about the ability, on the codec tab, to enter an arbitrary fourcc and map it to one existing fourcc (so in this case your friend would type "ap41" or whatever and choose "div3"). (milan?)
Urschl
17th October 2002, 14:15
Offtopic :
I always had problems watch xvid-movies on my 650 P III Notebook with the last stable Version of the Filter (CPU Util 100 %), today I decided to do some Beta Testing....the new Version cured my problems now I can do all the postprocessing and I only have about 40-50 % Util...
Thank you very much !!!!! :D :D :D :D :D :D :D :D :D :D
Smiff
17th October 2002, 14:40
hmmm why does using (chroma) offset raise CPU usage so much?
oddball
18th October 2002, 23:56
Can anyone tell me if this is related to ffdshow in any way? I sometimes have a problem whereby any DiVX/Xvid being sent to the TV out on my Matrox G400 shows as just green and purple, but on the monitor looks fine?
Smiff
19th October 2002, 00:19
Originally posted by oddball
Can anyone tell me if this is related to ffdshow in any way? I sometimes have a problem whereby any DiVX/Xvid being sent to the TV out on my Matrox G400 shows as just green and purple, but on the monitor looks fine?
yeah hi i can tell you exactly what's up - the width isn't a multiple of 32. the obvious thing is to install DivXG400, but since using subtitles i've found a way that doesn't require yet another DSF loaded - VobSub has a "mod32" option on the "General" tab. I discussed getting ffdshow to do this earlier in this thread but i don't think milan got quite what i was blabbering about :( (ffdshow's round to 16 option can't be used with its other resize options).
Didée
19th October 2002, 13:53
Originally posted by Smiff
yeah hi i can tell you exactly what's up - the width isn't a multiple of 32.
Dont't believe outdated rumours.
G400 plays MOD16 perfectly. Period.
G400 plays MOD8 well. Sometimes you'll experience colored bars on some side of the screen with MOD8.
The below-MOD32-problem was true by the time divx4 was bleeding edge - perhaps oddball should consider updating his drivers.
Still, I never ever have seen a better TV-out than that of Matrox' G400.
(And still, I don't really trust XviD using MOD8 resolutions ...)
Regards
Didée
Smiff
19th October 2002, 14:06
not rumours... i have a G400, with the latest drivers... use it almost daily.. have the green/purple problem... never with mod32 checked on vobsub, or divxg400, loaded... maybe it's mod16 or mod32, whatever, oddball try it, my suggestion will work :)
oddball
19th October 2002, 14:30
Oopsy! I must have uninstalled DiVXG400 when I uninstalled Nimo last time. Oh well reinstalled and will see how it goes.
Tsui
19th October 2002, 21:43
@ Athos :
is it possible that you send me the source of your build from 23.Sept. 2002 ?
And I think that it would be a good idea to include the source of every build in the archive.
Greetings
Tsunami
mpeg2hq@lycos.de
athos
20th October 2002, 18:07
Originally posted by Tsui
@ Athos :
is it possible that you send me the source of your build from 23.Sept. 2002 ?
And I think that it would be a good idea to include the source of every build in the archive.
Greetings
Tsunami
mpeg2hq@lycos.de
Sorry, I dont keep the sources. I delete the entire ffdshow directory between compiles to make soure all files are freshly checked out. Milan and I decided not to include sources with the alpha builds, but I guess this might change. I suppose it might be possible through CVS to "step back" to 02-09-23 but I'm not sure how.
easyfab
21st October 2002, 18:14
Just a stupid question,
How can I use the resize option in ffdshow?
The aspect ratio work but not the resize option.
I ask this question because i make a little test for fun (avs script vs ffdshow filter).
The avs script with resize and others filters(denoise, sharpen)under VB and ffdshow with PP,sharpen and resize(if it works :) )under graphedit.
Easyfab
gabest
22nd October 2002, 01:16
milan: Could you please call pOut->SetActualDataLength() with the right picture data length at the end of your Transform() function and not just leave it with the allocated buffer size. Thx.
Blight
23rd October 2002, 04:16
Bug Report:
Trying to create an automatic DVD Graph with the WinDVD v4 filters will cause FFDShow to throw a "Floating Point division by Zero" error.
WinDVD doesn't allow non-renderer filters to connect, that may be the reason, but ffdshow shouldn't crash like that.
Tested with Alpha ffdshow-20021010.exe and ffdshow-20021014-se.exe.
ookzDVD
23rd October 2002, 04:32
@Blight,
I can confirm that too here,
after I un-install the ffdshow.ax the ZoomPlayer now can play my DVD ;)
Xenoproctologist
23rd October 2002, 17:07
1). U/V color planes are swapped when capturing stills in YUY2 color space.
(Found this one while trying to diagnose bug #2)
2). Chroma decoding errors when decoding this XviD video clip:
http://home.adelphia.net/~feltmate/files/haibane_clip.avi (1.8MB)
Changing the IDCT's doesn't help. Checking "Use XviD" fixes it.
Still captures (chroma-swapped, 720x368):
http://home.adelphia.net/~feltmate/files/cap-xvid.png (394KB)
http://home.adelphia.net/~feltmate/files/cap-ffdshow.png (407KB)
Cropped still captures are attached and waiting for Moderator love.
(http://home.adelphia.net/~feltmate/files/cap-ffdshow.png) (343x190, 104kb)
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.