1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. DeepRed92

Beiträge von DeepRed92

  • Email Adresse prüfen

    • DeepRed92
    • 12. Mai 2012 um 20:16

    Bei Telnet war das doch immer so, dass man eine Verbindung zu einem Anbieter aufgebaut hat und dann einen Usernamen wie z.B. "max.mustermann" senden musste. Wenn der Username nicht existiert, dann existiert die Mail-Adresse auch nicht!?

  • CreateResourceDLL

    • DeepRed92
    • 11. Mai 2012 um 17:47

    Hey danke,

    kann das sehr gut gebrauchen :)

  • Kiowa - ein kleiner HTTP-Server mit teilweiser PHP Unterstützung

    • DeepRed92
    • 5. Mai 2012 um 21:38

    Sehr schön. Mir gefällt es besonders, dass es so übersichtlich gehalten wurde!

    Das Bild hat mich überrascht xD

    Spoiler anzeigen

    [Blockierte Grafik: http://farm5.static.flickr.com/4133/5213911608_b0ae4c9a33_o.jpg]

  • FTP ganzen Ordner hochladen

    • DeepRed92
    • 3. Mai 2012 um 23:15
    [autoit]

    _FTP_DirPutContents($Conn, $Local, $Remote, 0)

    [/autoit]


    =>

    [autoit]

    _FTP_DirPutContents($Conn, $Local, $Remote, 1)

    [/autoit]

    Die Dateien kannst du vorher mit

    [autoit]


    _FTP_DirDelete

    [/autoit]

    löschen und anschließend uploaden.

  • meincraft -> Block Fantasy I - Sunrise

    • DeepRed92
    • 3. Mai 2012 um 21:17

    Sorry das ich mich hier einmische, aber ich finde es traurig, sowas zu zu lesen...

    Zitat von NetCode

    (...)naja den kam er wieder und hat gesagt hier das geld(...)

    Du hast das Geld bekommen und hast trotzdem das Handy gemopst!? Ganz ehrlich.. wenn man schon 500€ für fast nichts bekommt, dann kann das doch nicht wahr sein!

    Zitat von NetCode

    also das ende der geschichte : Lügen müssen bestraft werde :thumbup:

    Ja klar, aber bestimmt nicht von dir oder? Wir leben in einem Rechtsstaat und sowas kann wirklich nicht angehen!
    Traurig auch, dass du ihn hier so schlecht redest (nicht gepflegt etc.).

    Für die Nummer mitm Handy hättest du von mir garantiert eine Anzeige bekommen! Schäm dich! :thumbdown: .

  • AutoIt Error Message ignorieren

    • DeepRed92
    • 30. April 2012 um 14:14

    Execute benutzen. Z.B. Execute("MsgBo(0, '', 'ein Fehler')")

  • DeepRed92's Install Creator (in Arbeit)

    • DeepRed92
    • 21. April 2012 um 22:06

    Guten Abend,

    hatte seit längerem vor irgendwann mal einen Install Creator in AutoIt zu schreiben und nun habe ich schon mal die Oberfläche erstellt. Klar gibt es Programme wie NSIS usw., aber man blickt da nicht immer ganz durch.


    Bugs:

    • MenuItem wird bei jedem Klick auf einem Tab markiert. Keine Ahnung warum.. => Gelöst. Das erste Item wird einfach deaktiviert..

    Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist.

    Was meint ihr, ist alles wichtige enthalten oder gibt es, was man noch hinzufügen könnte bzw. muss?


    Edit: Rechtschreibfehler sind enthalten, werden aber bald entfernt.
    Edit2: Jetzt kann man zwischen Portable, Installer und beides entscheiden.
    Edit3: Das Projekt wird noch eine Weile dauern, da ich jetzt momentan in der Klausurphase bin.

    Dateien

    Install_Creator_1.0.0.4.zip 1,21 MB – 817 Downloads preview.png 102,9 kB – 0 Downloads
  • Unterbrechung von Funktionen vermeiden

    • DeepRed92
    • 15. April 2012 um 21:24

    Hab das so gemacht:

    Spoiler anzeigen
    [autoit]

    Local $array[100][100]
    Local $ready1 = False
    Local $ready2 = False
    Local $done = False
    Local $paraFun3[4]

    [/autoit] [autoit][/autoit] [autoit]

    AdlibRegister('Ueberpruefen', 50)

    [/autoit] [autoit][/autoit] [autoit]

    Funktion1(1)
    Funktion2(10, 10, 10)

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    Sleep(50)
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func Funktion1($parameter)
    For $i1 = 0 To 100 - 1
    For $i2 = 0 To 100 - 1
    $array[$i1][$i2] = $parameter * Random()
    Next
    Next
    Funktion3('852875', '2546556', '151', '51541') ;Wird mittendrin aufgerufen
    Sleep(1000) ;Pause
    $ready1 = True
    Return 1
    EndFunc ;==>Funktion1

    [/autoit] [autoit][/autoit] [autoit]

    Func Funktion2($updateposa, $updateposb, $parameter)
    $array[$updateposa][$updateposb] = $parameter
    $ready2 = True
    EndFunc ;==>Funktion2

    [/autoit] [autoit][/autoit] [autoit]

    Func Funktion3($p1, $p2, $p3, $p4)
    If $ready1 = False Or $ready2 = False Then
    $paraFun3[0] = $p1
    $paraFun3[1] = $p2
    $paraFun3[2] = $p3
    $paraFun3[3] = $p4
    Return $done = False
    EndIf
    $arraylocal = $array
    MsgBox(0, 'Parameter in Func3', $p1 & ' - ' & $p2 & ' - ' & $p3 & ' - ' & $p4)
    EndFunc ;==>Funktion3

    [/autoit] [autoit][/autoit] [autoit]

    Func Ueberpruefen()
    If $ready1 And $ready2 And Not $done Then
    Funktion3($paraFun3[0], _
    $paraFun3[1], _
    $paraFun3[2], _
    $paraFun3[3])
    $done = True
    $ready1 = False
    $ready2 = False
    Else
    $done = False
    EndIf
    EndFunc ;==>Ueberpruefen

    [/autoit]

    Erweitere es am besten so, dass die Funktion3 sozusagen in eine Warteschleife gerät. Sowas wie ne queue

  • Unterbrechung von Funktionen vermeiden

    • DeepRed92
    • 15. April 2012 um 20:57
    [autoit]

    Local $ready = False
    Local $done = False

    [/autoit][autoit][/autoit][autoit]

    AdlibRegister('Ueberpruefen', 50) ;WARTESCHLEIFE

    [/autoit][autoit][/autoit][autoit]

    Funktion3()

    [/autoit][autoit][/autoit][autoit]

    While 1
    Sleep(50)
    WEnd

    [/autoit][autoit][/autoit][autoit][/autoit][autoit]

    Func Funktion1()
    ;IRGENDWAS
    EndFunc

    [/autoit][autoit][/autoit][autoit]

    Func Funktion2()
    ;IRGENDWAS
    EndFunc

    [/autoit][autoit][/autoit][autoit]

    Func Funktion3()
    If $ready = False Then Return $done = False
    ;MUSS WARTEN ALSO...
    EndFunc

    [/autoit][autoit][/autoit][autoit]

    Func Ueberpruefen()
    If $ready And Not $done Then
    Funktion3()
    $done = True
    Else
    $done = False
    EndIf
    EndFunc

    [/autoit]

    So sieht das Grundgerüst aus. Da du keinen Code preis gibst, muss du das selber implementieren.
    Müsste von der Überlegung her korrekt sein.

  • DLLCall mit DragQueryFile

    • DeepRed92
    • 15. April 2012 um 16:29

    Guck mal unter http://msdn.microsoft.com/en-us/library/…v=vs.85%29.aspx bei Parameters. ;)


    Edit: Zum nachschlagen einfach shell32.dll + die zugehörige Funktion bei Google eingeben. Dann kommen meistens Seiten von Microsoft. So mache ich das zumindest.

  • Ordnernamen auslesen und in Listbox ausgeben

    • DeepRed92
    • 15. April 2012 um 16:22

    Ja, es geht. Bei Dateien und Ordner. Ob das ein Ordner ist oder nicht kannst du ganz einfach mit

    [autoit]

    FileGetAttrib

    [/autoit]

    feststellen.
    [ gelöst ] Prüfen, ob Verzeichnis oder Datei

  • Ordnernamen auslesen und in Listbox ausgeben

    • DeepRed92
    • 15. April 2012 um 16:15

    Schau dir mal die Funktionen

    [autoit]

    FileFindFirstFile

    [/autoit]

    und

    [autoit]

    FileFindNextFile

    [/autoit]

    an. Vielleicht auch

    [autoit]

    _FileListToArray

    [/autoit]

    oder _FileListToArrayEx.

  • DriveGetSerial Problem

    • DeepRed92
    • 15. April 2012 um 15:51

    Jop, das ist richtig. D84098A2 ist gleich 3628112034. Also stimmt mit der C++ Funktion anscheinend was nicht. Vielleicht ist es auch ein anderes Format.

    Edit: Warum benutzt du nicht einfach das hier: http://msdn.microsoft.com/en-us/library/…28VS.85%29.aspx

  • DriveGetSerial Problem

    • DeepRed92
    • 15. April 2012 um 15:41

    Was sagt den CMD? Gib mal bei CMD "dir C:" ein und guck mal was da zurück gegeben wird.

  • DriveGetSerial Problem

    • DeepRed92
    • 15. April 2012 um 15:32

    Was bekommst du denn bei AutoIt und C++ zurück? Bei AutoIt eine Zahl und Bei C++ sowas wie C9E7-46D5, richtig?
    Müssten in Grunde genommen die selben Werte sein. Sind nur in anderen Zahlensystemen. Müsstest du dann umwandeln

  • MsgBox auf englisch

    • DeepRed92
    • 15. April 2012 um 07:17

    Habe gerade durch Zufall das hier gefunden:

    http://www.autoitscript.com/forum/topic/81…737#entry587737

    Wäre genau das, was du suchst. Ist halt schon eine fertige UDF :P


    So sieht das dann aus:

    Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist.

    Bilder

    • CutomMsgBox.png
      • 10,83 kB
      • 371 × 179
  • RTSP - Stream empfangen und abspeichern

    • DeepRed92
    • 15. April 2012 um 07:01

    Okay, das hat mir weitergeholfen. Tatsächlich ist es so, dass ich die Daten vom Server deswegen nur Stückweise hatte. Jetzt sollte das mit TCPRecv gehen. Jetzt habe ich es geschafft, DESCRIBE, SETUP1 und SETUP2 richtig aufzurufen. Problem ist jetzt nur noch PLAY.

    Habe das Script komplett überarbeitet und es sieht schon fast wie eine richtige UDF aus. Allerdings benutze ich dafür AutoItObject.

    Also damit man nicht sofort alles runterladen muss, poste ich erstmal, was ich vom Server bekomme:

    DESCRIBE
    Code
    RTSP/1.0 200 OK
    Content-Type: application/sdp
    Vary: Accept
    X-Playlist-Gen-Id: 941781
    X-Broadcast-Id: 180402
    Content-Length: 7952
    Date: Sun, 15 Apr 2012 04:49:13 GMT
    CSeq: 1
    Server: WMServer/9.5.6001.18223
    Supported: com.microsoft.wm.srvppair, com.microsoft.wm.sswitch, com.microsoft.wm.eosmsg, com.microsoft.wm.fastcache, com.microsoft.wm.packetpairssrc, com.microsoft.wm.startupprofile
    Last-Modified: Sat, 30 Dec 1899 00:00:00 GMT
    Cache-Control: x-wms-event-subscription="remote-log", x-wms-stream-type="broadcast", no-cache, no-user-cache, private
    
    
    v=0
    o=- 201204100810480144 201204100810480144 IN IP4 127.0.0.1
    s=1LIVE
    c=IN IP4 0.0.0.0
    b=AS:65
    a=maxps:2762
    t=0 0
    a=control:rtsp://a1979.l12278653874.c122786.e.lm.akamaistream.net/Akamai_Live_53874/
    a=etag:{0F039747-7F88-36AA-BDD8-8DE9EB850B4F}
    a=range:npt=10.000-10.000
    a=type:broadcast
    a=recvonly
    a=pgmpu:data:application/x-wms-contentdesc,8,language,31,0,,44,WMS_CONTENT_DESCRIPTION_SERVER_BRANDING_INFO,31,12,WMServer/9.5,9,copyright,31,31,© Westdeutscher Rundfunk Köln,6,author,31,31,© Westdeutscher Rundfunk Köln,5,title,31,5,1LIVE,51,WMS_CONTENT_DESCRIPTION_PLAYLIST_ENTRY_START_OFFSET,3,5,10000,47,WMS_CONTENT_DESCRIPTION_PLAYLIST_ENTRY_DURATION,3,1,0,58,WMS_CONTENT_DESCRIPTION_COPIED_METADATA_FROM_PLAYLIST_FILE,3,1,1,42,WMS_CONTENT_DESCRIPTION_PLAYLIST_ENTRY_URL,31,39,53874&akcp=122786&akserial=1979&fp=v001
    
    
    a=pgmpu:data:application/vnd.ms.wms-hdr.asfv1;base64,MCaydY5mzxGm2QCqAGLObL8TAAAAAAAABwAAAAECMyaydY5mzxGm2QCqAGLObKYAAAAAAAAADAA8ADwAAAAAADEATABJAFYARQAAAKkAIABXAGUAcwB0AGQAZQB1AHQAcwBjAGgAZQByACAAUgB1AG4AZABmAHUAbgBrACAASwD2AGwAbgAAAKkAIABXAGUAcwB0AGQAZQB1AHQAcwBjAGgAZQByACAAUgB1AG4AZABmAHUAbgBrACAASwD2AGwAbgAAAM51+HuNRtERjYIAYJfJorIgAAAAAAAAAAEAAQCt/AAAodyrjEepzxGO5ADADCBTZWgAAAAAAAAAsv0SZRRE90WEeqX/JJNFDvETAAAAAAAAsMPjd/AWzQH/////AAAAAAAAAAAAAAAAAAAAAAAAAAAQJwAAAAAAAAkAAADKCgAAygoAAK38AAC1A79fLqnPEY7jAMAMIFNlqxAAAAAAAAAR0tOruqnPEY7mAMAMIFNlBgB9EAAAqUZDfODv/EuyKTk+3kFchSEAAAAAAAAAAQAGZABlAAAAy6XmFHLGMkODmalpUgZbWlgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAj6AAAQJwAAAAAAAAj6AAAQJwAAAAAAAKsKAAAAAAAAAQAAAAAAAAAAAAAAAAAAAF2L8SaERexHn18OZR8EUskaAAAAAAAAAAIB6sv4xa9bd0iEZ6qMRPpMynoAAAAAAAAAAgAAAAEADAACAAIAAABJAHMAVgBCAFIAAAAAAAAAAQA0AAAABgAAAEQAZQB2AGkAYwBlAEMAbwBuAGYAbwByAG0AYQBuAGMAZQBUAGUAbQBwAGwAYQB0AGUAAABMADIAAAB01AYY38oJRaS6mqvLlqrocA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkQfct7epzxGO5gDADCBTZXIAAAAAAAAAQJ5p+E1bzxGo/QCAX1xEK1DNw7+PYc8Ri7IAqgC04iAAAAAAAAAAABwAAAAIAAAAAQAAYs5sYQECAIC7AABBHwAAqwoQAAoAAIgAAA8AAAAAAAGrCqsKAQAAQKTQ0gfj0hGX8ACgyV6oUKgAAAAAAAAAAwAcAFcATQBGAFMARABLAFYAZQByAHMAaQBvAG4AAAAAACAAMQAyAC4AMAAuADcANgAwADEALgAxADcANQAxADQAAAAaAFcATQBGAFMARABLAE4AZQBlAGQAZQBkAAAAAAAWADAALgAwAC4AMAAuADAAMAAwADAAAAAMAEkAcwBWAEIAUgAAAAIABAAAAAAAQFLRhh0x0BGjpACgyQNI9q4AAAAAAAAAQVLRhh0x0BGjpACgyQNI9gEAAAACABgAVwBpAG4AZABvAHcAcwAgAE0AZQBkAGkAYQAgAEEAdQBkAGkAbwAgADkALgAyAAAAJAAgADYANAAgAGsAYgBwAHMALAAgADQAOAAgAGsASAB6ACwAIABzAHQAZQByAGUAbwAgADEALQBwAGEAcwBzACAAQwBCAFIAAAACAGEBNiaydY5mzxGm2QCqAGLObDIAAAAAAAAAsv0SZRRE90WEeqX/JJNFDgAAAAAAAAAAAQE=
    m=audio 0 RTP/AVP 96
    b=AS:65
    b=X-AV:65
    b=RS:0
    b=RR:0
    a=rtpmap:96 x-asf-pf/1000
    a=control:audio
    a=stream:1
    m=application 0 RTP/AVP 96
    b=RS:0
    b=RR:0
    a=rtpmap:96 x-wms-rtx/1000
    a=control:rtx
    a=stream:65536
    Alles anzeigen
    SETUP1
    Code
    RTSP/1.0 200 OK
    Transport: RTP/AVP/TCP;unicast;server_port=5004-5005;client_port=9000-9000;ssrc=b85c9c9c;mode=PLAY
    Date: Sun, 15 Apr 2012 04:49:13 GMT
    CSeq: 2
    Session: 11911824958435848744;timeout=60
    Server: WMServer/9.5.6001.18223
    Supported: com.microsoft.wm.srvppair, com.microsoft.wm.sswitch, com.microsoft.wm.eosmsg, com.microsoft.wm.fastcache, com.microsoft.wm.packetpairssrc, com.microsoft.wm.startupprofile
    Last-Modified: Sat, 30 Dec 1899 00:00:00 GMT
    Cache-Control: x-wms-event-subscription="remote-log", x-wms-stream-type="broadcast", no-cache, no-user-cache, private
    SETUP2
    Code
    RTSP/1.0 200 OK
    Transport: RTP/AVP/TCP;unicast;server_port=5004-5005;client_port=9000-9000;ssrc=b85c9c9c;mode=PLAY
    Date: Sun, 15 Apr 2012 04:49:13 GMT
    CSeq: 3
    Session: 11911824958435848744;timeout=60
    Server: WMServer/9.5.6001.18223
    Supported: com.microsoft.wm.srvppair, com.microsoft.wm.sswitch, com.microsoft.wm.eosmsg, com.microsoft.wm.fastcache, com.microsoft.wm.packetpairssrc, com.microsoft.wm.startupprofile
    Last-Modified: Sat, 30 Dec 1899 00:00:00 GMT
    Cache-Control: x-wms-event-subscription="remote-log", x-wms-stream-type="broadcast", no-cache, no-user-cache, private
    PLAY
    Code
    RTSP/1.0 500 Internal Server Error
    Date: Sun, 15 Apr 2012 04:49:14 GMT
    CSeq: 4
    Session: 11911824958435848744;timeout=60
    Server: WMServer/9.5.6001.18223
    Supported: com.microsoft.wm.srvppair, com.microsoft.wm.sswitch, com.microsoft.wm.eosmsg, com.microsoft.wm.fastcache, com.microsoft.wm.packetpairssrc, com.microsoft.wm.startupprofile

    Habe 2x SETUP benutzt, da das hier (http://folk.uio.no/meccano/reflector/smallclient.html) auch gemacht wurde.

    Und hier die Scripte:

    main.au3
    [autoit]

    #include <class/rtsp.au3>
    #include <string.au3>

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Local $rtsp = _New_RTSP()

    [/autoit] [autoit][/autoit] [autoit]

    $rtsp.setServer('rtsp://a1979.l12278653874.c122786.e.lm.akamaistream.net/D/1979/122786/v0001/reflector:53874')
    $rtsp.connect()

    [/autoit] [autoit][/autoit] [autoit]

    $rtsp.requestDESCRIBE()
    $sRecvData = $rtsp.recvData()
    $rtsp.setData($sRecvData, 'DESCRIBE')

    [/autoit] [autoit][/autoit] [autoit]

    _Debug('DESCRIBE', $sRecvData) ;Schreibt auf, was vom Server wiedergegeben wurde!

    [/autoit] [autoit][/autoit] [autoit]

    $rtsp.requestSETUP1()
    $sRecvData = $rtsp.recvData()
    $rtsp.setData($sRecvData, 'SETUP1')

    [/autoit] [autoit][/autoit] [autoit]

    _Debug('SETUP1', $sRecvData) ;Schreibt auf, was vom Server wiedergegeben wurde!

    [/autoit] [autoit][/autoit] [autoit]

    $rtsp.requestSETUP2()
    $sRecvData = $rtsp.recvData()
    $rtsp.setData($sRecvData, 'SETUP2')

    [/autoit] [autoit][/autoit] [autoit]

    _Debug('SETUP2', $sRecvData) ;Schreibt auf, was vom Server wiedergegeben wurde!

    [/autoit] [autoit][/autoit] [autoit]

    $rtsp.requestPLAY()
    $sRecvData = $rtsp.recvData()
    $rtsp.setData($sRecvData, 'PLAY')

    [/autoit] [autoit][/autoit] [autoit]

    _Debug('PLAY', $sRecvData) ;Schreibt auf, was vom Server wiedergegeben wurde!

    [/autoit] [autoit][/autoit] [autoit]

    ;Ok, INTERNAL SERVER ERROR. Dann neue Verbindung??
    MsgBox(0, 'SERVER ERROR???', $sRecvData)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    #region Versuch2
    $con = TCPConnect($rtsp.serverIp, 9000)
    Local $sPacket = 'PLAY ' & $rtsp.getSETUPurl() & ' RTSP/1.0' & @CRLF & _
    'CSeq: 4' & @CRLF & _
    'Session: ' & $rtsp.getSession() & @CRLF & @CRLF
    TCPSend($con, $sPacket)
    $sRecvData = $rtsp.recvData()

    [/autoit] [autoit][/autoit] [autoit]

    MsgBox(0, 'GAR NICHTS!?', $sRecvData)
    #endregion Versuch 2

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Func _Debug($sName, $sData)
    Local $sPath = @ScriptDir & '\' & $sName & '.txt'
    FileDelete($sPath)
    FileWrite($sPath, $sData)
    EndFunc

    [/autoit]
    rtsp.au3
    [autoit]

    #include <AutoItObject\AutoItObject.au3>

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    _AutoItObject_Startup()

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Func _New_RTSP()
    Local $oRTSP = _AutoItObject_Create()
    _AutoItObject_AddProperty($oRTSP, 'server')
    _AutoItObject_AddProperty($oRTSP, 'serverPort')
    _AutoItObject_AddProperty($oRTSP, 'serverIp')
    _AutoItObject_AddProperty($oRTSP, 'socket')
    _AutoItObject_AddProperty($oRTSP, 'dataDESCRIBE')
    _AutoItObject_AddProperty($oRTSP, 'dataSETUP1')
    _AutoItObject_AddProperty($oRTSP, 'dataSETUP2')
    _AutoItObject_AddProperty($oRTSP, 'dataPLAY')

    [/autoit] [autoit][/autoit] [autoit]

    _AutoItObject_AddMethod($oRTSP, 'setServer', '_rtspSetServer')
    _AutoItObject_AddMethod($oRTSP, 'getServer', '_rtspGetServer')
    _AutoItObject_AddMethod($oRTSP, 'connect', '_rtspConnect')
    _AutoItObject_AddMethod($oRTSP, 'requestDESCRIBE', '_rtspRequestDESCRIBE')
    _AutoItObject_AddMethod($oRTSP, 'requestSETUP1', '_rtspRequestSETUP1')
    _AutoItObject_AddMethod($oRTSP, 'requestSETUP2', '_rtspRequestSETUP2')
    _AutoItObject_AddMethod($oRTSP, 'requestPLAY', '_rtspRequestPLAY')
    _AutoItObject_AddMethod($oRTSP, 'getHostName', '_rtspGetHostName')
    _AutoItObject_AddMethod($oRTSP, 'recvData', '_rtspRecvData')
    _AutoItObject_AddMethod($oRTSP, 'getSETUPurl', '_rtspGetSETUPurl')
    _AutoItObject_AddMethod($oRTSP, 'getSession', '_rtspGETSession')
    _AutoItObject_AddMethod($oRTSP, 'setData', '_rtspSetData')

    [/autoit] [autoit][/autoit] [autoit]

    Return $oRTSP
    EndFunc ;==>_New_RTSP

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Func _rtspGETSession($oSelf)
    Local $sData = _StringBetween($oSelf.dataSETUP1, 'Session:', ';')
    If IsArray($sData) Then Return StringStripWS($sData[0], 8)
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _rtspSetData($oSelf, $sData, $sType)
    Switch $sType
    Case 'DESCRIBE'
    $oSelf.dataDESCRIBE = $sData
    Case 'SETUP1'
    $oSelf.dataSETUP1 = $sData
    Case 'SETUP2'
    $oSelf.dataSETUP2 = $sData
    Case 'PLAY'
    $oSelf.dataPLAY = $sData
    EndSwitch
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _rtspSetServer($oSelf, $sServer)
    $oSelf.server = $sServer
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _rtspGetServer($oSelf)
    Return $oSelf.server
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _rtspConnect($oSelf)
    TCPStartup()
    $oSelf.serverIp = TCPNameToIP($oSelf.getHostName())
    $oSelf.socket = TCPConnect($oSelf.serverIp, 554)
    Return $oSelf.socket
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _rtspRecvData($oSelf)
    Local $sRecv, $sData, $sN
    While 1
    $sRecv = TCPRecv($oSelf.socket, 2048)
    $sData &= $sRecv
    If $sRecv = '' Then $sN += 1
    If $sN > 10 Then ExitLoop
    Sleep(1)
    WEnd
    Return $sData
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _rtspRequestDESCRIBE($oSelf)
    Local $sPacket = 'DESCRIBE ' & $oSelf.server & ' RTSP/1.0' & @CRLF & _
    'CSeq: 1' & @CRLF & @CRLF
    TCPSend($oSelf.socket, $sPacket)
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _rtspRequestSETUP1($oSelf)
    Local $sPacket = 'SETUP ' & $oSelf.getSETUPurl() & 'rtx RTSP/1.0' & @CRLF & _
    'CSeq: 2' & @CRLF & _
    'Transport: RTP/AVP/TCP;unicast;client_port=9000-9001' & @CRLF & @CRLF
    TCPSend($oSelf.socket, $sPacket)
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _rtspRequestSETUP2($oSelf)
    Local $sPacket = 'SETUP ' & $oSelf.getSETUPurl() & 'rtx RTSP/1.0' & @CRLF & _
    'CSeq: 3' & @CRLF & _
    'Session: ' & $oSelf.getSession() & @CRLF & _
    'Transport: RTP/AVP/TCP;unicast;client_port=9000-9001' & @CRLF & @CRLF
    TCPSend($oSelf.socket, $sPacket)
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _rtspRequestPLAY($oSelf)
    Local $sPacket = 'PLAY ' & $oSelf.getSETUPurl() & ' RTSP/1.0' & @CRLF & _
    'CSeq: 4' & @CRLF & _
    'Session: ' & $oSelf.getSession() & @CRLF & @CRLF
    TCPSend($oSelf.socket, $sPacket)
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _rtspGetSETUPurl($oSelf)
    Local $sData = _StringBetween($oSelf.dataDESCRIBE, 'control:', @LF)
    If UBound($sData) > 0 Then Return StringStripWS($sData[1], 8)
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _rtspGetHostName($oSelf)
    Local $sTmp1, $sTmp2
    If StringLeft($oSelf.server, 7) == 'rtsp://' Then $sTmp1 = StringTrimLeft($oSelf.server, 7)
    If StringInStr($sTmp1, '/') Then
    $sTmp2 = StringSplit($sTmp1, '/')
    $sTmp1 = $sTmp2[1]
    EndIf
    Return $sTmp1
    EndFunc

    [/autoit]

    Eigentlich müsste das doch gehen. Hab das einmal ohne eine neue Verbindung versucht => geht nicht. Mit einer neuen Verbindung und auf Port 9000, wie mit dem Server "ausgehandelt" => immer noch nicht ..

    Die Fehlermeldung lautet beim ersten "INTERNAL SERVER ERROR" und beim zweiten kommt nichts an. :wacko:

    Dateien

    RTSP.zip 125,38 kB – 576 Downloads
  • RTSP - Stream empfangen und abspeichern

    • DeepRed92
    • 15. April 2012 um 00:52

    Guten Abend,

    ich versuche momentan in AutoIt eine kleine RTSP (Real Time Streaming Protocol) UDF zu erstellen, da sowas anscheinend nicht existiert. Momentan bin ich soweit, dass ich mit einem RTSP-Server etwas kommunizieren kann, aber ich verstehe nicht wirklich, wie ich an den Stream komme.
    Scripte + Dateien die ich vom Server bekomme sind im Anhang vorzufinden.

    Mein 1. Script. Ist zwar sehr einfach gehalten, müsste aber so funktionieren.

    Spoiler anzeigen
    [autoit]

    #include <String.au3>

    [/autoit] [autoit][/autoit] [autoit]

    TCPStartup()

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    $sock = TCPConnect(TCPNameToIP('a1979.l12278653874.c122786.e.lm.akamaistream.net'), 554)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    ;#####################################################///DESCRIBE

    [/autoit] [autoit][/autoit] [autoit]

    $packet = 'DESCRIBE rtsp://a1979.l12278653874.c122786.e.lm.akamaistream.net/D/1979/122786/v0001/reflector:53874 RTSP/1.0' & @CRLF & _
    'CSeq: 1' & @CRLF & @CRLF

    [/autoit] [autoit][/autoit] [autoit]

    TCPSend($sock, $packet)
    _lausche(1)

    [/autoit] [autoit][/autoit] [autoit]

    ;#####################################################///SETUP

    [/autoit] [autoit][/autoit] [autoit]

    $packet = 'SETUP rtsp://a1979.l12278653874.c122786.e.lm.akamaistream.net/Akamai_Live_53874/rtx RTSP/1.0' & @CRLF & _
    'CSeq: 2' & @CRLF & _
    'Transport: RTP/AVP/TCP;unicast;interleaved=0-1;ssrc=a33b5252;mode=PLAY' & @CRLF & @CRLF

    [/autoit] [autoit][/autoit] [autoit]

    TCPSend($sock, $packet)
    _lausche(2)

    [/autoit] [autoit][/autoit] [autoit]

    ;#####################################################///PLAY

    [/autoit] [autoit][/autoit] [autoit]

    $packet = 'PLAY rtsp://a1979.l12278653874.c122786.e.lm.akamaistream.net/Akamai_Live_53874 RTSP/1.0' & @CRLF & _
    'CSeq: 3' & @CRLF & _
    'Range: npt=5-20' & @CRLF & @CRLF

    [/autoit] [autoit][/autoit] [autoit]

    TCPSend($sock, $packet)
    _lausche(3)

    [/autoit] [autoit][/autoit] [autoit]

    Local $session = _readSession(@ScriptDir & "\tmp3.txt") ;Session aus TXT-Datei auslesen

    [/autoit] [autoit][/autoit] [autoit]

    ;#####################################################///TEARDOWN => Session Not Found

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    $packet = 'TEARDOWN rtsp://a1979.l12278653874.c122786.e.lm.akamaistream.net/Akamai_Live_53874 RTSP/1.0' & @CRLF & _
    'CSeq: 4' & @CRLF & _
    'Session: ' & $session & @CRLF & @CRLF

    [/autoit] [autoit][/autoit] [autoit]

    TCPSend($sock, $packet)
    _lausche(4)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    ConsoleWrite($session & @CRLF)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    ;Liest nur die Session aus.
    Func _readSession($sPath)
    Local $sFile = FileRead($sPath)
    Local $sStr = _StringBetween($sFile, 'Session:', ';')
    Return StringStripWS($sStr[0], 8)
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    ;Lauscht dem Server
    Func _lausche($nnn)
    Do
    $rec = TCPRecv($sock, 1024)
    Until $rec <> ""
    Local $x = ''
    While 1
    $x = TCPRecv($sock, 1024)

    [/autoit] [autoit][/autoit] [autoit]

    $rec &= $x
    If $x = "" Then ExitLoop
    WEnd
    FileWrite(FileOpen("tmp" & $nnn & ".txt", 2), $rec)
    EndFunc ;==>_lausche

    [/autoit]

    Auf diesen Seiten wird das einigermaßen erklärt, wie das funktioniert.
    http://en.wikipedia.org/wiki/Real_Time_Streaming_Protocol
    https://autoit.de/www.csee.umbc.…urose-ross.html

    Hier mal die Daten, die der Server mir liefert:

    1. Schritt
    Code
    RTSP/1.0 200 OK
    Content-Type: application/sdp
    Vary: Accept
    X-Playlist-Gen-Id: 914017
    X-Broadcast-Id: 176629
    Content-Length: 7952
    Date: Sat, 14 Apr 2012 22:42:55 GMT
    CSeq: 1
    Server: WMServer/9.5.6001.18223
    Supported: com.microsoft.wm.srvppair, com.microsoft.wm.sswitch, com.microsoft.wm.eosmsg, com.microsoft.wm.fastcache, com.microsoft.wm.packetpairssrc, com.microsoft.wm.startupprofile
    Last-Modified: Sat, 30 Dec 1899 00:00:00 GMT
    Cache-Control: x-wms-event-subscription="remote-log", x-wms-stream-type="broadcast", no-cache, no-user-cache, private
    
    
    v=0
    o=- 201204100810480144 201204100810480144 IN IP4 127.0.0.1
    s=1LIVE
    c=IN IP4 0.0.0.0
    b=AS:65
    a=maxps:2762
    t=0 0
    a=control:rtsp://a1979.l12278653874.c122786.e.lm.akamaistream.net/Akamai_Live_53874/
    a=etag:{0F039747-7F88-36AA-BDD8-8DE9EB850B4F}
    a=range:npt=10.000-10.000
    a=type:broadcast
    a=recvonly
    a=pgmpu:data:application/x-wms-contentdesc,8,language,31,0,,44,WMS_CONTENT_DESCRIPTION_SERVER_BRANDING_INFO,31,12,WMServer/9.5,9,copyright,31,31,© Westdeutscher Rundfunk Köln,6,author,31,31,© Westdeutscher Rundfunk Köln,5,title,31,5,1LIVE,51,WMS_CONTENT_DESCRIPTION_PLAYLIST_ENTRY_START_OFFSET,3,5,10000,47,WMS_CONTENT_DESCRIPTION_PLAYLIST_ENTRY_DURATION,3,1,0,58,WMS_CONTENT_DESCRIPTION_COPIED_METADATA_FROM_PLAYLIST_FILE,3,1,1,42,WMS_CONTENT_DESCRIPTION_PLAYLIST_ENTRY_URL,31,39,53874&akcp=122786&akserial=1979&fp=v001
    
    
    a=pgmpu:data:application/vnd.ms.wms-hdr.asfv1;base64,MCaydY5mzxGm2QCqAGLObL8TAAAAAAAABwAAAAECMyaydY5mzxGm2QCqAGLObKYAAAAAAAAADAA8ADwAAAAAADEATABJAFYARQAAAKkAIABXAGUAcwB0AGQAZQB1AHQAcwBjAGgAZQByACAAUgB1AG4AZABmAHUAbgBrACAASwD2AGwAbgAAAKkAIABXAGUAcwB0AGQAZQB1AHQAcwBjAGgAZQByACAAUgB1AG4AZABmAHUAbgBrACAASwD2AGwAbgAAAM51+HuNRtERjYIAYJfJorIgAAAAAAAAAAEAAQCt/AAAodyrjEepzxGO5ADADCBTZWgAAAAAAAAAsv0SZRRE90WEeqX/JJNFDvETAAAAAAAAsMPjd/AWzQH/////AAAAAAAAAAAAAAAAAAAAAAAAAAAQJwAAAAAAAAkAAADKCgAAygoAAK38AAC1A79fLqnPEY7jAMAMIFNlqxAAAAAAAAAR0tOruqnPEY7mAMAMIFNlBgB9EAAAqUZDfODv/EuyKTk+3kFchSEAAAAAAAAAAQAGZABlAAAAy6XmFHLGMkODmalpUgZbWlgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAj6AAAQJwAAAAAAAAj6AAAQJwAAAAAAAKsKAAAAAAAAAQAAAAAAAAAAAAAAAAAAAF2L8SaERexHn18OZR8EUskaAAAAAAAAAAIB6sv4xa9bd0iEZ6qMRPpMynoAAAAAAAAAAgAAAAEADAACAAIAAABJAHMAVgBCAFIAAAAAAAAAAQA0AAAABgAAAEQAZQB2AGkAYwBlAEMAbwBuAGYAbwByAG0AYQBuAGMAZQBUAGUAbQBwAGwAYQB0AGUAAABMADIAAAB01AYY38oJRaS6mqvLlqrocA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
    Alles anzeigen
    2. Schritt
    Code
    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkQfct7epzxGO5gDADCBTZXIAAAAAAAAAQJ5p+E1bzxGo/QCAX1xEK1DNw7+PYc8Ri7IAqgC04iAAAAAAAAAAABwAAAAIAAAAAQAAYs5sYQECAIC7AABBHwAAqwoQAAoAAIgAAA8AAAAAAAGrCqsKAQAAQKTQ0gfj0hGX8ACgyV6oUKgAAAAAAAAAAwAcAFcATQBGAFMARABLAFYAZQByAHMAaQBvAG4AAAAAACAAMQAyAC4AMAAuADcANgAwADEALgAxADcANQAxADQAAAAaAFcATQBGAFMARABLAE4AZQBlAGQAZQBkAAAAAAAWADAALgAwAC4AMAAuADAAMAAwADAAAAAMAEkAcwBWAEIAUgAAAAIABAAAAAAAQFLRhh0x0BGjpACgyQNI9q4AAAAAAAAAQVLRhh0x0BGjpACgyQNI9gEAAAACABgAVwBpAG4AZABvAHcAcwAgAE0AZQBkAGkAYQAgAEEAdQBkAGkAbwAgADkALgAyAAAAJAAgADYANAAgAGsAYgBwAHMALAAgADQAOAAgAGsASAB6ACwAIABzAHQAZQByAGUAbwAgADEALQBwAGEAcwBzACAAQwBCAFIAAAACAGEBNiaydY5mzxGm2QCqAGLObDIAAAAAAAAAsv0SZRRE90WEeqX/JJNFDgAAAAAAAAAAAQE=
    m=audio 0 RTP/AVP 96
    b=AS:65
    b=X-AV:65
    b=RS:0
    b=RR:0
    a=rtpmap:96 x-asf-pf/1000
    a=control:audio
    a=stream:1
    m=application 0 RTP/AVP 96
    b=RS:0
    b=RR:0
    a=rtpmap:96 x-wms-rtx/1000
    a=control:rtx
    a=stream:65536
    Alles anzeigen
    3. Schritt
    Code
    RTSP/1.0 200 OK
    Transport: RTP/AVP/TCP;unicast;interleaved=0-1;ssrc=a1dab41b;mode=PLAY
    Date: Sat, 14 Apr 2012 22:42:55 GMT
    CSeq: 2
    Session: 13484517198031398105;timeout=60
    Server: WMServer/9.5.6001.18223
    Supported: com.microsoft.wm.srvppair, com.microsoft.wm.sswitch, com.microsoft.wm.eosmsg, com.microsoft.wm.fastcache, com.microsoft.wm.packetpairssrc, com.microsoft.wm.startupprofile
    Last-Modified: Sat, 30 Dec 1899 00:00:00 GMT
    Cache-Control: x-wms-event-subscription="remote-log", x-wms-stream-type="broadcast", no-cache, no-user-cache, private
    4. Schritt
    Code
    RTSP/1.0 454 Session Not Found
    Date: Sat, 14 Apr 2012 22:42:55 GMT
    CSeq: 3
    Session: 13484517198031398105;timeout=60
    Server: WMServer/9.5.6001.18223
    Supported: com.microsoft.wm.srvppair, com.microsoft.wm.sswitch, com.microsoft.wm.eosmsg, com.microsoft.wm.fastcache, com.microsoft.wm.packetpairssrc, com.microsoft.wm.startupprofile

    Was ich nicht verstehe ist, warum der bei Schritt 4 mir "RTSP/1.0 454 Session Not Found" liefert.. ?(
    Theoretisch gesehen, müsste das so funktionieren:

    Spoiler anzeigen
    Code
    C: SETUP movie.Mjpeg RTSP/1.0
    C: CSeq: 1
    C: Transport: RTP/UDP; client_port= 25000
    
    
    S: RTSP/1.0 200 OK
    S: CSeq: 1
    S: Session: 123456
    
    
    C: PLAY movie.Mjpeg RTSP/1.0
    C: CSeq: 2
    C: Session: 123456
    
    
    S: RTSP/1.0 200 OK
    S: CSeq: 2
    S: Session: 123456
    
    
    C: PAUSE movie.Mjpeg RTSP/1.0
    C: CSeq: 3
    C: Session: 123456
    
    
    S: RTSP/1.0 200 OK
    S: CSeq: 3
    S: Session: 123456
    
    
    C: PLAY movie.Mjpeg RTSP/1.0
    C: CSeq: 4
    C: Session: 123456
    
    
    S: RTSP/1.0 200 OK
    S: CSeq: 4
    S: Session: 123456
    
    
    C: TEARDOWN movie.Mjpeg RTSP/1.0
    C: CSeq: 5
    C: Session: 123456
    
    
    S: RTSP/1.0 200 OK
    S: CSeq: 5
    S: Session: 123456
    Alles anzeigen

    Wenn man an den Server Play sendet müsste er doch normalerweise den Stream Packetweise senden. Warum macht der das nicht, wenn ich schon einen PLAY-Request sende?

    Ist zwar sehr kompliziert, aber vielleicht hat jemand schon damit Erfahrungen gemacht und kann mir helfen. Für Tipps oder Hinweise bin ich ebenfalls dankbar.
    Hoffentlich wird das mit der UDF nicht allzu kompliziert *gg*

    Dateien

    RTSP Hilfe.zip 9,76 kB – 616 Downloads
  • FTP Upload funktioniert nicht

    • DeepRed92
    • 21. Januar 2012 um 17:11

    Ich würde spontan sagen: Das liegt bestimmt daran, dass die Datei "test.zip" in einem Ordner gespeichert werden muss.

    [autoit]

    _FTP_ProgressUpload($connect, 'C:\test.zip', 'www\test.zip')

    [/autoit]

    Webspace von vielen Anbietern haben einen übergeordneten Verzeichnis wie "www" order "ww2".

  • Zahlensystem Umrechner

    • DeepRed92
    • 4. Januar 2012 um 03:12

    Hi, ist dir ja ganz gut gelungen. Ist ganz übersichtlich. Ich bin mir nicht sicher, aber Basen ab 16 sind glaub ich nicht mehr möglich. 2-16 schon, aber was alles >16 ist, ist ungenau und lässt sich nicht zurück umwandeln. Kann aber sein, dass ich mich irre..

    Ich hatte sowas auch mal vor langer langer Zeit gemacht :D

    Zahlensystem Umrechner!

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™