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 recording, capturing etc.
; 
Parameter(s):     $s_format     - Format of the file.
;                   
0 = CD Audio
;                   1 = Digital video
;                   2 = Overlay
;                   3 = sequencer
;                   4 = Vcr
;                   5 = Video disc
;                   6 = 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, @DesktopHeight, 0, 0)
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, @DesktopHeight, 0, 0)
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, @DesktopHeight, 0, 0)
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, @DesktopHeight, 0, 0)
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, @DesktopHeight, 0, 0)
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:
$objekt= ObjCreate("Shell.Explorer.2")
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
$GUI = GUICreate("Html datei....", @DesktopWidth , @DesktopHeight,0,0, BitOR($WS_OVERLAPPEDWINDOW, $WS_CLIPSIBLINGS, $WS_CLIPCHILDREN))
GuiCtrlCreateObj ( $oIE , 0 ,0 , @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, @DesktopHeight, 0, 0, BitOR($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