[STRMBASE] Sync with Wine Staging 3.3. CORE-14434

This commit is contained in:
Amine Khaldi 2018-04-01 13:15:06 +01:00
parent 6e4ff4348a
commit 10517de5e6
19 changed files with 195 additions and 53 deletions

View file

@ -250,7 +250,7 @@ In addition the following libs, dlls and source files are mostly based on code p
from Winehq CVS. If you are looking to update something in these files from Winehq CVS. If you are looking to update something in these files
check Wine current sources first as it may already be fixed. check Wine current sources first as it may already be fixed.
reactos/sdk/lib/3rdparty/strmbase # Synced to Wine-3.0 reactos/sdk/lib/3rdparty/strmbase # Synced to WineStaging-3.3
reactos/sdk/lib/rtl/actctx.c # Partly synced with WineStaging-1.9.16 reactos/sdk/lib/rtl/actctx.c # Partly synced with WineStaging-1.9.16
reactos/sdk/lib/rtl/timerqueue.c # Partly synced with WineStaging-1.7.55 reactos/sdk/lib/rtl/timerqueue.c # Partly synced with WineStaging-1.7.55

View file

@ -21,8 +21,8 @@ list(APPEND SOURCE
transform.c transform.c
video.c video.c
window.c window.c
strmbase_private.h) precomp.h)
add_library(strmbase ${SOURCE}) add_library(strmbase ${SOURCE})
add_pch(strmbase strmbase_private.h SOURCE) add_pch(strmbase precomp.h SOURCE)
add_dependencies(strmbase psdk dxsdk) add_dependencies(strmbase psdk dxsdk)

View file

@ -18,7 +18,15 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/ */
#include "strmbase_private.h" #define COBJMACROS
#include <assert.h>
#include "dshow.h"
#include "uuids.h"
#include "vfwmsgs.h"
#include "wine/unicode.h"
#include "wine/strmbase.h"
static inline BasicAudio *impl_from_IBasicAudio(IBasicAudio *iface) static inline BasicAudio *impl_from_IBasicAudio(IBasicAudio *iface)
{ {

View file

@ -18,9 +18,14 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/ */
#include "strmbase_private.h" #define COBJMACROS
#include <oleauto.h> #include "dshow.h"
#include "wine/unicode.h"
#include "wine/strmbase.h"
#include "uuids.h"
#include "vfwmsgs.h"
#include <assert.h>
HRESULT WINAPI BaseDispatch_Init(BaseDispatch *This, REFIID riid) HRESULT WINAPI BaseDispatch_Init(BaseDispatch *This, REFIID riid)
{ {

View file

@ -18,14 +18,29 @@
* License along with this library; if not, write to the Free Software * License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/ */
#include "config.h"
#include "strmbase_private.h" #include <stdarg.h>
#include <assert.h>
#define NO_SHLWAPI_PATH #define COBJMACROS
#define NO_SHLWAPI_STRFCNS #define NONAMELESSSTRUCT
#define NO_SHLWAPI_GDI #define NONAMELESSUNION
#define NO_SHLWAPI_STREAM
#include <shlwapi.h> #include "windef.h"
#include "winbase.h"
#include "wingdi.h"
#include "winerror.h"
#include "winreg.h"
#include "objbase.h"
#include "uuids.h"
#include "strmif.h"
#include "wine/unicode.h"
#include "wine/debug.h"
#include "wine/strmbase.h"
WINE_DEFAULT_DEBUG_CHANNEL(strmbase);
extern const int g_cTemplates; extern const int g_cTemplates;
extern const FactoryTemplate g_Templates[]; extern const FactoryTemplate g_Templates[];

View file

@ -19,7 +19,13 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/ */
#include "strmbase_private.h" #define COBJMACROS
#include "dshow.h"
#include "wine/strmbase.h"
#include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL(strmbase);
typedef struct IEnumPinsImpl typedef struct IEnumPinsImpl
{ {

View file

@ -18,7 +18,16 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/ */
#include "strmbase_private.h" #define COBJMACROS
#include "dshow.h"
#include "wine/debug.h"
#include "wine/unicode.h"
#include "wine/strmbase.h"
#include "uuids.h"
#include <assert.h>
WINE_DEFAULT_DEBUG_CHANNEL(strmbase);
static inline BaseFilter *impl_from_IBaseFilter(IBaseFilter *iface) static inline BaseFilter *impl_from_IBaseFilter(IBaseFilter *iface)
{ {

View file

@ -18,8 +18,15 @@
* License along with this library; if not, write to the Free Software * License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/ */
#include <stdarg.h>
#include "strmbase_private.h" #define COBJMACROS
#include "dshow.h"
#include "wine/strmbase.h"
#include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL(strmbase);
HRESULT WINAPI CopyMediaType(AM_MEDIA_TYPE *dest, const AM_MEDIA_TYPE *src) HRESULT WINAPI CopyMediaType(AM_MEDIA_TYPE *dest, const AM_MEDIA_TYPE *src)
{ {

View file

@ -18,9 +18,18 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/ */
#include "strmbase_private.h" #define COBJMACROS
#include <wine/list.h> #include "dshow.h"
#include "wine/debug.h"
#include "wine/unicode.h"
#include "wine/list.h"
#include "wine/strmbase.h"
#include "uuids.h"
#include "vfwmsgs.h"
#include <assert.h>
WINE_DEFAULT_DEBUG_CHANNEL(strmbase);
enum {SAMPLE_PACKET, EOS_PACKET}; enum {SAMPLE_PACKET, EOS_PACKET};

View file

@ -19,7 +19,17 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/ */
#include "strmbase_private.h" #define COBJMACROS
#include "dshow.h"
#include "wine/debug.h"
#include "wine/unicode.h"
#include "wine/strmbase.h"
#include "uuids.h"
#include "vfwmsgs.h"
#include <assert.h>
WINE_DEFAULT_DEBUG_CHANNEL(strmbase);
static const IMemInputPinVtbl MemInputPin_Vtbl; static const IMemInputPinVtbl MemInputPin_Vtbl;

View file

@ -20,7 +20,17 @@
*/ */
/* FIXME: critical sections */ /* FIXME: critical sections */
#include "strmbase_private.h" #define COBJMACROS
#include "dshow.h"
#include "uuids.h"
#include "wine/debug.h"
#include "wine/strmbase.h"
#include <assert.h>
WINE_DEFAULT_DEBUG_CHANNEL(strmbase);
static const IMediaSeekingVtbl IMediaSeekingPassThru_Vtbl; static const IMediaSeekingVtbl IMediaSeekingPassThru_Vtbl;
static const IMediaPositionVtbl IMediaPositionPassThru_Vtbl; static const IMediaPositionVtbl IMediaPositionPassThru_Vtbl;
@ -516,9 +526,11 @@ static HRESULT WINAPI MediaSeekingPassThru_GetPositions(IMediaSeeking * iface, L
if (SUCCEEDED(hr)) { if (SUCCEEDED(hr)) {
hr = IMediaSeeking_GetPositions(seek, pCurrent, pStop); hr = IMediaSeeking_GetPositions(seek, pCurrent, pStop);
IMediaSeeking_Release(seek); IMediaSeeking_Release(seek);
} else if (hr == VFW_E_NOT_CONNECTED) {
*pCurrent = 0;
*pStop = 0;
hr = S_OK;
} }
else
return E_NOTIMPL;
return hr; return hr;
} }

20
sdk/lib/3rdparty/strmbase/precomp.h vendored Normal file
View file

@ -0,0 +1,20 @@
#ifndef _STRMBASE_PCH_
#define _STRMBASE_PCH_
#include <wine/config.h>
#include <assert.h>
#define COBJMACROS
#define NONAMELESSSTRUCT
#define NONAMELESSUNION
#include <dshow.h>
#include <wine/debug.h>
#include <wine/strmbase.h>
#include <wine/unicode.h>
#include "strmbase_private.h"
#endif /* !_STRMBASE_PCH_ */

View file

@ -23,8 +23,19 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/ */
#define COBJMACROS
#include "dshow.h"
#include "wine/strmbase.h"
#include "strmbase_private.h" #include "strmbase_private.h"
#include "uuids.h"
#include "wine/debug.h"
#include <assert.h>
WINE_DEFAULT_DEBUG_CHANNEL(strmbase_qc);
#define XTIME_FMT "%u.%03u" #define XTIME_FMT "%u.%03u"
#define XTIME(u) (int)(u/10000000), (int)((u / 10000)%1000) #define XTIME(u) (int)(u/10000000), (int)((u / 10000)%1000)

View file

@ -18,8 +18,18 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/ */
#define COBJMACROS
#include "dshow.h"
#include "wine/debug.h"
#include "wine/unicode.h"
#include "wine/strmbase.h"
#include "uuids.h"
#include "vfwmsgs.h"
#include "strmbase_private.h" #include "strmbase_private.h"
WINE_DEFAULT_DEBUG_CHANNEL(strmbase);
static const WCHAR wcsInputPinName[] = {'i','n','p','u','t',' ','p','i','n',0}; static const WCHAR wcsInputPinName[] = {'i','n','p','u','t',' ','p','i','n',0};
static const WCHAR wcsAltInputPinName[] = {'I','n',0}; static const WCHAR wcsAltInputPinName[] = {'I','n',0};

View file

@ -20,7 +20,17 @@
*/ */
/* FIXME: critical sections */ /* FIXME: critical sections */
#include "strmbase_private.h" #define COBJMACROS
#include "dshow.h"
#include "wine/strmbase.h"
#include "uuids.h"
#include "wine/debug.h"
#include <assert.h>
WINE_DEFAULT_DEBUG_CHANNEL(strmbase);
static inline SourceSeeking *impl_from_IMediaSeeking(IMediaSeeking *iface) static inline SourceSeeking *impl_from_IMediaSeeking(IMediaSeeking *iface)
{ {

View file

@ -18,33 +18,7 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/ */
#ifndef _STRMBASE_PCH_ #pragma once
#define _STRMBASE_PCH_
#include <wine/config.h>
#include <assert.h>
#include <stdarg.h>
#define WIN32_NO_STATUS
#define _INC_WINDOWS
#define COM_NO_WINDOWS_H
#define WIN32_LEAN_AND_MEAN
#define COBJMACROS
#define NONAMELESSSTRUCT
#define NONAMELESSUNION
#include <windef.h>
#include <winbase.h>
#include <objbase.h>
#include <dshow.h>
#include <wine/debug.h>
#include <wine/strmbase.h>
#include <wine/unicode.h>
WINE_DEFAULT_DEBUG_CHANNEL(strmbase);
/* Quality Control */ /* Quality Control */
typedef struct QualityControlImpl { typedef struct QualityControlImpl {
@ -76,5 +50,3 @@ HRESULT QualityControlRender_WaitFor(QualityControlImpl *This, IMediaSample *sam
void QualityControlRender_DoQOS(QualityControlImpl *priv); void QualityControlRender_DoQOS(QualityControlImpl *priv);
void QualityControlRender_BeginRender(QualityControlImpl *This); void QualityControlRender_BeginRender(QualityControlImpl *This);
void QualityControlRender_EndRender(QualityControlImpl *This); void QualityControlRender_EndRender(QualityControlImpl *This);
#endif /* _STRMBASE_PCH_ */

View file

@ -18,9 +18,27 @@
* License along with this library; if not, write to the Free Software * License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/ */
#include "config.h"
#include <stdarg.h>
#define COBJMACROS
#include "windef.h"
#include "winbase.h"
#include "dshow.h"
#include "amvideo.h"
#include "strmif.h"
#include "vfw.h"
#include <assert.h>
#include "wine/unicode.h"
#include "wine/debug.h"
#include "wine/strmbase.h"
#include "strmbase_private.h" #include "strmbase_private.h"
WINE_DEFAULT_DEBUG_CHANNEL(strmbase);
static const WCHAR wcsInputPinName[] = {'i','n','p','u','t',' ','p','i','n',0}; static const WCHAR wcsInputPinName[] = {'i','n','p','u','t',' ','p','i','n',0};
static const WCHAR wcsOutputPinName[] = {'o','u','t','p','u','t',' ','p','i','n',0}; static const WCHAR wcsOutputPinName[] = {'o','u','t','p','u','t',' ','p','i','n',0};

View file

@ -18,7 +18,17 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/ */
#include "strmbase_private.h" #define COBJMACROS
#include <assert.h>
#include "dshow.h"
#include "uuids.h"
#include "vfwmsgs.h"
#include "wine/debug.h"
#include "wine/unicode.h"
#include "wine/strmbase.h"
WINE_DEFAULT_DEBUG_CHANNEL(strmbase);
static inline BaseControlVideo *impl_from_IBasicVideo(IBasicVideo *iface) static inline BaseControlVideo *impl_from_IBasicVideo(IBasicVideo *iface)
{ {

View file

@ -18,7 +18,17 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/ */
#include "strmbase_private.h" #define COBJMACROS
#include "dshow.h"
#include "wine/debug.h"
#include "wine/unicode.h"
#include "wine/strmbase.h"
#include "uuids.h"
#include "vfwmsgs.h"
#include <assert.h>
WINE_DEFAULT_DEBUG_CHANNEL(strmbase);
static inline BaseControlWindow *impl_from_IVideoWindow( IVideoWindow *iface) static inline BaseControlWindow *impl_from_IVideoWindow( IVideoWindow *iface)
{ {