Commit Graph

283 Commits

Author SHA1 Message Date
Chris Robinson
b3fab140f3 quartz: Partially implement the MPEG 1 Stream Splitter filter. 2007-04-27 13:05:28 +02:00
Chris Robinson
147b0cf5ac quartz: Create DirectSound device and buffer at filter creation and connection respectively. 2007-04-16 12:07:55 +02:00
Chris Robinson
2faaa3b8de quartz: Implement IAMFilterData interface for IFilterMapper. 2007-04-11 13:04:23 +02:00
Chris Robinson
eda96fa7f9 quartz: Pass the media sample to the individual transform filter callbacks.
This is so the filters can pass on and use timing, discontinuity, and other
information stored in the sample as needed.
2007-04-09 12:15:09 +02:00
Chris Robinson
e6e4056e1e quartz: Fix error with operator precedence. 2007-04-09 12:14:51 +02:00
Chris Robinson
d9f755875b quartz: Fix ALIGN macros. 2007-04-09 12:14:46 +02:00
Chris Robinson
20d87e768b quartz: Make sure cached media samples are released for parser filters. 2007-04-07 11:46:10 +02:00
Chris Robinson
828d5a0c4a quartz: Add a cleanup callback for parser filters to call on release. 2007-04-07 11:46:03 +02:00
Chris Robinson
e508f2cc90 quartz: Add partial implementation of IReferenceClock for DSoundRenderer. 2007-04-07 10:57:33 +02:00
Chris Robinson
2994695189 quartz: Use more precise positioning information for the DSound filter's reference clock. 2007-04-07 10:57:23 +02:00
Chris Robinson
f352d9de98 quartz: Send a notification when the filter graph clock changes. 2007-04-06 12:31:07 +02:00
Chris Robinson
d51098ef11 quartz: Avoid releasing NULL objects. 2007-04-06 12:31:07 +02:00
Chris Robinson
30abd4ed15 quartz: Tell filters to stop sending data when the chain is broken. 2007-04-04 21:26:16 +02:00
Chris Robinson
9d41c2e694 quartz: Don't call ReleaseSemaphore on NULL semaphore handles. 2007-04-04 21:26:09 +02:00
Chris Robinson
f9527e9ce8 quartz: Implement Get/SetSyncSource for the FilterGraph's IMediaFilter interface. 2007-04-04 21:26:04 +02:00
Chris Robinson
b7a4405d0a quartz: Break loop on error in ACMWrapper. 2007-04-04 12:40:05 +02:00
Chris Robinson
243351d223 quartz: Add a QueryConnect method for transform filters. 2007-04-04 12:39:58 +02:00
Chris Robinson
71bcdc9044 quartz: Connect input when the pins connect, not when querying.
And clean up when disconnecting input.
2007-04-04 12:39:49 +02:00
Chris Robinson
c28b534550 quartz: Hold a reference on the PullPin's filter while the processing thread is alive.
Also removes dead code caused by the change.
2007-04-04 12:39:30 +02:00
Chris Robinson
c76d5561a8 quartz: Use a second-long DSound buffer for playback. 2007-04-03 11:32:40 +02:00
Chris Robinson
b1bfae286f quartz: Use a safe APC to kill the PullPin thread when the PullPin is being released. 2007-04-02 11:18:04 +02:00
Chris Robinson
9d1f49cd9f quartz: Set the sample time based on the number of bytes read before sending it downstream. 2007-04-02 11:16:00 +02:00
Chris Robinson
b3c4d6eee6 quartz: Remove errant parser output pins on input connection failure. 2007-04-02 11:15:49 +02:00
Chris Robinson
4eea356e2d quartz: Don't fill the dsound buffer with small amounts. 2007-04-02 11:15:44 +02:00
Chris Robinson
60f325d967 quartz: Add filters using their names. 2007-03-30 10:55:20 +02:00
Chris Robinson
8a1d4d1e4c quartz: Protect DSound buffer creation with a critical section lock. 2007-03-28 12:05:35 +02:00
Chris Robinson
a110e6e433 quartz: Return proper CLSID for parser filters. 2007-03-27 12:35:22 +02:00
Chris Robinson
908cc50e23 quartz: Propogate transform filter errors upstream. 2007-03-26 12:30:13 +02:00
Chris Robinson
f5400a2851 quartz: Store the current reference time with the PullPin. 2007-03-26 12:30:09 +02:00
Chris Robinson
57400724b6 quartz: Implement volume and pan control for DSoundRenderer. 2007-03-26 12:30:04 +02:00
Chris Robinson
a7151d8851 quartz: Make DSoundRender_Run start the playback buffer. 2007-03-26 12:29:58 +02:00
Chris Robinson
3487da71ce quartz: Fully disconnect the AsyncReader when released. 2007-03-21 11:56:00 +01:00
Chris Robinson
ef5de5c120 quartz: Don't redundantly set waveparser output pin data before it's created. 2007-03-21 11:55:23 +01:00
Michael Stefaniuc
0674ff43b2 quartz: Fix typo that produced an empty if-statement. 2007-03-20 13:00:30 +01:00
Chris Robinson
6bd3b156ac quartz: Don't delete critical sections before the filter's pins are done using them. 2007-03-20 13:00:26 +01:00
Chris Robinson
6eefb9d3dd quartz: Release objects when they're no longer needed. 2007-03-19 12:24:09 +01:00
Chris Robinson
54f4a4a779 quartz: Disconnect pins when their filter is removed. 2007-03-19 12:24:02 +01:00
Chris Robinson
d8dc9fb319 quartz: Release objects when pins fail to connect. 2007-03-19 12:23:54 +01:00
Chris Robinson
52529c923d quartz: Hold a reference on a filter while sending data to it. 2007-03-19 12:23:46 +01:00
Chris Robinson
2e726e6e11 quartz: Avoid asserting from used samples on allocator release. 2007-03-13 21:28:57 +01:00
Chris Robinson
809f68420f quartz: Force disconnect when a filter is fully released. 2007-03-13 21:28:26 +01:00
Chris Robinson
559d541cf8 quartz: Cleanup properly around error conditions and avoid a potential infinite loop. 2007-03-13 21:28:08 +01:00
Jan Zerebecki
b5619e8628 quartz: Add DebugInfo to critical sections.
Also add missing DeleteCriticalSection.
2007-03-12 13:39:49 +01:00
Chris Robinson
868dd534e8 quartz: Stop DSound buffer playback when the filter is paused or stopped, not the next time it's processed. 2007-03-12 12:08:25 +01:00
Chris Robinson
e44a0d6d4d quartz: Check allocation failure and clear memory in DSound Renderer. 2007-03-09 21:20:22 +01:00
Tomas Carnecky
9b4f99782e dsound: Update prototypes for IDirectSoundBuffer::Lock/Unlock. 2007-03-08 21:30:54 +01:00
Chris Robinson
045270605c quartz: Use proper alloc/free functions for COM objects. 2007-03-08 13:53:54 +01:00
Chris Robinson
0717c96192 quartz: Improve reference traces. 2007-03-05 18:08:29 +01:00
Chris Robinson
efe156ae8e quartz: Don't AddRef an object we just created and are handing back to the caller. 2007-03-05 13:00:24 +01:00
Chris Robinson
7f9becf854 quartz: Report the previous refcount of a PullPin object. 2007-03-05 12:59:49 +01:00