View Full Version : New ffdshow build (?)
foxyshadis
5th September 2006, 12:19
It uses LX64 too? Fer crying out loud, how many extensions do they need. And if it isn't the same, it shouldn't be advertised as H.264.
I'm not even going to think about supporting that misnamed file. (You're forgiven because I love George Michael <3, even if that rendition is evil.) I assumed that it was just yet another fourcc overkill (sadly common with avi) and all it needed was adding another fourcc to h264 support, I was obviously wrong. Audio works fine in vlc (100% lavc) and ffdshow, so not I'm sure what's up with mplayer, but nothing so far can get the video out of it, even stuff that plays theora-in-ogg. Nothing seems to be downloadable on the site, so I doubt it could be further supported short of reverse engineering whatever they hacked into ogg.
asasadad_1
5th September 2006, 12:26
Which filters do you have in your filter graph when playing the clip in question?
Hellfred
lead ogg splitter
lead vorbis decoder
lead h264 decoder
LoRd_MuldeR
5th September 2006, 12:27
I think you totaly missunderstood my post. My concern is to see the quality of the H264 clip encoded with leads MPEG4 AVC codec, and I wanted to ask for advice on how to play the clip.
I did not state that MediaPlayerClassic or the underlying DirectShow-Framework uses only the file extension choose a splitter and build up the filter chain. I only gave a overview of what I have tryed to watch the video clip and hoped that someone, who succeeded to do so, suggests me how to manage that. In order to watch the clip I have tryed playing it with MediaPlayerClassic and MPlayer. MPlayer is usually able to play anything you throw at it, no matter how broken. So I tryed it in addition to the DirectShow based players and faild with the given error. Nevertheless I am well aware that MPlayer does not use the DirectShow-framework at all, but comes with it own set of buil in splitters, filters and codecs.
So what DirectShow splitter/parser is recommendet to split that video clip?
With the latest ffdshow from drevil_xxl and somewhat aged Haali Media Splitter I only get sound.
Using GraphEdit -> Render Media File I only get Haali Media Splitter v.1.6.46.4 connected to ffdshow Audio decode connetcted to the default Direct Sound device.
Which filters do you have in your filter graph when playing the clip in question?
I reckon that at least foxyshadis - being the developer that added support for the new fourcc - was able to actually watch the clip to verify, that decoding is working. So I asked here for advice. Maybe I should have marked my post as off topic, though.
About filling a bug-report for ffmpeg/mplayer: I wanted to learn more about the file before deciding to do so.
Hellfred
VLC Players and Nero ShowTime with it's own OGG Splitter fails too! MPlayer reports "Ogg stream 0 has a header marker but is of an unknown type". So if you ask me, that file is either damaged or invalid.
LoRd_MuldeR
5th September 2006, 12:32
lead ogg splitter
lead vorbis decoder
lead h264 decoder
If it doesn't play with normal H.264 decoders than it's not H.264, but some broked format that breaks the H.264 standards!
videomixer9
5th September 2006, 12:34
just wait for them to go bankrupt with their lousy super propiertary crap and the problem is solved. It'll just die the same way that useless CAVS codec will die, cause it's not easy playable anywhere and modifies standards into absurdity.
Liisachan
5th September 2006, 12:47
Who ever made this, used a wrong extension. Rename to .ogg please! Technically, it should be .ogm
Apparently LEAD Ogg Splitter is based on Tobias' OggDS.
hellfred
5th September 2006, 13:23
I have dl and installed the free LEAD Vorbis Audio Codec. It comes with vorbis decoder filter, vorbis encoder filter, an ogg splitter filter and finally an ogg multiplexer filter.
Then I have tryed to render the files with graphedit once more.
One time, I left the extension unchanged (.avi), once I changed it (.ogg).
.avi:
Errror Message:
Could not construct a graph from this file.
-Have you installed all necessary filters?
-Note that the 'Render File' menu option cannot render *.GRF files.
Es wurden ein ungültiger Medientyp angegeben. (Return code: 0x80040200)
Translation: An insufficient media type was given.
No graph is being created.
.ogg:
Message:
Das Format einiger Daten in diesem Video wird nicht unterstüzt
Translation: The format of some Data in this video are not supported
A graph is being created that can play audio only.
Unknow source filter - pin out
connected to
pin in - LEAD Ogg Splitter, which has two pins:
pin Video, not connected to any filter
pin Audio
connected to
pin XFrom In - LEAD Vorbis Decoder - pin XFromOut
connected to
pin Audio Input - Default Sound Device
Tryed to manually add ffdshwo MPEG-4 Video Decodec and connect it
Message:
These filters cannot agree on a connection. Verify type compatibility of input pin and output pin.
Es wurde keine Zwischenfilter für die Herstellung der Verbindung gefunde. (Return code: 0x80040217)
Translation: No Inter-Filter could be found to establish the connection
Properties of LEAD Ogg Splitter pin Video:
Major Type: Video - Sub Type: {3436324C-0000-0010-8000-00AA00389B71} - Format: L264 720x352, 24 bits
rcSrc=(0,0,0,0)
rcDst=(0,0,0,0)
As usually on win32, the file extension does matter, videomixer9 :devil:
_xxl
5th September 2006, 13:33
http://www.leadcodecs.com/Streaming/h264-Streaming-Main.htm
http://www.leadcodecs.com/Download/H264-Videos.htm
You need:
lead ogg splitter,lead vorbis decoder,lead h264 decoder.
haruhiko_yamagata
5th September 2006, 14:07
I would also recommend to revise the deblocking options and make it similar to the options in CoreAVC. i.e. combobox with "deblocking turned off, deblocking off on b-frames, standard deblocking". Thus it will take less space in GUI and be moar comprehensive for a user.
Basically I agree with you. One problem is the page is too small to add anything. "Decoder options" page is not the only one that is too small, so I think GUI frame has to be expanded.
_xxl
5th September 2006, 14:26
h.264 samples:
http://www.vsofts.com/h264/videoclips.html
libavcodec h.264 decoder is not 100% working.
coreavc works fine.
Egh
5th September 2006, 14:29
Basically I agree with you. One problem is the page is too small to add anything. "Decoder options" page is not the only one that is too small, so I think GUI frame has to be expanded.
Well, the frame itself is 450px vertical, so I guess it's possible to increase vertical size quite easily. No need to increase it too much, I'd suggest 550px to try first.
plane
5th September 2006, 14:37
Not sure if I should ask at here. Could anyone tell me the default TomsMoComp_ff.dll field order in the ffdshow? The TomsMoComp.dll used in Avisynth is BFF. Are they share the same settings?
Jeremy Duncan
5th September 2006, 18:54
http://img297.imageshack.us/img297/4975/1ze8.jpg
This is from the August 21 2006 version of FFdshow.
Using the "Map" tab, the picture gets a white snow outline about images onscreen.
Swap Fields does nothing.
And Linked Luma and Chroma motion masks does nothing.
Amour
5th September 2006, 19:11
http://s6.simpleupload.de/f89dd70b8/ffdshow-tryouts-rev137-sse.exe.html
Thanks, but could you make it available on SourceForge?
And I'm waiting for a working SSE2 build from you, as the rev122 one is buggy. Thanks for your job.
LoRd_MuldeR
5th September 2006, 19:20
http://img297.imageshack.us/img297/4975/1ze8.jpg
This is from the August 21 2006 version of FFdshow.
Using the "Map" tab, the picture gets a white snow outline about images onscreen.
Swap Fields does nothing.
And Linked Luma and Chroma motion masks does nothing.
Those are options for the deinterlacer and they work as expected!
"Map" shows the motions map. Those are the areas that have motion and need to be deinterlaced. You can enable "Map" to find the right thrashold value. But of course you'll disable it once you found a good value.
"Swap Fileds" will swap the fields, which is needed for some videos to be deinterlaced properly. Set it accordingly to your video's field order and everything is fine.
foxyshadis
5th September 2006, 19:20
Swap fields is a really badly named way of selecting BFF, I can't believe that it just does nothing. The other arguments you have to understand the meanings of:
map: presents the pixels that would be deinterlaced in white. Used to refine the threshold.
linked: Instead of analyzing all planes separately, it reuses the map built on the luma for the chroma, which is usually a good idea. Unlinked can sometimes cause ghost chroma.
two way: Use forward and backward deinterlacing instead of backward-only.
Drat, mulder answered. :p
Jeremy Duncan
5th September 2006, 19:57
Thank you both for explaining that.
Episode
5th September 2006, 20:08
Hmm, I'm little bit confused about all of these builds.. which one should I pick if I want to have an build that has been build with ICL9.1 (I'm using old Northwood P4 and ICL builds are usually the fastest for me) AND SSE2 optimizations? clsid's and videomixer9's builds look very promising, but I couldn't find any information about their optimizations. Thanks in advance!
_xxl
5th September 2006, 20:23
http://s21.simpleupload.de/f5f07cdf9/ffdshow-tryouts-rev138-sse.exe.html
http://s21.simpleupload.de/f449a79e8/ffdshow-tryouts-rev138-sse2.exe.html
clsid
5th September 2006, 20:53
Hmm, I'm little bit of confused about all of these builds.. which one should I pick if I want to have an build that has been build with ICL9.1 (I'm using old Northwood P4 and ICL builds are usually the fastest for me) AND SSE2 optimizations? clsid's and videomixer9's builds look very promising, but I couldn't find any information about their optimizations. Thanks in advance!
For pure decoding speed the generic builds are just as fast as 'compiler optimized' builds. That is because all the vital parts are already hand-optimized in the source code.
If you make heavy use of the filters in ffdshow, then you could try an ICL9.1 build. Either by me or VM9. Those builds are still generic and thus also work on older CPUs, but they also contain compiler optimizations. My last ICL9.1 build contains MMX, SSE, SSE2 and SSE3 optimizations. Compiler has been patched so that AMD CPUs can also benefit from those optimizations.
Kostarum Rex Persia
5th September 2006, 22:31
What about new SSE4 support? Can ffdshow make use of them in near future?
videomixer9
5th September 2006, 22:35
libavcodec not really but I just released a Core2 Duo version which is the only CPU that makes use of SSE4 currently. Who cares anyways for that shit, you're just nagging for shit again anyways and don't even bother reading the rest as usual :O
NULUSIOS
5th September 2006, 22:42
why all this tension?
Jeremy Duncan
6th September 2006, 02:50
http://img297.imageshack.us/img297/4975/1ze8.jpg
Using The Map button and the slider to get the least amount of snow on my High definition DVD "Over Beautiful British Columbia".
The result is a really sharp-ridged picture.
But if I put the slider to a lower number, the snow is bad, but there's no sharp-ridges on the movie.
On the other hand.
On regular dvd movies.
Setting the slider so there's very little snow improves the picture compared to no deinterlacing.
So there's a bug that prevents HD movies using the slider and being deinterlaced.
I'm using the August 21 2006 version.
Jeremy Duncan
6th September 2006, 02:56
What about new SSE4 support? Can ffdshow make use of them in near future?
Here's one.
Link (http://prdownloads.sourceforge.net/ffdshow-tryout/ffdshow-tryouts-rev135-core2duo.exe?download)
foxyshadis
6th September 2006, 04:29
The SSE4 build is awesome. You guys have no idea what you're missing, it's like finally opening your eyes after years of sleep! I get an awesome .1 fps more! Can you believe it, folks?
Jeremy, the fact that Deinterlacing isn't checked in your screenshots makes me wonder what else is different between them and your actual config. You do have map unchecked while watching, right? It's a debugging option. And for oversharpness, maybe unchecking sharp could help.
Rgeek
6th September 2006, 04:44
When I use seek bar of Crystal Player 1.96 and 1.97 several times, the player freezes.
Using build 20060526-rev2546 this error doesn't happens...
Sorry for the bad English.
Jeremy Duncan
6th September 2006, 05:37
Deinterlacing is checked when I use it.
Map is unchecked except for when I'm adjusting the slider.
I've tried unchecking sharp, but it didn't help.
Jeremy Duncan
6th September 2006, 05:39
When I use seek bar of Crystal Player 1.96 and 1.97 several times, the player freezes.
Using build 20060526-rev2546 this error doesn't happens...
Sorry for the bad English.
Uncheck "Queue output samples" in the Queue & Misc tab.
cc979
6th September 2006, 09:23
did a quick test:
tested using elephant dream_hd xvid/ac3 (8mbs stream mostly)
using 07-07-06 hali splitter
drevil_xxl
ffdshow-tryouts-rev138-sse.exe
null: User: 8s, kernel: 0s, total: 8s, real: 9s, fps: 78.7, dfps: 70.7
vmr9: User: 8s, kernel: 0s, total: 9s, real: 10s, fps: 69.4, dfps: 59.7
ovrl: User: 8s, kernel: 0s, total: 8s, real: 9s, fps: 75.3, dfps: 72.0
with que samples off
null: User: 8s, kernel: 0s, total: 8s, real: 8s, fps: 77.8, dfps: 77.1
vmr9: User: 8s, kernel: 0s, total: 8s, real: 10s, fps: 77.1, dfps: 59.9
ovrl: User: 8s, kernel: 0s, total: 8s, real: 9s, fps: 75.6, dfps: 72.4
ffdshow-tryouts-rev138-sse2.exe
null: User: 9s, kernel: 0s, total: 10s, real: 10s, fps: 65.4, dfps: 64.7
vmr9: User: 10s, kernel: 0s, total: 11s, real: 12s, fps: 58.3, dfps: 51.3
ovrl: User: 10s, kernel: 0s, total: 10s, real: 10s, fps: 63.1, dfps: 61.2
:thanks: keep up the good work guys
haruhiko_yamagata
6th September 2006, 09:54
When I use seek bar of Crystal Player 1.96 and 1.97 several times, the player freezes.
Using build 20060526-rev2546 this error doesn't happens...
Sorry for the bad English.
Which version of ffdshow has the problem?
haruhiko_yamagata
6th September 2006, 10:19
did a quick test:
tested using elephant dream_hd xvid/ac3 (8mbs stream mostly)
using 07-07-06 hali splitter
drevil_xxl
ffdshow-tryouts-rev138-sse.exe
null: User: 8s, kernel: 0s, total: 8s, real: 9s, fps: 78.7, dfps: 70.7
vmr9: User: 8s, kernel: 0s, total: 9s, real: 10s, fps: 69.4, dfps: 59.7
ovrl: User: 8s, kernel: 0s, total: 8s, real: 9s, fps: 75.3, dfps: 72.0
with que samples off
null: User: 8s, kernel: 0s, total: 8s, real: 8s, fps: 77.8, dfps: 77.1
vmr9: User: 8s, kernel: 0s, total: 8s, real: 10s, fps: 77.1, dfps: 59.9
ovrl: User: 8s, kernel: 0s, total: 8s, real: 9s, fps: 75.6, dfps: 72.4
ffdshow-tryouts-rev138-sse2.exe
null: User: 9s, kernel: 0s, total: 10s, real: 10s, fps: 65.4, dfps: 64.7
vmr9: User: 10s, kernel: 0s, total: 11s, real: 12s, fps: 58.3, dfps: 51.3
ovrl: User: 10s, kernel: 0s, total: 10s, real: 10s, fps: 63.1, dfps: 61.2
:thanks: keep up the good work guys
If you are comparing queue on and off, your way of benchmarking is not good. Read this (http://forum.doom9.org/showthread.php?p=832691#post832691).
Timecodec's video renderers don't wait the time stamp and the work load of itself does not chage with the queue. So as far as you are using single core CPU, the result will be the same.
clsid
6th September 2006, 11:21
did a quick test:
ffdshow-tryouts-rev138-sse.exe
null: User: 8s, kernel: 0s, total: 8s, real: 9s, fps: 78.7, dfps: 70.7
vmr9: User: 8s, kernel: 0s, total: 9s, real: 10s, fps: 69.4, dfps: 59.7
ovrl: User: 8s, kernel: 0s, total: 8s, real: 9s, fps: 75.3, dfps: 72.0
ffdshow-tryouts-rev138-sse2.exe
null: User: 9s, kernel: 0s, total: 10s, real: 10s, fps: 65.4, dfps: 64.7
vmr9: User: 10s, kernel: 0s, total: 11s, real: 12s, fps: 58.3, dfps: 51.3
ovrl: User: 10s, kernel: 0s, total: 10s, real: 10s, fps: 63.1, dfps: 61.2
Conclusion: SSE build is faster than SSE2 build :devil:
Hopefully the n00bs will now start using generic builds. Because by logic reasoning and interpolation of the above testresults MMX will be faster than SSE.
LoRd_MuldeR
6th September 2006, 11:26
http://img297.imageshack.us/img297/4975/1ze8.jpg
Using The Map button and the slider to get the least amount of snow on my High definition DVD "Over Beautiful British Columbia".
The result is a really sharp-ridged picture.
The task is not to reduce the amount of "snow". The Map option is intended for finding the correct Threshold. A good value for threshold is when all moving areas are deinterlaced (this means all Mouseteeth artifacts are removed) while static areas are passed through (this means to keep the full vertical resolution in static areas). So if you enable the Map option, you should see "snow" on all moving objects, but none on static areas. If you see too much "snow", you'll have to use a higher threshold for better quality. And If there are moving objects without "snow" you'll need a lower threshold, otherwise there will be visible artifacts!
IMO a value of 10 is a good starting point. Then you lower it in 1-steps until all artifacts are gone. 32 seems extremely high...
haruhiko_yamagata
6th September 2006, 11:54
@clsid
Could you support the language packs by your installer? There are a lot of effort by many people, and many people need them.
videomixer9
6th September 2006, 12:30
Conclusion: SSE build is faster than SSE2 build :devil:
Hopefully the n00bs will now start using generic builds. Because by logic reasoning and interpolation of the above testresults MMX will be faster than SSE.
Well just check the remarks ICL gives you, I think most vectorizations are made for the subtitle renderer and the audio mixer. I think that not in a single filter that actually processes pictures any of the vectorizations are made. libmplayer this may be more but the hand optimized code there is way faster too and ICL doesn't compile that code. Postprocessing and resizing mostly is code from libmplayer ...
Rgeek
6th September 2006, 12:59
Uncheck "Queue output samples" in the Queue & Misc tab.
Works! Thank you!
Which version of ffdshow has the problem?
All builds after 20060526-rev2546 tested by me.
I'm currently using rev2546-135_20060904.
haruhiko_yamagata
6th September 2006, 14:12
Bug fix : wmav2 : revert wmadec.c to rev 112
In some builds it is OK, but in some builds it crashes.
wmav2 file that I tested was created by WMP10(or maybe 11), from CD, with its internal lossless encoder.
@foxyshadis
Please debug and re-commit.
cc979
6th September 2006, 14:16
@haruhiko_yamagata i was mainly testing difference of sse/sse2 just added 'que samples off' test because of being curious
@clsid if you recommend what mmx build, i'll test that with same file (my gramma bad when wake up)
videomixer9
6th September 2006, 14:24
wma2 samples i tried work fine on my own builds. And WMP10/11 do WMV2? I always thought they create wma9 audio?
haruhiko_yamagata
6th September 2006, 14:30
wma2 samples i tried work fine on my own builds.
Yes, your build works. clsids' crashes. Some of my private build works, but some crashes. I can't remember what the difference is. Now I can't make working libavcodec-138.
//EDIT
videomixer9, your rev127 works, rev 138 crashes.
haruhiko_yamagata
6th September 2006, 14:42
All builds after 20060526-rev2546 tested by me.
I'm currently using rev2546-135_20060904.
I tested Crystal Player v1.97. It works for me with queue on. Is the problem reproducible with the default setting of Crystal Player?
videomixer9
6th September 2006, 14:50
could you post the wma2 samples you use, cause my samples also work in rev138.
haruhiko_yamagata
6th September 2006, 15:02
could you post the wma2 samples you use, cause my samples also work in rev138.
Excuse me, it was not lossless. Windows Media Audio 9.1, 128 kbps, 44KHz, stereo 1-pass CBR.
Because of copyright issue, I can't post it to public space.
videomixer9
6th September 2006, 15:20
Well wmadec is not really supposed to handle that. As ffdshow already says wmav1 and wmav2
edit: your sample plays fine on my pc with 138 build
clsid
6th September 2006, 16:25
@cc979, try this one:
rev142 build (http://prdownloads.sourceforge.net/ffdshow-tryout/ffdshow_rev142_20060906.exe?download)
Rgeek
6th September 2006, 16:41
I tested Crystal Player v1.97. It works for me with queue on. Is the problem reproducible with the default setting of Crystal Player?
Yes, default setting as well. With queue checked, seek bar always freezes the player.
Edit: With queue off the problem is rare.
foxyshadis
6th September 2006, 16:50
When ffdshow starts randomly crashing for no reason I always remove every build except the one I'm testing, because ffdshow (maybe only on xp) has a very bad habit of picking up another install's libavcodec.dll or whatever. Caused me a lot of grief until I figured out why.
Still, if I can get it to crash I'll look at it. It might be the compiler's fault, not the code's.
cc979
6th September 2006, 17:37
another test
tested using elephant dream_hd xvid/ac3 (8mbs stream mostly)
using 07-07-06 hali splitter
clsid
ffdshow_rev142_20060906.exe
null: User: 8s, kernel: 0s, total: 8s, real: 8s, fps: 78.8, dfps: 77.7
vmr9: User: 8s, kernel: 1s, total: 9s, real: 10s, fps: 65.5, dfps: 59.8
ovrl: User: 8s, kernel: 0s, total: 8s, real: 9s, fps: 75.1, dfps: 72.5
drevil_xxl
ffdshow-tryouts-rev138-sse.exe
null: User: 8s, kernel: 0s, total: 8s, real: 9s, fps: 78.7, dfps: 70.7
vmr9: User: 8s, kernel: 0s, total: 9s, real: 10s, fps: 69.4, dfps: 59.7
ovrl: User: 8s, kernel: 0s, total: 8s, real: 9s, fps: 75.3, dfps: 72.0
ffdshow-tryouts-rev138-sse2.exe
null: User: 9s, kernel: 0s, total: 10s, real: 10s, fps: 65.4, dfps: 64.7
vmr9: User: 10s, kernel: 0s, total: 11s, real: 12s, fps: 58.3, dfps: 51.3
ovrl: User: 10s, kernel: 0s, total: 10s, real: 10s, fps: 63.1, dfps: 61.2
_xxl
6th September 2006, 17:56
Conclusion: SSE build is faster than SSE2 build
>>SSE performance of Athlon64 is the same as of P4, SSE2 performance lags a little
It's a bad thing to say. You can't generalize about this sort of thing. There are many different tasks that can be performed and in some of them A64 is faster, in others - P4.
Coop
Yes actually AMD K8 CPUs have an extended version of SSE2 - more registers. It can run somewhat 30% faster due to that over regular SSE2. However, don't believe it until you see it.
http://forums.amd.com/index.php?showtopic=5232
http://www.theinquirer.net/default.aspx?article=9278
True or not?
vBulletin® v3.8.11, Copyright ©2000-2025, vBulletin Solutions Inc.