Rebase against adffa11609093c3c21cf43970bbecda1b2c43eb1.

This commit is contained in:
Alistair Leslie-Hughes
2021-07-07 12:21:45 +10:00
parent fcf7b80107
commit a0716c9cfe
8 changed files with 77 additions and 74 deletions

View File

@@ -1,7 +1,7 @@
From 8c2af2c3be9a337c07638206ba9d0c4035fda36e Mon Sep 17 00:00:00 2001
From d340cda54c6b51c8ee9fcd687ab9877f0451844a Mon Sep 17 00:00:00 2001
From: Derek Lesho <dlesho@codeweavers.com>
Date: Fri, 19 Mar 2021 16:59:29 -0400
Subject: [PATCH 14/39] winegstreamer: Introduce AAC decoder transform.
Subject: [PATCH] winegstreamer: Introduce AAC decoder transform.
Signed-off-by: Derek Lesho <dlesho@codeweavers.com>
---
@@ -83,7 +83,7 @@ index 25694aae84d..6407aff484c 100644
HRESULT decode_transform_create(REFIID riid, void **obj, enum decoder_type) DECLSPEC_HIDDEN;
diff --git a/dlls/winegstreamer/mfplat.c b/dlls/winegstreamer/mfplat.c
index f015ecc3f47..f3d9fb61a66 100644
index 35b2f2c3224..9c95450bd99 100644
--- a/dlls/winegstreamer/mfplat.c
+++ b/dlls/winegstreamer/mfplat.c
@@ -407,6 +407,11 @@ static HRESULT h264_decoder_create(REFIID riid, void **ret)
@@ -113,10 +113,10 @@ index f015ecc3f47..f3d9fb61a66 100644
- IMFMediaType_SetUINT32(type, &MF_MT_AUDIO_CHANNEL_MASK, format->u.audio.channel_mask);
+ if (format->u.audio.channel_mask)
+ IMFMediaType_SetUINT32(type, &MF_MT_AUDIO_CHANNEL_MASK, format->u.audio.channel_mask);
IMFMediaType_SetUINT32(type, &MF_MT_ALL_SAMPLES_INDEPENDENT, TRUE);
return type;
}
@@ -687,6 +694,8 @@ static void mf_media_type_to_wg_format_audio(IMFMediaType *type, struct wg_forma
@@ -688,6 +695,8 @@ static void mf_media_type_to_wg_format_audio(IMFMediaType *type, struct wg_forma
channel_mask = KSAUDIO_SPEAKER_MONO;
else if (channels == 2)
channel_mask = KSAUDIO_SPEAKER_STEREO;
@@ -125,7 +125,7 @@ index f015ecc3f47..f3d9fb61a66 100644
else
{
FIXME("Channel mask is not set.\n");
@@ -699,6 +708,58 @@ static void mf_media_type_to_wg_format_audio(IMFMediaType *type, struct wg_forma
@@ -700,6 +709,58 @@ static void mf_media_type_to_wg_format_audio(IMFMediaType *type, struct wg_forma
format->u.audio.channel_mask = channel_mask;
format->u.audio.rate = rate;
@@ -197,7 +197,7 @@ index 1c68eba1872..b1e35521266 100644
case WG_AUDIO_FORMAT_MPEG1_LAYER1:
diff --git a/dlls/winegstreamer/wg_parser.c b/dlls/winegstreamer/wg_parser.c
index 9ca5abebfaf..2a982576ef5 100644
index 6c8cf1f85b1..7f06fd886d6 100644
--- a/dlls/winegstreamer/wg_parser.c
+++ b/dlls/winegstreamer/wg_parser.c
@@ -398,6 +398,13 @@ static void wg_set_caps_from_wg_format(GstCaps *caps, const struct wg_format *fo