View Full Version : Noob needs help with ffdshow and graphedit.
eclipse98
11th February 2008, 22:40
Hi Everybody,
1st post here so go easy on me :) Currently use MPC with ffdshow to upconvert and play SD DVD. I want to save video and audio stream that has been processed through ffdshow to local file -- I've been told on another forum (AVS) that the best way to do it is through GraphEdit. Well, I set up Graphedit and it works fine for playback, but when I try to save video stream to 'File Writer' (out pin of ffdshow to in pin of File Writer) I get this error: "These filters cannot agree on connection" (printscreen attached). Not sure what I am doing wrong, perhaps there should be another filter between ffdshow and file writer ? I am stuck, please help !
TIA, Davie:thanks:
clsid
11th February 2008, 23:16
Insert "Avi Mux" before the file writer. That way you can also put the audio and video together in one file.
Keep in mind that saving the decoded audio/video streams to a file will result in a HUGE file.
eclipse98
12th February 2008, 00:01
Insert "Avi Mux" before the file writer. That way you can also put the audio and video together in one file.
Keep in mind that saving the decoded audio/video streams to a file will result in a HUGE file.
Clsid, thanks a lot for you help, will give it a try tonight -- how HUGE is this file going to be, is it going to double, triple, more ? Is it because there is no MPEG2 compression on the resulting stream ?
Thanks again, Davie.
Inventive Software
12th February 2008, 00:09
It's uncompressed video, so depending on your resolution, either massive or hard-drive busting. :)
eclipse98
12th February 2008, 00:16
It's uncompressed video, so depending on your resolution, either massive or hard-drive busting. :)
It is a SD DVD, so 720×480 NTSC, planning just to run some ffdshow filters (LSF, Seasaw) and then upscale to 1080 in real time. Assuming SD DVD is 5Gb, do you think I can stay within 50Gb or so ?
Thanks again, Davie.
eclipse98
12th February 2008, 00:34
It is a SD DVD, so 720×480 NTSC, planning just to run some ffdshow filters (LSF, Seasaw) and then upscale to 1080 in real time. Assuming SD DVD is 5Gb, do you think I can stay within 50Gb or so ?
Thanks again, Davie.
720x480x2bytes(@YUY2) x 29.97 x 60fps x 60sec/min x 120min.
About 150GB?
Correct assumptions ?
Inventive Software
12th February 2008, 08:51
Yep, that's about right. Use a lossless codec to get the file size down.
Thinking about it, your best bet would be to save the graph created, but add the video renderer instead of the file muxer and writer. This way, you're only saving the chain of events instead of the resulting file, thus saving you several hundred GB.
clsid
12th February 2008, 12:52
I assume that the reason you are doing all this is that your computer isn't powerful enough to do all this in real-time.
I agree with Inventive Software, just use a lossless codec (like huffyuv) to store the data more efficiently. It would take a little bit more time, but would save a lot of storage space.
eclipse98
12th February 2008, 19:35
I assume that the reason you are doing all this is that your computer isn't powerful enough to do all this in real-time.
I agree with Inventive Software, just use a lossless codec (like huffyuv) to store the data more efficiently. It would take a little bit more time, but would save a lot of storage space.
PC is powerfull enough (Conroe 6600/2Gig of RAM) to run LimitedSharpen and SeeSaw scripts (40-50% CPU with 1080 upscaling) per AVSForum ffdshow sticky (http://www.avsforum.com/avs-vb/showthread.php?t=719041).
I am having problems running more CPU intensive scripts (fft3dfilter), jerky playback with 80%+ CPU. So my thinking is to get the best of both worlds, do fft3dfilter pre-processing to HDD and then run pre-processed stream in real time with less CPU intensive script and upscaling. Not sure what will come out of it but it sure worth trying and sharing the results, otherwise I would not feel comfortable calling myself HTPC junkie :)
I did try DVD-Rebuilder with above mentioned AVS scripts, but results were less than satisfying -- obviously applying lossy codec on top of another lossy codec is not such a good idea. I tried both QEnc and HCEnc, I used 9000 kbps bit rate to make is as good as possible but still got plenty of pixelated artifacts. I can see them pretty well since I project to 126" screen. Not sure if increasing bit rate even further is going to result in any improvements due to lossy codecs limitations.
One more thing, if you happened to come across something similar to what I am trying to do, I would appreciate if you can point me in the right direction. I don't think that HDD will be a limitation here, the idea is to process DVD, watch it, then drop from the HDD. And I have plenty of HDD, 2+TB and growing.
Thanks so much for huffyuv suggestion, I will give it a try !!! Highly appreciate advice from both of you, it has been insanely helpful.
:thanks: Davie.
eclipse98
12th February 2008, 23:52
...hit a few snags.
2 mins of MPEG video processed through graphedit resulted in 1.9Gb AVI file, which is slightly smaller than I expected. I ran Seesaw script which encoded pretty much in real time with 50% CPU. The quality is noticably better once LimitedSharpen filter is applied during playback, much smoother and less MPEG artifacts.
However, it does appear to drop a frame here and there which I think might be due to a bottleneck of reading AVI stream from HDD (moving file between HDDs took about a minute so I might be wrong here). What I am trying to do now is to plug in huffyuv compressor into the graph (in order to eliminate possible HDD bottleneck problem) and I am just unable to connect ffdshow video decoder out pin to huffyuv in pin, getting the error that 'filters cannot agree on connection'. Same error occurs when trying to connect AVI mux out pin to huffyuv in pin. What am I doing wrong this time ? Can huffyuv be used with ffdshow decoder in Graphedit or should I use some other application (VirtualDub ?).
Thanks for you help, Davie :thanks:
eclipse98
13th February 2008, 01:08
OK, I found the way to make it work -- using ffdshow encoder with HuffYUV option rather than HuffYUV encoder, doh ..
I am however surprised to see such a poor performance from HuffYUV, with Median predictor and Adaptive Huffman tables I barely get any compression (compressed file is about 95% of original), with Left option file size actually grows almost by 300% percent :eek: Not something you would expect from compression. That is using YV12 colorspace, with YUY2 file is decently compressed to about 30%. I don't understand much about colorspace but from what I'm reading it is better not to do colorspace conversions and DVDs are encoded with YV12 colorspace if memory serves.
I tried FFV1 lossless codec and the results are so much better, I get file compression to about 25% of the original file size. Much better :)
Is there any reason why I should not be using FFV1 ? Am I doing something wrong with HuffYUV settings ?
Thanks for your help, Davie. :thanks:
Inventive Software
13th February 2008, 10:24
FFV1 is primarily designed for archival purposes, but it hasn't been standardised yet, so could change in future. HuffYUV is designed to encode as quickly as possibly without the caveats of uncompressed video.
clsid
13th February 2008, 13:04
The encoded file only has a temporary purpose, so using FFV1 shouldn't be a problem.
vBulletin® v3.8.5, Copyright ©2000-2012, Jelsoft Enterprises Ltd.