Commit Graph

887 Commits

Author SHA1 Message Date
Maarten Lankhorst 810a933f68 quartz: Change longlong printfs. 2008-04-21 14:05:37 +02:00
Maarten Lankhorst c1a4acde01 quartz: Add more seek entries and fix a time continuity bug. 2008-04-21 14:05:37 +02:00
Maarten Lankhorst 9d9bf6f158 quartz: Only drop Preroll samples after obtaining its time. 2008-04-21 14:05:37 +02:00
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
Robert Shearman 74407105d2 Check the return value from register_key_guid in all the DLL registering code. 2006-05-10 19:38:04 +02:00
Dmitry Timoshkov 78904aab2d quartz: Register some of the interfaces. 2006-02-07 12:25:35 +01:00
Eric Pouech e66e227dbe Fixes for missing prototypes warnings. 2006-02-06 13:13:28 +01:00
Thomas Weidenmueller 2b4377f5eb quartz: Fix incorrect usages of the HRESULT_FROM_WIN32 macro. 2005-12-09 11:21:51 +01:00
Ge van Geldorp 1a1583a364 Match PSDK STATUS_* definitions. 2005-11-28 17:32:54 +01:00
Alexandre Julliard 0ec7e1a591 Renamed all .cvsignore files to .gitignore. 2005-11-26 13:10:33 +01:00
Francois Gouget 6d442aeb34 Assorted spelling fixes. 2005-11-23 20:14:43 +01:00
Christian Costa b82d94e4f1 Make window uses black brush for background.
Check format type of video stream.
2005-10-10 10:44:54 +00:00
Alexandre Julliard 7e22be4d84 We are no longer generating .dbg.c files. 2005-09-29 10:35:58 +00:00
Alexandre Julliard 9f859692f9 Replace DPRINTF by TRACE in a few places. 2005-09-25 15:23:21 +00:00
Christian Costa bfbba1a6fd Fix function names. 2005-09-25 15:17:30 +00:00
Alexandre Julliard 305b221cf0 Get rid of another long long constant. 2005-09-14 10:30:36 +00:00
Alexandre Julliard c6b005ac69 Fixed some more traces to use the right printf format and avoid
typecasts.
2005-09-12 14:12:46 +00:00
Mike McCormack dc1c62a592 Fix gcc 4.0 warnings. 2005-09-07 11:31:17 +00:00
Christian Costa df75a4f028 Forward calls of IBasic* and IVideoWindow interfaces of the
filtergraph to the right filter.
2005-09-02 11:20:09 +00:00
Christian Costa 8f3cc76ea2 Return S_OK when committing/decomitting an already
committed/decommitted allocator.
Add corresponding test case.
Improve traces.
2005-08-22 09:27:41 +00:00
Christian Costa 6301fec0ef Properly allocate/release memory when adding filters to the filtergraph.
When connecting pin, discard filter which is the same as the upstream
one.
Remove wrong extra IBaseFilter_Release.
Improve traces by showing filters owing pins we want to connect or
render.
Properly initialize output pin of transform filter.
2005-08-22 09:21:24 +00:00
Christian Costa 7f3c43b5c9 Add stubbed IGraphConfig interface to the filtergraph. 2005-08-17 09:52:15 +00:00
Christian Costa 19f9da8044 Fix rendering of paletted video stream. 2005-08-17 09:51:57 +00:00
Mike McCormack 50a6d970f5 gcc 4.0 warning fixes for Interlocked* functions. 2005-08-03 11:03:05 +00:00
Alexandre Julliard 738e88db5f Replace the ICOM_THIS_From macros by inline functions. 2005-07-27 15:14:18 +00:00
Mike McCormack bda7ace2e9 Interlocked LONG* gcc warning fixes. 2005-07-13 11:59:15 +00:00
Mike McCormack 0791d06215 Interlocked LONG* gcc warning fixes. 2005-07-12 19:21:36 +00:00
Mike McCormack e8c1bf3283 Make functions static, fix declarations. 2005-06-20 18:39:40 +00:00
Stefan Huehner ac6f562b52 Fix more -Wstrict-prototypes warnings. 2005-06-20 14:18:03 +00:00
Francois Gouget 7706560dcd Remove unneeded NULL cast. 2005-06-17 20:55:27 +00:00
Christian Costa acb2ff2da5 Added window support to the video renderer:
- replaced ddraw code by window code.
- implemented IBasicVideo and IVideoWindow interfaces.
2005-06-13 11:37:55 +00:00
Christian Costa 09b4966957 Don't use fullscreen mode in video renderer for now and improve error
handling a bit.
Improved a bit Run/Pause/Stop methods of parser template.
2005-06-07 20:29:23 +00:00
Dmitry Timoshkov eba47f1dfe Make remaining OLE interface vtables const. 2005-06-06 19:50:35 +00:00
Christian Costa 623fb34acc Fixed clock release in transform template.
AddRef pUnk in CopyMediaType.
Added CreateMediaType helper function and use it.
Replaced some DeleteMediaType calls to FreeMediaType to be in line
with recent changes.
Fixed IEnumMediaTypesImpl_Next.
Clear media type when initializing pins.
Added some AddRef/Release traces.
2005-06-05 19:18:34 +00:00
Christian Costa cb6e4a12ea Release clock only when one is set. 2005-06-04 09:37:35 +00:00
Maarten Lankhorst 05d658d012 Added reconnect function for filtergraph. 2005-05-18 13:25:49 +00:00
Maarten Lankhorst 0caae47658 Fixed freeing of mediatype. 2005-05-18 13:25:20 +00:00
Robert Shearman 54160222a0 Rename MODULENAME_Dll* functions to Dll* for better consistency and
type checking.
2005-05-17 14:41:37 +00:00
Alexandre Julliard 34fa35dc99 Added rules for building import libraries in the individual dll
makefiles, and added support for building a .def.a static import
library too.
2005-05-09 14:42:30 +00:00
Alexandre Julliard d62356aa1e Added rules to build import libraries in the individual dll makefiles.
Generate import libraries with the right name right away instead of
using an intermediate .spec.def file.
2005-05-07 12:39:52 +00:00
Maarten Lankhorst 4c9f5f6456 Fixed two small memory leaks. 2005-05-07 12:12:29 +00:00
Maarten Lankhorst 8efc1f3612 Fixed a dozen of reference (and some memory) leaks.
Implemented filtergraph_pause/stop.
2005-05-06 14:34:44 +00:00
Maarten Lankhorst aa4df8f63a Fixed {Copy/Delete/Free}MediaType functions to show proper behaviour.
Fixed EnumMediaTypes to copy pbFormat too.
Added FreeMediaType.
2005-05-06 14:34:02 +00:00
Christian Costa 7180775af6 Forward CLSID_FilterGraphNoThread to CLSID_FilterGraph. 2005-05-05 09:50:35 +00:00
Christian Costa e901cc4b53 Improved errors handling a bit in dsound renderer. 2005-04-25 10:49:22 +00:00
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