Skip to content

Commit 84b279d

Browse files
committed
Add MFPlayer.dll
Add MFPlayer.dll for x86 and x64 with headers
1 parent ae857aa commit 84b279d

34 files changed

+3982
-0
lines changed

MFPlayer-x64/MFPlayer.h

Lines changed: 533 additions & 0 deletions
Large diffs are not rendered by default.

MFPlayer-x86/MFPlayer.h

Lines changed: 533 additions & 0 deletions
Large diffs are not rendered by default.

MFPlayerDll-x64/MFPlayer.dll

26.5 KB
Binary file not shown.

MFPlayerDll-x64/MFPlayer.h

Lines changed: 533 additions & 0 deletions
Large diffs are not rendered by default.

MFPlayerDll-x64/MFPlayer.inc

Lines changed: 579 additions & 0 deletions
Large diffs are not rendered by default.

MFPlayerDll-x64/MFPlayer.lib

18.2 KB
Binary file not shown.

MFPlayerDll-x64/MFPlayerDll.asm

Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
;==============================================================================
2+
;
3+
; MFPlayer x64 DLL
4+
;
5+
; http://github.com/mrfearless
6+
;
7+
; This software is provided 'as-is', without any express or implied warranty.
8+
; In no event will the author be held liable for any damages arising from the
9+
; use of this software.
10+
;
11+
;==============================================================================
12+
;
13+
; MFPlayer Library consists of functions that wrap the MFPlay COM
14+
; implementation of the IMFPMediaPlayer and IMFPMediaItem objects. MFPlay is a
15+
; Microsoft Media Foundation API for creating media playback applications. Thus
16+
; the MFPlayer Library functions hide the complexities of interacting with the
17+
; COM objects.
18+
;
19+
;-------------------------------------------------------------------------------
20+
.686
21+
.MMX
22+
.XMM
23+
.x64
24+
25+
option casemap : none
26+
option win64 : 11
27+
option frame : auto
28+
29+
includelib user32.lib
30+
includelib kernel32.lib
31+
includelib MFPlay.lib
32+
33+
IFNDEF MFPCreateMediaPlayer
34+
MFPCreateMediaPlayer PROTO pwszURL:QWORD, fStartPlayback:QWORD, creationOptions:QWORD, pCallback:QWORD, hWnd:QWORD, ppMediaPlayer:QWORD
35+
ENDIF
36+
37+
DLL_PROCESS_ATTACH EQU 1
38+
DLL_THREAD_ATTACH EQU 2
39+
DLL_THREAD_DETACH EQU 3
40+
DLL_PROCESS_DETACH EQU 0
41+
DLL_PROCESS_VERIFIER EQU 4
42+
43+
FALSE EQU 0
44+
TRUE EQU 1
45+
46+
HINSTANCE typedef ptr
47+
LPVOID typedef ptr
48+
49+
;--------------------------------------
50+
; Conditionals
51+
;--------------------------------------
52+
MFPLAYER_DLL EQU 1
53+
54+
;--------------------------------------
55+
; Main Include File
56+
;--------------------------------------
57+
Include .\..\MFPlayer.inc
58+
59+
;--------------------------------------
60+
; Main Library Files
61+
;--------------------------------------
62+
Include .\..\MFPlayer.asm
63+
64+
65+
.CODE
66+
67+
;=====================================================================================
68+
; Main entry function for a DLL file - required.
69+
;-------------------------------------------------------------------------------------
70+
DllMain PROC hinstDLL:HINSTANCE, fdwReason:DWORD, lpvReserved:LPVOID
71+
.IF fdwReason == DLL_PROCESS_ATTACH
72+
73+
.ENDIF
74+
mov rax, TRUE
75+
ret
76+
DllMain ENDP
77+
78+
END DllMain

MFPlayerDll-x64/MFPlayerDll.def

Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,104 @@
1+
;==============================================================================
2+
;
3+
; MFPlayer x64 DLL
4+
;
5+
; http://github.com/mrfearless
6+
;
7+
; This software is provided 'as-is', without any express or implied warranty.
8+
; In no event will the author be held liable for any damages arising from the
9+
; use of this software.
10+
;
11+
;==============================================================================
12+
13+
LIBRARY MFPlayer
14+
EXPORTS
15+
16+
; MFPMediaPlayer Functions:
17+
MFPMediaPlayer_Init
18+
MFPMediaPlayer_Free
19+
20+
MFPMediaPlayer_Play
21+
MFPMediaPlayer_Pause
22+
MFPMediaPlayer_Stop
23+
MFPMediaPlayer_Step
24+
MFPMediaPlayer_Toggle
25+
26+
MFPMediaPlayer_ClearMediaItem
27+
MFPMediaPlayer_SetMediaItem
28+
MFPMediaPlayer_GetMediaItem
29+
MFPMediaPlayer_CreateMediaItemA
30+
MFPMediaPlayer_CreateMediaItemW
31+
MFPMediaPlayer_CreateMediaItemFromObject
32+
33+
MFPMediaPlayer_GetState
34+
MFPMediaPlayer_SetPosition
35+
MFPMediaPlayer_GetPosition
36+
MFPMediaPlayer_GetDuration
37+
38+
MFPMediaPlayer_SetRate
39+
MFPMediaPlayer_GetRate
40+
MFPMediaPlayer_GetSupportedRates
41+
42+
MFPMediaPlayer_GetVolume
43+
MFPMediaPlayer_SetVolume
44+
MFPMediaPlayer_GetBalance
45+
MFPMediaPlayer_SetBalance
46+
MFPMediaPlayer_GetMute
47+
MFPMediaPlayer_SetMute
48+
49+
MFPMediaPlayer_GetNativeVideoSize
50+
MFPMediaPlayer_GetIdealVideoSize
51+
MFPMediaPlayer_SetVideoSourceRect
52+
MFPMediaPlayer_GetVideoSourceRect
53+
54+
MFPMediaPlayer_SetAspectRatioMode
55+
MFPMediaPlayer_GetAspectRatioMode
56+
57+
MFPMediaPlayer_GetVideoWindow
58+
MFPMediaPlayer_UpdateVideo
59+
MFPMediaPlayer_SetBorderColor
60+
MFPMediaPlayer_GetBorderColor
61+
62+
MFPMediaPlayer_InsertEffect
63+
MFPMediaPlayer_RemoveEffect
64+
MFPMediaPlayer_RemoveAllEffects
65+
MFPMediaPlayer_Shutdown
66+
67+
; MFPMediaItem Functions:
68+
MFPMediaItem_Release
69+
MFPMediaItem_GetMediaPlayer
70+
MFPMediaItem_GetURLA
71+
MFPMediaItem_GetURLW
72+
73+
MFPMediaItem_SetUserData
74+
MFPMediaItem_GetUserData
75+
76+
MFPMediaItem_SetStartStopPosition
77+
MFPMediaItem_GetStartStopPosition
78+
79+
MFPMediaItem_HasVideo
80+
MFPMediaItem_HasAudio
81+
MFPMediaItem_IsProtected
82+
83+
MFPMediaItem_GetDuration
84+
MFPMediaItem_GetNumberOfStreams
85+
MFPMediaItem_SetStreamSelection
86+
MFPMediaItem_GetStreamSelection
87+
88+
MFPMediaItem_GetStreamAttribute
89+
MFPMediaItem_GetPresentationAttribute
90+
MFPMediaItem_GetCharacteristics
91+
MFPMediaItem_GetMetadata
92+
93+
MFPMediaItem_SetStreamSink
94+
95+
; Media Information
96+
MFPMediaItem_StreamTable
97+
98+
; Misc
99+
MFPConvertMSTimeToTimeStringA
100+
MFPConvertMSTimeToTimeStringW
101+
102+
MFPConvertStringToAnsi
103+
MFPConvertStringToWide
104+
MFPConvertStringFree

MFPlayerDll-x64/MFPlayerDll.rap

Lines changed: 139 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,139 @@
1+
[Project]
2+
Assembler=UASM64
3+
Type=Dll64 Project
4+
Description=MFPlayerDll
5+
Backup=$P\Bak\
6+
Group=1
7+
GroupExpand=1
8+
Debug=0
9+
Ver.rc=1
10+
[Files]
11+
1=MFPlayerDll.asm
12+
2=MFPlayer.h
13+
3=MFPlayerDll.rc
14+
4=MFPlayerDll.def
15+
[MakeFiles]
16+
0=MFPlayerDll.rap
17+
1=MFPlayerDll.rc
18+
2=MFPlayerDll.asm
19+
3=MFPlayerDll.obj
20+
4=MFPlayerDll.res
21+
5=MFPlayerDll.exe
22+
6=MFPlayerDll.def
23+
7=MFPlayerDll.dll
24+
8=MFPlayerDll.txt
25+
9=MFPlayerDll.lib
26+
10=MFPlayerDll.mak
27+
11=MFPlayerDll.inf
28+
12=MFPlayerDll.com
29+
13=MFPlayerDll.ocx
30+
14=MFPlayerDll.idl
31+
15=MFPlayerDll.tlb
32+
16=MFPlayerDll.sys
33+
17=MFPlayerDll.dp32
34+
18=MFPlayerDll.pdb
35+
19=MFPlayerDll.dp64
36+
[MakeDef]
37+
Menu=1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0
38+
1=4,O,$B\RC.EXE /v,1
39+
2=3,O,$B\UASM64.exe /DMFPLAYER_DLL /c -win64 -Zp8 /win64 /D_WIN64 /Cp /nologo /W2 /I"$I",2
40+
3=7,O,$B\LINK.EXE /SUBSYSTEM:WINDOWS /RELEASE /DLL /DEF:"MFPlayerDll.def" /MACHINE:X64 /LIBPATH:"$L" /OUT:"MFPlayer.dll",3,4
41+
4=0,0,,5
42+
5=rsrc.obj,O,$B\CVTRES.EXE,rsrc.res
43+
6=*.obj,O,$B\UASM64.exe /c -win64 -Zp8 /win64 /D_WIN64 /Cp /nologo /W2 /I"$I",*.asm
44+
7=0,0,"$E\x64\x64dbg",5
45+
11=4,O,$B\RC.EXE /v,1
46+
12=3,O,$B\UASM64.exe /c -win64 -Zp8 /win64 /D_WIN64 /Cp /nologo /W2 /Zi /Zd /I"$I",2
47+
13=7,O,$B\LINK.EXE /SUBSYSTEM:WINDOWS /DEBUG /DEBUGTYPE:CV /PDB:"$18" /DLL /DEF:$6 /MACHINE:X64 /LIBPATH:"$L" /OUT:"$7",3
48+
14=0,0,,5
49+
15=rsrc.obj,O,$B\CVTRES.EXE,rsrc.res
50+
16=*.obj,O,$B\UASM64.exe /c -win64 -Zp8 /win64 /D_WIN64 /Cp /nologo /W2 /Zi /Zd /I"$I",*.asm
51+
17=0,0,"$E\x64\x64dbg",$.exe
52+
[Group]
53+
Group=Assembly,Resources
54+
1=1
55+
2=1
56+
3=2
57+
4=1
58+
[AutoLoad]
59+
AutoLoad=2,4,1
60+
[RADebugBP]
61+
4=
62+
1=
63+
2=
64+
[VerInf]
65+
Nme=VERINF1
66+
ID=1
67+
FV=1.0.0.0
68+
PV=1.0.0.0
69+
VerOS=0x00000004
70+
VerFT=0x00000002
71+
VerLNG=0x00000409
72+
VerCHS=0x000004B0
73+
ProductVersion=1.0.0.0
74+
ProductName=MFPlayer.dll
75+
OriginalFilename=MFPlayer.dll
76+
LegalTrademarks=
77+
LegalCopyright=
78+
InternalName=MFPlayer.dll
79+
FileDescription=MFPlayer.dll
80+
FileVersion=1.0.0.0
81+
CompanyName=fearless
82+
[VersionControl]
83+
Settings=1279
84+
Milestones=129
85+
MilestoneEvery=10
86+
MilestoneEveryCurrent=0
87+
MilestoneOnBuild=0.0.0.0
88+
MilestoneOnTime=2
89+
MilestoneOnDate=0
90+
MilestoneOnDateWhen=1
91+
MilestoneOnDateStatus=0
92+
MilestoneOnDateDate=17
93+
MilestoneOnDateTimeYear=2025
94+
MilestoneOnDateTimeMonth=1
95+
MilestoneOnDateTimeDate=17
96+
MilestoneOnDateTimeHour=12
97+
MilestoneOnDateTimeMin=37
98+
MilestoneOnDateTimeSec=58
99+
MilestoneOnDateTimeStatus=0
100+
BackupLocation=M:\radasm\UASM64\Projects\VCBackups\
101+
CompressionLevel=0
102+
DefaultComment=Project $N, $Z, Backup Created On $D At $T.
103+
ExcludeExt1=\
104+
ExcludeExt2=\
105+
ExcludeExt3=\
106+
ExcludeExt4=\
107+
FileVerLength=4
108+
FileVer2Range=0
109+
FileVer3Range=0
110+
FileVer4Range=0
111+
ProductVerLength=4
112+
ProductVer2Range=0
113+
ProductVer3Range=0
114+
ProductVer4Range=0
115+
[PTimer]
116+
PTimer=1723532
117+
[Collapse]
118+
1=
119+
2=
120+
4=
121+
[Size]
122+
1=0,0,0,0,1128
123+
2=0,0,0,0,19000
124+
4=0,0,0,0,96
125+
[GroupExpand]
126+
GroupExpand=1,1,0
127+
[BookMark]
128+
0=
129+
1=
130+
2=
131+
3=
132+
4=
133+
5=
134+
6=
135+
7=
136+
8=
137+
9=
138+
[BreakPoint]
139+
0=

MFPlayerDll-x64/MFPlayerDll.rc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
#include "Res/MFPlayerDllVer.rc"

0 commit comments

Comments
 (0)