Resources for IT Professionals > Forums Home > Microsoft Research Forums > Developer Discussions > VideoCompressor issues with DShowNetworkFilters sample
Ask a questionAsk a question
 

General DiscussionVideoCompressor issues with DShowNetworkFilters sample

  • Thursday, July 23, 2009 12:23 PMJordan Hermant Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Has Code
    hi, i'm trying to change the video compressor to throw data ont the network(it's for a video conferencing application in .NET).

    By default the "WMVideo 8 Encoder DMO" is used but i need better compression (My Core2Duo is used at 60% with this codec)

    I would prefer use the "Microsoft H.263 Video Codec" but the addCompressor function give me an exception.

    there is my snippet code to add the codec.

    vcg = new VideoCaptureGraph((FilterInfo)cklbCameras.SelectedItem);
                    
    FilterInfo mycodecfilter = new FilterInfo();
    FilterInfo[] fis = VideoCompressor.Compressors;
    foreach (FilterInfo f in fis)
    {    if (f.Name == "Microsoft H.263 Video Codec")
                 mycodecfilter = f;
    }
    vcg.AddCompressor(mfi);
    vcg.RenderNetwork(rtpSender);
    vcg.Run(); // Send data to network
    
    And there is the Exception stack :

    Exception type : ComException
    Exception message : HRESULT : 0x80040217
    StackTrace:
       à MSR.LST.MDShow.IGraphBuilder.Connect(IPin ppinOut, IPin ppinIn)
       à MSR.LST.MDShow.CaptureGraph.AddCompressor(FilterInfo fiCompressor) dans C:\Program Files\Microsoft Research\ConferenceXP\Source Code\October2006\MSR.LST.MDShow\MDShowManager\Graphs.cs:ligne 239
       à DShowNetwork.DShowNetworkFiltersForm.cklbCameras_ItemCheck(Object sender, ItemCheckEventArgs e) dans C:\Program Files\Microsoft Research\ConferenceXP\Source Code\October2006\MSR.LST.MDShow\Samples\NetworkFilters\DShowNetworkFiltersForm.cs:ligne 224
       à System.Windows.Forms.CheckedListBox.OnItemCheck(ItemCheckEventArgs ice)
       à System.Windows.Forms.CheckedListBox.LbnSelChange()
       à System.Windows.Forms.CheckedListBox.WmReflectCommand(Message& m)
       à System.Windows.Forms.ListBox.WndProc(Message& m)
       à System.Windows.Forms.CheckedListBox.WndProc(Message& m)
       à System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
       à System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
       à System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
       à System.Windows.Forms.UnsafeNativeMethods.SendMessage(HandleRef hWnd, Int32 msg, IntPtr wParam, IntPtr lParam)
       à System.Windows.Forms.Control.SendMessage(Int32 msg, IntPtr wparam, IntPtr lparam)
       à System.Windows.Forms.Control.ReflectMessageInternal(IntPtr hWnd, Message& m)
       à System.Windows.Forms.Control.WmCommand(Message& m)
       à System.Windows.Forms.Control.WndProc(Message& m)
       à System.Windows.Forms.ScrollableControl.WndProc(Message& m)
       à System.Windows.Forms.ContainerControl.WndProc(Message& m)
       à System.Windows.Forms.Form.WndProc(Message& m)
       à System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
       à System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
       à System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
       à System.Windows.Forms.UnsafeNativeMethods.CallWindowProc(IntPtr wndProc, IntPtr hWnd, Int32 msg, IntPtr wParam, IntPtr lParam)
       à System.Windows.Forms.NativeWindow.DefWndProc(Message& m)
       à System.Windows.Forms.Control.DefWndProc(Message& m)
       à System.Windows.Forms.Control.WmMouseDown(Message& m, MouseButtons button, Int32 clicks)
       à System.Windows.Forms.Control.WndProc(Message& m)
       à System.Windows.Forms.ListBox.WndProc(Message& m)
       à System.Windows.Forms.CheckedListBox.WndProc(Message& m)
       à System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
       à System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
       à System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
       à System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
       à System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)
       à System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
       à System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
       à System.Windows.Forms.Application.Run(Form mainForm)
       à DShowNetwork.DShowNetworkFiltersForm.Main() dans C:\Program Files\Microsoft Research\ConferenceXP\Source Code\October2006\MSR.LST.MDShow\Samples\NetworkFilters\DShowNetworkFiltersForm.cs:ligne 38

    any help will be great ;)
    I precise that i've tested another like "Microsoft H.261 Video Codec" and a lot of another codec but i've always this exception
    I've Windows Media Player 11 and all my codec seems to be up-to-date.