Zebediah Figura : winegstreamer: Get rid of the AudioConvert filter.

Alexandre Julliard julliard at winehq.org
Tue Jan 28 15:35:25 CST 2020


Module: wine
Branch: master
Commit: 943b6564f5b2a285f9964f1d1c0743340b2f0bd4
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=943b6564f5b2a285f9964f1d1c0743340b2f0bd4

Author: Zebediah Figura <z.figura12 at gmail.com>
Date:   Mon Jan 27 19:06:57 2020 -0600

winegstreamer: Get rid of the AudioConvert filter.

Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/winegstreamer/gst_guids.h   |   1 -
 dlls/winegstreamer/gst_private.h |   1 -
 dlls/winegstreamer/gsttffilter.c | 120 ---------------------------------------
 dlls/winegstreamer/main.c        |  35 ------------
 4 files changed, 157 deletions(-)

diff --git a/dlls/winegstreamer/gst_guids.h b/dlls/winegstreamer/gst_guids.h
index fe7b65e445..e50ecb4851 100644
--- a/dlls/winegstreamer/gst_guids.h
+++ b/dlls/winegstreamer/gst_guids.h
@@ -19,7 +19,6 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  */
 
-DEFINE_GUID(CLSID_Gstreamer_AudioConvert, 0x334b2ec9, 0xf2b5, 0x40b9, 0x84, 0x32, 0x4a, 0x00, 0xe0, 0x03, 0x86, 0xa8);
 DEFINE_GUID(CLSID_Gstreamer_Mp3, 0x728dcf55, 0x128f, 0x4dd1, 0xad, 0x22, 0xbe, 0xcf, 0xa6, 0x6c, 0xe7, 0xaa);
 DEFINE_GUID(CLSID_Gstreamer_Splitter, 0xf9d8d64e, 0xa144, 0x47dc, 0x8e, 0xe0, 0xf5, 0x34, 0x98, 0x37, 0x2c, 0x29);
 DEFINE_GUID(WINESUBTYPE_Gstreamer, 0xffffffff, 0x128f, 0x4dd1, 0xad, 0x22, 0xbe, 0xcf, 0xa6, 0x6c, 0xe7, 0xaa);
diff --git a/dlls/winegstreamer/gst_private.h b/dlls/winegstreamer/gst_private.h
index 37b19ea626..7108a32e40 100644
--- a/dlls/winegstreamer/gst_private.h
+++ b/dlls/winegstreamer/gst_private.h
@@ -37,7 +37,6 @@
 
 IUnknown * CALLBACK avi_splitter_create(IUnknown *outer, HRESULT *phr) DECLSPEC_HIDDEN;
 IUnknown * CALLBACK mpeg_splitter_create(IUnknown *outer, HRESULT *phr) DECLSPEC_HIDDEN;
-IUnknown * CALLBACK Gstreamer_AudioConvert_create(IUnknown *pUnkOuter, HRESULT *phr);
 IUnknown * CALLBACK Gstreamer_Mp3_create(IUnknown *pUnkOuter, HRESULT *phr);
 IUnknown * CALLBACK Gstreamer_Splitter_create(IUnknown *pUnkOuter, HRESULT *phr);
 IUnknown * CALLBACK wave_parser_create(IUnknown *outer, HRESULT *phr) DECLSPEC_HIDDEN;
diff --git a/dlls/winegstreamer/gsttffilter.c b/dlls/winegstreamer/gsttffilter.c
index 5d1a98b0f5..21feefe09d 100644
--- a/dlls/winegstreamer/gsttffilter.c
+++ b/dlls/winegstreamer/gsttffilter.c
@@ -626,123 +626,3 @@ IUnknown * CALLBACK Gstreamer_Mp3_create(IUnknown *punkouter, HRESULT *phr)
 
     return obj;
 }
-
-static HRESULT WINAPI Gstreamer_AudioConvert_QueryConnect(TransformFilter *iface, const AM_MEDIA_TYPE *amt)
-{
-    GstTfImpl *This = (GstTfImpl*)iface;
-    TRACE("%p %p\n", This, amt);
-
-    if (!IsEqualGUID(&amt->majortype, &MEDIATYPE_Audio) ||
-        !IsEqualGUID(&amt->subtype, &MEDIASUBTYPE_PCM) ||
-        !IsEqualGUID(&amt->formattype, &FORMAT_WaveFormatEx))
-        return S_FALSE;
-    return S_OK;
-}
-
-static HRESULT audio_converter_connect_sink(TransformFilter *tf, const AM_MEDIA_TYPE *amt)
-{
-    GstTfImpl *This = (GstTfImpl*)tf;
-    GstCaps *capsin, *capsout;
-    AM_MEDIA_TYPE *outpmt = &This->tf.pmt;
-    WAVEFORMATEX *inwfe;
-    WAVEFORMATEX *outwfe;
-    WAVEFORMATEXTENSIBLE *outwfx;
-    GstAudioFormat format;
-    HRESULT hr;
-    BOOL inisfloat = FALSE;
-    int indepth;
-
-    mark_wine_thread();
-
-    if (Gstreamer_AudioConvert_QueryConnect(&This->tf, amt) == S_FALSE || !amt->pbFormat)
-        return E_FAIL;
-
-    FreeMediaType(outpmt);
-    *outpmt = *amt;
-    outpmt->pUnk = NULL;
-    outpmt->cbFormat = sizeof(WAVEFORMATEXTENSIBLE);
-    outpmt->pbFormat = CoTaskMemAlloc(outpmt->cbFormat);
-
-    inwfe = (WAVEFORMATEX*)amt->pbFormat;
-    indepth = inwfe->wBitsPerSample;
-    if (inwfe->wFormatTag == WAVE_FORMAT_EXTENSIBLE) {
-        WAVEFORMATEXTENSIBLE *inwfx = (WAVEFORMATEXTENSIBLE*)inwfe;
-        inisfloat = IsEqualGUID(&inwfx->SubFormat, &KSDATAFORMAT_SUBTYPE_IEEE_FLOAT);
-        if (inwfx->Samples.wValidBitsPerSample)
-            indepth = inwfx->Samples.wValidBitsPerSample;
-    } else if (inwfe->wFormatTag == WAVE_FORMAT_IEEE_FLOAT)
-        inisfloat = TRUE;
-
-    if (inisfloat)
-        format = inwfe->wBitsPerSample == 64 ? GST_AUDIO_FORMAT_F64LE : GST_AUDIO_FORMAT_F32LE;
-    else
-        format = gst_audio_format_build_integer(inwfe->wBitsPerSample != 8, G_LITTLE_ENDIAN,
-                inwfe->wBitsPerSample, indepth);
-
-    capsin = gst_caps_new_simple("audio/x-raw",
-                                 "format", G_TYPE_STRING, gst_audio_format_to_string(format),
-                                 "channels", G_TYPE_INT, inwfe->nChannels,
-                                 "rate", G_TYPE_INT, inwfe->nSamplesPerSec,
-                                  NULL);
-
-    outwfe = (WAVEFORMATEX*)outpmt->pbFormat;
-    outwfx = (WAVEFORMATEXTENSIBLE*)outwfe;
-    outwfe->wFormatTag = WAVE_FORMAT_EXTENSIBLE;
-    outwfe->nChannels = 2;
-    outwfe->nSamplesPerSec = inwfe->nSamplesPerSec;
-    outwfe->wBitsPerSample = 16;
-    outwfe->nBlockAlign = outwfe->nChannels * outwfe->wBitsPerSample / 8;
-    outwfe->nAvgBytesPerSec = outwfe->nBlockAlign * outwfe->nSamplesPerSec;
-    outwfe->cbSize = sizeof(*outwfx) - sizeof(*outwfe);
-    outwfx->Samples.wValidBitsPerSample = outwfe->wBitsPerSample;
-    outwfx->dwChannelMask = SPEAKER_FRONT_LEFT|SPEAKER_FRONT_RIGHT;
-    outwfx->SubFormat = KSDATAFORMAT_SUBTYPE_PCM;
-
-    capsout = gst_caps_new_simple("audio/x-raw",
-                                  "format", G_TYPE_STRING, "S16LE",
-                                  "channels", G_TYPE_INT, outwfe->nChannels,
-                                  "rate", G_TYPE_INT, outwfe->nSamplesPerSec,
-                                   NULL);
-
-
-    hr = Gstreamer_transform_ConnectInput(This, amt, capsin, capsout);
-    gst_caps_unref(capsin);
-    gst_caps_unref(capsout);
-
-    This->cbBuffer = inwfe->nAvgBytesPerSec;
-    return hr;
-}
-
-static const TransformFilterFuncTable Gstreamer_AudioConvert_vtbl = {
-    .pfnDecideBufferSize = Gstreamer_transform_DecideBufferSize,
-    .pfnStartStreaming = Gstreamer_transform_ProcessBegin,
-    .pfnReceive = Gstreamer_transform_ProcessData,
-    .pfnStopStreaming = Gstreamer_transform_ProcessEnd,
-    .pfnCheckInputType = Gstreamer_AudioConvert_QueryConnect,
-    .transform_connect_sink = audio_converter_connect_sink,
-    .pfnBreakConnect = Gstreamer_transform_Cleanup,
-    .pfnEndOfStream = Gstreamer_transform_EndOfStream,
-    .pfnBeginFlush = Gstreamer_transform_BeginFlush,
-    .pfnEndFlush = Gstreamer_transform_EndFlush,
-    .pfnNewSegment = Gstreamer_transform_NewSegment,
-    .pfnNotify = Gstreamer_transform_QOS,
-};
-
-IUnknown * CALLBACK Gstreamer_AudioConvert_create(IUnknown *punkouter, HRESULT *phr)
-{
-    IUnknown *obj = NULL;
-
-    TRACE("%p %p\n", punkouter, phr);
-
-    if (!init_gstreamer())
-    {
-        *phr = E_FAIL;
-        return NULL;
-    }
-
-    *phr = Gstreamer_transform_create(punkouter, &CLSID_Gstreamer_AudioConvert, "audioconvert", &Gstreamer_AudioConvert_vtbl, (LPVOID*)&obj);
-
-    TRACE("returning %p\n", obj);
-
-    return obj;
-}
diff --git a/dlls/winegstreamer/main.c b/dlls/winegstreamer/main.c
index cdc3ba0ddc..3e0ef28afb 100644
--- a/dlls/winegstreamer/main.c
+++ b/dlls/winegstreamer/main.c
@@ -40,8 +40,6 @@ static const WCHAR wGstreamer_Splitter[] =
 {'G','S','t','r','e','a','m','e','r',' ','s','p','l','i','t','t','e','r',' ','f','i','l','t','e','r',0};
 static const WCHAR wGstreamer_Mp3[] =
 {'G','S','t','r','e','a','m','e','r',' ','M','p','3',' ','f','i','l','t','e','r',0};
-static const WCHAR wGstreamer_AudioConvert[] =
-{'G','S','t','r','e','a','m','e','r',' ','A','u','d','i','o','C','o','n','v','e','r','t',' ','f','i','l','t','e','r',0};
 static const WCHAR wave_parserW[] =
 {'W','a','v','e',' ','P','a','r','s','e','r',0};
 static const WCHAR avi_splitterW[] =
@@ -122,32 +120,6 @@ AMOVIESETUP_FILTER const amfMp3 =
     amfMp3Pin
 };
 
-AMOVIESETUP_PIN amfAudioConvertPin[] =
-{   {   wNull,
-        FALSE, FALSE, FALSE, FALSE,
-        &GUID_NULL,
-        NULL,
-        1,
-        amfMTaudio
-    },
-    {
-        wNull,
-        FALSE, TRUE, FALSE, FALSE,
-        &GUID_NULL,
-        NULL,
-        1,
-        amfMTaudio
-    },
-};
-
-AMOVIESETUP_FILTER const amfAudioConvert =
-{   &CLSID_Gstreamer_AudioConvert,
-    wGstreamer_AudioConvert,
-    MERIT_UNLIKELY,
-    2,
-    amfAudioConvertPin
-};
-
 static const AMOVIESETUP_MEDIATYPE wave_parser_sink_type_data[] =
 {
     {&MEDIATYPE_Stream, &MEDIASUBTYPE_WAVE},
@@ -295,13 +267,6 @@ FactoryTemplate const g_Templates[] = {
         NULL,
         &amfMp3,
     },
-    {
-        wGstreamer_AudioConvert,
-        &CLSID_Gstreamer_AudioConvert,
-        Gstreamer_AudioConvert_create,
-        NULL,
-        &amfAudioConvert,
-    },
     {
         wave_parserW,
         &CLSID_WAVEParser,




More information about the wine-cvs mailing list