Commit Graph

955 Commits

Author SHA1 Message Date
Aric Stewart d969b80210 quartz: Add initial VMR9 stub. 2012-04-05 14:51:34 +02:00
Aric Stewart 5bc4c1591a quartz: COM cleanup for DSoundRenderImpl. 2012-04-04 17:49:05 +02:00
Aric Stewart 51e3834bfb strmbase: Add IMediaPosition implementation to PosPassThru. 2012-04-04 17:49:04 +02:00
Aric Stewart dbf910b053 quartz: Change VideoRenderer to use strmbase's BaseControlVideo. 2012-04-03 12:20:15 +02:00
Aric Stewart 75300a7e32 quartz: Convert VideoRenderer to use strmbase's BaseControlWindow. 2012-04-03 12:20:03 +02:00
Aric Stewart 56477075c2 strmbase: Remove QualityControlImpl from the general strmbase.h.
Quality Control things are not part of the standard strmbase library set.
2012-04-03 12:19:17 +02:00
Aric Stewart 896be1355b quartz: Convert VideoRenderer to use strmbase BaseRenderer. 2012-04-03 12:18:44 +02:00
Aric Stewart 8830470a8c quartz: Have the VideoRenderer use strmbase BaseWindow. 2012-04-03 12:10:45 +02:00
Aric Stewart 54eafc73e5 strmbase: Implement renderer quality control into the base renderer. 2012-04-03 12:10:33 +02:00
Aric Stewart 821ead201d quartz: Convert DsoundRenderer to use strmbase BaseRenderer. 2012-04-02 14:01:27 +02:00
Aric Stewart 662220f77f strmbase: Expand BaseRenderer implementation. 2012-04-02 14:01:23 +02:00
Aric Stewart c6289fecec quartz: COM cleanup in ACMWrapperImpl. 2012-04-02 14:00:36 +02:00
Aric Stewart 26d33bb1c1 quartz: COM cleanup for AVIDecImpl. 2012-04-02 14:00:30 +02:00
Aric Stewart e7d4d9e4f6 quartz: COM cleanup for AsyncReader and FileAsyncReader. 2012-04-02 14:00:20 +02:00
Aric Stewart 3b85b13e27 quartz: Update null renderer to use the BaseRenderer from strmbase. 2012-03-30 10:44:34 +02:00
Aric Stewart d3c5b2c4f1 strmbase: COM cleanup for cleanup SourceSeeking. 2012-03-26 18:15:50 +02:00
Aric Stewart eb5d8b969f strmbase: COM cleanup for BasePin, BaseInputPin, and BaseOutputPin. 2012-03-26 18:15:49 +02:00
Aric Stewart 29d3c75442 strmbase: COM cleanup for BaseFilter. 2012-03-26 18:15:48 +02:00
Michael Stefaniuc 810b619e2b quartz: Print the debug string and not the pointer to it. 2012-03-26 18:15:24 +02:00
Aric Stewart cdf9c4f223 strmbase: Rename MediaSeekingPassThru to RendererPosPassThru to match standard strmbase naming. 2012-03-15 19:50:39 +01:00
Aric Stewart 026037ab69 strmbase: Move the MediaSeekingPassThru functions from quartz into strmbase. 2012-03-15 19:49:21 +01:00
Marcus Meissner 90dd4ea9a6 quartz: Fixed sizeof()s to IsBadReadPtr (Coverity). 2012-02-20 11:38:57 +01:00
Aric Stewart c3e2407664 quartz: AMFilterData_ParseFilterData returns a pointer to a pointer to filter data. 2012-02-07 09:30:05 -06:00
Aric Stewart 10b2a21c3b quartz: Do not report a position unless the filter graph is running or has been paused. 2012-02-06 10:19:31 -06:00
Aric Stewart 53bd62737c quartz: If the MediaSeeking is not implemented all the way up the passthru chain fall back to the filtergraph's clock to find position. 2012-02-01 16:42:44 +01:00
Aric Stewart da0650a209 quartz: Use the csReceive critical sections in transform filters. 2012-01-23 17:05:12 +01:00
Aric Stewart 4cd49d3bf1 quartz: Lower the merit on our current builtin filters. 2012-01-17 19:14:08 +01:00
Aric Stewart 8c91f1bf5e quartz: Implement IObjectWithSite and IAMGraphBuilderCallback for the FilterGraph. 2012-01-16 18:17:49 +01:00
André Hentschel b5ba054ce8 Assorted header comment cleanup. 2012-01-04 19:35:13 +01:00
Francois Gouget 5f88f362ea dlls: Standardize on 'static const WCHAR' for our Unicode string literals.
Do the same for the corresponding Ansi strings.
2011-12-20 10:16:09 +01:00
Francois Gouget e8f42fb29e quartz: Avoid hardcoding the Unicode string literal lengths. 2011-12-16 17:40:39 +01:00
Francois Gouget 8560a654a8 quartz/tests: Give a name to the critical sections. 2011-11-14 20:15:28 +01:00
Michael Stefaniuc a948e5e474 quartz: Free two assert calls from having side effects. 2011-10-08 17:38:34 +02:00
Maarten Lankhorst 12e132e9be quartz: Fix support for mpeg layer 1 and 2. 2011-09-27 16:53:59 +02:00
Francois Gouget bd7b345b26 Assorted spelling fixes & co. 2011-09-27 11:00:13 +02:00
Francois Gouget 3de330db54 tests: Remove unneeded assert.h includes. 2011-09-27 10:59:56 +02:00
Francois Gouget e5e2304427 quartz/tests: Skip some tests if not allowed to register filters. 2011-09-19 17:56:05 +02:00
Erich Hoover 09f134cb69 quartz: Fix converting between the media time and REFTIME. 2011-09-12 16:49:58 +02:00
Erich Hoover b7bc6dcfae quartz: Add support for EndOfStream in PullPin. 2011-09-12 16:49:58 +02:00
Erich Hoover 9f7ef3786a quartz: Add missing release. 2011-09-12 16:49:58 +02:00
Erich Hoover cd4ee69ef3 quartz: Samples should be freed when IAsyncReader::Request fails. 2011-09-12 16:49:57 +02:00
Erich Hoover bc204370ae quartz: Do not assert when IAsyncReader::WaitForNext returns VFW_E_TIMEOUT. 2011-09-12 16:49:57 +02:00
Michael Stefaniuc 27e1d5adb7 quartz: Use an IDL file to define the IAMFilterData iface. 2011-09-06 11:29:38 +02:00
Alexandre Julliard 89d1d47d6b quartz: Specify the PSFactoryBuffer class in the idl file. 2011-08-01 17:20:46 +02:00
Michael Stefaniuc 92f29035d8 quartz: COM cleanup for the IMediaPosition iface. 2011-07-01 14:39:36 +02:00
Michael Stefaniuc 482879462a quartz: COM cleanup for the IGraphConfig iface. 2011-07-01 14:39:36 +02:00
Michael Stefaniuc 13626d06e6 quartz: COM cleanup for the IMediaEventSink iface. 2011-07-01 14:39:36 +02:00
Michael Stefaniuc e97b34b26e quartz: COM cleanup for the IMediaFilter iface. 2011-07-01 14:39:36 +02:00
Michael Stefaniuc eca149bb4b quartz: COM cleanup for the IMediaEventEx iface. 2011-07-01 14:39:36 +02:00
Michael Stefaniuc 6d929c71b6 quartz: COM cleanup for the IVideoWindow iface. 2011-07-01 14:39:36 +02:00
Michael Stefaniuc a37208ba96 quartz: COM cleanup for the IBasicVideo2 iface. 2011-07-01 14:39:35 +02:00
Michael Stefaniuc 8d52dffc6d quartz: COM cleanup for the IBasicAudio iface. 2011-07-01 14:39:35 +02:00
Michael Stefaniuc deb489c2d2 quartz: COM cleanup for the IMediaSeeking iface. 2011-07-01 14:39:35 +02:00
Michael Stefaniuc 6c3e62fdaf quartz: COM cleanup for the IMediaControl iface. 2011-07-01 14:39:35 +02:00
Michael Stefaniuc 2d589407b3 quartz: Pass the object instead of the iface to an internal helper. 2011-07-01 14:39:35 +02:00
Michael Stefaniuc f888eb9135 quartz: COM cleanup for the IFilterGraph2 iface. 2011-07-01 14:39:35 +02:00
Marcus Meissner 3f42609042 quartz: Removed useless NULL check (Coverity). 2011-06-27 13:27:24 -05:00
Maarten Lankhorst f991daf188 quartz: Skip filtergraph tests when filtergraph cannot be created. 2011-06-24 11:57:05 -05:00
Michael Stefaniuc 2672b0ae94 quartz: COM cleanup for the ifaces of FilterMapper3Impl. 2011-06-21 11:28:59 +02:00
Michael Stefaniuc d2910bb7fa quartz/tests: Simplify the file handling in filtergraph.c. 2011-06-20 19:32:05 +02:00
Michael Stefaniuc ee9ca54eba quartz/tests: Store the TestFilterImpl instead of its iface in IEnumPinsImpl. 2011-06-20 19:32:05 +02:00
Michael Stefaniuc 9f52e80055 quatz/tests: Pass back the object instead of the iface in createtestfilter(). 2011-06-20 19:32:05 +02:00
Michael Stefaniuc b9d5a5007a quartz/tests: Finish the COM cleanup in filtergraph.c. 2011-06-20 19:32:05 +02:00
Michael Stefaniuc b21c2d6522 quartz/tests: COM cleanup for the IClassFactory iface. 2011-06-20 19:32:05 +02:00
Michael Stefaniuc 6009ed4b6f quartz/tests: COM cleanup for the IPin iface. 2011-06-20 19:32:05 +02:00
Marcus Meissner 9b39995201 quartz: Mark internal symbols with hidden visibility. 2011-05-24 11:55:59 +02:00
Alexandre Julliard 7f6e677d5a quartz: Make sure the preferred allocator pointer is initialized. 2011-05-20 10:28:21 +02:00
Erich Hoover 068593b238 quartz: Create and hold onto a preferred allocator for IAsyncReader::RequestAllocator. 2011-05-17 12:01:18 +02:00
Erich Hoover 493a3a0f9d quartz: Make sure pin state cannot change while a flush is in progress. 2011-05-17 12:01:16 +02:00
Erich Hoover 484c952cf2 quartz: Release outstanding samples in PullPin::PauseProcessing. 2011-05-17 11:57:57 +02:00
Erich Hoover 819643ada8 quartz: Return IMediaSeeking interface for Parser PullPin. 2011-05-17 11:55:24 +02:00
Erich Hoover 7a405fa9e9 quartz: Return IMediaSeeking interface for Parser OutputPin. 2011-05-17 11:54:43 +02:00
Marcus Meissner 63823061ed quartz: Handle NULL return from strchr() (Coverity). 2011-05-03 19:34:27 +02:00
Austin English 376bbd1ecc quartz: Remove extraneous parentheses (LLVM/Clang). 2011-04-13 14:13:55 +02:00
Gerald Pfeifer a3d8e7b369 quartz: Properly set a parameter by reference in Parser_OutputPin_DecideAllocator. 2011-04-05 13:36:56 +02:00
Francois Gouget 78c605c3c9 quartz: Make some functions static. 2011-03-16 14:14:24 +01:00
Marcus Meissner 82cd229cc2 quartz: Removed const from const REFIID (Coverity). 2011-03-14 19:31:29 +01:00
Austin English a5c50a25fb quartz: Avoid %L in traces (LLVM/Clang). 2010-12-23 13:47:25 +01:00
Alexandre Julliard ae2a992d70 quartz: Convert coclasses registration to the IRegistrar mechanism. 2010-12-17 13:26:04 +01:00
Maarten Lankhorst 220d610b3d quartz: Handle EndOfStream more elegantly in dsound renderer. 2010-12-14 16:01:34 +01:00
Maarten Lankhorst 351165e30d quartz: Fix a race condition in videorenderer endflush. 2010-12-14 16:01:17 +01:00
Maarten Lankhorst b353f32453 quartz: Handle seeking while running better. 2010-12-14 16:01:11 +01:00
Francois Gouget 0eb6e40720 Assorted spelling fixes. 2010-12-13 12:43:29 +01:00
Michael Stefaniuc 9a0f38e211 quartz: Use an iface instead of a vtbl pointer in SystemClockImpl. 2010-12-09 12:22:33 +01:00
Michael Stefaniuc e86dff725f quartz: Use an iface instead of a vtbl pointer in IEnumRegFiltersImpl. 2010-12-09 12:22:26 +01:00
Michael Stefaniuc bf247fad13 quartz: Use an iface instead of a vtbl pointer in BaseMemAllocator. 2010-12-09 12:20:56 +01:00
Michael Stefaniuc 80db15faa1 quartz: Use an iface instead of a vtbl pointer in EnumMonikerImpl. 2010-12-09 12:20:48 +01:00
Michael Stefaniuc 70f1c34300 quartz: Use an iface instead of a vtbl pointer in IEnumFiltersImpl. 2010-12-09 12:20:42 +01:00
Maarten Lankhorst ab7986390a quartz: Always update time when Run is called. 2010-12-06 19:15:56 +01:00
Maarten Lankhorst 804a9d14c9 quartz: Remove default clock if the providing filter is removed from filtergraph. 2010-12-06 19:15:51 +01:00
Alexandre Julliard 5f49129e03 resources: Define a generic mechanism for adding extra values to the common version block. 2010-12-03 14:53:59 +01:00
Maarten Lankhorst 02986df061 quartz: Make video renderer use unicode calls. 2010-12-03 14:28:30 +01:00
Maarten Lankhorst 70b31cf0ce quartz: Use unicode calls in SystemClock. 2010-12-03 14:28:30 +01:00
Maarten Lankhorst 883ca4d9d0 quartz: Implement AMGetErrorTextA on top of AMGetErrorTextW. 2010-12-03 14:28:29 +01:00
Maarten Lankhorst 89161a8ded quartz: Make sure video window is actually destroyed. 2010-12-03 14:28:29 +01:00
Maarten Lankhorst 6e7aff2544 quartz: Add support for filtermapper3 to filtergraph. 2010-12-03 14:28:29 +01:00
Maarten Lankhorst c7a3f12359 quartz: Support IFilterMapper3 interface. 2010-12-03 14:28:28 +01:00
Juan Lang a273ce077e quartz: Don't crash in SetMediaType if the source media type is NULL. 2010-12-03 11:08:37 +01:00
Maarten Lankhorst 5a8ce4c793 quartz: Refuse WAVE_FORMAT_PCM/EXTENSIBLE in acmwrapper. 2010-12-02 12:47:41 +01:00
Maarten Lankhorst cfd4ed9018 quartz: Add quality control to sound renderer. 2010-12-02 12:47:41 +01:00
Maarten Lankhorst 072714f910 quartz: Allow stream time to go negative in sound renderer. 2010-12-02 12:47:40 +01:00
Maarten Lankhorst 97215773d1 Revert "quartz: Fill up sound buffer while in paused state.".
This reverts commit e591700177.
It's not fixing the real issue, filling up buffer while paused is
actually capable of producing quite a few headaches to get it working
right.
2010-12-02 12:47:40 +01:00
Maarten Lankhorst e591700177 quartz: Fill up sound buffer while in paused state. 2010-12-01 17:18:05 +01:00
Maarten Lankhorst 6e69cd4df4 quartz: Increase min_lag.
The max_lag variable determines how much fuzz is allowed between the
sound cursor and the scheduled times, some filters are inaccurate wrt
time and would skip and overwrite data otherwise.
2010-12-01 17:17:47 +01:00
Maarten Lankhorst 945793722d quartz: Implement AsyncReader_FindPin. 2010-12-01 17:17:41 +01:00
Maarten Lankhorst 4881a354c2 quartz: Add support for advise functions in dsoundrender. 2010-11-30 13:53:28 +01:00
Maarten Lankhorst 2b01660178 quartz: Handle selecting default sync source better. 2010-11-29 19:43:33 +01:00
Maarten Lankhorst f0ebe19bfc quartz: Fix timestamping in avi decoder. 2010-11-29 19:43:32 +01:00
Maarten Lankhorst d4185badf1 quartz: Unregister window class after shutdown. 2010-11-29 19:43:32 +01:00
Maarten Lankhorst 9ff6c7d1c7 quartz: Silence fixmes in sound renderer. 2010-11-29 19:43:31 +01:00
Maarten Lankhorst f4a0ca85af quartz: Unset time in dsoundrender if it cannot be obtained. 2010-11-29 19:43:31 +01:00
Maarten Lankhorst ab2e5c0499 quartz: Add support for fullscreen mode in video renderer. 2010-11-25 11:49:08 +01:00
Maarten Lankhorst f63950d023 quartz: Change VideoRenderer_Run to handle EndOfStream slightly better. 2010-11-25 11:49:06 +01:00
Maarten Lankhorst 0a4adc1f10 quartz: Prevent circular connections in render case too. 2010-11-25 11:49:06 +01:00
Maarten Lankhorst 44a17d27bb quartz: Handle state changes in direct sound renderer correctly.
Based on a patch from Vladimir Panteleev
2010-11-11 17:20:24 +01:00
Maarten Lankhorst 5c3cddf351 quartz: Make window behavior of video renderer act more like windows. 2010-11-11 17:08:52 +01:00
Maarten Lankhorst 64b14c0ecd quartz: Start DirectSound renderer as soon as possible.
Makes directsound switch to silent playback even when no buffers are
playing, fixes glitching on starting playback from a stopped buffer.
2010-11-11 17:08:47 +01:00
Maarten Lankhorst 5dd27f7597 quartz: Reset state change after flushing.
This fixes IBasicVideo:GetCurrentImage.
2010-11-11 12:25:26 +01:00
Maarten Lankhorst 06ca6fb184 quartz: Fix stub for GetVideoPaletteEntries. 2010-11-11 12:25:22 +01:00
Maarten Lankhorst 79f1618828 quartz: Rework direct sound renderer rework to be more time aware. 2010-11-10 12:16:42 +01:00
Maarten Lankhorst 7fbc8814d8 quartz: Use quality control in video renderer. 2010-11-10 12:16:18 +01:00
Maarten Lankhorst 10c51a80f0 quartz: Reset stream time when paused after seeking. 2010-11-10 12:14:32 +01:00
Maarten Lankhorst f38688b836 quartz: Add quality control to avi decoder. 2010-11-10 12:14:30 +01:00
Maarten Lankhorst a5798fc96c quartz: Fix video renderer EndOfStream. 2010-11-10 12:14:19 +01:00
Maarten Lankhorst bb8ccbd507 quartz: On flushing, always signal blocked event handle. 2010-11-10 12:14:12 +01:00
Maarten Lankhorst adabc4ae92 quartz: Use media time instead of stream time in video renderer. 2010-11-10 12:13:59 +01:00
Maarten Lankhorst 27c120cf58 quartz: Fix PullPin_EnumMediaTypes. 2010-11-09 16:56:59 +01:00
Maarten Lankhorst b6fd7bc133 quartz: Add IQualityControl to video renderer. 2010-11-08 13:30:27 +01:00
Maarten Lankhorst 3329873b81 quartz: Forward IQualityControl on pullpin to base filter. 2010-11-08 13:30:27 +01:00
Maarten Lankhorst 120dd66ed2 quartz: Actually use the start time in SendRun. 2010-11-08 13:30:26 +01:00
Maarten Lankhorst 4f8584ac27 quartz: Remove position from filtergraph. 2010-11-08 13:30:25 +01:00
Maarten Lankhorst 2830ccacb0 quartz: Use media time instead of stream time in null renderer. 2010-11-08 13:30:25 +01:00
Maarten Lankhorst 875faa3101 quartz: Use media time instead of stream time in directsound renderer. 2010-11-08 13:30:25 +01:00
Maarten Lankhorst 8c42595c34 quartz: Fix time on MPEG splitter. 2010-11-08 13:30:24 +01:00
Maarten Lankhorst dba95c2288 quartz: Fix time on avi parser. 2010-11-08 13:30:24 +01:00
Maarten Lankhorst af33888b39 quartz: Forward media time in ACM Wrapper. 2010-11-08 13:30:23 +01:00
Maarten Lankhorst 2906a6f8ab quartz: Forward media time in AVI Decoder. 2010-11-08 13:30:23 +01:00
Maarten Lankhorst 8af5c1b729 quartz: Fix return value of GetMediaTime. 2010-11-08 13:30:23 +01:00
Maarten Lankhorst 769b3b515f quartz: Fix run/pause/stop in filtergraph. 2010-11-05 17:15:36 +01:00
Maarten Lankhorst 14229c1176 quartz: Simplify all_renderers_seek.
Since IAMFilterMiscFlags is supported by all source/renderer filters, use that instead.
2010-11-05 17:15:36 +01:00
Maarten Lankhorst 7fda01e522 quartz: Change HeapRealloc call to CoTaskMemRealloc. 2010-11-05 17:15:35 +01:00
Maarten Lankhorst 9dedc4a795 quartz: Add IAMFilterMiscFlags to file source. 2010-11-05 11:24:46 +01:00
Maarten Lankhorst 443e24fe88 quartz: Add IAMFilterMiscFlags to null renderer. 2010-11-05 11:24:42 +01:00
Maarten Lankhorst 79f717bb91 quartz: Fix EC_COMPLETE handling on null renderer. 2010-11-05 11:24:36 +01:00
Maarten Lankhorst 822c3fe9ea quartz: Add IAMFilterMiscFlags to video renderer. 2010-11-05 11:24:33 +01:00
Maarten Lankhorst 6072a3b5ac quartz: Fix EC_COMPLETE handling on video renderer. 2010-11-05 11:24:22 +01:00
Maarten Lankhorst 0196da9b4d quartz: Add IAMFilterMiscFlags to directsound renderer. 2010-11-05 11:24:15 +01:00
Maarten Lankhorst 89223ff78b quartz: Fix EC_COMPLETE handling on dsound renderer. 2010-11-05 11:24:08 +01:00
Aric Stewart 7e8751b2e1 strmbase: More properly standardized pin implementations for NewSegment. 2010-11-01 14:53:29 +01:00
Aric Stewart 60bf76db9a strmbase: Remove non-standard custom allocator logic from strmbase.
Implement function overrides for parser.c where a custom allocator was needed.
2010-10-14 17:54:52 +02:00