Commit Graph

646 Commits

Author SHA1 Message Date
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
Maarten Lankhorst 0f9356eb16 quartz: Fix handling of zero byte samples and endofstreams. 2008-07-21 14:36:04 +02:00
Francois Gouget bc5ce27947 Assorted spelling fixes. 2008-07-21 13:00:01 +02:00
Alexander Dorofeyev bca80e1a64 quartz: Fix interface leak in FilterGraph2_Render. 2008-07-18 11:15:30 +02:00
Alexander Dorofeyev 1656f6b7cc quartz: Add missing VariantClear after GetFilterInfo calls. 2008-07-18 11:15:24 +02:00
Alexander Dorofeyev 1cd83afda3 quartz: Fix variant handling in GetFilterInfo.
Removes unnecessary and unsafe type assignment, adds a missing VariantClear.
2008-07-18 11:15:17 +02:00
Alexander Dorofeyev 7c5a4481b1 quartz/tests: Fix interface leaks in filtergraph test. 2008-07-18 11:15:08 +02:00
Alexander Dorofeyev 6645999337 quartz: Fix interface leak in FilterGraph2_RemoveFilter. 2008-07-18 11:15:01 +02:00
Alexander Dorofeyev 4afad0a413 quartz/tests: Fix interface leaks in aggregation test. 2008-07-18 11:14:52 +02:00
Alexander Dorofeyev 33c6eeb9e3 quartz/tests: Add filtermapper aggregation tests. 2008-07-18 11:13:33 +02:00
Alexander Dorofeyev 4bc76025ba quartz/tests: Test querying IFilterMapper2 from FilterGraph. 2008-07-18 11:13:24 +02:00
Alexander Dorofeyev 0bea470dfc quartz: Aggregate filtermapper in filtergraph. 2008-07-18 11:13:14 +02:00
Alexander Dorofeyev d39ee67019 quartz: Make Filtermapper aggregatable. 2008-07-18 11:12:16 +02:00
Maarten Lankhorst 5299795a8d quartz: Fix wrong assignment of variable in parser. 2008-07-16 17:58:30 +02:00
Maarten Lankhorst 3ad7198961 quartz: Explicitly handle wave headers in avi splitter. 2008-07-16 17:52:31 +02:00
Maarten Lankhorst 28d6203ca9 quartz: Fix reference leak in avi splitter on end of stream. 2008-07-14 12:21:40 +02:00
Maarten Lankhorst 0e9704b02d quartz: Only allocate 1 buffer in transform filter. 2008-07-14 12:21:33 +02:00
Maarten Lankhorst cf1d2f5e42 quartz: Fix memory and sample leaks. 2008-07-14 12:21:26 +02:00
Maarten Lankhorst 36418d8ad1 quartz: Fix incorrect use of mtCurrent in transform filter. 2008-07-14 12:21:10 +02:00
Maarten Lankhorst 61ba32c036 includes: Add video mixing renderer header. 2008-07-11 14:50:44 +02:00
Michael Stefaniuc 5c0ff73db2 quartz: Add missing LeaveCriticalSection on error path (Smatch). 2008-07-11 14:07:25 +02:00
Maarten Lankhorst 2865c727de quartz: Make the file source rotate around the 'first' sample, to prevent starvation of a single stream.
This prevents the file source from starving a single thread off.
2008-07-11 13:58:24 +02:00
Maarten Lankhorst 484fdcf7e4 quartz: End the flush downstream first before restarting playback in pullpin. 2008-07-11 13:58:18 +02:00
Maarten Lankhorst e47bc7725e quartz: Call run before pausing in transform filter. 2008-07-10 14:42:38 +02:00
Maarten Lankhorst 86393897a8 quartz: Make filtergraph quieter. 2008-07-10 14:38:16 +02:00
Maarten Lankhorst fe9840f213 quartz: Make parser start even if some of the pins aren't connected. 2008-07-10 14:38:09 +02:00
Francois Gouget dbaec0a101 Assorted spelling fixes. 2008-07-10 13:40:15 +02:00
Maarten Lankhorst adcf93aeaf quartz: Fix deadlocks in dsound renderer. 2008-07-10 12:18:13 +02:00
Michael Stefaniuc 310b58994c quartz: Compare a file handle to INVALID_HANDLE_VALUE and not NULL. 2008-07-10 12:17:59 +02:00
Maarten Lankhorst 43d0acd26a quartz: Fix end of stream handling.
Flushing blocks any end of stream that may occur.
2008-07-10 12:17:20 +02:00
Maarten Lankhorst 6748f073ed quartz: Always set current position again. 2008-07-10 12:17:10 +02:00
Maarten Lankhorst 3adf811645 quartz: Add tests for avi splitter. 2008-07-09 10:59:31 +02:00
Maarten Lankhorst 19360d41a0 quartz: Add rewrite of avi splitter. 2008-07-09 10:59:27 +02:00
Maarten Lankhorst 992fb02c73 quartz: Fix deadlock with transform filter. 2008-07-09 10:58:27 +02:00
Alexander Dorofeyev 2364514431 quartz/tests: Add test for filter priority in IFilterGraph2_Render. 2008-07-09 10:43:33 +02:00
Alexander Dorofeyev 27c0cddbab quartz: Do not try renderers first. Use a single enumeration pass. 2008-07-09 10:43:27 +02:00
Alexandre Julliard 79c64acc7b tests: Don't depend on the static uuid libraries in the tests.
This avoids trouble with the broken MingW libraries when
cross-compiling the tests.
2008-07-08 17:51:45 +02:00
Andrew Talbot f0d7a2910e quartz: Remove unneeded address-of operators from function names. 2008-07-07 12:31:47 +02:00
Maarten Lankhorst 53782ca47a quartz: Fix parser/pullpin to only care about the state transition stopped<->playing. 2008-07-07 12:11:23 +02:00
Maarten Lankhorst e58855e0e9 quartz: Only call begin process functions in transform filter when stopped.
Fixes some graphical glitches that may occur otherwise.
2008-07-07 12:11:23 +02:00
Maarten Lankhorst 11e2b1ab2b quartz: Make sure transform filter commits allocator. 2008-07-07 12:11:23 +02:00
Maarten Lankhorst 6e4288ee70 quartz: Fix tiny bug in IGraphBuilder_Render. 2008-07-07 12:11:23 +02:00
Maarten Lankhorst 9985f2efc9 quartz: Implement state transitions in video renderer. 2008-07-04 19:50:52 +02:00
Maarten Lankhorst b6b67f698a quartz: Implement state transitions in directsound renderer, and block on pause. 2008-07-04 19:50:04 +02:00
Maarten Lankhorst ee317b19b2 quartz: Set filesource initial state to stopped.
Fixes a bug valgrind found.
2008-07-04 19:35:07 +02:00
Maarten Lankhorst 8b65914cf9 quartz: Make CLSID_AudioRender an alias for CLSID_DSoundRender. 2008-07-04 19:35:00 +02:00
Maarten Lankhorst 28c7b230ed quartz: Fix return value for video renderer. 2008-07-03 11:50:52 +02:00
Maarten Lankhorst e5767b1c02 quartz: Fix return values in directsound renderer. 2008-07-03 11:50:52 +02:00
Paul Vriens 0435574aed quartz/tests: Make tests run on everything lower then Vista. 2008-07-03 11:50:51 +02:00
Alexander Dorofeyev b312d42059 quartz: Fix memory leak and behavior on errors in FilterMapper_EnumMatchingFilters. 2008-07-02 12:23:43 +02:00
Alexander Dorofeyev bbd22ae06c quartz: Fix memory leak in FilterMapper_RegisterFilter. 2008-07-02 12:23:37 +02:00
Alexander Dorofeyev c206f91030 quartz: Fix memleak in FilterMapper2_RegisterFilter. 2008-07-02 12:23:25 +02:00
Alexander Dorofeyev d3e67c83a0 quartz: Fix memory leaks in FM2_DeleteRegFilter. 2008-07-02 12:23:19 +02:00
Alexander Dorofeyev 898152c024 quartz: Fix memory leaks in IEnumRegFiltersImpl_Release. 2008-07-02 12:23:14 +02:00
Alexander Dorofeyev 02943d96b4 quartz: Fix interface leak in EnumMonikerImpl_Release. 2008-07-02 12:23:04 +02:00
Alexander Dorofeyev 9778faee0b quartz: Improve variant handling in FilterMapper_EnumMatchingFilters.
Adds VariantClear and removes unnecessary variant type assignment that may cause 
heap corruption.
2008-07-01 13:45:38 +02:00
Alexander Dorofeyev bff9f1114a quartz/tests: Add test for IFilterMapper_RegisterFilter. 2008-07-01 13:45:38 +02:00
Alexander Dorofeyev 10b593b2e7 quartz: Fix string buffer overflow. 2008-07-01 13:45:38 +02:00
Alexander Dorofeyev cd5fa7dedb quartz: Improve removal of registry data in Filtermapper unregister methods. 2008-07-01 13:45:38 +02:00
Alexander Dorofeyev f9e2914ed6 quartz: Fix registry key creation. 2008-07-01 13:45:38 +02:00
Alexander Dorofeyev d6df899603 quartz: Fix calculating wide string size. 2008-07-01 13:45:38 +02:00
Alexander Dorofeyev d19ad8f072 quartz/tests: Add test for EnumMatchingFilters. 2008-07-01 13:45:38 +02:00
Alexander Dorofeyev dcc9032ed0 Revert "quartz: Only enumerate renderers if bRender is set in filtermapper.".
This reverts commit b157969d49.
2008-07-01 13:45:38 +02:00
Alexandre Julliard aa68258b7a Fix a few %ll printf formats. 2008-06-30 12:50:07 +02:00
Maarten Lankhorst d54c53a4b6 quartz: Fix Render and RenderFile.
RenderFile should add a source filter and call Render on each output
pin, while Render() should try to connect, first directly to any
existing renderers, and then using intermediates. It uses recursion
since this is the only possible way to implement Render sanely.
2008-06-27 11:13:10 +02:00
Maarten Lankhorst 0d1eea691c quartz: Make FilterGraph_Connect and ConnectDirect behave better.
Does some security checks that it won't connect a filter to itself,
and also cleans up after a failed connection attempt.
2008-06-27 11:12:03 +02:00
Maarten Lankhorst 46f4c4b4d8 quartz: Make removing filters work slightly better. 2008-06-27 11:10:44 +02:00
Maarten Lankhorst 3bda54bb04 quartz: Downgrade a fixme to a warn in dsoundrender. 2008-06-26 12:44:20 +02:00
Alexander Dorofeyev 1aff73455d quartz: Prevent heap corruption if IPropertyBag_Read fails. 2008-06-25 20:21:41 +02:00
Alexander Dorofeyev 2d8f7268ab quartz: Do not ignore current position in IEnumRegFiltersImpl_Next. 2008-06-25 20:21:30 +02:00
Alexander Dorofeyev c782cdad96 quartz: Fix accessing variant string. 2008-06-25 20:21:26 +02:00
Maarten Lankhorst 8bedda7e1f quartz: Make the memory allocator emit more warnings and fix race condition. 2008-06-25 10:41:58 +02:00
Maarten Lankhorst 6aabf5d39e quartz: Create thread after connection is made. 2008-06-25 10:41:52 +02:00