Jump to content

Recommended Posts

Posted (edited)

AVICapture

AVI Capture is based on AVIWritter UDF by monoceres (special thanks to him)

Description :

AVICapture captures the action from any part of screen and saves it to uncompressed AVI movie files.

Requirements :

-For compression you have to place compression files to same folder as AVICapture (FFMPEG)

-IsPressed_UDF for hotkeys functions

Functions :

Capture

-full screen

-window

-no taskbar

-no desktop

-region

timer

Stop video after x seconde(s)

Config

Show cursor or not

Compress AVI

Frame per sec

Output AVI

Recording avi since x time

Size of current recording AVI (thanks to monoceres)

Hotkeys

CTRL + F1 = Play

CTRL + F2 = Pause

CTRL + F3 = HIDE

CTRL + F4 = SHOW

(this options are availiable from trayicon)

Screenshot :

Posted Image

Attachments :

AVICapture v1.4.0 : AviCapture.au3 Happy New Year !

AVICapture v1.3.5 : AviCapture.au3

AVICapture v1.3.0 : AviCapture.au3

Executable (updated with source ) : AVICapture v1.4

Is_Pressed_UDF v1.7 : Is_Pressed_UDF

Compression : FFMPEG

Comments are welcome !

(Thanks for anyhelp I know there is lot of problems)

Enjoy ! :)

Cheers, FireFox.

Edited by FireFox
Posted

Seems to work well :)

Two suggestions:

- In the capture loop you're sleeping the loop with 200 ms. This is only correct if the framerate is 5 (1000 ms / 200 ms = 5). To calculate the correct one you should do something like:

$sleeptime=1000/$Framerate

- To update the filesize properly, keep an internal counter instead of relying on FileGetSize(). The size of one bitmap is easy to calculate:

$BitmapSize=54+3*($width*$height); In bytes

:o

Broken link? PM me and I'll send you the file!

Posted

Seems to work well :o

Two suggestions:

- In the capture loop you're sleeping the loop with 200 ms. This is only correct if the framerate is 5 (1000 ms / 200 ms = 5). To calculate the correct one you should do something like:

$sleeptime=1000/$Framerate
Yep Ive done that before but got confused :)

- To update the filesize properly, keep an internal counter instead of relying on FileGetSize(). The size of one bitmap is easy to calculate:

$BitmapSize=54+3*($width*$height); In bytes
Thanks for your suggestion :D

Cheers, FireFox.

Posted (edited)

AVICapture v1.3.5 available (thanks to monoceres for suggestions)

Cheers, FireFox.

Edited by FireFox
Posted (edited)

@monoceres

:) it works fine for me so I dont know why it doesnt work for you and what is the problem :D

Edit : updated version with debug console :o

Cheers, FireFox.

Edited by FireFox
Posted

I also having problem to run it:

ERROR: _CreateAvi() called with wrong number of args.

$AVI = _CreateAvi(@ScriptDir & "\temp.avi", $frame, @TempDir & "\frame.bmp")

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^

It is a wrong function usage as i see it...

 

Spoiler

Using OS: Win 7 Professional, Using AutoIt Ver(s): 3.3.6.1 / 3.3.8.1

AutoIt_Rus_Community.png AutoIt Russian Community

My Work...

Spoiler

AutoIt_Icon_small.pngProjects: ATT - Application Translate Tool {new}| BlockIt - Block files & folders {new}| SIP - Selected Image Preview {new}| SISCABMAN - SciTE Abbreviations Manager {new}| AutoIt Path Switcher | AutoIt Menu for Opera! | YouTube Download Center! | Desktop Icons Restorator | Math Tasks | KeyBoard & Mouse Cleaner | CaptureIt - Capture Images Utility | CheckFileSize Program

AutoIt_Icon_small.pngUDFs: OnAutoItErrorRegister - Handle AutoIt critical errors {new}| AutoIt Syntax Highlight {new}| Opera Library! | Winamp Library | GetFolderToMenu | Custom_InputBox()! | _FileRun UDF | _CheckInput() UDF | _GUIInputSetOnlyNumbers() UDF | _FileGetValidName() UDF | _GUICtrlCreateRadioCBox UDF | _GuiCreateGrid() | _PathSplitByRegExp() | _GUICtrlListView_MoveItems - UDF | GUICtrlSetOnHover_UDF! | _ControlTab UDF! | _MouseSetOnEvent() UDF! | _ProcessListEx - UDF | GUICtrl_SetResizing - UDF! | Mod. for _IniString UDFs | _StringStripChars UDF | _ColorIsDarkShade UDF | _ColorConvertValue UDF | _GUICtrlTab_CoverBackground | CUI_App_UDF | _IncludeScripts UDF | _AutoIt3ExecuteCode | _DragList UDF | Mod. for _ListView_Progress | _ListView_SysLink | _GenerateRandomNumbers | _BlockInputEx | _IsPressedEx | OnAutoItExit Handler | _GUICtrlCreateTFLabel UDF | WinControlSetEvent UDF | Mod. for _DirGetSizeEx UDF
 
AutoIt_Icon_small.pngExamples: 
ScreenSaver Demo - Matrix included | Gui Drag Without pause the script | _WinAttach()! | Turn Off/On Monitor | ComboBox Handler Example | Mod. for "Thinking Box" | Cool "About" Box | TasksBar Imitation Demo

Like the Projects/UDFs/Examples? Please rate the topic (up-right corner of the post header: Rating AutoIt_Rating.gif)

* === My topics === *

==================================================
My_Userbar.gif
==================================================

 

 

 

AutoIt is simple, subtle, elegant. © AutoIt Team

Posted (edited)

@MrCreator

Where do you found this ? I need help for AVICapture v1.4.0 because its last udf :)

the first AVICreate function I find is : Line 284

$AVI = _CreateAvi(@ScriptDir & "\temp.avi", $frame, $MW1, $MH1)

Cheers, FireFox.

Edited by FireFox
Posted

Where do you found this ?

From the first post :D Now there is a different version, so you probably fixed it :)

Any way, after few seconds of video capturing, the file size is very big (like 300 mb), and aslo the HotKey «Ctrl + F4» is not so good idea, it closes current file (script) opened in SciTE :o

 

Spoiler

Using OS: Win 7 Professional, Using AutoIt Ver(s): 3.3.6.1 / 3.3.8.1

AutoIt_Rus_Community.png AutoIt Russian Community

My Work...

Spoiler

AutoIt_Icon_small.pngProjects: ATT - Application Translate Tool {new}| BlockIt - Block files & folders {new}| SIP - Selected Image Preview {new}| SISCABMAN - SciTE Abbreviations Manager {new}| AutoIt Path Switcher | AutoIt Menu for Opera! | YouTube Download Center! | Desktop Icons Restorator | Math Tasks | KeyBoard & Mouse Cleaner | CaptureIt - Capture Images Utility | CheckFileSize Program

AutoIt_Icon_small.pngUDFs: OnAutoItErrorRegister - Handle AutoIt critical errors {new}| AutoIt Syntax Highlight {new}| Opera Library! | Winamp Library | GetFolderToMenu | Custom_InputBox()! | _FileRun UDF | _CheckInput() UDF | _GUIInputSetOnlyNumbers() UDF | _FileGetValidName() UDF | _GUICtrlCreateRadioCBox UDF | _GuiCreateGrid() | _PathSplitByRegExp() | _GUICtrlListView_MoveItems - UDF | GUICtrlSetOnHover_UDF! | _ControlTab UDF! | _MouseSetOnEvent() UDF! | _ProcessListEx - UDF | GUICtrl_SetResizing - UDF! | Mod. for _IniString UDFs | _StringStripChars UDF | _ColorIsDarkShade UDF | _ColorConvertValue UDF | _GUICtrlTab_CoverBackground | CUI_App_UDF | _IncludeScripts UDF | _AutoIt3ExecuteCode | _DragList UDF | Mod. for _ListView_Progress | _ListView_SysLink | _GenerateRandomNumbers | _BlockInputEx | _IsPressedEx | OnAutoItExit Handler | _GUICtrlCreateTFLabel UDF | WinControlSetEvent UDF | Mod. for _DirGetSizeEx UDF
 
AutoIt_Icon_small.pngExamples: 
ScreenSaver Demo - Matrix included | Gui Drag Without pause the script | _WinAttach()! | Turn Off/On Monitor | ComboBox Handler Example | Mod. for "Thinking Box" | Cool "About" Box | TasksBar Imitation Demo

Like the Projects/UDFs/Examples? Please rate the topic (up-right corner of the post header: Rating AutoIt_Rating.gif)

* === My topics === *

==================================================
My_Userbar.gif
==================================================

 

 

 

AutoIt is simple, subtle, elegant. © AutoIt Team

  • 3 weeks later...
Posted (edited)

link works but if you recode over 50sec there is no way to stop the recording maybe ad a switchign button play/stop as the tray icon stops responding

Edited by wizzywig
Posted

@wizzywig

perhaps after 1min your disk is full because I can stop video yet, and output byte is aproximatly 1.1 Go

Cheers, FireFox.

Posted

@wizzywig

perhaps after 1min your disk is full because I can stop video yet, and output byte is aproximatly 1.1 Go

Cheers, FireFox.

i have aprox 200gb free and 4gig of ram maybe its a issue with vista
  • 3 months later...
Posted

@Firefox, Very good script. I like it a lot. I have found a couple of bugs that I wanted to point out. In the section that controls stoping the capture after a certian amount of time, you forgot to multiply the input by 1000. Its stoping after so many milliseconds, not seconds.

;Global $timer = GUICtrlRead($Edittime)
Global $timer = (GUICtrlRead($Edittime)*1000)

Another thing I wanted to point out is how the _ScreenCapture function takes around 250ms to complete by itself. That means that I can only have a maximum of 3-4 frames per second. If I try to do any more than that I get a video with a time length that is much shorter than the length should be. That being said you might want to remove the options for creating high frame rate videos.

  • 7 months later...

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
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...