Commit Graph

818 Commits

Author SHA1 Message Date
Maarten Lankhorst 8af5c1b729 quartz: Fix return value of GetMediaTime. 2010-11-08 13:30:23 +01:00
Maarten Lankhorst 769b3b515f quartz: Fix run/pause/stop in filtergraph. 2010-11-05 17:15:36 +01:00
Maarten Lankhorst 14229c1176 quartz: Simplify all_renderers_seek.
Since IAMFilterMiscFlags is supported by all source/renderer filters, use that instead.
2010-11-05 17:15:36 +01:00
Maarten Lankhorst 7fda01e522 quartz: Change HeapRealloc call to CoTaskMemRealloc. 2010-11-05 17:15:35 +01:00
Maarten Lankhorst 9dedc4a795 quartz: Add IAMFilterMiscFlags to file source. 2010-11-05 11:24:46 +01:00
Maarten Lankhorst 443e24fe88 quartz: Add IAMFilterMiscFlags to null renderer. 2010-11-05 11:24:42 +01:00
Maarten Lankhorst 79f717bb91 quartz: Fix EC_COMPLETE handling on null renderer. 2010-11-05 11:24:36 +01:00
Maarten Lankhorst 822c3fe9ea quartz: Add IAMFilterMiscFlags to video renderer. 2010-11-05 11:24:33 +01:00
Maarten Lankhorst 6072a3b5ac quartz: Fix EC_COMPLETE handling on video renderer. 2010-11-05 11:24:22 +01:00
Maarten Lankhorst 0196da9b4d quartz: Add IAMFilterMiscFlags to directsound renderer. 2010-11-05 11:24:15 +01:00
Maarten Lankhorst 89223ff78b quartz: Fix EC_COMPLETE handling on dsound renderer. 2010-11-05 11:24:08 +01:00
Aric Stewart 7e8751b2e1 strmbase: More properly standardized pin implementations for NewSegment. 2010-11-01 14:53:29 +01:00
Aric Stewart 60bf76db9a strmbase: Remove non-standard custom allocator logic from strmbase.
Implement function overrides for parser.c where a custom allocator was needed.
2010-10-14 17:54:52 +02:00
Aric Stewart 7602829c4f strmbase: Add GetMediaType and GetMediaTypeVersion to BasePin function table.
Allows for more widespread use of the BasePinImpl version of EnumMediaTypes.
2010-10-14 17:54:51 +02:00
Aric Stewart 3c2dfd186a strmbase: Standardize "class" function into functions tables in the structs.
This allows the standardization of the "class" functions to use the 
class as the argument and will aid in expanding the implementation of 
these functions.
2010-10-14 17:54:51 +02:00
Aric Stewart 8f3c3723bb strmbase: Clean up the allocator negotiating for BaseOutputPin. 2010-10-14 17:54:51 +02:00
Aric Stewart 602d44a12c strmbase: Move mediaSeeking to strmbase SourceSeeking. 2010-10-12 11:44:17 +02:00
Aric Stewart 34f3f7cae3 strmbase: Move TransformFilter implementation to strmbase. 2010-10-08 11:04:52 +02:00
Aric Stewart 791087089c strmbase: Add an implementation of BaseFilterImpl_EnumPins. 2010-10-08 11:04:09 +02:00
Aric Stewart 1d42659c40 strmbase: Implement BaseFilter in strmbase. 2010-10-08 11:04:04 +02:00
Aric Stewart 66e1ad8a96 strmbase: Move InputPin implementation to strmbase. 2010-10-06 20:46:48 +02:00
Aric Stewart 5c1409b55f strmbase: Move OutputPin implementation to strmbase. 2010-10-06 20:46:48 +02:00
Aric Stewart 0410e50e00 strmbase: Move BasePin implementation to strmbase. 2010-10-06 20:46:48 +02:00
Aric Stewart bb110c7749 strmbase: Move enumpins from quartz to strmbase. 2010-10-06 20:46:47 +02:00
Aric Stewart 89ea07f7d0 strmbase: Add the EnumMediaTypes base implementation. 2010-10-06 20:46:47 +02:00
Aric Stewart 961921060c strmbase: Initial creation of static strmbase library for Quartz and Quartz filters.
Move the Media Type Functions.
2010-10-05 15:56:30 +02:00
Maarten Lankhorst 781cb48653 quartz: Add additional notifications to transform filter. 2010-10-05 13:03:01 +02:00
Maarten Lankhorst b6c523252d quartz: Remove forwarding from base class. 2010-10-05 13:02:54 +02:00
Maarten Lankhorst 4fe2be86a6 quartz: Add support for MediaSeekingPassThru to transform filter. 2010-10-05 13:02:47 +02:00
Maarten Lankhorst f48f6099f7 quartz: Add support for MediaSeekingPassThru to null renderer. 2010-10-05 13:02:41 +02:00
Maarten Lankhorst deaeeb7183 quartz: Use MediaSeekingPassThru for DirectSound renderer. 2010-10-05 13:02:33 +02:00
Maarten Lankhorst 81b15f35bf quartz: Add MediaSeekingPassThru to video renderer. 2010-10-05 13:02:24 +02:00
Maarten Lankhorst 8296cc7eb9 quartz: Handle passthru calls better. 2010-10-05 13:02:10 +02:00
Alexandre Julliard 730f01801f tests: Make some variables static. 2010-10-01 13:41:42 +02:00
Aric Stewart e2b3a7f479 quartz: Improve video window sizing on first sample.
Preserve sizes set by the application and defer erasing as it is not
needed and can cause deadlock between threads with child video windows.
2010-09-28 17:33:19 +02:00
Aric Stewart 97343b0f00 quartz: Allow for proper setting of the video window to WS_CHILD.
If the set_WindowStyle comes before the set_Owner then the style was not 
being set properly (WS_CHILD cannot be set on a window with a NULL 
parent). So reset the window style when the set_Owner command comes in 
to make the new style allowable.
2010-09-24 17:00:15 +02:00
Austin English fc48daa0d2 quartz: Fix compiler warnings on Clang. 2010-09-20 13:55:09 +02:00
Alexandre Julliard 81b8ee863e makefiles: Add a standard header for all makefiles to replace the common variable initializations. 2010-09-19 12:36:48 +02:00
Aric Stewart ac6db331ac quartz: Return E_OUTOFMEMORY of the StdMemAllocator is unable to allocate memory. 2010-09-18 13:09:20 +02:00
Alexandre Goujon 19a0350bde quartz: avisplitter Fix query interface test. 2010-09-18 13:07:58 +02:00
Maarten Lankhorst c9ce21ed7e quartz: Add support for renderer methods to MediaSeekingPassThru. 2010-07-28 13:33:41 +02:00
Maarten Lankhorst 5fbef39607 quartz: Implement MediaSeekingPassThru. 2010-07-28 13:33:18 +02:00
Maarten Lankhorst 9c07be4399 quartz: Make it possible to just override IMediaSeeking::GetCurrentPosition. 2010-07-28 13:32:50 +02:00
Maarten Lankhorst f830c544ac quartz: Accept tiny discontinuities in video renderer without printing out an error. 2010-07-28 13:32:33 +02:00
Maarten Lankhorst 3658bf2367 quartz: Fix flushing in dsound renderer. 2010-07-28 13:32:28 +02:00
Harry Jeffery 4faf80280c Fixed various spelling mistakes. 2010-07-26 13:34:20 +02:00
Alexandre Julliard b86d515ed6 dlls: Remove explicit imports of kernel32 and ntdll. 2010-07-21 17:38:36 +02:00
André Hentschel 57408882b6 equartz: Add ntdll to imports. 2010-05-31 14:20:06 +02:00
Michael Stefaniuc 63512e8e98 quartz: Avoid using the long type. 2010-05-20 13:47:44 +02:00
Maarten Lankhorst 02956bf798 quartz: Remove invalid check from put_WindowStyleEx in video renderer. 2010-05-20 12:45:02 +02:00
Maarten Lankhorst ab9cbecf1b quartz: Respect autoshow in video renderer. 2010-05-20 12:44:57 +02:00
Maarten Lankhorst 4c23814c48 quartz: Support negative heights in video renderer. 2010-05-20 12:43:45 +02:00
Maarten Lankhorst 231396de90 quartz: Add support for windowstate in video renderer. 2010-05-19 13:16:34 +02:00
Maarten Lankhorst 5568f33db3 quartz: Forward IMediaFilter to IMediaControl. 2010-05-18 08:50:54 +02:00
Maarten Lankhorst 44827a0336 quartz: Implement IBasicVideo get_AvgTimePerFrame. 2010-05-18 08:50:47 +02:00
Gerald Pfeifer cb469fec8b quartz: Fix return value of DSoundRender_GetState. 2010-05-14 11:05:29 +02:00
Gerald Pfeifer 5fd618a0cd quartz: Remove unused variable pOutputPin from MPEGSplitter_process_sample. 2010-05-12 14:13:15 +02:00
Gerald Pfeifer af72df259e quartz: Remove variable keyframe which is not really used from AVISplitter_next_request. 2010-05-10 10:16:53 +02:00
Jerome Leclanche 1db85c132e quartz: Properly return E_POINTER when ppFilters is null. 2010-05-03 17:20:58 +02:00
Gerald Pfeifer 0dac2e8911 quartz: Remove variable keyframe which is not really used from AVISplitter_next_request. 2010-04-26 09:03:24 -05:00
Gerald Pfeifer 6c016ac039 quartz: Fix return value for StdMediaSample2_GetTime in error cases. 2010-04-26 07:02:48 -05:00
Henri Verbeet 56659c3a70 quartz: Don't return a pointer to a stack variable in AMFilterData_ParseFilterData(). 2010-04-07 13:50:07 +02:00
Mikhail Maroukhine 0a671deb92 quartz: Fix compiler warnings with flag -Wcast-qual. 2010-04-01 18:12:41 +02:00
Francois Gouget 3428b94a8d Assorted spelling and case fixes. 2010-03-22 10:49:13 +01:00
Alexandre Julliard bef5645eb1 makefiles: Remove the no longer needed explicit separators for dependencies. 2010-03-16 13:28:19 +01:00
Nikolay Sivov da550ed257 quartz: Don't cast WSTR to BSTR, convert properly instead. 2010-03-15 14:18:06 +01:00
Paul Chitescu af2bed44f8 quartz: Silence the FIXME that AsyncReader does not implement IBasicAudio. 2010-03-03 10:59:01 +01:00
Paul Chitescu daa4943322 quartz: Do not assert() the existence of a media format of an input pin. 2010-02-24 15:12:30 +01:00
Alexandre Julliard 6164ce2d82 makefiles: Use the standard C_SRCS variable as the list of test files.
This enables it to be auto-updated by make_makefiles.
2010-02-22 10:47:11 +01:00
Christian Costa b47091a488 quartz: Add stubbed IAMDirectSound interface to DSoundRenderer. 2010-02-08 17:14:44 +01:00
Christian Costa f48d3c8eab quartz/tests: Add test for querying IAMDirectSound from DSoundRenderer. 2010-02-08 17:14:44 +01:00
Maarten Lankhorst 201c9a14bf quartz: Add some tests for dsound renderer. 2010-02-01 13:56:01 +01:00
Paul Chitescu e03b98ec68 quartz: Only wait in IMediaEvent::WaitForCompletion if the filter is running. 2009-12-24 12:15:40 +01:00
Paul Chitescu 7251e91d4d quartz: Implement NullRenderer's IBaseFilter::FindPin. 2009-12-24 12:15:40 +01:00
Alexandre Julliard a3fbb39299 quartz: Implemented a number of the MediaPosition methods. 2009-11-24 15:53:37 +01:00
Alexandre Julliard c81ac66d87 quartz: Add proxies for strmif.idl. 2009-09-11 13:40:17 +02:00
Juan Lang e73f31a6ef quartz: Don't crash if sample allocation fails. 2009-08-28 11:54:49 +02:00
Chris Robinson 7ba802ac29 quartz: Release enumpins when done with it. 2009-05-27 11:11:42 +02:00
Christian Costa 74c07a141e quartz: Data may be incomplete at the end of file so do not assert if we have less data than expected. 2009-04-14 11:28:34 -05:00
Marcus Meissner 5fdf50f76d quartz: Make sure cookie* are not uninitialized (Coverity 760). 2009-04-06 12:56:30 +02:00
Kai Blin 3fbf3f66db quartz/tests: If CoCreateInstance() fails, it's safe to return, as no cleanup is needed. 2009-03-24 10:28:01 +01:00
Michael Stefaniuc efbb4ebf3e widl: Output "LONG" instead of "long" for a 32bit integer.
long is always 32bit in IDL files but that's not true in C.
2009-03-13 11:15:21 +01:00
Michael Stefaniuc 7ef5f44bb5 include: Change long to LONG in axextend.idl. 2009-03-12 13:09:54 +01:00
Michael Stefaniuc a3269bdc40 quartz: Change long to LONG in control.idl. 2009-03-11 13:03:31 +01:00
Henri Verbeet 166db1e934 quartz: Use a more appropriate size for the video renderer window. 2009-02-19 12:54:00 +01:00
Alasdair Sinclair 20f565de5e quartz/tests: Fix missing void in empty parameter list. 2009-01-30 11:43:29 +01:00
Michael Stefaniuc cc7fc4abef quartz: Remove superfluous pointer casts. 2009-01-29 14:06:01 +01:00
Nikolay Sivov 5ea119a3d0 quartz: Fix NULL pointer dereference (Coverity). 2009-01-27 14:57:41 +01:00
Paul Vriens b4d246ba8f quartz/tests: Fix test failures on Win95 by using A-functions. 2009-01-27 11:30:09 +01:00
Francois Gouget 8be5798e3f quartz: Make the IMemInputPin functions static. 2009-01-26 15:13:09 +01:00
Juan Lang 669ced3a67 quartz: Only test for the presence or absence of a single filter in a loop. Testing for more than one depends on the order of enumeration, which isn't guaranteed. 2009-01-22 15:28:23 +01:00
Paul Vriens 9908100305 quartz/tests: Fix some test failures on Win95. 2009-01-21 13:23:55 +01:00
Michael Stefaniuc 2724adae2d quartz/tests: Remove superfluous pointer casts. 2009-01-21 10:25:38 +01:00
Lei Zhang e9f1aa29b2 quartz: Add a filtergraph test for mpeg files. 2009-01-15 12:42:50 +01:00
Alexandre Julliard 8c33528372 quartz: Use SetWindowLongPtr to store a pointer value. 2009-01-08 17:30:57 +01:00
Alexandre Julliard 0014046adc quartz: Avoid a pointer cast in a trace. 2009-01-08 13:17:49 +01:00
Francois Gouget 14d44a06ba quartz: OutputPin_DeliverNewSegment() is unused so remove it. 2009-01-08 12:40:45 +01:00
Francois Gouget 5b92b39b2c quartz: Reorder some functions to avoid forward declarations. 2009-01-07 14:40:44 +01:00
Christian Costa fa8cd7435f quartz: Remove unused IMemInputPin vtables. 2008-12-30 13:40:33 +01:00
Christian Costa c83e4f130f quartz: Fix some traces and fixmes. 2008-12-29 12:52:21 +01:00
Lei Zhang d17609ad92 quartz: Ignore unknown chunks when parsing AVI headers. 2008-12-19 17:44:43 +01:00
Paul Vriens 061302483f quartz/tests: Fix test failures on Win9x by using A-functions. 2008-12-18 14:53:12 +01:00
Hans Leidekker 8bd9a3aa09 janitorial: Don't depend on user32 for the self registration functions. 2008-12-17 11:38:32 +01:00
Lei Zhang 7e1b714f74 quartz: Enumerate all the pins on filter and check directions when rendering. 2008-12-16 12:52:32 +01:00
Christian Costa 480e697035 quartz: Turn some fixmes into traces. 2008-12-08 22:02:29 +01:00
Christian Costa 1f45516d91 quartz: Accept null clsMinorType for pins when registering filters + tests. 2008-12-08 12:02:33 +01:00
Michael Stefaniuc 1a18b797eb quartz: Don't cast zero. 2008-12-05 12:36:24 +01:00
Alexandre Julliard 18bf17e828 quartz: Use FIELD_OFFSET instead of casting a pointer to int. 2008-12-04 12:14:58 +01:00
Christian Costa 50fda76b40 quartz: Return properly when input is flushing or reaching end of stream. 2008-12-03 09:49:19 +01:00
Alexandre Julliard e78ea286fb quartz: Make some functions and variables static. 2008-12-02 15:25:19 +01:00
Christian Costa 14485c365b quartz: Avoid leaking penummt and mt on error. 2008-12-01 14:05:49 +01:00
Francois Gouget 57908f889a quartz: Remove CALLBACK on static functions where not needed. 2008-11-26 12:10:51 +01:00
Francois Gouget 9517637eb4 quartz: Remove WINAPI on static functions where not needed. 2008-11-26 12:10:48 +01:00
Ricardo Filipe abe85bcb99 quartz: Removed dead code and variables (llvm/clang). 2008-11-25 11:49:51 +01:00
Maarten Lankhorst 8699661e96 quartz: Fix FilterGraph2_Connect to be thread-safe and not recurse infinitely. 2008-11-17 13:50:19 +01:00
Maarten Lankhorst f57896484c Revert "quartz: Reaching a renderer in the filtergraph is not an error."
This is plain wrong, input pin and output pin are supposed to be 
connected to each other, not the input pin being connected to a renderer 
pin and NOT reaching output pin
2008-11-17 13:11:42 +01:00
Lei Zhang 62a0bd65d2 quartz: Reaching a renderer in the filtergraph is not an error. 2008-11-14 11:02:15 +01:00
Paul Vriens 36c40e53e0 quartz/tests: Fix a few failures on Win95 and NT4. 2008-11-14 11:02:15 +01:00
David Adam 6ed258e220 quartz: Check for NULL condition in FilterGraph2_Disconnect. 2008-11-12 11:49:12 +01:00
Andrew Talbot a19ff5f07b quartz: Sign-compare warnings fix. 2008-11-05 10:56:54 +01:00
Andrew Talbot 9988ae3524 quartz: Sign-compare warnings fix. 2008-11-04 11:27:06 +01:00
Maarten Lankhorst b2d20154fa quartz: Implement dynamic format changing in directsound renderer. 2008-10-22 11:53:39 +02:00
Maarten Lankhorst ca0db58808 quartz: Fix ACMWrapper to allow mono channels too. 2008-10-22 11:53:30 +02:00
Michael Stefaniuc 56c6f7670b quartz: Use the right FAILED/SUCCEEDED macro instead of negating the opposite. 2008-10-08 13:42:06 +02:00
Aric Stewart a3c2c50809 quartz: Check hr so we are not incrementing a NULL (Coverity 106). 2008-10-07 11:59:14 +02:00
Rob Shearman 2fb89a4e36 quartz: Fix placement of WINAPI attribute in fnFoundSeek typedef.
MSVC requires that calling conventions appear inside the brackets.
2008-10-01 11:44:07 -05:00
Rob Shearman e7ecfe28a1 quartz: Don't use strlenW in array size declaration.
Use ARRAYSIZE() on the constant string arrays instead.
2008-10-01 11:44:02 -05:00
Maarten Lankhorst 907bb7ae1f quartz: Requeue in pullpin if request for data timed out.
If the filter is paused, no additional data will be queued and 
VFW_E_TIMEOUT is legitimately returned. Don't make this a fatal error, 
but instead try again. If flushing the thing will still abort.
2008-09-22 13:46:22 +02:00
Maarten Lankhorst d458efe072 quartz: Return VFW_E_WRONG_STATE in file source if flushing. 2008-09-22 13:46:17 +02:00
Maarten Lankhorst c71ba1a141 quartz: Don't abort starting for unconnected pin in avi splitter. 2008-09-22 13:46:12 +02:00
Maarten Lankhorst fd966f8322 quartz: Add missing calls to EndFlush. 2008-09-22 13:46:08 +02:00
Maarten Lankhorst f0f00d1625 quartz: Implement IMediaPosition::put_CurrentPosition. 2008-09-22 13:46:04 +02:00
Alexander Dorofeyev 48865c9064 quartz/tests: Fix potential NULL dereference (Coverity). 2008-09-10 11:03:23 +02:00
Paul Vriens ee14852ea9 quartz/tests: Fix the tests on several platforms. 2008-09-09 12:32:21 +02:00
Paul Vriens 8f23fc4e2f quartz/tests: Add a missing CoUninitialize. 2008-09-05 16:26:29 +02:00
Gerald Pfeifer dc302b7c1d quartz: Add return statement to PullPin_Thread_Main(). 2008-09-02 12:51:18 +02:00
Paul Vriens 5bef4b05dd quartz/tests: Use CreateFileA instead of CreateFileW to please win9x. 2008-08-28 11:24:49 +02:00
Alexandre Julliard 5d900bb0f6 Avoid some size_t printf format warnings. 2008-08-21 16:05:15 +02:00
Rob Shearman a35431a194 quartz: Use memcmp instead of strncmp in MPEGSplitter_pre_connect.
header isn't a string and therefore using strncmp doesn't make sense.
2008-08-18 17:34:13 +02:00
Rob Shearman 03a25b487f quartz: Fix testing of HRESULT types with not operator instead of comparing against S_OK.
This makes it more obvious what the code is doing.
2008-08-18 17:34:12 +02:00
Paul Vriens 04c40f2f5f quartz/tests: Skip some tests on NT4. 2008-08-05 14:09:34 +02:00
Maarten Lankhorst 94ef37400d quartz: Fix support for files with multiple odml indexes. 2008-07-29 11:54:52 +02:00
Maarten Lankhorst 6becc9e14b quartz: Fix end of file handling when first request is already end of file. 2008-07-29 11:54:41 +02:00
Maarten Lankhorst 89f4eeece3 quartz: Pass InputPin as parameter to transform filter. 2008-07-29 11:54:28 +02:00
Maarten Lankhorst 2b452ced74 quartz: Use correct media type in transformfilter's QueryAccept. 2008-07-29 11:54:20 +02:00
Maarten Lankhorst db2ccf43d4 quartz: Make transform filter return hresult from running/pausing. 2008-07-29 11:54:15 +02:00
Maarten Lankhorst fa38a7e313 quartz: Trace the iface pointer in the memory allocator. 2008-07-29 11:54:07 +02:00
Francois Gouget a516f27c2f quartz: assert.h is not a local include. 2008-07-28 11:34:26 +02:00
Maarten Lankhorst 3376ba6113 quartz: Fix end of stream handling in avi splitter.
The last frame wouldn't always be sent, this fixes that.
2008-07-22 13:11:22 +02:00
Maarten Lankhorst 271ee48301 quartz: Fix bugs that occur during connection. 2008-07-21 14:36:14 +02:00