include: Add AMTimeline class and its dependencies.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com> Signed-off-by: Andrew Eikum <aeikum@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
0c0d839aaa
commit
9c2f28cf7f
|
@ -167,6 +167,645 @@ coclass MediaDet
|
|||
[default] interface IMediaDet;
|
||||
};
|
||||
|
||||
[
|
||||
object,
|
||||
uuid(288581E0-66CE-11d2-918F-00C0DF10D434),
|
||||
odl,
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IMediaLocator : IUnknown
|
||||
{
|
||||
HRESULT FindMediaFile(
|
||||
BSTR input,
|
||||
BSTR filter,
|
||||
BSTR * output,
|
||||
long flags
|
||||
);
|
||||
|
||||
HRESULT AddFoundLocation(
|
||||
BSTR dir
|
||||
);
|
||||
};
|
||||
|
||||
typedef struct
|
||||
{
|
||||
BSTR name;
|
||||
DISPID dispID;
|
||||
LONG nValues;
|
||||
} DEXTER_PARAM;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
VARIANT v;
|
||||
REFERENCE_TIME rt;
|
||||
DWORD dwInterp;
|
||||
} DEXTER_VALUE;
|
||||
|
||||
[
|
||||
object,
|
||||
uuid(AE9472BD-B0C3-11D2-8D24-00A0C9441E20),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IPropertySetter : IUnknown
|
||||
{
|
||||
HRESULT LoadXML(
|
||||
[in] IUnknown * pxml
|
||||
);
|
||||
|
||||
HRESULT PrintXML(
|
||||
[out] char * xml,
|
||||
[in] int size,
|
||||
[out] int * printed,
|
||||
[in] int indent
|
||||
);
|
||||
|
||||
HRESULT CloneProps(
|
||||
[out] IPropertySetter ** setter,
|
||||
[in] REFERENCE_TIME start,
|
||||
[in] REFERENCE_TIME stop
|
||||
);
|
||||
|
||||
HRESULT AddProp(
|
||||
[in] DEXTER_PARAM param,
|
||||
[in] DEXTER_VALUE * value
|
||||
);
|
||||
|
||||
HRESULT GetProps(
|
||||
[out] LONG * params,
|
||||
[out] DEXTER_PARAM ** param,
|
||||
[out] DEXTER_VALUE ** value
|
||||
);
|
||||
|
||||
HRESULT FreeProps(
|
||||
[in] LONG params,
|
||||
[in] DEXTER_PARAM * param,
|
||||
[in] DEXTER_VALUE * value
|
||||
);
|
||||
|
||||
HRESULT ClearProps();
|
||||
|
||||
HRESULT SaveToBlob(
|
||||
[out] LONG * size,
|
||||
[out] BYTE ** blob
|
||||
);
|
||||
|
||||
HRESULT LoadFromBlob(
|
||||
[in] LONG size,
|
||||
[in] BYTE * blob
|
||||
);
|
||||
|
||||
HRESULT SetProps(
|
||||
[in] IUnknown * target,
|
||||
[in] REFERENCE_TIME now
|
||||
);
|
||||
};
|
||||
|
||||
[
|
||||
object,
|
||||
uuid(E43E73A2-0EFA-11d3-9601-00A0C9441E20),
|
||||
odl,
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IAMErrorLog : IUnknown
|
||||
{
|
||||
HRESULT LogError(
|
||||
long severity,
|
||||
BSTR error_str,
|
||||
long error_code,
|
||||
long hresult,
|
||||
[in] VARIANT * extra
|
||||
);
|
||||
};
|
||||
|
||||
[
|
||||
object,
|
||||
uuid(963566DA-BE21-4eaf-88E9-35704F8F52A1),
|
||||
odl,
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IAMSetErrorLog : IUnknown
|
||||
{
|
||||
[propget] HRESULT ErrorLog(
|
||||
[out, retval] IAMErrorLog ** log
|
||||
);
|
||||
|
||||
[propput] HRESULT ErrorLog(
|
||||
[in] IAMErrorLog * log
|
||||
);
|
||||
};
|
||||
|
||||
interface IAMTimeline;
|
||||
interface IAMTimelineGroup;
|
||||
interface IAMTimelineObj;
|
||||
interface IAMTimelineSrc;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
TIMELINE_MAJOR_TYPE_COMPOSITE = 1,
|
||||
TIMELINE_MAJOR_TYPE_TRACK = 2,
|
||||
TIMELINE_MAJOR_TYPE_SOURCE = 4,
|
||||
TIMELINE_MAJOR_TYPE_TRANSITION = 8,
|
||||
TIMELINE_MAJOR_TYPE_EFFECT = 16,
|
||||
TIMELINE_MAJOR_TYPE_GROUP = 128
|
||||
} TIMELINE_MAJOR_TYPE;
|
||||
|
||||
[
|
||||
object,
|
||||
uuid(78530B74-61F9-11D2-8CAD-00A024580902),
|
||||
odl,
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IAMTimeline : IUnknown
|
||||
{
|
||||
HRESULT CreateEmptyNode(
|
||||
[out] IAMTimelineObj ** obj,
|
||||
TIMELINE_MAJOR_TYPE type
|
||||
);
|
||||
|
||||
HRESULT AddGroup(
|
||||
IAMTimelineObj * group
|
||||
);
|
||||
|
||||
HRESULT RemGroupFromList(
|
||||
IAMTimelineObj * group
|
||||
);
|
||||
|
||||
HRESULT GetGroup(
|
||||
[out] IAMTimelineObj ** group,
|
||||
long index
|
||||
);
|
||||
|
||||
HRESULT GetGroupCount(
|
||||
long * count
|
||||
);
|
||||
|
||||
HRESULT ClearAllGroups();
|
||||
|
||||
HRESULT GetInsertMode(
|
||||
long * mode
|
||||
);
|
||||
|
||||
HRESULT SetInsertMode(
|
||||
long mode
|
||||
);
|
||||
|
||||
HRESULT EnableTransitions(
|
||||
BOOL enabled
|
||||
);
|
||||
|
||||
HRESULT TransitionsEnabled(
|
||||
BOOL * enabled
|
||||
);
|
||||
|
||||
HRESULT EnableEffects(
|
||||
BOOL enabled
|
||||
);
|
||||
|
||||
HRESULT EffectsEnabled(
|
||||
BOOL * enabled
|
||||
);
|
||||
|
||||
HRESULT SetInterestRange(
|
||||
REFERENCE_TIME start,
|
||||
REFERENCE_TIME stop
|
||||
);
|
||||
|
||||
HRESULT GetDuration(
|
||||
REFERENCE_TIME * duration
|
||||
);
|
||||
|
||||
HRESULT GetDuration2(
|
||||
double * duration
|
||||
);
|
||||
|
||||
HRESULT SetDefaultFPS(
|
||||
double fps
|
||||
);
|
||||
|
||||
HRESULT GetDefaultFPS(
|
||||
double * fps
|
||||
);
|
||||
|
||||
HRESULT IsDirty(
|
||||
BOOL * dirty
|
||||
);
|
||||
|
||||
HRESULT GetDirtyRange(
|
||||
REFERENCE_TIME * start,
|
||||
REFERENCE_TIME * stop
|
||||
);
|
||||
|
||||
HRESULT GetCountOfType(
|
||||
long group,
|
||||
long * value,
|
||||
long * value_with_comps,
|
||||
TIMELINE_MAJOR_TYPE type
|
||||
);
|
||||
|
||||
HRESULT ValidateSourceNames(
|
||||
long flags,
|
||||
IMediaLocator * override,
|
||||
LONG_PTR notify_event
|
||||
);
|
||||
|
||||
HRESULT SetDefaultTransition(
|
||||
GUID * guid
|
||||
);
|
||||
|
||||
HRESULT GetDefaultTransition(
|
||||
GUID * guid
|
||||
);
|
||||
|
||||
HRESULT SetDefaultEffect(
|
||||
GUID * guid
|
||||
);
|
||||
|
||||
HRESULT GetDefaultEffect(
|
||||
GUID * guid
|
||||
);
|
||||
|
||||
HRESULT SetDefaultTransitionB(
|
||||
BSTR guidb
|
||||
);
|
||||
|
||||
HRESULT GetDefaultTransitionB(
|
||||
[out,retval] BSTR * guidb
|
||||
);
|
||||
|
||||
HRESULT SetDefaultEffectB(
|
||||
BSTR guidb
|
||||
);
|
||||
|
||||
HRESULT GetDefaultEffectB(
|
||||
[out,retval] BSTR * guidb
|
||||
);
|
||||
};
|
||||
|
||||
[
|
||||
uuid(78530B75-61F9-11D2-8CAD-00A024580902)
|
||||
]
|
||||
coclass AMTimeline
|
||||
{
|
||||
[default] interface IAMTimeline;
|
||||
interface IPersistStream;
|
||||
interface IAMSetErrorLog;
|
||||
};
|
||||
|
||||
[
|
||||
object,
|
||||
uuid(9EED4F00-B8A6-11d2-8023-00C0DF10D434),
|
||||
odl,
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IAMTimelineGroup : IUnknown
|
||||
{
|
||||
HRESULT SetTimeline(
|
||||
IAMTimeline * timeline
|
||||
);
|
||||
|
||||
HRESULT GetTimeline(
|
||||
[out] IAMTimeline ** timeline
|
||||
);
|
||||
|
||||
HRESULT GetPriority(
|
||||
long * priority
|
||||
);
|
||||
|
||||
HRESULT GetMediaType(
|
||||
[out] AM_MEDIA_TYPE *
|
||||
);
|
||||
|
||||
HRESULT SetMediaType(
|
||||
[in] AM_MEDIA_TYPE *
|
||||
);
|
||||
|
||||
HRESULT SetOutputFPS(
|
||||
double fps
|
||||
);
|
||||
|
||||
HRESULT GetOutputFPS(
|
||||
double * fps
|
||||
);
|
||||
|
||||
HRESULT SetGroupName(
|
||||
BSTR name
|
||||
);
|
||||
|
||||
HRESULT GetGroupName(
|
||||
[out,retval] BSTR * name
|
||||
);
|
||||
|
||||
HRESULT SetPreviewMode(
|
||||
BOOL preview
|
||||
);
|
||||
|
||||
HRESULT GetPreviewMode(
|
||||
BOOL * preview
|
||||
);
|
||||
|
||||
HRESULT SetMediaTypeForVB(
|
||||
[in] long type
|
||||
);
|
||||
|
||||
HRESULT GetOutputBuffering(
|
||||
[out] int * buffer
|
||||
);
|
||||
|
||||
HRESULT SetOutputBuffering(
|
||||
[in] int buffer
|
||||
);
|
||||
|
||||
HRESULT SetSmartRecompressFormat(
|
||||
long * format
|
||||
);
|
||||
|
||||
HRESULT GetSmartRecompressFormat(
|
||||
long ** format
|
||||
);
|
||||
|
||||
HRESULT IsSmartRecompressFormatSet(
|
||||
BOOL * set
|
||||
);
|
||||
|
||||
HRESULT IsRecompressFormatDirty(
|
||||
BOOL * dirty
|
||||
);
|
||||
|
||||
HRESULT ClearRecompressFormatDirty();
|
||||
|
||||
HRESULT SetRecompFormatFromSource(
|
||||
IAMTimelineSrc * source
|
||||
);
|
||||
};
|
||||
|
||||
[
|
||||
object,
|
||||
local,
|
||||
uuid(78530B77-61F9-11D2-8CAD-00A024580902),
|
||||
odl,
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IAMTimelineObj : IUnknown
|
||||
{
|
||||
HRESULT GetStartStop(
|
||||
REFERENCE_TIME * start,
|
||||
REFERENCE_TIME * stop
|
||||
);
|
||||
|
||||
HRESULT GetStartStop2(
|
||||
REFTIME * start, REFTIME * stop
|
||||
);
|
||||
|
||||
HRESULT FixTimes(
|
||||
REFERENCE_TIME * start, REFERENCE_TIME * stop
|
||||
);
|
||||
|
||||
HRESULT FixTimes2(
|
||||
REFTIME * start, REFTIME * stop
|
||||
);
|
||||
|
||||
HRESULT SetStartStop(
|
||||
REFERENCE_TIME start,
|
||||
REFERENCE_TIME stop
|
||||
);
|
||||
|
||||
HRESULT SetStartStop2(
|
||||
REFTIME start,
|
||||
REFTIME stop
|
||||
);
|
||||
|
||||
HRESULT GetPropertySetter(
|
||||
[out,retval] IPropertySetter ** setter
|
||||
);
|
||||
|
||||
HRESULT SetPropertySetter(
|
||||
IPropertySetter * setter
|
||||
);
|
||||
|
||||
HRESULT GetSubObject(
|
||||
[out,retval] IUnknown ** obj
|
||||
);
|
||||
|
||||
HRESULT SetSubObject(
|
||||
IUnknown * obj
|
||||
);
|
||||
|
||||
HRESULT SetSubObjectGUID(
|
||||
GUID guid
|
||||
);
|
||||
|
||||
HRESULT SetSubObjectGUIDB(
|
||||
BSTR guidb
|
||||
);
|
||||
|
||||
HRESULT GetSubObjectGUID(
|
||||
GUID * guid
|
||||
);
|
||||
|
||||
HRESULT GetSubObjectGUIDB(
|
||||
[out,retval] BSTR * guidb
|
||||
);
|
||||
|
||||
HRESULT GetSubObjectLoaded(
|
||||
BOOL * loaded
|
||||
);
|
||||
|
||||
HRESULT GetTimelineType(
|
||||
TIMELINE_MAJOR_TYPE * type
|
||||
);
|
||||
|
||||
HRESULT SetTimelineType(
|
||||
TIMELINE_MAJOR_TYPE type
|
||||
);
|
||||
|
||||
HRESULT GetUserID(
|
||||
long * id
|
||||
);
|
||||
|
||||
HRESULT SetUserID(
|
||||
long id
|
||||
);
|
||||
|
||||
HRESULT GetGenID(
|
||||
long * id
|
||||
);
|
||||
|
||||
HRESULT GetUserName(
|
||||
[out,retval] BSTR * name
|
||||
);
|
||||
|
||||
HRESULT SetUserName(
|
||||
BSTR name
|
||||
);
|
||||
|
||||
HRESULT GetUserData(
|
||||
BYTE * data,
|
||||
long * size
|
||||
);
|
||||
|
||||
HRESULT SetUserData(
|
||||
BYTE * data,
|
||||
long size
|
||||
);
|
||||
|
||||
HRESULT GetMuted(
|
||||
BOOL * muted
|
||||
);
|
||||
|
||||
HRESULT SetMuted(
|
||||
BOOL muted
|
||||
);
|
||||
|
||||
HRESULT GetLocked(
|
||||
BOOL * locked
|
||||
);
|
||||
|
||||
HRESULT SetLocked(
|
||||
BOOL locked
|
||||
);
|
||||
|
||||
HRESULT GetDirtyRange(
|
||||
REFERENCE_TIME * start,
|
||||
REFERENCE_TIME * stop
|
||||
);
|
||||
|
||||
HRESULT GetDirtyRange2(
|
||||
REFTIME * start,
|
||||
REFTIME * stop
|
||||
);
|
||||
|
||||
HRESULT SetDirtyRange(
|
||||
REFERENCE_TIME start,
|
||||
REFERENCE_TIME stop
|
||||
);
|
||||
|
||||
HRESULT SetDirtyRange2(
|
||||
REFTIME start,
|
||||
REFTIME stop
|
||||
);
|
||||
|
||||
HRESULT ClearDirty();
|
||||
|
||||
HRESULT Remove();
|
||||
|
||||
HRESULT RemoveAll();
|
||||
|
||||
HRESULT GetTimelineNoRef(
|
||||
IAMTimeline ** timeline
|
||||
);
|
||||
|
||||
HRESULT GetGroupIBelongTo(
|
||||
[out] IAMTimelineGroup ** group
|
||||
);
|
||||
|
||||
HRESULT GetEmbedDepth(
|
||||
long * depth
|
||||
);
|
||||
};
|
||||
|
||||
[
|
||||
object,
|
||||
uuid(78530B79-61F9-11D2-8CAD-00A024580902),
|
||||
odl,
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IAMTimelineSrc : IUnknown
|
||||
{
|
||||
HRESULT GetMediaTimes(
|
||||
REFERENCE_TIME * start,
|
||||
REFERENCE_TIME * stop
|
||||
);
|
||||
|
||||
HRESULT GetMediaTimes2(
|
||||
REFTIME * start,
|
||||
REFTIME * stop
|
||||
);
|
||||
|
||||
HRESULT ModifyStopTime(
|
||||
REFERENCE_TIME stop
|
||||
);
|
||||
|
||||
HRESULT ModifyStopTime2(
|
||||
REFTIME stop
|
||||
);
|
||||
|
||||
HRESULT FixMediaTimes(
|
||||
REFERENCE_TIME * start,
|
||||
REFERENCE_TIME * stop
|
||||
);
|
||||
|
||||
HRESULT FixMediaTimes2(
|
||||
REFTIME * start,
|
||||
REFTIME * stop
|
||||
);
|
||||
|
||||
HRESULT SetMediaTimes(
|
||||
REFERENCE_TIME Start,
|
||||
REFERENCE_TIME Stop
|
||||
);
|
||||
|
||||
HRESULT SetMediaTimes2(
|
||||
REFTIME Start,
|
||||
REFTIME Stop
|
||||
);
|
||||
|
||||
HRESULT SetMediaLength(
|
||||
REFERENCE_TIME length
|
||||
);
|
||||
|
||||
HRESULT SetMediaLength2(
|
||||
REFTIME length
|
||||
);
|
||||
|
||||
HRESULT GetMediaLength(
|
||||
REFERENCE_TIME * length
|
||||
);
|
||||
|
||||
HRESULT GetMediaLength2(
|
||||
REFTIME * length
|
||||
);
|
||||
|
||||
HRESULT GetMediaName(
|
||||
[out,retval] BSTR * name
|
||||
);
|
||||
|
||||
HRESULT SetMediaName(
|
||||
BSTR name
|
||||
);
|
||||
|
||||
HRESULT SpliceWithNext(
|
||||
IAMTimelineObj * next
|
||||
);
|
||||
|
||||
HRESULT GetStreamNumber(
|
||||
long * num
|
||||
);
|
||||
|
||||
HRESULT SetStreamNumber(
|
||||
long num
|
||||
);
|
||||
|
||||
HRESULT IsNormalRate(
|
||||
BOOL * normal
|
||||
);
|
||||
|
||||
HRESULT GetDefaultFPS(
|
||||
double * fps
|
||||
);
|
||||
|
||||
HRESULT SetDefaultFPS(
|
||||
double fps
|
||||
);
|
||||
|
||||
HRESULT GetStretchMode(
|
||||
int * mode
|
||||
);
|
||||
|
||||
HRESULT SetStretchMode(
|
||||
int mode
|
||||
);
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
E_NOTINTREE = 0x80040400,
|
||||
|
|
Loading…
Reference in New Issue