Problem with splicer when published on server

Topics: Developer Forum
Mar 15, 2007 at 8:56 AM
Hi,

I'm getting the following error when trying to publish my application on IIS6.0 which uses Splicer internally for audio-video mixing. :(

System.Exception: at DirectShowLib.ICaptureGraphBuilder2.RenderStream(DsGuid PinCategory, DsGuid MediaType, Object pSource, IBaseFilter pfCompressor, IBaseFilter pfRenderer)
at Splicer.Renderer.AbstractRenderer.RenderHelper(ICaptureGraphBuilder2 graphBuilder, ISampleGrabberCB callback, String typeName, IPin pin, IBaseFilter compressor, IBaseFilter destination) in D:\Splicer\Renderer\AbstractRenderer.cs:line 319
at Splicer.Renderer.AbstractRenderer.RenderGroups(ICaptureGraphBuilder2 graphBuilder, IBaseFilter audioCompressor, IBaseFilter videoCompressor, IBaseFilter audioDestination, IBaseFilter videoDestination, ICallbackParticipant[] audioParticipants, ICallbackParticipant[] videoParticipants) in D:\Splicer\Renderer\AbstractRenderer.cs:line 422
at Splicer.Renderer.AbstractRenderer.RenderGroups(ICaptureGraphBuilder2 graphBuilder, IBaseFilter audioCompressor, IBaseFilter videoCompressor, IBaseFilter multiplexer, ICallbackParticipant[] audioParticipants, ICallbackParticipant[] videoParticipants) in D:\Splicer\Renderer\AbstractRenderer.cs:line 363
at Splicer.Renderer.WindowsMediaRenderer.RenderToAsfWriter(String file, String profileData, ICallbackParticipant[] videoParticipants, ICallbackParticipant[] audioParticipants) in D:\Splicer\Renderer\WindowsMediaRenderer.cs:line 101
at Splicer.Renderer.WindowsMediaRenderer..ctor(ITimeline timeline, String file, String profileData, ICallbackParticipant[] videoParticipants, ICallbackParticipant[] audioParticipants) in D:\Splicer\Renderer\WindowsMediaRenderer.cs:line 40
at Splicer.Renderer.WindowsMediaRenderer..ctor(ITimeline timeline, String file, String profileData) in D:\Splicer\Renderer\WindowsMediaRenderer.cs:line 28

System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.

This is the code i'm using :o

using (ITimeline timeline = new DefaultTimeline(15))
{
timeline.AddAudioGroup().AddTrack();
IGroup videoGroup = timeline.AddVideoGroup(32, 176, 144);
ITrack videoTrack = videoGroup.AddTrack();
timeline.AddVideoWithAudio(strVideoFile);
timeline.AddClip(strWAVFile, GroupMediaType.Audio, InsertPosition.Absolute, dAudioMixTime, 0, dMixoff);
using (WindowsMediaRenderer renderer = new WindowsMediaRenderer(timeline, strOutputFile, WindowsMediaProfiles.HighQualityVideo))
{
renderer.Render();
}
}

Please help me in this issue :). I tried to publish it on my machine and its working fine. The problem raises when published on a server and trying to access from a remote machine :o
Developer
Mar 19, 2007 at 12:27 AM
Hi,
ummm, if the code works fine on your development environment, and doesn't when you publish it
to the server, it could be a matter of dll registrations or missing codecs!

If you give me more info about the develoment env. and production env. I might be able
to aid a little.

Rgds,

Fadi
Mar 21, 2007 at 7:43 AM

FadiK wrote:
Hi,
ummm, if the code works fine on your development environment, and doesn't when you publish it
to the server, it could be a matter of dll registrations or missing codecs!

If you give me more info about the develoment env. and production env. I might be able
to aid a little.

Rgds,

Fadi


Thanks FadiK for your reply . Actually we tried publishing in other systems ( local machines running on Windows XP )and it worked fine. We are facing that problem when published on the server which is running on Windows Server 2003 with both Framework 1.1 and 2.0 installed in it.

Finally we moved to other server which is running on Windows XP and published...Its working fine on that server. I cant figure where exactly the problem lies.

If you have any idea regarding this issue..please do reply us. It helps us a lot. Thanks in advance :)

Thanks,

QTDev.

Coordinator
Mar 21, 2007 at 10:28 PM
Hi QuickTime...

I grabbed your source code and the 1sec.wav and 1sec.wmv files from the unit tests and deployed all the code as part of a web page on a Windows 2003 R2 server with IIS... and it works just fine for me (without having installed any additional codecs)... So I'm a little puzzled as to what's causing your issue... perhaps its related to that particular server, have you tried installing win2K3 in a virtual machine and testing it there?

First thing to try would be to grab the unit tests that come with splicer and run those on your server... and then tell us which ones fail... it might help narrow down the issue.

Only other thought I had was perhaps it's related to the user which is executing the code... you aren't using any kind of impersonation or NT authentication in the site...?
Mar 22, 2007 at 9:58 AM
Edited Mar 22, 2007 at 9:59 AM
Thanks Alex for your reply. I have tried the same thing in Windows Application and then tried to run the .exe file , but the error was same. I will try out what u have said, but once please check this error . I have taken a snapshot of the error and I'm giving the link here.

http://i7.tinypic.com/44ln8y1.png

Thanks,

QTDev.