Commit Graph

268 Commits

Author SHA1 Message Date
Anton Baskanov 57b627fba6 amstream: Implement MediaStreamFilter::GetCurrentStreamTime.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-18 19:56:43 +02:00
Zebediah Figura 3d92885390 amstream/tests: Define and use a global variable holding an audio media type.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-04 11:59:10 +02:00
Anton Baskanov aba27fd5a3 amstream: Call MediaStreamFilter::SupportSeeking() in AMMultiMediaStream::OpenFile().
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-03 22:57:07 +02:00
Anton Baskanov 1c99a8e095 amstream: Implement MediaStreamFilter::SetPositions().
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-03 22:57:04 +02:00
Anton Baskanov 77134d806d amstream: Implement MediaStreamFilter::SupportSeeking().
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-03 22:57:00 +02:00
Anton Baskanov ae1ca7029a amstream: Implement AMAudioStream::BeginFlush() and ::EndFlush().
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-03 22:56:57 +02:00
Anton Baskanov d1197ffaeb amstream: Leave critical section on error in MediaStreamFilter::EnumPins().
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-03 22:56:53 +02:00
Anton Baskanov d17b009bf6 amstream: Add tests for IAMMediaStream::Initialize and ::JoinAMMultiMediaStream.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-01 22:10:28 +02:00
Anton Baskanov 7d07142b1f amstream: Allow AMAudioStream and AMDirectDrawStream to be created by CoCreateInstance.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-01 22:10:28 +02:00
Anton Baskanov 5eb568354c amstream: Move initialization calls from *_stream_create into AMMultiMediaStream::AddMediaStream.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-01 22:10:28 +02:00
Anton Baskanov f568c47a47 amstream: Move initialization code from ddraw_stream_create into AMDirectDrawStream::Initialize and ::JoinAMMultiMediaStream.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-01 22:10:28 +02:00
Anton Baskanov 8b5f9145f7 amstream: Move initialization code from audio_stream_create into AMAudioStream::Initialize and ::JoinAMMultiMediaStream.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-01 22:10:28 +02:00
Anton Baskanov 4300981d6b amstream: Don't crash if parent is NULL in AMAudioStream:: and AMDirectDrawStream::GetMultiMediaStream.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-26 09:59:08 +02:00
Zebediah Figura f5aaca10af amstream: Don't duplicate IMediaStream method implementations.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-26 09:59:00 +02:00
Zebediah Figura 410934a762 amstream: Simplify flush_receive_queue() a bit.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-25 20:20:19 +02:00
Zebediah Figura dab1b7e758 amstream/tests: Remove some no longer necessary callbacks.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-27 12:01:57 +02:00
Anton Baskanov 0884111fec amstream: Implement IAudioStreamSample::CompletionStatus().
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-23 09:12:08 +02:00
Anton Baskanov bdf5188d16 amstream: Implement IAudioStreamSample::Update().
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-23 09:12:06 +02:00
Anton Baskanov 1a20f9b06b amstream: Implement AMAudioStream::Receive().
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-23 09:12:04 +02:00
Anton Baskanov b90cd8b0a4 amstream: Implement AMAudioStream::EndOfStream().
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-23 09:11:59 +02:00
Anton Baskanov e7f0917665 amstream: Store parent as struct audio_stream in audio stream sample.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-22 08:29:30 +02:00
Anton Baskanov 86bc6a28f7 amstream: Implement AMAudioStream::SetState.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-20 12:38:10 +02:00
Anton Baskanov 2006621683 amstream: Implement MediaStreamFilter::Stop, ::Pause, and ::Run.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-27 21:16:13 +01:00
Anton Baskanov ed93b25f4d amstream/tests: Refactor test stream to allow multiple instances.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-27 21:16:13 +01:00
Anton Baskanov ef2249e4b6 amstream: Implement MediaStreamFilter::GetState.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-27 21:16:13 +01:00
Anton Baskanov 7ff63efa01 amstream: Implement adding existing streams in AMMultiMediaStream::AddMediaStream.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-27 21:16:13 +01:00
Zebediah Figura 6cb835f852 amstream: Forbid changing the multimedia stream mode.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-05 19:48:29 +01:00
Zebediah Figura fa62cde374 amstream: Forbid changing the graph in IAMMultiMediaStream::Initialize().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-05 19:48:25 +01:00
Zebediah Figura 20004d1557 amstream: Set the multimedia stream graph in IAMMultiMediaStream::Initialize() only if a graph is specified.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-05 19:48:22 +01:00
Zebediah Figura 8e4f8771af amstream: Explicitly create the graph in IAMMultiMediaStream::OpenFile().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-05 19:48:17 +01:00
Zebediah Figura e6a82aa8ee amstream: Create a default filter graph in IAMMultiMediaStream::AddMediaStream() if one does not exist yet.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-05 19:48:14 +01:00
Zebediah Figura 753d007cbb amstream: Simplify IAMMultiMediaStream::GetFilterGraph().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-05 19:48:09 +01:00
Zebediah Figura 2227facdd6 amstream: Return E_INVALIDARG if AMMSF_ADDDEFAULTRENDERER is requested with a non-NULL ret_stream parameter.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-04 09:50:26 +01:00
Zebediah Figura 3e6eaaa2c5 amstream: Allow AMMSF_ADDDEFAULTRENDERER only with MSPID_PrimaryAudio.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-04 09:50:23 +01:00
Zebediah Figura c6d436f7fd amstream: Implement IMediaStreamFilter::EnumMediaStreams().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-04 09:50:20 +01:00
Zebediah Figura ca4f624e03 amstream: Check for an existing stream in IAMMultiMediaStream::AddMediaStream().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-04 09:50:17 +01:00
Zebediah Figura 6b04ca02c0 amstream: Implement IAMMultiMediaStream::EnumMediaStreams().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-04 09:50:13 +01:00
Anton Baskanov 5b94633aa3 amstream: Reject incompatible media types in AMAudioStream::ReceiveConnection.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-26 21:47:24 +01:00
Anton Baskanov bbf0a93e4e amstream: Implement AMAudioStream::SetFormat.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-26 21:47:24 +01:00
Anton Baskanov 1ae8e519f4 amstream: Implement AMAudioStream::GetFormat.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-26 21:47:24 +01:00
Zebediah Figura a456808d82 amstream: Use wide character string literals.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-21 20:55:13 +01:00
Zebediah Figura 580ca7557d strmbase: Get rid of the BaseInputPin typedef.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-20 09:09:08 +01:00
Zebediah Figura d49417c081 amstream: Use shorter names for primary audio stream methods.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-05 08:30:46 +02:00
Zebediah Figura 953cf31158 amstream: Reimplement IPin locally for the primary audio stream.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-05 08:30:41 +02:00
Zebediah Figura 5527443865 amstream: Reimplement IMemInputPin locally for the primary audio stream.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-05 08:30:36 +02:00
Zebediah Figura 47105ce35c amstream: Get rid of the AudioMediaStreamImpl typedef.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-05 08:30:32 +02:00
Zebediah Figura c5651e9409 amstream: Reimplement IPin::EnumMediaTypes() for the primary audio stream.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-04 17:11:55 +02:00
Zebediah Figura d5f1a5c0be amstream/tests: Also test pin information for the primary audio stream.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-04 17:11:52 +02:00
Zebediah Figura ed685754e2 amstream: Use shorter method names for DirectDraw stream methods.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-04 17:11:50 +02:00
Zebediah Figura 2704646637 amstream: Reimplement IPin locally for the DirectDraw stream.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-04 17:11:48 +02:00