hi @ all,
ich hab in der SuFu gelesen das man mit die FFmpeg.exe über autoit ansteuern kann.
habe auch schon beispiele gesehen aber nicht verstanden jetzt wollte ich fragen ob jemand vllt. die einzelnen/wichtigsten Funktionen zum Ansteuer hier erklären/beschreiben kann.
Gruß Roggazzz
Ffmpeg.exe ansteuern?
-
- [ offen ]
-
Lololo124 -
21. August 2009 um 11:12 -
Geschlossen -
Erledigt
-
-
was möchtest du denn machen ?
also von welchem format in welches format ? -
Von .flv und .swf in .mp3 und .avi
-
ich habe hier im forum mal was gefunden des war von Alina oder von Funkey
mit dem konvertiere ich von flv zu mp3 vielleicht kannste ja was damit anfangen
Spoiler anzeigen
[autoit]If Not FileExists("C:\" & $s_v & ".bat") Then _FileCreate("C:\" & $s_v & ".bat")
[/autoit]
Sleep (50)
FileOpen("C:\" & $s_v & ".bat", 2)
Sleep (50)
FileWrite("C:\" & $s_v & ".bat", '"ffmpeg" -i ')
Sleep (50)
FileWrite("C:\" & $s_v & ".bat", $s_v)
Sleep (50)
FileWrite("C:\" & $s_v & ".bat", ".flv")
Sleep (50)
FileWrite("C:\" & $s_v & ".bat", " -ar 44100 -ac 2 -ab 256k ")
Sleep (50)
FileWrite("C:\" & $s_v & ".bat", $s_v)
Sleep (50)
FileWrite("C:\" & $s_v & ".bat", ".mp3")
Sleep (50)
FileClose("C:\" & $s_v & ".bat")
Sleep (50)
RunWait(@ComSpec & " /c " & "C:\" & $s_v & ".bat","", @SW_HIDE)
sleep(7000)
FileOpen("C:\" & $s_v & ".bat", 2)
Sleep (50)
FileWrite("C:\" & $s_v & ".bat", "")
Sleep (50)
FileClose("C:\" & $s_v & ".bat")
Sleep (50)
FileMove("C:\" & $s_v & ".flv" , @DesktopDir & "\BS-VidLoad\Videos\"& $s_v & ".flv")
Sleep (50)
FileMove("C:\" & $s_v & ".mp3" , @DesktopDir & "\BS-VidLoad\MP3s\"& $s_v & ".mp3")
Sleep (50)
FileDelete("C:\" & $s_v & ".bat")
Sleep (50)
SplashTextOn("Abgeschlossen", "Download erfolgreich beendet", 350, 45, -1, -1, 1, "", 12)
SoundPlay("C:\tada.wav",1)
Sleep(700)
SplashOff()
If $prog = 0 Then ProgressOff ()
Return $punkt
Exit
EndFunc -
wirklich verstehen tue ich das nicht.
wie gesagt wären die verschiedenen befehle auskommentiert würde ichd as glaube ich besser verstehen -
Hi,
das Script schreibt eine Batchdatei und führt sie nachher aus. Das ist alles.
Man könnte das Script gewaltig kürzen, aber das ist eine andere Sache.
ciao
Andy -
ja das mit der batchdatei habe ich mitbekommen aber ich verstehe die funktionen einfach nicht(von der ffmpeg.exe)
-
ffmpeg -i test.flv -ar 44100 -ac 2 -ab 256k test.mp3 so könnte man eine flv in mp3 umwandeln mit fester bitrate, aber warum liest du dir nich einfach die Dokumentation zu ffmpeg durch, da stehen ALLE möglichen Befehle beschrieben und wie man sie anwendet
-
mein englisch ist eben nicht gerade das beste und ich hab die dokumentation nicht gesehen/gefunden
hab mit die ffmpeg.exe i-wo anderster geladen
-
- Offizieller Beitrag
Du kannst auch gleich zu einem fertigen (und kostenlosen) Konvertierprogramm greifen, das eigentlich keine Wünsche offenläßt: SUPER.
-
mir schon klar aber ich würde gerne wissen wie gut ich das hinbekommen würde und so
-
naja und google is auch schon mächtig, hab dir mal die Arbeit abgenommen. Hier ist eine deutsche Beschreibung für alles was du brauchst.
http://spielwiese.la-evento.com/hokuspokus/seite2.html
und wenn du dir mal diesen Thread durchliest wirst du sogar schon auf fertige AutoIt-Skripte stossen
https://autoit.de/index.php?page=Thread&threadID=11069 -
Hey,
anbei ein Skript von mir.
Dort wird die Funktion genutzt von .flv in .mp3 zu wandeln^^
Schau es dir einfach anSpoiler anzeigen
[autoit]#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
[/autoit] [autoit][/autoit] [autoit]
#AutoIt3Wrapper_UseUpx=n
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
#include <GUIConstants.au3>
#include <inet.au3>
#include <Date.au3>;~ FileInstall ("C:/ffmpeg.exe", "C:/ffmpeg.exe")
[/autoit] [autoit][/autoit] [autoit]GUICreate("You Tube Video-Downloader by PokerFace", 273, 105, 193, 115, -1)
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
$DwnInput = GUICtrlCreateInput("Hier YouTube Link Rein !", 8, 24, 257, 21)
GUICtrlCreateLabel("www.youtube.com Download Link:", 8, 8, 268, 15)
$start = GUICtrlCreateButton("&Start", 8, 48, 128, 25, 0)
$Progress = GUICtrlCreateProgress(8, 80, 257, 16)
$abb = GUICtrlCreateButton("A&bbruch", 137, 48, 128, 25, 0)
GUISetState(@SW_SHOW)While 1
[/autoit] [autoit][/autoit] [autoit]
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $startGUICtrlSetState($start,$GUI_DISABLE)
[/autoit] [autoit][/autoit] [autoit]
$dwnlink = GUICtrlRead($DwnInput)
$sCode=_INetGetSource ($dwnlink)
$s_t=StringRegExp($sCode, "&t=(.*?)&", 3)
If Not IsArray ($s_t) Then
MsgBox (0, "Error", "Ungültiger Link!")
Exit
Else
$s_v=stringmid($dwnlink,stringinstr($dwnlink,"v=")+2)
$save = FileSaveDialog("Speichere FLV","","Flash Video (*.flv)",-1,$s_v)
If StringRight($save,4) <> ".swf" Then $save&=".flv"
_Download("http://youtube.com/get_video?video_id=" & $s_v & "&t=" & $s_t[0],$save,$Progress)
GUIDelete()
MsgBox(0,"","Fertig!")
EndIfEndSwitch
[/autoit] [autoit][/autoit] [autoit]
WEndFunc _Download($site,$punkt,$prog=0)
[/autoit]
$orisize = InetGetSize($site)
InetGet($site,$punkt,1,1)
If $prog = 0 Then ProgressOn("Download","")
Do
$msg = GUIGetMsg()
If $msg = $abb Then
If MsgBox(4,"","Abbruch?") = 6 Then Exit
EndIf
$size1 = FileGetSize($punkt)
$MBsize1 = FileGetSize($punkt)
$inetget = @InetGetBytesRead
$Prozent = (100 * $inetget ) / $orisize
$decimalplace = Round ($Prozent)
$decimalplaceMBsize1 = Round (@InetGetBytesRead / 1024)
If $prog = 0 Then
ProgressSet ($Prozent, $decimalplace & "% " & "(" & $decimalplaceMBsize1 & ") Kb sind bereits gedownloadet.")
Else
GUICtrlSetData($prog,$Prozent)
EndIf
Until @InetGetActive = 0
If $prog = 0 Then ProgressOff ()
Local $sFFmpeg="", $hFFmpeg
$hFFmpeg=Run(@ScriptDir&'"ffmpeg.exe -i "' & $punkt & '" -y "' & StringTrimRight($punkt,3) & 'mp3"',@ScriptDir,@SW_HIDE,0x4)
While 1
$sFFmpeg &= StderrRead($hFFmpeg)
If @error Or StringInStr($sFFmpeg,"Duration") Then ExitLoop
WEnd
$sFFmpeg = StringLeft(StringTrimLeft($sFFmpeg, StringInStr($sFFmpeg, "Duration:") + 9),
$iTicks = _TimeToTicks(StringLeft($sFFmpeg, 2), StringMid($sFFmpeg, 4, 2), StringMid($sFFmpeg, 7, 2))
While 1
$sFFmpeg = StderrRead($hFFmpeg)
If @error Then ExitLoop
If StringInStr($sFFmpeg,"time=") Then
$sFFmpeg=StringTrimLeft($sFFmpeg, StringInStr($sFFmpeg, "time=") + 4)
GUICtrlSetData($prog,(StringLeft($sFFmpeg, StringInStr($sFFmpeg, ".")-1) *100000)/$iTicks)
EndIf
WEnd
Return $punkt
EndFuncIm Skriptordner muss auch die ffmpeg.exe sein