Commit Graph

634 Commits

Author SHA1 Message Date
Maarten Lankhorst
d7fbc7ef8c quartz: Drop preroll frames in directsound renderer too. 2008-04-21 14:05:37 +02:00
Maarten Lankhorst
fb2c975a8f quartz: No longer drop packets on discontinuities. 2008-04-21 14:05:37 +02:00
Maarten Lankhorst
0458c08b95 quartz: Set media time in the file source. 2008-04-21 14:05:37 +02:00
Maarten Lankhorst
172347341a quartz: Make acmwrapper respect preroll samples. 2008-04-21 14:05:37 +02:00
Maarten Lankhorst
d16639d1fa quartz: Flux AsyncReader in PullPin_BeginFlush. 2008-04-21 14:05:37 +02:00
Maarten Lankhorst
33b2f69c9f quartz: Fix sample leak in file source on failure path. 2008-04-21 14:05:37 +02:00
Maarten Lankhorst
119d7caf79 quartz: Fix theoretical memory leak. 2008-04-21 14:05:37 +02:00
Maarten Lankhorst
458b09a84d quartz: Make the video renderer drop preroll samples. 2008-04-21 14:05:37 +02:00
Alexandre Julliard
df75bde180 quartz: Avoid sizeof in traces. 2008-04-17 20:17:03 +02:00
Austin English
313a85f163 Spelling fixes. 2008-04-17 12:25:57 +02:00
Maarten Lankhorst
ebaadba498 quartz: Obtain the duration using the index in avisplitter. 2008-04-17 11:43:05 +02:00
Maarten Lankhorst
1625817113 quartz: Store the stream index in the avi stream for files that have them. 2008-04-17 11:42:50 +02:00
Maarten Lankhorst
a0e8b97ffe quartz: Check for discontinuities in the directsound renderer. 2008-04-17 11:42:41 +02:00
Maarten Lankhorst
97b9e9c3ad quartz: Make sure at least 1 sample is processed before returning. 2008-04-17 11:42:24 +02:00
Maarten Lankhorst
405e21d558 quartz: Reject samples in transform filter only when stopped.
Use S_FALSE for saying sample is rejected.
2008-04-17 11:42:15 +02:00
Maarten Lankhorst
3dc8384aa9 quartz: Reject samples in video renderer when stopped.
When stopped video renderer no longer updates, so don't even try.
2008-04-17 11:42:07 +02:00
Maarten Lankhorst
382a61391f quartz: Fix IMediaSample2 SetPreroll and SetSyncPoint. 2008-04-17 11:41:58 +02:00
Maarten Lankhorst
cbb0ff37fa quartz: Fix discontinuities in wave parser. 2008-04-17 11:41:52 +02:00
Maarten Lankhorst
6165d87fc5 quartz: Add a Disconnect function to the parser and use it to clean up allocated memory in avisplitter. 2008-04-16 14:16:23 +02:00
Maarten Lankhorst
aa623d2eff quartz: Parse old style avi index. 2008-04-16 14:16:09 +02:00
Maarten Lankhorst
f66ad4dbe0 quartz: Make the avi splitter skip index headers. 2008-04-16 14:15:19 +02:00
Maarten Lankhorst
64be38a5b2 quartz: Dump opendml indexes and header. 2008-04-16 14:15:11 +02:00
Maarten Lankhorst
0b32692451 include: Update aviriff header. 2008-04-15 14:34:01 +02:00
Maarten Lankhorst
1281b74956 quartz: Update start_time if the current position is changed. 2008-04-15 14:33:45 +02:00
Maarten Lankhorst
3e9cee050f quartz: Add VIDEOINFOHEADER2 support to VideoRenderer. 2008-04-15 14:33:36 +02:00
Maarten Lankhorst
ebe438c82a quartz: Bring waveparser to the same level as the mpeg splitter. 2008-04-14 23:50:13 +02:00
Maarten Lankhorst
ba10e6104a quartz: Silence seeking fixmes on transform filter. 2008-04-14 23:50:13 +02:00
Maarten Lankhorst
5fb4224f81 quartz: Silence requests for IVideoWindow. 2008-04-14 23:50:13 +02:00
Maarten Lankhorst
c8e31b5bdd quartz: Set sane defaults for pin stream rate. 2008-04-14 23:50:13 +02:00
Maarten Lankhorst
48f80f6296 quartz: Don't clean up in avi decoder if driver isn't opened. 2008-04-14 23:50:13 +02:00
Maarten Lankhorst
bd324db059 quartz: Add stubs for the IMediaSeeking interface in SeekingPassThru. 2008-04-10 11:31:11 +02:00
Maarten Lankhorst
65e6bbd186 quartz: Add a stub for SeekingPassThru. 2008-04-10 11:31:06 +02:00
Maarten Lankhorst
2734e6332c quartz: Implement stop position in the mpeg splitter. 2008-04-10 09:50:48 +02:00
Maarten Lankhorst
43f9fff0a0 quartz: Implement stop position in the filtergraph. 2008-04-10 09:48:13 +02:00
Maarten Lankhorst
f2dccab7e3 quartz: Make the directsound renderer handle the Play->Pause->Play position without dropping data. 2008-04-09 12:07:21 +02:00
Maarten Lankhorst
24cac935f0 quartz: Generate a seek table for the mpeg splitter.
Speeds up seeking mp3's on large files.
2008-04-09 12:07:16 +02:00
Maarten Lankhorst
55f3ba9dc0 quartz: Remove while { } while construct.
Thanks to Andrew Talbot for spotting this.
2008-04-09 12:07:11 +02:00
Michael Stefaniuc
71e9455b73 quartz: Add missing lock releases on some code paths (Smatch). 2008-04-09 11:47:07 +02:00
Maarten Lankhorst
994af69cac quartz: Make the pullpin forward the BeginFlush before doing its own flushing. 2008-04-09 11:43:09 +02:00
Maarten Lankhorst
4763e83b60 quartz: Don't free a null media type in the file source. 2008-04-09 11:43:05 +02:00
Maarten Lankhorst
de117c1eb5 quartz: Make the DirectSound renderer return S_FALSE packet if in the paused state. 2008-04-09 11:42:59 +02:00
Maarten Lankhorst
8939a41563 quartz: Drop packets in the transform filter if in the wrong state. 2008-04-09 11:42:55 +02:00
Maarten Lankhorst
0117468754 quartz: Try creating the file reader from the filter source first before falling back to the generic async file reader. 2008-04-09 11:42:37 +02:00
Maarten Lankhorst
4bc4457109 quartz: Make mpeg splitter keep track of play position and keep last sample if sending was not successful.
This fixes data discontinuities that earlier occured after a
stop/pause command or the downright rejection of a sample (S_FALSE).
2008-04-09 11:42:17 +02:00
Maarten Lankhorst
f4d9c09dd4 quartz: Fix deadlocks in pullpin. 2008-04-08 12:21:00 +02:00
Maarten Lankhorst
d1aa222e85 quartz: Make wait timeout in directsound slightly larger. 2008-04-08 12:20:55 +02:00
Maarten Lankhorst
01c6e64da6 quartz: Handle flushing and end of stream notifications for input pins. 2008-04-07 11:35:36 +02:00
Maarten Lankhorst
ee792916e0 quartz: Reset EcCompleteCount before starting filters.
This sends EC_COMPLETE notifications to the application after a graph has
finished running for the second time.
2008-04-07 11:35:29 +02:00
Maarten Lankhorst
3d3dcc4e07 quartz: Fix past mistake to release lock during seeking and changing state. 2008-04-07 11:35:21 +02:00
Maarten Lankhorst
45bd38ece3 quartz: Fix some memory leaks in the file source. 2008-04-07 11:35:11 +02:00
Maarten Lankhorst
d56c50c85b quartz: Make FileAsyncReader_WaitForNext return an empty sample in flushing state. 2008-04-07 11:35:06 +02:00
Maarten Lankhorst
fab66ee7a0 quartz: Get rid of code duplication and add a flush method. 2008-04-07 11:34:59 +02:00
Maarten Lankhorst
7f7c1d0752 quartz: Add more state transitions to the filtergraph. 2008-04-07 11:34:39 +02:00
Maarten Lankhorst
cfeca053b8 quartz: Fix memory leak found by valgrind. 2008-04-03 11:29:47 +02:00
Maarten Lankhorst
9c0ea9eaa8 quartz: Implement seeking on the null renderer. 2008-04-02 23:17:16 +02:00
Maarten Lankhorst
9d6239bdac quartz: Fix stop_playback used in pullpin. 2008-04-02 23:17:07 +02:00
Maarten Lankhorst
975dc03302 quartz: Make acmwrapper respond to a sample discontinuity by dropping the frame after parsing it. 2008-04-02 11:16:35 +02:00
Maarten Lankhorst
553fe8565d quartz: Add seeking to mpeg splitter. 2008-04-02 11:16:28 +02:00
Maarten Lankhorst
b1b75243d4 quartz: Prepare mpeg splitter code for seeking by making most splitter parsing locked. 2008-04-02 11:16:18 +02:00
Maarten Lankhorst
0e9ed6b402 quartz: Fix parser and pins logic to no longer deadlock. 2008-04-02 11:16:09 +02:00
Maarten Lankhorst
855e3a08b5 quartz: Implement filtergraph mediaseeking setposition. 2008-04-02 11:15:43 +02:00
Maarten Lankhorst
7cb1324ae3 quartz: Don't hold lock when changing state in filtergraph. 2008-04-02 11:15:29 +02:00
Maarten Lankhorst
4b5d06d30f quartz: Fix locking in MediaSeeking and forward SetPosition.
Don't hold locks while forwarding messages, instead rely on the
reference count. This prevents some really fun deadlocks from
occuring.
2008-04-02 11:15:22 +02:00
Maarten Lankhorst
e18129068e quartz: Implement seeking stubs for transform filters. 2008-04-02 11:15:13 +02:00
Maarten Lankhorst
c56389ea3c quartz: Implement graph MediaSeeking GetPositions. 2008-04-01 23:38:22 +02:00
Maarten Lankhorst
1544e52397 quartz: Allow parser filters to implement their own seeking methods. 2008-04-01 23:21:38 +02:00
Maarten Lankhorst
6fd90f1625 quartz: Small mpeg splitter fixes.
Just to be cautious, since it reads 4 bytes it should stop trying at
EOF-3. Also be more strict with the return values.
2008-04-01 23:21:38 +02:00
Chris Robinson
4a68b33029 quartz: Break processing loop when shutting down. 2008-04-01 11:26:29 +02:00
Maarten Lankhorst
714e807aa5 quartz: Check against a null dereference and don't read beyond the end of file. 2008-03-31 12:51:16 +02:00
Andrew Talbot
892c31e4db quartz: Assign to structs instead of using CopyMemory. 2008-03-31 12:50:37 +02:00
Maarten Lankhorst
39623a403a quartz: Add GetCurrentPosition using the reference clock. 2008-03-28 09:51:00 +01:00
Maarten Lankhorst
cc3ef90db0 quartz: Change name from Start position to Current position in MediaSeeking. 2008-03-28 09:50:51 +01:00
Alexandre Julliard
6af76b3daa quartz: Avoid %ll printf formats. 2008-03-26 18:01:09 +01:00
Reece Dunn
1b31c6e616 quartz: Fixed building with MSVC headers. 2008-03-24 21:05:13 +01:00
Maarten Lankhorst
db8b2ca7b4 quartz: Silence requests for ipin on filters. 2008-03-24 11:32:26 +01:00
Maarten Lankhorst
4d745e0051 quartz: Forward requests for MediaSeeking from all pins properly. 2008-03-24 11:32:19 +01:00
Maarten Lankhorst
17a1c64686 quartz: Play silence in directsound renderer on end of stream notification. 2008-03-24 11:32:03 +01:00
Maarten Lankhorst
f8bb838455 quartz: Make acmwrapper code aware of time, and get rid of its internal buffer. 2008-03-24 11:31:48 +01:00
Maarten Lankhorst
c423511d2e quartz: Add sanity check to mediaseeking setrate. 2008-03-24 11:31:25 +01:00
Maarten Lankhorst
b0c6a34358 quartz: Parse audio packets in mpeg splitter to obtain the duration. 2008-03-24 11:31:16 +01:00
Michael Stefaniuc
6ae786ec62 quartz: Replace second EnterCriticalSection with LeaveCriticalSection (Smatch). 2008-03-21 11:23:18 +01:00
Maarten Lankhorst
e02322aef8 quartz: Implement forwarding mediaseeking messages. 2008-03-20 14:27:34 +01:00
Maarten Lankhorst
734d6159d5 quartz: Add critical sections to IMediaSeeking. 2008-03-20 14:27:34 +01:00
Maarten Lankhorst
9ec4240065 quartz: Add mediaseeking stub to audio renderer. 2008-03-20 14:27:34 +01:00
Maarten Lankhorst
c53a803ab7 quartz: Fix checking for duration. 2008-03-20 14:27:34 +01:00
Maarten Lankhorst
d38b8502a6 quartz: Pass the reference time + small delay on on begin of playback. 2008-03-20 14:27:34 +01:00
Maarten Lankhorst
366eca51df quartz: Don't pass reference time when running. 2008-03-20 14:27:34 +01:00
Maarten Lankhorst
ea537b916e quartz: Transmit pullpin messages further. 2008-03-20 14:27:34 +01:00
Maarten Lankhorst
3c9e2263ee quartz: Fix bug in transmitting messages further. 2008-03-20 14:27:34 +01:00
Maarten Lankhorst
796bb92333 quartz: Move IMediaSeeking from the parser pin to the parser filter.
This interface really shouldn't be in a pin, but rather in the
implementation of the filter, since any seeking is done on the entire
filtergraph, so implementing it in the filter makes more sense.
2008-03-19 11:24:46 +01:00
Maarten Lankhorst
ebf6bbd50f quartz: Call send flush/endofstream and segment messages downstream. 2008-03-19 11:24:08 +01:00
Maarten Lankhorst
24708e4edb quartz: Fix the magic bytes for mp3's with id3 tags. 2008-03-19 11:22:51 +01:00
Maarten Lankhorst
0f8b16f117 quartz: Implement a few MediaSeeking functions. 2008-03-15 11:21:22 +01:00
Maarten Lankhorst
18f42a6eb7 quartz: Change some more stubs from traces to fixmes. 2008-03-15 11:21:05 +01:00
Maarten Lankhorst
b662a6a556 quartz: Add initial support for time formats in IMediaSeeking.
Only support the SYSTEM_MEDIA_TIME for now.
2008-03-15 11:20:59 +01:00
Maarten Lankhorst
ffe48d4013 quartz: Make MediaSeeking stubs fixmes. 2008-03-15 11:20:50 +01:00
Maarten Lankhorst
6d965b8fb6 quartz: Silence the directsound buffer on starting.
If the buffer is created and stopped, the contents of the buffer are
indeterminate, by zeroing it you won't get leftovers from last play.
2008-03-15 11:20:26 +01:00
Maarten Lankhorst
b1f9acc688 quartz: Set a default sync source on the filtergraph.
Use the fallback system IReferenceClock, unless the app comes up with
its own clock.
2008-03-15 11:20:18 +01:00
Maarten Lankhorst
14ba79ec62 quartz: Fix IFilterGraph RemoveFilter to stop the filter before removing it.
Also checks for VFW_E_NOT_STOPPED that is allowed to cause a
disconnection to fail.
2008-03-15 10:58:38 +01:00
Maarten Lankhorst
d47bdbfbf1 quartz: Destroy the filtergraph better in releasing.
RemoveFilter is better at removing a filter from a filtergraph then
some method there.
2008-03-15 10:58:38 +01:00
Maarten Lankhorst
4c09284c91 quartz: Add directsound renderer to filter list. 2008-03-14 12:59:02 +01:00
Maarten Lankhorst
25f9d3c173 quartz: Implement detection on file extension in filesource. 2008-03-14 12:58:52 +01:00
Maarten Lankhorst
83efc64dd5 quartz: Uncomment a trace. 2008-03-14 12:58:04 +01:00
Maarten Lankhorst
b5a8df58cb quartz: Fix typo. 2008-03-14 12:58:00 +01:00
Maarten Lankhorst
6c1d089a44 quartz: Detect and skip id3v2 header in mpeg splitter. 2008-03-14 12:57:55 +01:00
Maarten Lankhorst
e1867dac0d quartz: Implement a dummy null renderer for directshow. 2008-03-14 12:57:09 +01:00
Maarten Lankhorst
07b12032d2 quartz: Don't add MERIT_DO_NOT_USE filters automatically to create a connection.
NullRenderer might accidentally be rendered otherwise.
2008-03-14 12:54:27 +01:00
Andrew Talbot
442f29ab49 quartz: Assign to structs instead of using memcpy. 2008-03-13 11:30:24 +01:00
Chris Robinson
c925e3abc8 quartz: Don't print errors for handled return values. 2008-03-10 20:20:32 +01:00
Lei Zhang
0831be5adc quartz: Validate input for FilterGraph2_AddFilter. 2008-03-06 13:19:34 +01:00
Rob Shearman
48000893f9 makefiles: Simplify the use of the IMPORTLIB variable in the DLL makefiles.
Only specify the root to keep platform-specifics out of the individual 
DLL makefiles.
2008-03-04 20:55:01 +01:00
Rob Shearman
1c0122d14e quartz: Don't assume that strlenW of a constant string can be determined at compile time.
Use sizeof instead to calculate the size of wszKeyName in 
FilterMapper2_CreateCategory.
2008-02-29 12:39:10 +01:00
Steven Edwards
973c29716b quartz: Bump the amount of time in the referenceclock test slightly. 2008-02-16 15:10:31 +01:00
Lei Zhang
9742724afe quartz: Add VideoRendererDefault. 2008-02-08 11:03:22 +01:00
Andrew Talbot
8caed63edb quartz: Remove unneeded casts. 2008-01-17 13:42:14 +01:00
Michael Stefaniuc
1f26b146d1 janitorial: Remove superfluous backslashes at end of lines. 2007-12-31 19:23:45 +01:00
Rob Shearman
da93bc702f quartz: Fix memory leak in FilterGraphInner_Release. 2007-12-26 14:02:10 +01:00
Lei Zhang
99a193ce7e quartz: Make filtergraph aggregatable. 2007-12-21 13:58:33 +01:00
Lei Zhang
5ddb13381e quartz: Move aggregation tests into separate file. 2007-12-21 13:58:27 +01:00
Lei Zhang
e8f69b5a42 quartz: Do aggregation test for more video renderer interfaces. 2007-12-14 12:33:01 +01:00
Lei Zhang
bf20ca1dd4 quartz: Make aggregation test generic. 2007-12-14 12:32:54 +01:00
Lei Zhang
f5cd582bae quartz: Fix typo in GraphConfig_AddRef. 2007-12-14 12:25:26 +01:00
Lei Zhang
63df94ba0b quartz: Give video renderer's Inner_QueryInterface a less generic name. 2007-12-14 12:25:20 +01:00
Lei Zhang
932cc2d7f9 quartz: Make video renderer aggregatable. 2007-12-13 14:36:15 +01:00
Lei Zhang
f5075f7356 quartz: Set *ppvObject to NULL if QueryInterface fails. 2007-12-13 14:34:07 +01:00
Lei Zhang
29cc256b9a quartz: Add referenceclock QueryInterface test. 2007-12-13 14:33:59 +01:00
Lei Zhang
766046d4ab quartz: Add videorenderer aggregation test. 2007-12-13 14:33:50 +01:00
Lei Zhang
4f6f1bcb6e quartz: Add videorenderer QueryInterface test. 2007-12-13 14:33:40 +01:00
Lei Zhang
cff265950a quartz: Add IFilterGraph2 interface and stubs. 2007-12-11 12:09:38 +01:00
Lei Zhang
2d1a6016c9 quartz: Validate input for IFilterGraph_FindFilterByName. 2007-12-07 17:04:34 +01:00
Lei Zhang
31aab42934 quartz: Fix return value in IFilterGraph_FindFilterByName. 2007-12-07 17:04:26 +01:00
Lei Zhang
646eefaa47 quartz: Add some IGraphBuilder related tests. 2007-12-07 17:04:15 +01:00
Lei Zhang
4ab6fd3de0 quartz: Add a test for IFilterGraph2. 2007-12-07 17:03:39 +01:00
Lei Zhang
f84f4cab70 quartz: Move current tests into their own test case. 2007-12-07 17:03:27 +01:00
Alexandre Julliard
ad9396302d Removed some unneeded imports. 2007-12-06 21:24:24 +01:00
Michael Stefaniuc
3e8970602c dlls: Remove duplicate includes. 2007-11-19 13:54:46 +01:00
Michael Stefaniuc
41044dcd8c quartz: Fix memory leaks on error paths. Found by Smatch. 2007-11-19 13:53:56 +01:00
Dan Kegel
8e8f840159 quartz: Make clock test less flaky. 2007-10-09 12:31:53 +02:00
Francois Gouget
ec6e307b92 quartz: Better match the PSDK types and fix the winapi_check warnings. 2007-09-10 12:15:06 +02:00
Francois Gouget
2993785f3a Assorted non-ANSI function declaration fixes (missing void). 2007-08-30 11:57:18 +02:00
Stefan Leichter
c13c9e3824 quartz: Remove 'recursive registry key delete' function. 2007-08-23 12:38:56 +02:00
Alex Villacís Lasso
7319157d7d quartz: Fix IReferenceClock::GetTime() implementation for system clock. 2007-08-13 12:23:37 +02:00
Alex Villacís Lasso
9d436f697d quartz: Add test for IReferenceClock. 2007-08-13 12:23:32 +02:00
Andrew Talbot
1f3133d214 quartz: Constify some variables. 2007-08-08 15:32:00 +02:00
Michael Stefaniuc
f10e6d7e37 quartz: Remove superfluous casts of void pointers to other pointer types. 2007-06-27 12:53:20 +02:00
Alex Villacís Lasso
fb8df8ea82 quartz: Fix video rendering sizing/positioning bugs. 2007-06-20 15:10:58 +02:00
Chris Robinson
92ced51b10 quartz: Don't return S_FALSE for failed connections. 2007-06-05 12:19:15 +02:00
Marcus Meissner
ccad96578d quartz: Added some error checking on failure to CreateClassEnumerator. 2007-06-04 12:49:46 +02:00
Marcus Meissner
d2bc96bf8a quartz: ppinsplitter might be used uninitialized (Coverity). 2007-05-23 13:14:51 +02:00
Andrew Talbot
5ded3a9e88 quartz: Exclude unused headers. 2007-05-17 12:45:03 +02:00
Andrew Talbot
a894ab6bd0 quartz: Exclude unused headers. 2007-05-17 12:44:57 +02:00
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
Chris Robinson
5a19e3b7bc quartz: Use the right vtable offset for the IMediaFilter functions. 2007-03-05 12:14:15 +01:00
Chris Robinson
3f089b4424 quartz: Use the proper CLSID when creating the IFilterMapper2 interface. 2007-03-05 12:08:09 +01:00
Chris Robinson
92aaba0d6f quartz: Return the proper interface for IFilterMapper. 2007-03-05 12:07:59 +01:00
Chris Robinson
ac647156d8 quartz: Implement IUnknown methods for IMediaPosition. 2007-02-21 10:53:59 +01:00
Chris Robinson
5a8ee37191 quartz: Don't release filters when they connect. 2007-02-21 10:53:54 +01:00
Chris Robinson
4284c504ab quartz: Initialize a pointer to NULL for the case of no enumerated filters. 2007-02-20 12:02:15 +01:00
Chris Robinson
7d597264dc quartz: Add IMediaPosition interface and stubs. 2007-02-20 12:01:54 +01:00
Chris Robinson
31407d2659 quartz: Better handle error conditions when connections fail. 2007-02-20 12:01:33 +01:00
Chris Robinson
c5ae1fc7d8 quartz: Return proper error codes from GraphBuilder_RenderFile. 2007-02-19 12:42:53 +01:00
Chris Robinson
763fc7cf3a quartz: Make sure the splitter has output plugins before trying to render them. 2007-02-19 12:42:46 +01:00
Chris Robinson
e3061405ca quartz: Check for the proper ID when querying for the IBasicAudio interface. 2007-02-19 12:42:39 +01:00
Chris Robinson
a512b9abb5 quartz: Don't use uninitialized memory in ACMWrapper. 2007-02-19 12:42:33 +01:00
Chris Robinson
7605dc0d74 quartz: Stop and free the dsound buffer when needed. 2007-02-19 12:39:59 +01:00
Chris Robinson
2250c2898f quartz: Loop through the rest of the possible filters even when a connection fails. 2007-02-14 12:30:13 +01:00
Chris Robinson
134d8a026a quartz: Remove 1GB AVI size limitation. 2007-02-14 12:30:02 +01:00
Chris Robinson
0885141c64 quartz: Properly handle input parameters in FileSource_GetCurFile. 2007-02-14 12:29:57 +01:00
Andrew Talbot
6ef74bc9c8 quartz: Fix a typo.
Should fix Coverity CID-348 (dereference before NULL check).
2007-02-05 12:32:51 +01:00
Andrew Talbot
d303896fe0 quartz: Declare a function static. 2007-01-24 12:28:47 +01:00
Francois Gouget
4fb03d9091 quartz: Use '%u' to print GetLastError(). 2007-01-05 18:24:20 +01:00
Dmitry Timoshkov
c78621eda4 quartz: Make some data const and static. 2006-11-29 12:44:31 +01:00
Francois Gouget
b2656633a6 Add some documentation headers to make winapi_check happy. 2006-11-13 13:01:15 +01:00
Andrew Talbot
a0e9fc872f quartz: Cast-qual warnings fix. 2006-11-13 12:46:41 +01:00
Andrew Talbot
35c0886939 quartz: Cast-qual warning fix. 2006-11-10 11:36:57 +01:00
Francois Gouget
30e44c85c8 Assorted spelling fixes. 2006-11-07 15:25:24 +01:00
Francois Gouget
9fe4673347 Don't include windows.h & co in the Wine sources.
Remove uneeded COM_NO_WINDOWS_H defines.
2006-10-24 17:47:09 +02:00
Hans Leidekker
cfbb859f59 quartz: Win64 printf format warning fixes. 2006-10-13 12:08:41 +02:00
Michael Stefaniuc
44e65a0fac quartz/tests: Win64 printf format warning fixes. 2006-10-09 12:44:21 +02:00
James Hawkins
99e2c6dff2 janitorial: Remove redundant NULL checks before CoTaskMemFree (found by Smatch). 2006-10-07 17:52:51 +02:00
Michael Stefaniuc
85ce5117c5 Add a WINE_NO_LONG_INT define to many makefiles to ease the transition of DWORD/LONG/ULONG from long to int. 2006-09-29 16:08:30 +02:00
Andrew Talbot
04423c4f59 quartz: Cast-qual warnings fix. 2006-09-25 18:16:35 +02:00
Alexandre Julliard
32ab895e46 makefiles: Generate the dependencies line to avoid some code duplication. 2006-09-14 09:38:16 +02:00
Robert Shearman
7d6dbed3cf quartz: Use the absolute height of the bitmap format as a negative values simply means it is a top-down bitmap. 2006-08-28 17:48:53 +02:00
Alexandre Julliard
5cf75e615a makefiles: Only run test and documentation targets in directories that need them. 2006-08-28 13:37:44 +02:00
Alex Villacís Lasso
bc06d70770 quartz: Skip over INFO chunk in AVI file parsing. 2006-08-26 18:54:11 +02:00
Stefan Leichter
19d275f775 quartz: Print 64bit integers with wine_dbgstr_longlong. 2006-08-18 20:56:20 +02:00
Sagar Mittal
cb4889d940 quartz: DSoundRender: Do not overwrite a full buffer. 2006-08-18 20:56:20 +02:00
Alexandre Julliard
eb8a40c368 libs: Merged libwine_unicode into libwine.
Most dlls use libwine_unicode at this point, so there's nothing to
gain by having two separate libraries.
2006-07-11 19:33:22 +02:00
Alexandre Julliard
77dc0d9be5 .gitignore: Added wildcards to ignore generated resource files. 2006-07-10 21:39:00 +02:00
Alexandre Julliard
0fa8baafcb make_dlls: Recursively ignore .ok files in all tests directories. 2006-07-10 21:26:50 +02:00
Alexandre Julliard
edd100b899 make_dlls: Recursively ignore testlist.c in all tests directories. 2006-07-10 21:19:42 +02:00
Alexandre Julliard
5258e061dc make_dlls: Ignore generated import libraries from the top-level .gitignore. 2006-07-10 20:55:58 +02:00
Alexandre Julliard
cc2b3b48e6 Take advantage of the recursive nature of .gitignore for Makefile entries.
Prefix other entries with '/' to make them non-recursive.
2006-07-10 20:47:54 +02:00
Piotr Caban
02479df343 quartz: Fixed crash in releasing uninitializes pAlloc and pReader. 2006-06-30 20:44:08 +02:00
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