Commit Graph

290 Commits

Author SHA1 Message Date
Paul Vriens cc6bb93baa quartz: Fixed typo (Coverity). 2006-06-29 14:39:27 +02:00
Paul Vriens e5f009e05c quartz: Use the return value of register_key_guid. 2006-06-29 14:39:16 +02:00
Ivan Leo 1644974491 quartz: Fix media type detection. 2006-06-22 12:29:03 +02:00
Mike McCormack d20c6cf8ca Fixed more boolean comparisons against TRUE. 2006-05-24 14:38:20 +02:00
Jonathan Ernst 360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Hans Leidekker 1f35ff591c quartz: Add stub implementation for AMGetErrorText{A,W}. 2006-05-22 11:49:22 +02:00
Robert Shearman 74407105d2 Check the return value from register_key_guid in all the DLL registering code. 2006-05-10 19:38:04 +02:00
Dmitry Timoshkov 78904aab2d quartz: Register some of the interfaces. 2006-02-07 12:25:35 +01:00
Eric Pouech e66e227dbe Fixes for missing prototypes warnings. 2006-02-06 13:13:28 +01:00
Thomas Weidenmueller 2b4377f5eb quartz: Fix incorrect usages of the HRESULT_FROM_WIN32 macro. 2005-12-09 11:21:51 +01:00
Ge van Geldorp 1a1583a364 Match PSDK STATUS_* definitions. 2005-11-28 17:32:54 +01:00
Alexandre Julliard 0ec7e1a591 Renamed all .cvsignore files to .gitignore. 2005-11-26 13:10:33 +01:00
Francois Gouget 6d442aeb34 Assorted spelling fixes. 2005-11-23 20:14:43 +01:00
Christian Costa b82d94e4f1 Make window uses black brush for background.
Check format type of video stream.
2005-10-10 10:44:54 +00:00
Alexandre Julliard 7e22be4d84 We are no longer generating .dbg.c files. 2005-09-29 10:35:58 +00:00
Alexandre Julliard 9f859692f9 Replace DPRINTF by TRACE in a few places. 2005-09-25 15:23:21 +00:00
Christian Costa bfbba1a6fd Fix function names. 2005-09-25 15:17:30 +00:00
Alexandre Julliard 305b221cf0 Get rid of another long long constant. 2005-09-14 10:30:36 +00:00
Alexandre Julliard c6b005ac69 Fixed some more traces to use the right printf format and avoid
typecasts.
2005-09-12 14:12:46 +00:00
Mike McCormack dc1c62a592 Fix gcc 4.0 warnings. 2005-09-07 11:31:17 +00:00
Christian Costa df75a4f028 Forward calls of IBasic* and IVideoWindow interfaces of the
filtergraph to the right filter.
2005-09-02 11:20:09 +00:00
Christian Costa 8f3cc76ea2 Return S_OK when committing/decomitting an already
committed/decommitted allocator.
Add corresponding test case.
Improve traces.
2005-08-22 09:27:41 +00:00
Christian Costa 6301fec0ef Properly allocate/release memory when adding filters to the filtergraph.
When connecting pin, discard filter which is the same as the upstream
one.
Remove wrong extra IBaseFilter_Release.
Improve traces by showing filters owing pins we want to connect or
render.
Properly initialize output pin of transform filter.
2005-08-22 09:21:24 +00:00
Christian Costa 7f3c43b5c9 Add stubbed IGraphConfig interface to the filtergraph. 2005-08-17 09:52:15 +00:00
Christian Costa 19f9da8044 Fix rendering of paletted video stream. 2005-08-17 09:51:57 +00:00
Mike McCormack 50a6d970f5 gcc 4.0 warning fixes for Interlocked* functions. 2005-08-03 11:03:05 +00:00
Alexandre Julliard 738e88db5f Replace the ICOM_THIS_From macros by inline functions. 2005-07-27 15:14:18 +00:00
Mike McCormack bda7ace2e9 Interlocked LONG* gcc warning fixes. 2005-07-13 11:59:15 +00:00
Mike McCormack 0791d06215 Interlocked LONG* gcc warning fixes. 2005-07-12 19:21:36 +00:00
Mike McCormack e8c1bf3283 Make functions static, fix declarations. 2005-06-20 18:39:40 +00:00
Stefan Huehner ac6f562b52 Fix more -Wstrict-prototypes warnings. 2005-06-20 14:18:03 +00:00
Francois Gouget 7706560dcd Remove unneeded NULL cast. 2005-06-17 20:55:27 +00:00
Christian Costa acb2ff2da5 Added window support to the video renderer:
- replaced ddraw code by window code.
- implemented IBasicVideo and IVideoWindow interfaces.
2005-06-13 11:37:55 +00:00
Christian Costa 09b4966957 Don't use fullscreen mode in video renderer for now and improve error
handling a bit.
Improved a bit Run/Pause/Stop methods of parser template.
2005-06-07 20:29:23 +00:00
Dmitry Timoshkov eba47f1dfe Make remaining OLE interface vtables const. 2005-06-06 19:50:35 +00:00
Christian Costa 623fb34acc Fixed clock release in transform template.
AddRef pUnk in CopyMediaType.
Added CreateMediaType helper function and use it.
Replaced some DeleteMediaType calls to FreeMediaType to be in line
with recent changes.
Fixed IEnumMediaTypesImpl_Next.
Clear media type when initializing pins.
Added some AddRef/Release traces.
2005-06-05 19:18:34 +00:00
Christian Costa cb6e4a12ea Release clock only when one is set. 2005-06-04 09:37:35 +00:00
Maarten Lankhorst 05d658d012 Added reconnect function for filtergraph. 2005-05-18 13:25:49 +00:00
Maarten Lankhorst 0caae47658 Fixed freeing of mediatype. 2005-05-18 13:25:20 +00:00
Robert Shearman 54160222a0 Rename MODULENAME_Dll* functions to Dll* for better consistency and
type checking.
2005-05-17 14:41:37 +00:00
Alexandre Julliard 34fa35dc99 Added rules for building import libraries in the individual dll
makefiles, and added support for building a .def.a static import
library too.
2005-05-09 14:42:30 +00:00
Alexandre Julliard d62356aa1e Added rules to build import libraries in the individual dll makefiles.
Generate import libraries with the right name right away instead of
using an intermediate .spec.def file.
2005-05-07 12:39:52 +00:00
Maarten Lankhorst 4c9f5f6456 Fixed two small memory leaks. 2005-05-07 12:12:29 +00:00
Maarten Lankhorst 8efc1f3612 Fixed a dozen of reference (and some memory) leaks.
Implemented filtergraph_pause/stop.
2005-05-06 14:34:44 +00:00
Maarten Lankhorst aa4df8f63a Fixed {Copy/Delete/Free}MediaType functions to show proper behaviour.
Fixed EnumMediaTypes to copy pbFormat too.
Added FreeMediaType.
2005-05-06 14:34:02 +00:00
Christian Costa 7180775af6 Forward CLSID_FilterGraphNoThread to CLSID_FilterGraph. 2005-05-05 09:50:35 +00:00
Christian Costa e901cc4b53 Improved errors handling a bit in dsound renderer. 2005-04-25 10:49:22 +00:00
Peter Berg Larsen 6e3bcb5a54 Replace strncpy with memcpy or lstrcpyn. 2005-04-18 10:30:55 +00:00
Robert Shearman 51ae41eb0b Return an error instead of crashing later on a divide by zero
exception when an alignment of 0 is specified.
2005-04-11 18:50:58 +00:00
Peter Berg Larsen e732fc023d Janitorial: Get rid of strncpy/strncpyW. 2005-03-28 14:17:51 +00:00
Jakob Eriksson d69bdcfc21 Don't run FilterGraph tests if FilterGraph functionality is not
available.
2005-03-25 10:25:24 +00:00
Jakob Eriksson 9ed61de9a2 Get rid of HeapAlloc casts. 2005-03-24 21:01:35 +00:00
Dmitry Timoshkov 75b93ff1aa Match OVERLAPPED structure to the SDK definition. 2005-03-17 19:00:08 +00:00
Alexandre Julliard d0ee9f9309 Avoid spaces before preprocessor directives, that's not portable. 2005-03-02 12:23:20 +00:00
Christian Costa 7dea79c487 Handle End Of Stream notifications.
Some AVI Splitter fixes.
2005-03-02 10:12:12 +00:00
Christian Costa 19b78a0e21 Fixed ACM Wrapper. 2005-02-22 14:50:16 +00:00
Christian Costa 56c701df3f Improved AVIDec.
Added 2 new callback functions to the transform template and moved all
of them into a funcs table.
2005-02-21 20:37:45 +00:00
Francois Gouget 4d801b66e6 Assorted spelling fixes. 2005-02-10 19:19:35 +00:00
Christian Costa 80a2e6e93b Added WAVE parser. 2005-02-10 17:13:18 +00:00
Christian Costa cfbffe6909 Added parser template and made AVISplitter use it. 2005-02-08 13:43:59 +00:00
Christian Costa 72213b18c7 Added ACM Wrapper filter.
Cleaned up AVIDec.
2005-02-01 14:22:00 +00:00
Christian Costa b024178120 Added transform filter template and made AVIDec use it.
Fixed memory leak in register_filters function.
2005-01-31 16:24:00 +00:00
Mike Hearn 2cfcf1c339 Fix heap corruption in quartz server registration, add some
whitespace, break out of loop if out of memory.
2005-01-21 10:14:45 +00:00
Paul Vriens 8dd96b170e Add an extra class to register. 2005-01-11 15:44:42 +00:00
Christian Costa b3f064ccc7 Fixed error handling in Graphbuilder_RenderFile.
Improved traces.
2005-01-09 18:24:41 +00:00
Christian Costa 617dc088a5 Added registration for quartz filters. 2005-01-09 17:28:07 +00:00
Eric Pouech cf1d00bb08 Removed excessive statement (break after return or goto, not useful
break, not needed vars...)
2005-01-09 16:42:53 +00:00
Paul Vriens 1e0aaaf210 - Media Types (and Extensions) should use "Source Filter" instead of
"File Source".
- Removed filesource_valuename.
- Fixed typo for some class-names.
- Fixed typo in MPEG1System Media Type.
2005-01-07 15:34:54 +00:00
Paul Vriens c6559a104c - Use Interlocked* functions in AddRef and Release.
- Store the result of the Interlocked functions and use only this.
2005-01-06 19:36:47 +00:00
Christian Costa 45f111a276 Implemented IMediaControl_Run that explores the graph, counts
renderers and starts filters.
Better implementation of IBaseFilter_Run for AVI SPlitter and AVI
Decompressor.
Use the standard memory allocator when an output pin does not provide
any allocator.
Set allocator properties for AVI Decompressor output pin and update
the buffers size at connection time.
2005-01-03 20:23:14 +00:00
Christian Costa 18511a38e7 Added registration/unregistration of media types. 2005-01-03 17:05:47 +00:00
Christian Costa 9b8d5c625f Initialize the COM libraries for the newly created worker thread in
the AVI splitter.
Fixed some returned error codes.
Show refcount in the AddRef/Release traces in filter.
Added 24 bits source in the video renderer.
2004-12-27 17:15:58 +00:00
Michael Stefaniuc 5ad7d858e0 Do not check for non NULL pointer before HeapFree'ing it. It's
redundant.
2004-12-23 17:06:43 +00:00
Francois Gouget 6fb1a20020 Assorted spelling fixes. 2004-12-20 19:27:06 +00:00
Christian Costa 5182f707f5 Fixed MediaSample passing. This is the upstream filter that releases
it.
Set ppMediaType to NULL when returning S_FALSE in
IMediaSample_GetMediaType (required by native Quartz dll).
Added support for 32-bit depth source in video renderer.
2004-12-20 17:07:17 +00:00
Christian Costa 1d90e4312f Many fixes to the system clock implementation.
Ensure there is a clock before doing any AddRef or Release in the AVI
splitter.
Improved tests a bit.
Misc fixes and traces clean-up.
2004-12-16 14:25:15 +00:00
Alexandre Julliard ebe3c529b1 Janitorial: C booleans must not be compared against TRUE. 2004-12-09 14:07:59 +00:00
Christian Costa ce70daf3ec Allocate the proper size for the SystemClock object. 2004-12-08 19:33:09 +00:00
Christian Costa 8d01911493 Better handling of errors in RenderFile. 2004-12-06 11:47:13 +00:00
Eric Pouech 0a258964c2 Const correctness fixes. 2004-11-30 21:38:57 +00:00
Christian Costa 161a6b4d21 AVI decompressor:
- Make copies of bitmap header from media type for input and output
  and update them when needed.
- Fixed subtype for 32-bit depth in QueryAccept.
AVI splitter:
- Fixed handling of rec list.
2004-11-29 17:50:23 +00:00
Alexandre Julliard 03bd646cd0 Added missing CoInitialize. 2004-11-29 17:01:21 +00:00
Tom Wickline 5c38e1b561 Version resources cleanup. 2004-11-23 13:59:34 +00:00
Christian Costa 8db6b0a514 Implemented IGraphBuilder methods: Connect, Render, RenderFile &
AddSourceFilter.
Fixed filter name generation in IGraphBuilder::AddFilter.
2004-11-19 18:17:27 +00:00
Christian Costa c0b772dc51 Fixed IEnumPinsImpl_Next. 2004-11-19 18:03:19 +00:00
Joris Huizer 823c418d8e Added IClassFactory->CreateInstance aggregation checks. 2004-10-18 21:21:19 +00:00
Vincent Béron 157b32c0f1 Correct the calling convention of GetSystemWow64Directory{A,W},
AmpFactorToDB and DBToAmpFactor.
2004-10-08 21:01:44 +00:00
Francois Gouget 486d020c1b Don't define COBJMACROS in objbase.h.
Update the Wine sources accordingly.
2004-10-07 03:06:48 +00:00
Francois Gouget 67aa858a31 Assorted spelling fixes. 2004-10-05 18:15:29 +00:00
Alexandre Julliard 5ee74004a5 Converted control.h to idl. 2004-10-05 02:18:08 +00:00
Huw Davies e8d89cd0f5 Fix a reference leak on failure (spotted by Rob Shearman).
Move some code over to the Interlocked* functions.
2004-09-28 19:19:27 +00:00
Hans Leidekker 719a789792 Fix signed/unsigned comparison warnings. 2004-09-22 02:46:38 +00:00
Christian Costa e930aba6e6 Added support for REGFILTER2 structure with dwVersion equal to 1 when
registering filters.
Fixed default category when RegisterFilter is called without one
specified.
2004-09-20 21:44:01 +00:00
Alexandre Julliard f5f7a1822c Removed some more uses of the non-standard ICOM_THIS macro. 2004-09-08 01:50:37 +00:00
Christian Costa ece3e81e94 Added stubs for AmpFactorToDB and DBToAmpFactor.
Added GetProxyDllInfo.
2004-09-06 20:23:42 +00:00
Christian Costa 4f5075c381 Fixed FilterMapper2_CreateCategory. 2004-09-01 01:28:22 +00:00
Francois Gouget dff5004bc0 Assorted spelling fixes. 2004-08-26 00:31:20 +00:00
Christian Costa f096fa3a0e Added Video Renderer (based on Direct Draw).
Added Direct Sound Audio Renderer.
Added AVI Decompressor (VFW decompressors wrapper).
2004-08-24 02:28:35 +00:00
Alexandre Julliard f714b39762 Get rid of the no longer used ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
macro.
2004-08-23 19:39:48 +00:00
Francois Gouget a896389679 Added 'strmiids.lib'.
Moved CLSID_FilterGraph and the related GUIDs to strmiids.
2004-08-19 19:31:20 +00:00
Francois Gouget a98f77668d Define COBJMACROS. Fixes compilation on Windows. 2004-08-19 19:20:34 +00:00
Robert Shearman 0aab65a1ef - Remove duplicated code in file reader.
- Use new CreateSpecific function for file reader that doesn't query
  for IMemInputPin.
- Get rid of inefficient use of IMemInputPin in general pin code.
2004-08-19 02:33:00 +00:00
Christian Costa e3a288f474 Added tests for filtergraph. 2004-08-16 21:14:28 +00:00
Robert Shearman 7deab42609 Fix potential race in IPinImpl_ConnectedTo. 2004-08-16 21:07:22 +00:00
Christian Costa b10996c5e4 Added handling of 'idx1' (index) chunk.
Added handling of 'rec ' list that embeds streams data.
Disabled checking of the TWOCC of streams data chunk. It is not
relevant in avi files.
Only release media sample when the delivery to the downstream filter
does not succeeded.
Some clean-up.
2004-08-16 20:06:17 +00:00
Christian Costa 5edd6610e3 Fixed a bug that made the connection possible whereas no suitable
media type has be found during the negotiation.
Fixed the release of the media sample in PullPin_Thread_Process.
Added and fixed a lot of traces.
2004-08-16 19:49:46 +00:00
Christian Costa 8b0ec72563 Added missing initialization of the filesource output pin critical
section.
Avoid indefinite wait when calling GetOverlappedResult.
Fixed initial refcount of the IMemAllocator object.
Improved some traces.
2004-08-13 19:49:16 +00:00
Alexandre Julliard 936198ce45 Moved ICOM_THIS_MULTI definition out of objbase.h and into the files
that use it.
2004-08-13 00:44:22 +00:00
Alexandre Julliard 48c4bb3c31 Get rid of the non-standard ICOM_VTABLE macro. 2004-08-12 23:00:51 +00:00
Alexandre Julliard 0467ce9fd7 Get rid of the non-standard ICOM_VFIELD macro. 2004-08-12 19:52:49 +00:00
Robert Shearman 0b20ab1806 ckidJUNK is a FOURCC not a TWOCC so rewrite the case statement
appropriately.
2004-07-22 23:44:39 +00:00
Ivan Leo Murray-Smith 10778aa761 Updated the version info of all DirectX dlls to the version numbers of
DirectX 9.0b for Windows 2000/XP.
2004-05-14 21:37:32 +00:00
Raphael Junqueira 0359eaa80c Implemented SystemClock (IReferenceClock by dshow). 2004-05-05 23:51:59 +00:00
Christian Costa 385d89a770 Enable querying of IID_FilterGraph interface from filtergraph manager
(spotted by Robert Reif).
2004-04-30 04:14:19 +00:00
Francois Gouget 52c0832161 Make Unicode strings static const. 2004-04-20 01:12:17 +00:00
Francois Gouget 6a6c85c6d8 Make Unicode const strings static so they are not copied to the stack
each time we enter the function.
2004-04-19 20:12:14 +00:00
Michael Stefaniuc ca97f7fd26 Fix cut'n'paste error: leave the CriticalSection not enter it again
(found by smatch).
2004-04-05 20:16:35 +00:00
Alexandre Julliard 9e4ed6460c .spec.c files are no longer used for 32-bit dlls. 2004-03-24 03:36:44 +00:00
Christian Costa aca2cfc319 Implemented IMediaEventSink and IMediaEventEx interfaces. 2004-03-05 20:42:40 +00:00
Christian Costa b0c9f6a34d Implemented IFilterGraphImpl_EnumFilters and IEnumFilters interface.
Renamed constructor of IEnumRegFilters interface.
Small fix in IFilterMapper_EnumMatchingFilters.
2004-03-04 06:07:30 +00:00
Christian Costa 203b526a8b Handle null and duplicate name when adding a filter to the
filtergraph.
2004-03-03 02:18:13 +00:00
Christian Costa 57b2104f54 Implemented IFilterMapper and IEnumRegFilters interfaces.
Fixed IFilterMapper2_EnumMatchingFilters.
2004-03-01 23:32:04 +00:00
Patrik Stridvall ede82e3055 Fixed some issues found by winapi_check. 2004-02-20 20:19:23 +00:00
Alexandre Julliard 20b4585e3c Only link against libdxguid where necessary. 2004-01-27 00:11:16 +00:00
Robert Shearman e14e101fed - Fixed buffer overflow in IFilterMapper2::RegisterFilter.
- Fixed buffer overflow in DEVENUM_IPropertyBag_Read.
- Fixed NULL pointer de-ref in DllRegisterServer when IFilterMapper2
  is not registered.
- Allowed returning the moniker in IFilterMapper2::RegisterFilter.
- Enumerate special categories without causing infinite loop.
2003-12-30 21:52:45 +00:00
Robert Shearman 3f854103ad - Fix IGraphBuilder::ConnectDirect.
- Register IFilterMapper and IFilterMapper2 in DllRegisterServer.
2003-12-30 19:13:05 +00:00
Gerald Pfeifer e04b8d5056 Avoid long long constant. 2003-11-20 04:18:50 +00:00
Robert Shearman d6254fcb43 - AVI Splitter implementation.
- Add new debugging function wine_dbstr_longlong.
2003-11-18 20:47:48 +00:00
Dimitrie O. Paun fbdfd910c1 Remove SYMBOLFILE and LDDLLFLAGS from Makefiles. 2003-10-11 01:09:15 +00:00
Daniel Marmier 7e0ddbc60f Fixed warnings with gcc option "-Wwrite-strings". 2003-10-07 22:54:17 +00:00
Robert Shearman 0a6f11c88a - A few cosmetic fixes.
- Various bug fixes.
- Add some OutputPin helpers.
- Add a new type of pin, PullPin.
2003-09-25 23:50:06 +00:00
Robert Shearman 8e538a3dca Implemented IMemAllocator and IMediaSample. 2003-09-11 21:18:36 +00:00
Tom Wickline 48fd8cad59 Set version to 8.1. 2003-09-11 01:02:27 +00:00
Alexandre Julliard 20c169e0a4 Fixed a few more headers dependency issues. 2003-09-09 19:39:31 +00:00
Alexandre Julliard e37c6e18d0 Fixed header dependencies to be fully compatible with the Windows
headers (with help from Dimitrie O. Paun).
2003-09-05 23:08:26 +00:00
Alexandre Julliard 81c31701d2 Avoid including wine/obj_*.h files directly from C files.
Removed no longer used obj_serviceprovider.h.
2003-09-03 00:16:28 +00:00
John K. Hohm 2c296648ed Implement DllRegisterServer and DllUnregisterServer for quartz.dll,
and add OleSelfRegister version string.
2003-08-23 22:56:43 +00:00
Robert Shearman ad302ff7dd Added File Source (Async) Filter. 2003-08-06 23:00:14 +00:00
Robert Shearman cae7755a70 - Bugfix when adding filters to graph due to not initializing
variables on creation of graph.
- Remove clue of where I copied one of the copyright messages from.
- Add implementation of input and output pins which will be used by a
  lot of filters in Quartz.
2003-08-06 22:04:45 +00:00
Alexandre Julliard 20698b22df Make the DllRegisterServer, DllRegisterServerEx, DllUnregisterServer,
DllGetClassObject and DllCanUnloadNow functions private (suggested by
Jon Griffiths).
2003-07-30 03:48:55 +00:00
Robert Shearman bd1173ca27 - Improve QueryInterface FIXME message.
- Add stubs for IMediaFilter interface in IGraphBuilder.
- Implement some simple methods.
2003-07-03 18:09:28 +00:00
Francois Gouget 14a5d168e9 Fixed some common spelling errors. 2003-07-02 04:37:26 +00:00
Robert Shearman f040a4514f Fix compilation due to nameless structs and unions. 2003-07-02 00:36:18 +00:00
Robert Shearman c71301a308 Implemented IFilterMapper2. 2003-07-01 04:29:48 +00:00
Dmitry Timoshkov 4e1ef0c114 For all DLLs with defined DllMain and which do not require
DLL_THREAD_ATTACH/DLL_THREAD_DETACH notifications, call
DisableThreadLibraryCalls() in order to slightly improve performance
on thread creation/exiting.
2003-06-30 20:53:48 +00:00
Robert Shearman 7c8b85a222 - Added DShow headers.
- Added needed const's in FilterGraph implementation.
2003-06-30 20:24:52 +00:00
Lionel Ulmer 1fa9624682 Stubbed some interfaces for the FilterGraph CLSID. 2003-06-13 18:06:44 +00:00
Dominik Strasser 2e27f8c930 Some stubs for dll setup needed by IE6 setup. 2003-01-02 17:55:45 +00:00
Alexandre Julliard dbf8b78acd Added .spec.def files. 2002-12-12 22:04:04 +00:00
Alexandre Julliard 77afd6c47e Made some more spec file entries optional or unnecessary.
Fixed a few DLLName/DLLFileName mismatches.
2002-06-21 19:15:45 +00:00