Commit Graph

643 Commits

Author SHA1 Message Date
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
Alexandre Julliard 2ab7625934 Removed most imports of ntdll since we no longer import Wine internal
functions from there.
2002-05-17 03:37:12 +00:00
Alexandre Julliard ad53383f9b Added winebuild support for generating a .dbg.c file containing the
debug channels definitions.
Made win32 the default type for spec files.
Ignore C compiler in winebuild so we can simply pass it $(DEFS).
Removed type win32 and debug_channels from spec files.
Fixed winebuild to always generate correct C identifiers (reported by
Vincent Béron).
2002-05-14 20:54:58 +00:00
Alexandre Julliard 67371bcc8d Added -res option to specify resources on winebuild command-line.
Added -exe mode to generate a .spec.c for an exe without having to
provide a .spec.
Removed some no longer needed spec files.
Removed .dll extension in makefiles import specifications.
2002-05-11 23:06:32 +00:00
Alexandre Julliard 32459912dc Moved imports specification from the .spec into the Makefile so that
it can be used on platforms that don't build a .spec.c file.
2002-05-09 00:05:48 +00:00
Alexandre Julliard b6a7ca5855 Removed a bunch of multimedia code at Hidenori's request. 2002-05-02 01:29:18 +00:00
Hidenori Takeshima 9fe4deb7de Reimplemented the asynchronous source filter. 2002-04-29 18:36:33 +00:00
Alexandre Julliard 3b1e3c8f9b Fixed warnings. 2002-04-27 21:16:28 +00:00
Alexandre Julliard 5769d1de00 Better support for configure detection of missing types, added check
for ssize_t.
Removed a couple of no longer used portability functions.
Various portability fixes in port.h.
2002-04-26 19:05:15 +00:00
Hidenori Takeshima b8ae37ccda Implemented MJPG handler. 2002-04-19 00:05:05 +00:00
Hidenori Takeshima 912f899c96 Fixed some bugs.
Added stubs.
Remove harmless FIXMEs.
2002-04-14 19:32:31 +00:00
Hidenori Takeshima 425acfdc21 Added some stubs. 2002-04-08 20:13:54 +00:00
Hidenori Takeshima bf6c92aa3a Fixed crashing in stopping parser. 2002-04-08 20:12:50 +00:00
Hidenori Takeshima 0f1f42ea9c Fixed some bugs.
Implemented some methods of CLSID_ACMWrapper.
2002-04-01 20:59:24 +00:00
Hidenori Takeshima 4887da520e Removed some code because of concerns over the Microsoft DirectX SDK
license agreement.
2002-03-22 19:19:23 +00:00
Hidenori Takeshima d5d18816c7 Added some stubs.
Started implementing MPEG parser.
2002-03-20 22:57:15 +00:00
Alexandre Julliard c1bfca04e1 Changed builtin dlls file names to make it clear they are not normal
Unix libraries, and install them in $libdir/wine instead of $libdir to
avoid name conflicts in /usr/lib.
2002-03-20 22:19:06 +00:00
Hidenori Takeshima a558562409 Fixed some bugs.
Fixed audio renderer.
Implemented seeking.
Added some stubs.
2002-03-19 02:15:26 +00:00
Hidenori Takeshima c2503b5583 Added some stubs. 2002-03-11 01:18:30 +00:00
Alexandre Julliard 0799c1a780 Added LGPL standard comment, and copyright notices where necessary.
Global replacement of debugtools.h by wine/debug.h.
2002-03-09 23:29:33 +00:00
Andreas Mohr 8bc7f16caa Spelling/alignment fixes. 2002-02-27 01:34:08 +00:00
Hidenori Takeshima 6a32d2ce46 Fixed some deadlocks. 2002-02-19 18:30:26 +00:00
Dimitrie O. Paun 693cca5d4d Make FIXMEs more grep-able. 2002-01-29 03:12:19 +00:00
Francois Gouget 5f30ee0651 Comment out/ifdef out unused code and variables. 2002-01-21 23:37:53 +00:00
Hidenori Takeshima d359812d6b Fixed some bugs.
Implemented IPropertyBag.
Implemented some FilterMapper2 methods.
Implemented AddSourceFilter.
Implemented Render partially.
Implemented Connect partially.
2001-10-28 21:16:00 +00:00
Hidenori Takeshima 17bee2ef58 Fixed some bugs.
Implemented AVI Decompressor.
Started implementing Color Space Converter.
Started implementing seeking.
2001-10-22 19:03:26 +00:00
Hidenori Takeshima bc7d0272b3 Started implementing AVI splitter.
Implemented AsyncSource.
Merged some C sources.
Fixed some bugs.
2001-10-14 16:13:14 +00:00
Hidenori Takeshima bd3be7a905 Started Implementing Video Renderer.
Started Implementing WAVE/AU/AIFF Parser.
Started Implementing file source.
Fixed some bugs.
2001-10-08 20:56:08 +00:00
Hidenori Takeshima 6619ebad32 Implemented CLSID_AudioRender. 2001-10-01 20:53:58 +00:00
Hidenori Takeshima c9f0ff2d8c Merged some C sources.
Fixed some bugs.
Started implementing some pass-through interfaces.
2001-09-25 22:37:04 +00:00
Hidenori Takeshima cde7d63bd5 Implemented ISeekingPassThru. 2001-09-19 22:39:34 +00:00
Hidenori Takeshima e575ad292e Implemented IMemAllocator. 2001-09-17 20:04:28 +00:00
Hidenori Takeshima 1a8b33997f Added stubs for mapi32, msimg32, sti and url. 2001-09-14 21:36:30 +00:00
Patrik Stridvall 3c0211f969 Cleanup code that is strange or difficult to parse. 2001-09-11 00:32:32 +00:00
Hidenori Takeshima ecbf6c112b Fixed some broken macros.
Added some stubs.
Implemeted undocumented APIs.
Implemented many methods in IMediaFilter, IMediaControl and
IReferenceClock.
Started Implementing IMemoryAllocator.
2001-09-11 00:29:03 +00:00
Hidenori Takeshima 96e9615701 Added some stubs.
Started implementing some interfaces in FilterGraph.
2001-09-07 19:46:49 +00:00
Hidenori Takeshima 8eebd2c93d Added some stubs. 2001-08-28 17:25:39 +00:00
Hidenori Takeshima ffb0d94e3d Added two missing headers.
Implemented AMGetErrorText.
2001-08-22 18:20:36 +00:00
Hidenori Takeshima 615c0e0ca5 Added some stubs for CLSID_FilterGraph. 2001-08-22 18:06:00 +00:00
Hidenori Takeshima fb96436931 Added some stubs for quartz dll. 2001-08-15 19:26:52 +00:00
Hidenori Takeshima b7d4b4e73b Added stubs for quartz.dll. 2001-07-02 18:57:22 +00:00