AutoHotkey Community

It is currently May 25th, 2012, 3:16 pm

All times are UTC [ DST ]




Post new topic Reply to topic  [ 34 posts ]  Go to page Previous  1, 2, 3  Next
Author Message
 Post subject:
PostPosted: April 17th, 2007, 8:18 pm 
Offline
User avatar

Joined: December 26th, 2005, 4:40 pm
Posts: 8775
Offtopic / @n-l-i-d: I have sent you a PM. :)


Report this post
Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: April 17th, 2007, 8:42 pm 
Offline

Joined: March 16th, 2005, 10:33 pm
Posts: 968
Location: Frisia
Replied :wink:

Anybody with a VFW cam can confirm this atleast keeps running? As stated: I cannot be sure, since my cam fails on me. I would like to add some more options, but I'll have to see if I can this way...

:)

If anybody has any suggestions on adding DirectX support, I'll be more than welcome to try to add support (though I don't have a cam to test :P :? )

_________________
Image mirror 1mirror 2mirror 3ahk4.me • PM or Image


Report this post
Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: April 21st, 2007, 10:04 am 
Just for the records: [WDM Video Capture Driver for Bt848/Bt849/Bt878 & Bt879 Chipsets]


Report this post
Top
  
Reply with quote  
 Post subject:
PostPosted: April 21st, 2007, 11:46 am 
Offline

Joined: March 16th, 2005, 10:33 pm
Posts: 968
Location: Frisia
Thanks!

If I read this article on DirectShow capture however, I doubt I can do this...

_________________
Image mirror 1mirror 2mirror 3ahk4.me • PM or Image


Report this post
Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: August 10th, 2007, 6:10 pm 
Offline

Joined: May 4th, 2007, 7:59 pm
Posts: 102
Can anybody advance this marvelous script, or daonlyfreez maybe you see how, to connect to another ahk program running the same program? i see some neat stuff in the pre-text about motion sensors, etc :) :) it is wonderful and think this is a very important option i would like to use

best wishes, firegirl


Report this post
Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: August 10th, 2007, 6:17 pm 
make it a beacon..


Report this post
Top
  
Reply with quote  
 Post subject:
PostPosted: August 17th, 2007, 5:15 pm 
Offline

Joined: March 16th, 2005, 10:33 pm
Posts: 968
Location: Frisia
I have received requests to revive and polish this script. However: my camera is broken, so I cannot do this myself. Anybody able and willing to take a look?

8)

Wanted:

- Thorough testing of the available VFW implementation
- Support for DirectX video drivers
- Support for video streaming (send) between two versions of the script (basic video conferencing)

_________________
Image mirror 1mirror 2mirror 3ahk4.me • PM or Image


Report this post
Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: August 17th, 2007, 8:11 pm 
Offline

Joined: May 4th, 2007, 7:59 pm
Posts: 102
This one daonlyfreez (point to point video conferencing, MULTI-CONFERENCE, 3-way, 4-way or more by IP addresses???) ...... is on my big wish-list for it to evolve :D :D

What is the scope of additional programming needed? Any expert telco-minds out there willing to bring this idea to life?? I think daonlyfreez has a excellent start :!: :!:

Quote:
- Support for video streaming (send) between two versions of the script (basic video conferencing)



This is latest tested version?

Code:

; http://ej.bantz.com/video/
; http://ej.bantz.com/video/detail/

; http://www.dotnet4all.com/dotnet-code/2004/12/video-capture.html

/*
Full blown app possible settings/options (inspired by Dorgem)

* Video stream:

resolution
pixel depth and compression
size (bytes)

* Capture:

1 - file

filetype (avi/pictures)
compression
framerate
location/path
watermark
auto-name
refreshrate (replace or add to max)

2 - ftp (file settings +)

url:port
log

* Motion detection:

sensitivity
action (run, email)

* Multiple camera support ???

*/

; Basic Demo - v 0.2

hModule := DllCall("LoadLibrary", "str", "avicap32.dll")

Gui, Add, GroupBox, x4 y4 w492 h100, Available Video Drivers
Gui, Add, ListView, x8 y20 w400 h80 vCapDriversLV, Index|Name
Gui, Add, Picture, x434 y16 w32 h32 Icon204, %A_WinDir%\system32\shell32.dll
Gui, Add, Button, x412 y50 w80 h24 gRefreshDrivers, Refresh
Gui, Add, Button, x412 y76 w80 h24 gSelectDriver vSelectDriverB, Select


; --- Video preview section of Gui
Gui, Add, GroupBox, x4 y108 w492 h262, Video

; Video preview placeholder
Gui, Add, Text, x10 y124 w320 h240 vVidPlaceholder
GuiControl, +0x7, VidPlaceholder ; frame
Gui, Font, s32
Gui, Add, Text, x32 y200 w280 h64 Center, Preview
Gui, Font

Gui, Add, CheckBox, x340 y120 w100 h24 vPreviewToggleState gPreviewToggle, Preview video
Gui, Add, Button, x440 y120 w50 h24 gCopyToClipBoard, Copy

/*
; --- Presets section
Gui, Add, GroupBox, x336 y144 w154 h220, Presets

Gui, Add, DropDownList, x342 y164 w142 h30 r30 vPresetChoice, Create new preset...||My save to picture set|My save to avi set|My save to ftp|My motion detection set

Gui, Add, Button, x342 y190 w70 h24 vSelectPresetB, Select
Gui, Add, Button, x414 y190 w70 h24 vNewPresetB, Edit

Gui, Add, Text, x342 y220 w142 h106 vPresetInfoT,

Gui, Add, Button, x342 y334 w70 h24 vRunPresetB, Run
Gui, Add, Button, x414 y334 w70 h24 vStopPresetB, Stop

*/

; --- Statusbar
Gui, Add, StatusBar,, Done
SB_SetIcon("shell32.dll", 222, 1)

; Get drivers
GoSub, RefreshDrivers

; Get handle of Gui
Gui +LastFound
hwndParent := WinExist()

; Show
Gui, Show, x770 y200 w500 h400, Video For Windows for AutoHotkey - VFW4AHK

;Gosub, ConnectToDriver

Return

PreviewToggle:
msgbox Only once!
;  If PreviewToggleState
    GoSub ConnectToDriver
;  Else
;    GoSub DisconnectDriver
Return


ConnectToDriver:
  ; --- Connect and preview
  capHwnd := Cap_CreateCaptureWindow(hwndParent, 10, 124, 320, 240)
  ;ToolTip % errorlevel
 
  WM_CAP := 0x400
  WM_CAP_DRIVER_CONNECT := WM_CAP + 10
  WM_CAP_DRIVER_DISCONNECT := WM_CAP + 11
  WM_CAP_EDIT_COPY := WM_CAP + 30
  WM_CAP_SET_PREVIEW := WM_CAP + 50
  WM_CAP_SET_PREVIEWRATE := WM_CAP + 52
  WM_CAP_SET_SCALE := WM_CAP + 53
 
  ; Connect to driver
  if SelectedDriver =
  {
    MsgBox, 16, Error!, You didn't select a video driver
    Return
  }
  SendMessage, WM_CAP_DRIVER_CONNECT, %SelectedDriver%, 0, , ahk_id %capHwnd%
  ;ToolTip % errorlevel
 
  ; Set the preview scale
  SendMessage, WM_CAP_SET_SCALE, 1, 0, , ahk_id %capHwnd%
  ;ToolTip % errorlevel
 
  ; Set the preview rate in milliseconds
  SendMessage, WM_CAP_SET_PREVIEWRATE, 66, 0, , ahk_id %capHwnd%
  ;ToolTip % errorlevel
 
  ; Start previewing the image from the camera
  SendMessage, WM_CAP_SET_PREVIEW, 1, 0, , ahk_id %capHwnd%
  ;ToolTip % errorlevel
 
  ToolTip
Return



CopyToClipBoard:
  SendMessage, WM_CAP_EDIT_COPY, 0, 0, , ahk_id %capHwnd%
Return

DisconnectDriver:
  SendMessage, WM_CAP_DRIVER_DISCONNECT, 1, 0, , ahk_id %capHwnd%
Return


RefreshDrivers:
  foundDriver = 0
  LV_Delete()
  Loop
  {
    thisInfo := Cap_GetDriverDescription(A_Index-1)
    If thisInfo
    {
      foundDriver = 1
      LV_Add("", A_Index-1, thisInfo)
    }
    Else
      Break
  }
  If !foundDriver
  {
    LV_Delete()
    LV_Add("", "", "Could not get video drivers")
    GuiControl, Disable, CapDriversLV
    GuiControl, Disable, SelectDriverB
  }
Return
 
 
SelectDriver:
  FocusedRowNumber := LV_GetNext(0, "F")  ; Find the focused row.
  if not FocusedRowNumber  ; No row is focused.
    return
  LV_GetText(SelectedDriver, FocusedRowNumber, 1)
Return







/*
'// The two functions exported by AVICap
Declare Function capCreateCaptureWindowA Lib "avicap32.dll" ( _
    ByVal lpszWindowName As String, _
    ByVal dwStyle As Long, _
    ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Integer, _
    ByVal hWndParent As Long, ByVal nID As Long) As Long
   
Declare Function capGetDriverDescriptionA Lib "avicap32.dll" ( _
    ByVal wDriver As Integer, _
    ByVal lpszName As String, _
    ByVal cbName As Long, _
    ByVal lpszVer As String, _
    ByVal cbVer As Long) As Boolean
*/

Cap_CreateCaptureWindow(hWndParent, x, y, w, h)
{
  WS_CHILD := 0x40000000
  WS_VISIBLE := 0x10000000
 
  lpszWindowName := "test"
 
  lwndC := DLLCall("avicap32.dll\capCreateCaptureWindowA"
                  , "Str", lpszWindowName
                  , "UInt", WS_VISIBLE | WS_CHILD ; dwStyle
                  , "Int", x
                  , "Int", y
                  , "Int", w
                  , "Int", h
                  , "UInt", hWndParent
                  , "Int", 0)
 
  ;msgbox % lwndC " | " errorlevel " | " lpszWindowName " | " hwndParent
  Return lwndC
}

Cap_GetDriverDescription(wDriver)
{
  VarSetCapacity(lpszName, 100)
  VarSetCapacity(lpszVer, 100)
  res := DLLCall("avicap32.dll\capGetDriverDescriptionA"
                  , "Short", wDriver
                  , "Str", lpszName
                  , "Int", 100
                  , "Str", lpszVer
                  , "Int", 100)
  If res
    capInfo := lpszName ; " | " lpszVer
  Return capInfo
}

GuiClose:
  GoSub, DisconnectDriver
  DllCall("FreeLibrary", "str", hModule)
  ExitApp
Return

!r::Reload ; for debugging


Report this post
Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: August 17th, 2007, 11:51 pm 
Offline

Joined: January 7th, 2007, 6:40 pm
Posts: 109
Location: In fund pe scaun, la o bere prin Romania :D
:shock: This is awesome! Bravo, great job! I ve 2 camera pluged in toghether and no problem. Do the same great job and in short time we will have AHKVideoMessenger. No more looloo things like YM or MSNLiveMess :D

_________________
ImageBackgammon addicted!
GamesGrid was one of the first online web sites to bring Backgammon to the Internet


Report this post
Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: August 20th, 2007, 2:51 pm 
Offline

Joined: May 4th, 2007, 7:59 pm
Posts: 102
Say what? I am more of a cheerleader in this case, I talked to the author and it appears this has all the groundings to become a full fledged AHK Webcam app soon. Maybe someone can grab one of the requirements above and see what can/any be advanced? But we have to do it slowly, it would be nice to keep the version under control...,, but it would be fun to have it finally working! :) :) :) :) ! ! !

best times --- % % f i r e g i r l % %


Report this post
Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: August 20th, 2007, 3:11 pm 
Offline

Joined: March 16th, 2005, 10:33 pm
Posts: 968
Location: Frisia
Quote:
I ve 2 camera pluged in toghether and no problem


Great! As stated, I cannot test myself, but it looks like it might indeed be possible to add streaming data.

_________________
Image mirror 1mirror 2mirror 3ahk4.me • PM or Image


Report this post
Top
 Profile  
Reply with quote  
PostPosted: August 29th, 2007, 1:42 am 
Offline

Joined: May 4th, 2007, 7:59 pm
Posts: 102
I have done some preliminary examination of the code presented here, and this 0.1 version would be a shame to let stay incomplete in this wonderful state....(!)(!)(!) :)

Ok, for the most basic basic feature, the 1-to-1 video chat, could initially work by having two IP addresses. The GUI for that can be built later, .... so the design focus to get this moving forward would require the creation of some bootstrapping code.

It should take two IP addresses stored in variables, each IP address would be running this app, and need to handle sending 'saved avi' perhaps video & audio to the other IP (ideas how to???). The dynamics of that can fit to work with best development concept open source..., but some vars that may come into play might include how much 'buffer' to save to disk, ... and those in AHK variables would need to be twanged out in the GUI later...., but if they are setup clearly codeways,... then that should be no problem. SO! -- For now, if someone can advance this idea cause I would be very poor choice to write this. This one piece segment however, would in fact help to make this kinda more functional. :-)

so let's see if this can be built on :)

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! numerous people want this one working!!
:arrow: :D :D :D :D :D :D

Let's try!!!!

sincerely, % F I R E G I R L %


Report this post
Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: September 17th, 2007, 11:50 pm 
Er, Bump? Hows this going?? Any progress?


Report this post
Top
  
Reply with quote  
 Post subject:
PostPosted: September 18th, 2007, 2:03 am 
Offline

Joined: May 4th, 2007, 7:59 pm
Posts: 102
Meep Meep!!!!!! I hope. Let's make this work! :D :D


Report this post
Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: September 23rd, 2007, 12:45 am 
Yeah seriously this would kick ass.. I really lack the skills to contribute though. A shame, really. And good work for those have to contributed to the already progressing script thus far.


Report this post
Top
  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 34 posts ]  Go to page Previous  1, 2, 3  Next

All times are UTC [ DST ]


Who is online

Users browsing this forum: BrandonHotkey, engunneer, gemisigo, Google Feedfetcher, rbrtryn, robie, Yahoo [Bot] and 16 guests


You can post new topics in this forum
You can reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Powered by phpBB® Forum Software © phpBB Group