Log in

View Full Version : AviSynth not working in Win2003?


ApPojken
7th September 2006, 10:17
Hi,

I am using Windows 2003 Enterprise 32 bit. I have no problem playing mpeg2source but for some reason directshowsource does not work at all.

I can play the AVIs in windows media player with no problem. They also work in VirtualDubMod but not in avisynth using directshowsource.

Can I see what settings or direct show filter AviSynth is trying to use? And in that case, point it to whatever VirtualDub is using...

foxyshadis
7th September 2006, 10:40
Just for testing, can you install xvid (assuming it's mpeg-4) or ffdshow and see whether that helps? It might be that you have only vfw (avisource/vdub) codecs, which media player will fall back on if no directshow codecs are present.

Then again, if avisource works, why use the much flakier directshowsource?

ApPojken
7th September 2006, 11:11
ffdshow is installed and I have also tried to install a number of other codecs but it doesnt work. It seams like the AVIs play back with no video at all and AVS think that they are 0x0. The length seams to be return correctly.

I have tried both Avi with DV and uncompressed settings, AVIsource does not work either.

ApPojken
7th September 2006, 11:36
I have no audio hard ware in the machine. Does Avisynth not accept this? I have tried the killaudio command too....

IanB
8th September 2006, 02:20
Without audio hardware the default Render File call used by DirectShowSource() will fail (Damn!). You will have to manually contruct a DirectShow graph with GraphEdit, save the .GRF file and load that with DirectShowSource().

Or you could buy some cheap USB sound device and give the machine the semblence of audio hardware.

Or you could install the Null Renderer and hack the merit to some serious value.

Richard Berg
8th September 2006, 03:49
Or you could demux the video.

ApPojken
8th September 2006, 13:00
Without audio hardware the default Render File call used by DirectShowSource() will fail (Damn!). You will have to manually contruct a DirectShow graph with GraphEdit, save the .GRF file and load that with DirectShowSource().

Or you could buy some cheap USB sound device and give the machine the semblence of audio hardware.

Or you could install the Null Renderer and hack the merit to some serious value.

I tried the alternative 2. It did not work since I am using Remote Desktop. Windows is overriding the USB audio drivers to RDP audio which is not compatible with anything. The first alternative sounds interesting though. I guess I just have to build a graph parser in order to put it into an automated flow. Was not aware that you could open .GRF files directly in AVS. However I do get a error message when I try it. It says:
DirectShowSource: Could not open as video or audio
Video Returned: "DirectShowSource: the filter graph manager won't talk to me"
Audio Returned: "DirectShowSource: the filter graph manager won't talk to me"

Last alternative is probably a bit overkill for me. :)

Thanks for your input.

"Or you could demux the video."

Too time consuming. I need AVS to frame serve the video.

squid_80
8th September 2006, 14:40
If they work in virtualdubmod, shouldn't we be finding out why avisource won't work? What codec does virtualdubmod say the file is using (file menu->file information)?

ApPojken
8th September 2006, 14:48
It doesn't matter what codec I use. I get the same error no matter what. AVISource handles the files better than DirectShowSource though because of the call it does to the audio? I think the fourCC was "dvsd" (DV video) for the video and 0x0001 for the audio (standard linear PCM). But the issue is the same for all AVIs I have tried so far.

foxyshadis
8th September 2006, 20:26
Oh, when you make a .grf, you have to remove the renderers (and preferably any colorspace conversion). I remember having this exact same problem on my server; I don't use it for encoding anymore, but it's nice to know why DSS didn't work.

sanford81
22nd January 2011, 16:17
Has this problem been resolved? Now I have the same problem. Can someone help me? Thanks!

VonOben
23rd January 2011, 00:39
Windows is overriding the USB audio drivers to RDP audio which is not compatible with anything.

Have a look at this old thing I wrote years ago: http://mordvap.net/filer/How.to.let.remote.desktop.connections.play.sound.on.client.or.server.in.Windows.Server.2003.txt

Don't know if it will solve your problem, but perhaps. (If you can be logged on to the console via RDP.)

IanB
23rd January 2011, 02:43
I did change the code to this quite some time ago, and it did help on the 2k3 server I tried it on. RenderFile was building a useful partial graph but returning an error code due to the lack of possible audio path. So I now ignore all errors and just check if the DSS pseudo renderer is connected and run with that. HRESULT RFHresult = gb->RenderFile(filenameW, NULL);
if (!get_sample.IsConnected()) { // Ignore arbitary errors, run with what we got
CheckHresult(env, RFHresult, "couldn't open file ", filename);
env->ThrowError("DirectShowSource: RenderFile, the filter graph manager won't talk to me");
}I seem to remember that I needed audio=false on the D..S..S.. call. I don't have any audio-less servers to test against any more.

sanford81
23rd January 2011, 13:35
Now I am using Windows 2003 Enterprise 32 bit on Dell R610 server machine. The machine doesn't has sound card and can't support winXP os.
Yesterday after I installed a virtual sound card program, I have put a .m2ts file into graphedt.exe, graphedit.exe builded a intelligent connect crashed because of using default audio render filter. When i replaced the default audio filter by another audio render filter(somethings like windows RDP driver), the filter graph can run correctly. Now i have two questions:
1. How can i make the intelligent connect use the right audio render filter, increase the filter's merit value in windows's registry?
2. Does directshowsource function supports import .GRF file, such as DirectShowSource("1.grf")? Yes, but there are no sound output.