Autoit Video

12/04/2010 15:46 Memphiisto#1
heyy leute..
Ich hab wieder mal eine Frage ^^

Kann mir jemand erklären wie man in Autoit ein Video einfügt?
Also z.b. man macht einen Gui und darin läuft ein Video ab...
Danke im Vorraus

lg MagicDave
12/04/2010 15:48 BlackHybrid#2
genau weis ich es jetzt nicht aber probier mal ein objekt zu machen (GuiCtrlCreateObj) und mach dazu noch eine html datei, in der du das video abspielst. Dann lässt du die seite im Obj öffnen und fertig^^ Kannst ja mal probieren wenn du hilfe brauchst kann ich dir auch weiter helfen. Kann dir auch in TeamViewer helfen ;)
12/04/2010 16:05 Shadow992#3
Ganz einfach:
PHP Code:
      $video _MediaOpen("video.avi")
      
_MediaPlay($video,0,0,0,0,0,1)
    
sleep(9500)
    
_MediaClose($video
Und hier die benötigte UDF:
PHP Code:
;===============================================================================
;
; Function 
Name:    _MediaOpen()
Description:      Opens a media file.
Parameter(s):     $s_location     Location of the media file
Requirement(s):   AutoIt
; Return Value(s):  On Success Returns Media ID needed for the other media functions
;                   On Failure Returns 0  and sets @ERROR 1
Author(s):        svennie
;
;===============================================================================
Func _MediaOpen($s_location$h_guihandle 0)
    If 
Not IsDeclared("i_MediaCount"Then Global $i_MediaCount=0
    $i_MediaCount
=$i_MediaCount+1
    DllCall
("winmm.dll","int","mciSendString","str","open "&FileGetShortName($s_location)&" alias media"&String($i_MediaCount),"str","","int",65534,"hwnd",0)
    If @
error Then
        SetError
(1)
        Return 
0
    
Else
        Return 
String($i_MediaCount)
    EndIf
EndFunc
;===============================================================================
;
; Function 
Name:    _MediaCreate()
Description:      Creates a new media for recordingcapturing etc.
Parameter(s):     $s_format     Format of the file.
;                   
CD Audio
;                   Digital video
;                   Overlay
;                   sequencer
;                   Vcr
;                   Video disc
;                   Wave Audio
Requirement(s):   AutoIt
; Return Value(s):  On Success Returns Media ID needed for the other media functions
;                   On Failure Returns 0 and sets @ERROR 1
Author(s):        svennie
;
;===============================================================================
Func _MediaCreate($s_format)
    If 
Not IsDeclared("i_MediaCount"Then Global $i_MediaCount=0
    $i_MediaCount
=$i_MediaCount+1
    
If $s_format=0 Then
        $s_Use
="cdaudio"
    
ElseIf $s_format=1 Then
        $s_Use
="digitalvideo"
    
ElseIf $s_format=2 Then
        $s_Use
="overlay"
    
ElseIf $s_format=3 Then
        $s_Use
="sequencer"
    
ElseIf $s_format=4 Then
        $s_Use
="vcr"
    
ElseIf $s_format=5 Then
        $s_Use
="videodisc"
    
ElseIf $s_format=6 Then
        $s_Use
="waveaudio"
    
EndIf
    
DllCall("winmm.dll","int","mciSendString","str","open new type "&$s_Use&" alias media"&String($i_MediaCount),"str","","int",65534,"hwnd",0)
    If @
error Then
        SetError
(1)
        Return 
0
    
Else
        Return 
String($i_MediaCount)
    EndIf
EndFunc
;===============================================================================
;
; Function 
Name:    _MediaPlay()
Description:      Plays a opened media file.
Parameter(s):     $i_MediaId     Media ID returned by _MediaOpen()/MediaCreate()
;                   [
optional$i_From        Sets time in seconds where to begin playing
;                   [optional$i_To          Sets time in seconds where to bstop playing
;                   [optional$i_Speed       Sets the speed to play with
;                   [optional$f_Fast        When 1 it will play faster then normal
;                   [optional$f_Slow        When 1 it will play slower then normal
;                   [optional$f_Fullscreen  When 1 movies will play fullscreen
;                   [optional$f_Repeat      When 1 it will keep repeating
;                   [optional$f_Reverse     When 1 the movie will been played reversed
;                   [optional$f_Scan        When 1 plays as fast as possible
;                   The default value of all the optional parameters is 0.
;                   Some file formats dont understand some of the optional functions
;                   Experimate with it.
Requirement(s):   AutoIt
; Return Value(s):  On Success Returns 1
;                   On Failure Returns 0 and sets @ERROR 1
Author(s):        svennie
;
;===============================================================================
Func _MediaPlay($i_MediaId,$i_From 0,$i_To 0,$i_Speed 0,$f_Fast 0,$f_Slow 0,$f_Fullscreen 0,$f_Repeat=0,$f_Reverse=0,$f_Scan 0)
    
$s_Parameters=""
    
If $i_From Then $s_Parameters=$s_Parameters&" from "&$i_From
    
If $i_To Then $s_Parameters=$s_Parameters&" to "&$i_To
    
If $i_Speed Then $s_Parameters=$s_Parameters&" speed "&$i_Speed
    
If $f_Fast Then $s_Parameters=$s_Parameters&" fast"
    
If $f_Fullscreen Then $s_Parameters=$s_Parameters&" fullscreen"
    
If $f_Repeat Then $s_Parameters=$s_Parameters&" repeat"
    
If $f_Reverse Then $s_Parameters=$s_Parameters&" reverse"
    
If $f_Scan Then $s_Parameters=$s_Parameters&" scan"
    
If $f_Slow Then $s_Parameters=$s_Parameters&" slow"
    
DllCall("winmm.dll","int","mciSendString","str","play media"&$i_MediaId&$s_Parameters,"str","","int",65534,"hwnd",0)
    If @
error Then
        SetError
(1)
        Return 
0
    
Else
        Return 
1
    
EndIf
EndFunc
;===============================================================================
;
; Function 
Name:    _MediaRecord()
Description:      Records from a microphone
;                   Stop recording with _MediaStop()
;                   (
choose position with _MediaSeek())
Parameter(s):     $i_MediaId     Media ID returned by _MediaOpen()/MediaCreate()
Requirement(s):   AutoIt
; Return Value(s):  On Success Returns 1
;                   On Failure Returns 0 and sets @ERROR 1
Author(s):        svennie
;
;===============================================================================
Func _MediaRecord($i_MediaId)
    
DllCall("winmm.dll","int","mciSendString","str","record media"&$i_MediaId,"str","","int",65534,"hwnd",0)
    If @
error Then
        SetError
(1)
        Return 
0
    
Else
        Return 
1
    
EndIf
EndFunc
;===============================================================================
;
; Function 
Name:    _MediaCut()
Description:      Cuts a specified part of the movie to the clipboard.
Parameter(s):     $i_MediaId     Media ID returned by _MediaOpen()/MediaCreate()
;                   
$i_From        From time in seconds
;                   $i_To          To time in seconds
Requirement(s):   AutoIt
; Return Value(s):  On Success Returns 1
;                   On Failure Returns 0 and sets @ERROR 1
Author(s):        svennie
;
;===============================================================================
Func _MediaCut($i_MediaId,$i_From,$i_To)
    
DllCall("winmm.dll","int","mciSendString","str","cut media"&$i_MediaId&" from "&$i_From&" to "&$i_To,"str","","int",65534,"hwnd",0)
    If @
error Then
        SetError
(1)
        Return 
0
    
Else
        Return 
1
    
EndIf
EndFunc
;===============================================================================
;
; Function 
Name:    _MediaCopy()
Description:      Copies a specified part of the movie to the clipboard.
Parameter(s):     $i_MediaId     Media ID returned by _MediaOpen()/MediaCreate()
;                   
$i_From        From time in seconds
;                   $i_To          To time in seconds
Requirement(s):   AutoIt
; Return Value(s):  On Success Returns 1
;                   On Failure Returns 0 and sets @ERROR 1
Author(s):        svennie
;
;===============================================================================
Func _MediaCopy($i_MediaId,$i_From,$i_To)
    
DllCall("winmm.dll","int","mciSendString","str","copy media"&$i_MediaId&" from "&$i_From&" to "&$i_To,"str","","int",65534,"hwnd",0)
    If @
error Then
        SetError
(1)
        Return 
0
    
Else
        Return 
1
    
EndIf
EndFunc
;===============================================================================
;
; Function 
Name:    _MediaPaste()
Description:      Paste media from the clipboard.
Parameter(s):     $i_MediaId     Media ID returned by _MediaOpen()/MediaCreate()
Requirement(s):   AutoIt
; Return Value(s):  On Success Returns 1
;                   On Failure Returns 0 and sets @ERROR 1
Author(s):        svennie
;
;===============================================================================
Func _MediaPaste($i_MediaId,$i_From,$i_To)
    
DllCall("winmm.dll","int","mciSendString","str","paste media"&$i_MediaId,"str","","int",65534,"hwnd",0)
    If @
error Then
        SetError
(1)
        Return 
0
    
Else
        Return 
1
    
EndIf
EndFunc
;===============================================================================
;
; Function 
Name:    _MediaDelete()
Description:      Deletes a specified part of the movie.
Parameter(s):     $i_MediaId     Media ID returned by _MediaOpen()/MediaCreate()
;                   
$i_From        From time in seconds
;                   $i_To          To time in seconds
Requirement(s):   AutoIt
; Return Value(s):  On Success Returns 1
;                   On Failure Returns 0 and sets @ERROR 1
Author(s):        svennie
;
;===============================================================================
Func _MediaDelete($i_MediaId,$i_From,$i_To)
    
DllCall("winmm.dll","int","mciSendString","str","delete media"&$i_MediaId&" from "&$i_From&" to "&$i_To,"str","","int",65534,"hwnd",0)
    If @
error Then
        SetError
(1)
        Return 
0
    
Else
        Return 
1
    
EndIf
EndFunc
;===============================================================================
;
; Function 
Name:    _MediaCapture()
Description:      Copies the contents of the frame buffer and stores it in the
;                   specified file.
;                   
Stop recording with _MediaStop()
Parameter(s):     $i_MediaId     Media ID returned by _MediaOpen()/MediaCreate()
;                   
$s_Location    Location where to store the file.
Requirement(s):   AutoIt
; Return Value(s):  On Success Returns 1
;                   On Failure Returns 0 and sets @ERROR 1
Author(s):        svennie
;
;===============================================================================
Func _MediaCapture($i_MediaId,$s_Location)
    
DllCall("winmm.dll","int","mciSendString","str","capture media"&$i_MediaId&" "&FileGetShortName($s_Location),"str","","int",65534,"hwnd",0)
    If @
error Then
        SetError
(1)
        Return 
0
    
Else
        Return 
1
    
EndIf
EndFunc
;===============================================================================
;
; Function 
Name:    _MediaStop()
Description:      Stops playing/recording of a Media ID
Parameter(s):     $i_MediaId     Media ID returned by _MediaOpen()/MediaCreate()
Requirement(s):   AutoIt
; Return Value(s):  On Success Returns 1
;                   On Failure Returns 0 and sets @ERROR 1
Author(s):        svennie
;
;===============================================================================
Func _MediaStop($i_MediaId)
    
DllCall("winmm.dll","int","mciSendString","str","stop media"&$i_MediaId,"str","","int",65534,"hwnd",0)
    If @
error Then
        SetError
(1)
        Return 
0
    
Else
        Return 
1
    
EndIf
EndFunc
;===============================================================================
;
; Function 
Name:    _MediaSeek()
Description:      Moves to a specified Position and stops.
Parameter(s):     $i_MediaId     Media ID returned by _MediaOpen()/MediaCreate()
;                   
$i_Position    Position in seconds to move to, -1 goes to start
;                   -2 goes to end
Requirement(s):   AutoIt
; Return Value(s):  On Success Returns 1
;                   On Failure Returns 0 and sets @ERROR 1
Author(s):        svennie
;
;===============================================================================
Func _MediaSeek($i_MediaId,$i_Position)
    If 
$i_Position = -1 Then
        $s_Position 
"end"
    
ElseIf $i_Position = -2 Then
        $s_Position 
"begin"
    
Else
        
$s_Position String($i_Position)
    EndIf
    
DllCall("winmm.dll","int","mciSendString","str","seek media"&$i_MediaId&" to "&$s_Position,"str","","int",65534,"hwnd",0)
    If @
error Then
        SetError
(1)
        Return 
0
    
Else
        Return 
1
    
EndIf
EndFunc
;===============================================================================
;
; Function 
Name:    _MediaPause()
Description:      Pauses playing/recording of a Media ID
Parameter(s):     $i_MediaId     Media ID returned by _MediaOpen()/MediaCreate()
Requirement(s):   AutoIt
; Return Value(s):  On Success Returns 1
;                   On Failure Returns 0 and sets @ERROR 1
Author(s):        svennie
;
;===============================================================================
Func _MediaPause($i_MediaId)
    
DllCall("winmm.dll","int","mciSendString","str","pause media"&$i_MediaId,"str","","int",65534,"hwnd",0)
    If @
error Then
        SetError
(1)
        Return 
0
    
Else
        Return 
1
    
EndIf
EndFunc
;===============================================================================
;
; Function 
Name:    _MediaResume()
Description:      Resumes playing/recording of a Media ID
Parameter(s):     $i_MediaId     Media ID returned by _MediaOpen()/MediaCreate()
Requirement(s):   AutoIt
; Return Value(s):  On Success Returns 1
;                   On Failure Returns 0 and sets @ERROR 1
Author(s):        svennie
;
;===============================================================================
Func _MediaResume($i_MediaId)
    
DllCall("winmm.dll","int","mciSendString","str","resume media"&$i_MediaId,"str","","int",65534,"hwnd",0)
    If @
error Then
        SetError
(1)
        Return 
0
    
Else
        Return 
1
    
EndIf
EndFunc
;===============================================================================
;
; Function 
Name:    _MediaSave()
Description:      Saves a opened Media ID to the selected file
Parameter(s):     $i_MediaId     Media ID returned by _MediaOpen()/MediaCreate()
;                   
$s_Location    Location to save to (must be full path)
Requirement(s):   AutoIt
; Return Value(s):  On Success Returns 1
;                   On Failure Returns 0 and sets @ERROR 1
Author(s):        svennie
;
;===============================================================================
Func _MediaSave($i_MediaId,$s_Location)
    
DllCall("winmm.dll","int","mciSendString","str","save media"&$i_MediaId&" " '"'&FileGetShortName($s_Location)&'"',"str","","int",65534,"hwnd",0)
    If @
error Then
        SetError
(1)
        Return 
0
    
Else
        Return 
1
    
EndIf
EndFunc
;===============================================================================
;
; Function 
Name:    _MediaClose()
Description:      Closes a existing Media ID
Parameter(s):     $i_MediaId     Media ID returned by _MediaOpen()/MediaCreate()
Requirement(s):   AutoIt
; Return Value(s):  On Success Returns 1
;                   On Failure Returns 0 and sets @ERROR 1
Author(s):        svennie
;
;===============================================================================
Func _MediaClose($i_MediaId)
    
DllCall("winmm.dll","int","mciSendString","str","close media"&$i_MediaId,"str","","int",65534,"hwnd",0)
    If @
error Then
        SetError
(1)
        Return 
0
    
Else
        Return 
1
    
EndIf
EndFunc 
12/04/2010 18:00 Al Kappaccino#4
Quote:
Originally Posted by MagicDave View Post
Kannst du mir noch pls sagen wie ich das hier anpasse? ..
Weil ich kann das Vid ned sehen ://


PHP Code:
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <MediaDateien.au3>
#Region ### START Koda GUI section ### Form=
$Form1 GUICreate("Form1", @DesktopWidth, @DesktopHeight00)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

$video _MediaOpen("intro.avi")
      
_MediaPlay($video,0,0,0,0,0,1)
    
sleep(9500)
    
_MediaClose($video)
    
While 
1
    $nMsg 
GUIGetMsg()
    Switch 
$nMsg
        
Case $GUI_EVENT_CLOSE
            
Exit

    EndSwitch 

Danke im Vorraus Magic
Wie wäre es mit einer Pfadangabe? <.< Oder denkst du dein Programm weis sowas auswendig?
12/04/2010 18:25 Memphiisto#5
Kannst du mir noch pls sagen wie ich das hier anpasse? ..
Weil ich kann das Vid ned sehen ://


PHP Code:
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <MediaDateien.au3>
#Region ### START Koda GUI section ### Form=
$Form1 GUICreate("Form1", @DesktopWidth, @DesktopHeight00)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

$video _MediaOpen("intro.avi")
      
_MediaPlay($video,0,0,0,0,0,1)
    
sleep(9500)
    
_MediaClose($video)
    
While 
1
    $nMsg 
GUIGetMsg()
    Switch 
$nMsg
        
Case $GUI_EVENT_CLOSE
            
Exit

    EndSwitch 

Danke im Vorraus
Lg Magic :handsdown:
12/04/2010 19:00 Shadow992#6
Quote:
Originally Posted by MagicDave View Post
Kannst du mir noch pls sagen wie ich das hier anpasse? ..
Weil ich kann das Vid ned sehen ://


PHP Code:
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <MediaDateien.au3>
#Region ### START Koda GUI section ### Form=
$Form1 GUICreate("Form1", @DesktopWidth, @DesktopHeight00)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

$video _MediaOpen("intro.avi")
      
_MediaPlay($video,0,0,0,0,0,1)
    
sleep(9500)
    
_MediaClose($video)
    
While 
1
    $nMsg 
GUIGetMsg()
    Switch 
$nMsg
        
Case $GUI_EVENT_CLOSE
            
Exit

    EndSwitch 

Danke im Vorraus
Lg Magic :handsdown:
Ändere einfach deinen Pfad:
PHP Code:
$video _MediaOpen("C:\Dein_Pfad\intro.avi"
Eventuel mag die UDF diese Avi nicht, dann kann es helfen an der Qualität und ähnlichem herumzuschrauben.
12/05/2010 00:50 Memphiisto#7
Script ligt direkt beim Video deswegen Pfad nicht drinnen und ehm habs trotzdem Probiert geht aber nicht... ich probier es mal mit ner Flv datei... :D

Ne geht nicht ......... :/// nochmal der Code...


PHP Code:
#RequireAdmin

#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <MediaDateien.au3>
#Region ### START Koda GUI section ### Form=
$Form1 GUICreate("Form1", @DesktopWidth, @DesktopHeight00)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

$video _MediaOpen("C:\Users\******\Desktop\*****\Filme\****\intro.mp4")
      
_MediaPlay($video,0,0,0,0,0,1)
;~     
sleep(9500)
;~     
_MediaClose($video)

While 
1
    $nMsg 
GUIGetMsg()
    Switch 
$nMsg
        
Case $GUI_EVENT_CLOSE
            
Exit
    EndSwitch
WEnd 



lg Magic
12/05/2010 11:14 Shadow992#8
Quote:
Originally Posted by MagicDave View Post
Script ligt direkt beim Video deswegen Pfad nicht drinnen und ehm habs trotzdem Probiert geht aber nicht... ich probier es mal mit ner Flv datei... :D

Ne geht nicht ......... :/// nochmal der Code...


PHP Code:
#RequireAdmin

#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <MediaDateien.au3>
#Region ### START Koda GUI section ### Form=
$Form1 GUICreate("Form1", @DesktopWidth, @DesktopHeight00)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

$video _MediaOpen("C:\Users\******\Desktop\*****\Filme\****\intro.mp4")
      
_MediaPlay($video,0,0,0,0,0,1)
;~     
sleep(9500)
;~     
_MediaClose($video)

While 
1
    $nMsg 
GUIGetMsg()
    Switch 
$nMsg
        
Case $GUI_EVENT_CLOSE
            
Exit
    EndSwitch
WEnd 



lg Magic
Ich sagte nicht, dass das Format falsch ist, ich sagte, dass irgendetwas an der .avi-Datei der Media-UDF nicht passt, deswegen habe ich auch gesagt, dass man eventuel einmal ein bisschen an den Einstellungen rumspielen soll.
12/05/2010 13:49 Memphiisto#9
Ja aber an was für einstellungen? an denen ? :D

_MediaPlay($video,0,0,0,0,0,1)

Ich probier ma ^^
12/05/2010 14:27 PenGuin :O#10
Ihr erstellt alle gar kein Control für das Video.
Deshalb würde es nur im Hintergrund abgespielt werden, dafür geht aber auch Sound.au3.

Außerdem hat es nichts mit seiner Pfadangabe zutun.

Was du brauchst ist folgender Befehl:
_GUICtrlAvi_Create()
dazu einfach mal die Hilfe durchwühlen und das Testscript verstehen.
12/05/2010 19:56 Memphiisto#11
Ich hab mir die hilfe angeschaut und ehm.. Also meine avi datei geht wieder nicht aber die Beispieldatei von Autoit geht wida ma ....

nunja wie soll ich dass denn anstellen ? meine Videodateien will autoit nicht abspielen...
gibts noch was wo anderes als AVI dateien Abspielen kann ?

lg mem
12/05/2010 20:34 BlackHybrid#12
Oder du machst es so wie ich gamcht hab du machst eine html datei in der du ein vid einbettest (quellt findest du bei youtube oder so) und lässt die html datei in einem object (GuiCtrlCreateObj) anzeigen.
12/05/2010 23:16 Memphiisto#13
Also die HTML datei hätte ich aber ich krige es nicht hin dass es in nem OBJ angezeigt wird ..
In diesem bereich hab ich mich mit autoit noch nicht so wirklich beschäftigt ://
Na wir wohl höchste Zeit ^^

Ja bitte könnte da mal jmnd was zeigen ?
So weit bin ich :
PHP Code:
$objektObjCreate("Shell.Explorer.2")
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
$GUI GUICreate("Html datei....", @DesktopWidth , @DesktopHeight,0,0BitOR($WS_OVERLAPPEDWINDOW$WS_CLIPSIBLINGS$WS_CLIPCHILDREN))
GuiCtrlCreateObj $oIE ,, @DesktopWidth , @DesktopHeight)
ObjGet "C:\Users\****\Desktop\Vid.html")

GUISetState ( @SW_SHOW )

While 
1
    Sleep 
10 )
WEnd 

lg Mem
12/06/2010 18:26 BlackHybrid#14
PHP Code:
$oIE ObjCreate("Shell.Explorer.2")
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
$GUI GUICreate("Html datei....", @DesktopWidth, @DesktopHeight00BitOR($WS_OVERLAPPEDWINDOW$WS_CLIPSIBLINGS$WS_CLIPCHILDREN))
GUICtrlCreateObj($oIE, -13, -17, @DesktopWidth, @DesktopHeight)
$oIE.navigate("C:\...\Vid.html")


GUISetState(@SW_SHOW)

While 
1
    Sleep
(10)
WEnd 
Die größe vom vid kann man ja in der html datei bearbeiten^^
12/06/2010 22:17 Memphiisto#15
:// wird nur weißes bild angezeigt ....

Html datei..

geht iw ned aba wenn ich direkt die HTML öffne gehts.... ( also in Firefox )

Lg Magic