directshow

How can I tell what DLL started a thread and what address space a DLL owns for an external DLL?

自古美人都是妖i 提交于 2019-12-24 06:49:18
问题 I have a Delph 6 DirectShow application that exchanges audio with Skype via sockets. I am getting an intermittent access violation in one of the threads started by one of the DLLs loaded by the Filter Graph when the DirectShow filter chain is ran. The DLL does not belong to me so I don't have the source code. I have examined the Event Log and I see this relevant excerpt when the Filter Graph is ran : Thread Start: Thread ID: $00000804. Process Test.exe ($CE4) Module Load: QCap.dll. No Debug

Buffer starvation inside MS Mpeg-2 Demultiplexer filter

那年仲夏 提交于 2019-12-24 06:01:03
问题 My capture graph is dying. I have traced the problem to a media-sample buffer starvation inside the Microsoft Mpeg-2 Demultiplexer filter. Processing stops inside CBaseAllocator::GetBuffer. The pool is exhausted and the thread sleeps waiting indefinitely for a buffer to be recycled. 0:866> ~~[3038]s ntdll!NtWaitForSingleObject+0x14: 00007ffe`49199f74 c3 ret 0:094> k # Child-SP RetAddr Call Site 00 00000035`807fede8 00007ffe`460b9252 ntdll!NtWaitForSingleObject+0x14 01 00000035`807fedf0

Write an audio source filter for use as Lync microphone

霸气de小男生 提交于 2019-12-24 05:43:33
问题 I'm trying to write a DirectShow Audio Capture Filter that can be recognized by the Microsoft Lync client as a Microphone source. These are the steps I've already taken: Filter derives from CSource ; its output pin derives from CSourceStream and implements IKsPropertySet and IAMStreamConfig and all necessary methods (inc. IUnknown methods) Ensure that the appropriate metadata for the AM_MEDIA_TYPE and its WAVEFORMATEX header are set in GetStreamCaps() and GetMediaType() In fillBuffer() , each

How to make WMV compression using ASF Writer faster ? Any hints?

风格不统一 提交于 2019-12-24 03:50:12
问题 I'm compressing raw AVI files to WMV using the ASF Writer. I'm in a big need to make the compression faster. There are any hints & best practicevs on how to achieve this ? Drop/lower the indexer impact ? Any hidden compression parameters ? The files contains just video in RGB/24bits format and the compression level for the video stream is between 200kbps and 2000kbps. Any configuration hints (using C++, C#, Delphi, etc) Here is the the part of the code (using DSPack) that configure the WMV

Stride and buffersize when processing images

半城伤御伤魂 提交于 2019-12-24 03:08:32
问题 On MSDN I found this for the definition of the image stride. In short it is the width in bytes of one line in the buffer. Now I have an RGB image in a similar buffer and I have been given the stride and the image width in pixels, and I want to know how much padding bytes there have been added. Is this simply stride - 3 * imagewidth since I have 3 bytes (RGB) per pixel? unsafe private void setPrevFrame(IntPtr pBuffer) { prevFrame = new byte[m_videoWidth, m_videoHeight, 3]; Byte* b = (byte*)

MediaFoundation can´t find video capture emulator driver. But DirectShow does

孤街醉人 提交于 2019-12-24 02:52:14
问题 We are developing a software in which we preview and record an input video source captured from a video-capture card. The preview is implemented with DirectShow and the recording with Media Foundation (it´s an old software slowly upgrading to MediaFoundation) The problem is with MediaFoundation: it seems to find correctly the video-capture card at our release machine, but not the "screen-capture" video emulator that we use at the testing machines. At the other hand, the DirectShow code finds

DirectShow - Microsoft LifeCam Studio - RBG24 format lost

折月煮酒 提交于 2019-12-24 02:42:51
问题 I'm using DirectShowNet in C#. I've been developing an application to work with webcams to display video, change resolution, and take pictures (either Still pin or from the Capture stream). I've been testing it on 2 different machines (Win 7 64-bit & Win 8 64-bit) and with the internal webcams on those machines (they are laptops) and 2 other webcams, Logitech C920 and Microsoft LifeCam Studio. One day, the LifeCam Studio stopped working on my Win 8 machine. Using GraphEditPlus, checking the

DirectShow (Stream.h) for Windows 10 Development

大城市里の小女人 提交于 2019-12-24 01:24:19
问题 I just noticed that streams.h is missing, while I was compiling DSVideoLib on my machine. A quick research pointed me to the Windows SDK. https://msdn.microsoft.com/en-us/library/windows/desktop/dd407279(v=vs.85).aspx Well after installing the windows sdk again, I still cannot find those files and folders in my windows sdk folder. Does anybody have an idea where to get the DirectShow library on windows 10? 回答1: Streams.h and and other BaseClasses directory files can be found in Windows SDK 7

DirectShow.NET sample - load a better profile

£可爱£侵袭症+ 提交于 2019-12-24 00:16:09
问题 I am running the CapWMV sample application of DirectShow.NET. It is loading a very low quality profile in Capture.cs: // Windows Media Video 8 for Dial-up Modem (No audio, 56 Kbps) // READ THE README for info about using guids Guid cat = new Guid(0x6E2A6955, 0x81DF, 0x4943, 0xBA, 0x50, 0x68, 0xA9, 0x86, 0xA7, 0x08, 0xF6); The readme says if you MUST use guids, you can find them defined in %windir%\WMSysPr9.prx. But when I load another profile, if fails, presumably because I am not connecting

uniquiely differentiate between multiple cameras [dshow, directx, win32api]

和自甴很熟 提交于 2019-12-23 22:14:24
问题 Is there a sure way to programmatically differentiate between multiple cameras? I enumerate CLSID_VideoInputDeviceCategory and then I GetDisplayName on each IMoniker. What I found out is that with some cameras plugging them into different USB socket will return you different unique ID, that is, same camera plugged in into different sockets is regarded by my program as multiple cameras attached at different time. Other cameras plugged into different usb sockets are identified with the same