IUnknown * CALLBACK Gstreamer_Mp3_create(IUnknown *punkouter, HRESULT *phr) { const char *plugin; IUnknown *obj = NULL; TRACE("%p %p\n", punkouter, phr); if (!Gstreamer_init()) { *phr = E_FAIL; return NULL; } mark_wine_thread(); plugin = Gstreamer_FindMatch("audio/mpeg, mpegversion=(int) 1"); if (!plugin) { *phr = E_FAIL; return NULL; } *phr = Gstreamer_transform_create(punkouter, &CLSID_Gstreamer_Mp3, plugin, &Gstreamer_Mp3_vtbl, (LPVOID*)&obj); TRACE("returning %p\n", obj); return obj; }
IUnknown * CALLBACK Gstreamer_YUV_create(IUnknown *punkout, HRESULT *phr) { IUnknown *obj = NULL; if (!Gstreamer_init()) { *phr = E_FAIL; return NULL; } *phr = Gstreamer_transform_create(punkout, &CLSID_Gstreamer_YUV, "ffmpegcolorspace", &Gstreamer_YUV_vtbl, (LPVOID*)&obj); return obj; }
IUnknown * CALLBACK Gstreamer_AudioConvert_create(IUnknown *punkout, HRESULT *phr) { IUnknown *obj = NULL; if (!Gstreamer_init()) { *phr = E_FAIL; return NULL; } *phr = Gstreamer_transform_create(punkout, &CLSID_Gstreamer_AudioConvert, "audioconvert", &Gstreamer_AudioConvert_vtbl, (LPVOID*)&obj); return obj; }
IUnknown * CALLBACK Gstreamer_YUV_create(IUnknown *punkouter, HRESULT *phr) { IUnknown *obj = NULL; TRACE("%p %p\n", punkouter, phr); if (!Gstreamer_init()) { *phr = E_FAIL; return NULL; } *phr = Gstreamer_transform_create(punkouter, &CLSID_Gstreamer_YUV, "videoconvert", &Gstreamer_YUV_vtbl, (LPVOID*)&obj); TRACE("returning %p\n", obj); return obj; }
IUnknown * CALLBACK Gstreamer_Mp3_create(IUnknown *punkout, HRESULT *phr) { const char *plugin; IUnknown *obj = NULL; if (!Gstreamer_init()) { *phr = E_FAIL; return NULL; } plugin = Gstreamer_FindMatch("audio/mpeg, mpegversion=(int) 1"); if (!plugin) { *phr = E_FAIL; return NULL; } *phr = Gstreamer_transform_create(punkout, &CLSID_Gstreamer_Mp3, plugin, &Gstreamer_Mp3_vtbl, (LPVOID*)&obj); return obj; }