Jump to content

Recommended Posts

Posted

The following code found in this forum works with cameras, and tv bords as

i have tested .. but he tHE avi recording parts dont work for me .. i am getting a message

variable is not declared. i diD not modify any part of it other than changing the HOTKEYS .

1, WHAT IS GONING WRONG .. I AM USING WIN XP --SP2

2, IF IT IS POSSIBLE TO PLAY TV CARDS , DOES ANY ONE KNOW HOW CAN I CONTROL THE VIDEO TUNER

WHICH IS FOUND

IN DLL File: vfwwdm32 or vfwwdm32.dll

DLL Name: VfW MM Driver for WDM Video Capture Devices.

vfwwdm32.dll is a module that contains application programming interface (API) functions to allow

Video for Windows applications to interface with the WDM capture drivers on Windows .

SPECIFICALLY WHAT I WANT DO IS TO CONTROL THE TUNER ... SWITCHING THE CHANNEL TO 1,2, 3 AND SO ON..

IF THE DLL HAS API FUNCTIONS , POSSIBLY TO USE WITH AUTOIT , DLL CALL ?

IS THERE SOME ONE TO GIVE SOME HINTS .. CODES . ? THANKS IN ADVANCE !

THE CODE FOLLOWS ................

;THE CODE BEGINS

HotKeySet("+!x", "test1") ;Shift-Alt-x dispaly message

HotKeySet("+!m", "StartRecording") ;Shift-Alt-m should record

;HotKeySet("{HOME}", "StartRecording"); Press 'Home' to start recording !

$WM_CAP_START = 0x400

$WM_CAP_UNICODE_START = $WM_CAP_START +100

$WM_CAP_PAL_SAVEA = $WM_CAP_START + 81

$WM_CAP_PAL_SAVEW = $WM_CAP_UNICODE_START + 81

$WM_CAP_UNICODE_END = $WM_CAP_PAL_SAVEW

$WM_CAP_ABORT = $WM_CAP_START + 69

$WM_CAP_DLG_VIDEOCOMPRESSION = $WM_CAP_START + 46

$WM_CAP_DLG_VIDEODISPLAY = $WM_CAP_START + 43

$WM_CAP_DLG_VIDEOFORMAT = $WM_CAP_START + 41

$WM_CAP_DLG_VIDEOSOURCE = $WM_CAP_START + 42

$WM_CAP_DRIVER_CONNECT = $WM_CAP_START + 10

$WM_CAP_DRIVER_DISCONNECT = $WM_CAP_START + 11

$WM_CAP_DRIVER_GET_CAPS = $WM_CAP_START + 14

$WM_CAP_DRIVER_GET_NAMEA = $WM_CAP_START + 12

$WM_CAP_DRIVER_GET_NAMEW = $WM_CAP_UNICODE_START + 12

$WM_CAP_DRIVER_GET_VERSIONA = $WM_CAP_START + 13

$WM_CAP_DRIVER_GET_VERSIONW = $WM_CAP_UNICODE_START + 13

$WM_CAP_EDIT_COPY = $WM_CAP_START + 30

$WM_CAP_END = $WM_CAP_UNICODE_END

$WM_CAP_FILE_ALLOCATE = $WM_CAP_START + 22

$WM_CAP_FILE_GET_CAPTURE_FILEA = $WM_CAP_START + 21

$WM_CAP_FILE_GET_CAPTURE_FILEW = $WM_CAP_UNICODE_START + 21

$WM_CAP_FILE_SAVEASA = $WM_CAP_START + 23

$WM_CAP_FILE_SAVEASW = $WM_CAP_UNICODE_START + 23

$WM_CAP_FILE_SAVEDIBA = $WM_CAP_START + 25

$WM_CAP_FILE_SAVEDIBW = $WM_CAP_UNICODE_START + 25

$WM_CAP_FILE_SET_CAPTURE_FILEA = $WM_CAP_START + 20

$WM_CAP_FILE_SET_CAPTURE_FILEW = $WM_CAP_UNICODE_START + 20

$WM_CAP_FILE_SET_INFOCHUNK = $WM_CAP_START + 24

$WM_CAP_GET_AUDIOFORMAT = $WM_CAP_START + 36

$WM_CAP_GET_CAPSTREAMPTR = $WM_CAP_START + 1

$WM_CAP_GET_MCI_DEVICEA = $WM_CAP_START + 67

$WM_CAP_GET_MCI_DEVICEW = $WM_CAP_UNICODE_START + 67

$WM_CAP_GET_SEQUENCE_SETUP = $WM_CAP_START + 65

$WM_CAP_GET_STATUS = $WM_CAP_START + 54

$WM_CAP_GET_USER_DATA = $WM_CAP_START + 8

$WM_CAP_GET_VIDEOFORMAT = $WM_CAP_START + 44

$WM_CAP_GRAB_FRAME = $WM_CAP_START + 60

$WM_CAP_GRAB_FRAME_NOSTOP = $WM_CAP_START + 61

$WM_CAP_PAL_AUTOCREATE = $WM_CAP_START + 83

$WM_CAP_PAL_MANUALCREATE = $WM_CAP_START + 84

$WM_CAP_PAL_OPENA = $WM_CAP_START + 80

$WM_CAP_PAL_OPENW = $WM_CAP_UNICODE_START + 80

$WM_CAP_PAL_PASTE = $WM_CAP_START + 82

$WM_CAP_SEQUENCE = $WM_CAP_START + 62

$WM_CAP_SEQUENCE_NOFILE = $WM_CAP_START + 63

$WM_CAP_SET_AUDIOFORMAT = $WM_CAP_START + 35

$WM_CAP_SET_CALLBACK_CAPCONTROL = $WM_CAP_START + 85

$WM_CAP_SET_CALLBACK_ERRORA = $WM_CAP_START + 2

$WM_CAP_SET_CALLBACK_ERRORW = $WM_CAP_UNICODE_START + 2

$WM_CAP_SET_CALLBACK_FRAME = $WM_CAP_START + 5

$WM_CAP_SET_CALLBACK_STATUSA = $WM_CAP_START + 3

$WM_CAP_SET_CALLBACK_STATUSW = $WM_CAP_UNICODE_START + 3

$WM_CAP_SET_CALLBACK_VIDEOSTREAM = $WM_CAP_START + 6

$WM_CAP_SET_CALLBACK_WAVESTREAM = $WM_CAP_START + 7

$WM_CAP_SET_CALLBACK_YIELD = $WM_CAP_START + 4

$WM_CAP_SET_MCI_DEVICEA = $WM_CAP_START + 66

$WM_CAP_SET_MCI_DEVICEW = $WM_CAP_UNICODE_START + 66

$WM_CAP_SET_OVERLAY = $WM_CAP_START + 51

$WM_CAP_SET_PREVIEW = $WM_CAP_START + 50

$WM_CAP_SET_PREVIEWRATE = $WM_CAP_START + 52

$WM_CAP_SET_SCALE = $WM_CAP_START + 53

$WM_CAP_SET_SCROLL = $WM_CAP_START + 55

$WM_CAP_SET_SEQUENCE_SETUP = $WM_CAP_START + 64

$WM_CAP_SET_USER_DATA = $WM_CAP_START + 9

$WM_CAP_SET_VIDEOFORMAT = $WM_CAP_START + 45

$WM_CAP_SINGLE_FRAME = $WM_CAP_START + 72

$WM_CAP_SINGLE_FRAME_CLOSE = $WM_CAP_START + 71

$WM_CAP_SINGLE_FRAME_OPEN = $WM_CAP_START + 70

$WM_CAP_STOP = $WM_CAP_START + 68

#include <GUIConstants.au3>

$avi = DllOpen("avicap32.dll")

$user = DllOpen("user32.dll")

$snapfile = @ScriptDir & "\scrshot.bmp"

$Main = GUICreate("Camera",350,270)

$cap = DllCall($avi, "int", "capCreateCaptureWindow", "str", "cap", "int", BitOR($WS_CHILD,$WS_VISIBLE), "int", 15, "int", 15, "int", 320, "int", 240, "hwnd", $Main, "int", 1)

DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_DRIVER_CONNECT, "int", 0, "int", 0)

DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_SET_SCALE, "int", 1, "int", 0)

DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_SET_OVERLAY, "int", 1, "int", 0)

DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_SET_PREVIEW, "int", 1, "int", 0)

DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_SET_PREVIEWRATE, "int", 1, "int", 0)

GUISetState(@SW_SHOW)

HotKeySet("{INSERT}", "SnapShot"); Press 'Insert' to make a SnapShot !

While 1

$msg = GUIGetMsg()

If $msg = $GUI_EVENT_CLOSE Then

;DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_SET_CALLBACK_FRAME, "int", 0, "int", 0)

DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_END, "int", 0, "int", 0)

DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_DRIVER_DISCONNECT, "int", 0, "int", 0)

;DllClose($avi)

DllClose($user)

Exit

EndIf

Sleep(1)

Wend

Func SnapShot()

DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_GRAB_FRAME_NOSTOP, "int", 0, "int", 0)

DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_FILE_SAVEDIBA, "int", 0, "str", $snapfile)

EndFunc

Func StartRecording()

DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_FILE_SET_CAPTURE_FILEA, "int", 0, "str", $moviefile)

DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_SEQUENCE, "int", 0, "int", 0)

WinSetTitle($Main, "", "WebCam - Capturing...")

HotKeySet("+!m", "StopRecording") ;Shift-Alt-m

EndFunc

Func StopRecording()

DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_STOP, "int", 0, "int", 0)

WinSetTitle($Main, "", "WebCam - Ready")

HotKeySet("+!m", "StartRecording") ;Shift-Alt-m

EndFunc

Func test1()

MsgBox(0,"not recording ", "what is the problem ")

EndFunc

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...