Forum Replies Created

  • Sorry. I do not have Premiere CS6 anymore. And therefore can not help You to parse its project. But I think it will be not so easy.

  • Evgeny Malcev

    September 18, 2014 at 8:33 pm in reply to: CS6 and P2 Text Memo

    Dont know about CS6, but Premiere CC understands XMP with P2 files.
    I made a script on autohotkey.
    Just run it, select folder with P2 structure.
    Script will parse it for XML and creates XMP.
    https://pastebin.com/9aPtP6Wq

  • I have updated my AHK script which parses CS6 project file and exports markers to the text file.
    Just modify the first 3 lines with your data.
    https://f1.creativecow.net/file/7205/7205_markerscs6.ahk.zip

  • Version of the AHK script which parses CC project and exports markers to the text file.
    1) Change extension of project file from pproj to zip.
    2) Extract it.
    3) Modify the first 3 lines with your path of extracted project, name of sequence and name of exported txt.
    https://f1.creativecow.net/file/7204/7204_markerscc.ahk.zip

  • My version of the AHK script which parses CS6 project and exports markers to the text file.
    Just modify the first 3 lines with your path of project, name of sequence and name of exported txt.
    https://f1.creativecow.net/file/7180/7180_markerscs6.ahk.zip

  • Just save it as ahk.
    Then modify first 3 lines with your data.
    ProjectFile = C:\fin33.prproj
    SequenceName = sequence 01
    MarkerListFile = E:\1.txt ; will be deleted and recreated after script starts.

    Then start this script and you will get text file with markers.
    https://f1.creativecow.net/file/6233/6233_markers.ahk.zip

  • Evgeny Malcev

    January 26, 2013 at 12:42 pm in reply to: Does Premiere CS5 re-encode DV Video

    Are You sure?
    Where I can get info about it?
    Because, as I know Premiere does not recompress dv video.

  • I have written sxript which read your project file and creates text document with markers.
    ProjectFile = C:\fin33.prproj
    SequenceName = sequence 01
    MarkerListFile = E:\1.txt ; will be deleted and recreated after script starts

    SetBatchLines, -1
    k = 1
    n = 1

    FileRead, Contents, %ProjectFile%
    StringGetPos, out, Contents, <Name>%SequenceName%</Name>
    if out = -1
    {
    msgbox, Sequence with this name does not exist!
    ExitApp
    }

    Loop, read, %ProjectFile%
    {
    if n = 1
    {
    IfNotInString, A_LoopReadLine, <Sequence ObjectUID, continue
    n = 2
    }

    if n = 2
    {
    IfNotInString, A_LoopReadLine, <Second ObjectRef, continue
    Variable := trim(A_LoopReadLine)
    NewVar := RegExReplace(Variable, "\D")
    FrameRateObjectRef := "<VideoTrackGroup ObjectID=""" NewVar """"
    n = 3
    }

    if n = 3
    {
    IfNotInString, A_LoopReadLine, <Name>%SequenceName%</Name>
    {
    IfNotInString, A_LoopReadLine, </Sequence>, continue
    n = 1
    }
    Else
    {
    n = 1
    break
    }
    }
    }

    Loop, read, %ProjectFile%
    {
    if n = 1
    {
    IfNotInString, A_LoopReadLine, %FrameRateObjectRef%, continue
    n = 2
    }

    if n = 2
    {
    IfNotInString, A_LoopReadLine, <FrameRate>, continue
    FrameRate := trim(RegExReplace(A_LoopReadLine, "<FrameRate>(.+)</FrameRate>", "$1"))
    n = 1
    break
    }
    }

    If FrameRate = 10160640000 ; 25fps
    {
    delimeter= :
    i = 0
    fps = 25
    FramesInOneHour = 90000
    FramesInOneMinute = 1500
    }

    If FrameRate = 10594584000 ; 24fps
    {
    delimeter= :
    i = 0
    fps = 24
    FramesInOneHour = 86400
    FramesInOneMinute = 1440
    }

    If FrameRate = 5080320000 ; 50fps
    {
    delimeter= :
    i = 0
    fps = 50
    FramesInOneHour = 180000
    FramesInOneMinute = 3000
    }

    If FrameRate = 8475667200 ; 29.97fps
    {
    delimeter=;
    i = 2
    fps = 30
    FramesInOneHour = 108000
    FramesInOneMinute = 1800
    }

    If FrameRate = 4237833600 ; 59.94fps
    {
    delimeter=;
    i = 4
    fps = 60
    FramesInOneHour = 216000
    FramesInOneMinute = 3600
    }

    Loop, read, %ProjectFile%
    {
    if n = 1
    {
    IfNotInString, A_LoopReadLine, <Sequence ObjectUID, continue
    n = 2
    }

    if n = 2
    {
    IfNotInString, A_LoopReadLine, <Markers ObjectRef, continue
    Variable := trim(A_LoopReadLine)
    NewVar := RegExReplace(Variable, "\D")
    MarkersObjectRef := "<Markers ObjectID=""" NewVar """"
    n = 3
    }

    if n = 3
    {
    IfNotInString, A_LoopReadLine, <Name>%SequenceName%</Name>
    {
    IfNotInString, A_LoopReadLine, </Sequence>, continue
    n = 1
    }
    Else
    {
    n = 0
    break
    }
    }
    }

    Loop, read, %ProjectFile%
    {
    if n = 0
    {
    IfNotInString, A_LoopReadLine, %MarkersObjectRef%, continue
    n = 1
    }

    if n = 1
    {
    IfNotInString, A_LoopReadLine, "a45508e0-3ff7-4d04-90a7-2e0dfff4c910"
    {
    IfNotInString, A_LoopReadLine, </DVDMarkers>, continue
    break
    }
    Else
    {
    a1 := "Marker " k "`n"
    n = 2
    }
    }

    if n = 2
    {
    IfNotInString, A_LoopReadLine, <Comments>, continue
    Comments := trim(RegExReplace(A_LoopReadLine, "<Comments>(.+)</Comments>", "$1"))
    a2 := "Comment: " Comments "`n"
    If Comments = <Comments></Comments>
    a2 =
    n = 3
    }

    if n = 3
    {
    IfNotInString, A_LoopReadLine, <Duration>, continue
    Duration := trim(RegExReplace(A_LoopReadLine, "<Duration>(.+)</Duration>", "$1"))
    framecount := Floor(Duration / FrameRate)
    framecount := framecount + floor(framecount / FramesInOneMinute)*i - floor(framecount / FramesInOneMinute / 10)*i
    TC1 = % floor(framecount/FramesInOneHour)
    TC2 = % floor((framecount - TC1*FramesInOneHour) / FramesInOneMinute)
    TC3 = % floor((framecount - TC1*FramesInOneHour - TC2*FramesInOneMinute) /fps)
    TC4 = % floor(framecount - TC1*FramesInOneHour - TC2*FramesInOneMinute - TC3*fps )
    SetFormat, Float, 02.0
    Loop, 4
    TC%A_Index% += 0.0
    a3 := "Duration: " TC1 delimeter TC2 delimeter TC3 delimeter TC4 "`n"
    n = 4
    }

    if n = 4
    {
    IfNotInString, A_LoopReadLine, <Time>, continue
    Time := trim(RegExReplace(A_LoopReadLine, "<Time>(.+)</Time>", "$1"))
    framecount := Floor(Time / FrameRate)
    framecount := framecount + floor(framecount / FramesInOneMinute)*i - floor(framecount / FramesInOneMinute / 10)*i
    TC1 = % floor(framecount/FramesInOneHour)
    TC2 = % floor((framecount - TC1*FramesInOneHour) / FramesInOneMinute)
    TC3 = % floor((framecount - TC1*FramesInOneHour - TC2*FramesInOneMinute) /fps)
    TC4 = % floor(framecount - TC1*FramesInOneHour - TC2*FramesInOneMinute - TC3*fps )
    SetFormat, Float, 02.0
    Loop, 4
    TC%A_Index% += 0.0
    a4 := "Timecode: " TC1 delimeter TC2 delimeter TC3 delimeter TC4 "`n"
    n = 5
    }

    if n = 5
    {
    IfNotInString, A_LoopReadLine, <ML.Marker.TextName>
    {
    IfNotInString, A_LoopReadLine, <Name>, continue
    Number := trim(RegExReplace(A_LoopReadLine, "<Name>(.+)</Name>", "$1"))
    a6 := "Number: " Number "`n"
    If Number = <Name></Name>
    a6 =
    n = 1
    }
    Else
    {
    TextName := trim(RegExReplace(A_LoopReadLine, "<ML.Marker.TextName>(.+)</ML.Marker.TextName>", "$1"))
    a5 := "TextName: " TextName "`n"
    n = 6
    }
    }

    if n = 6
    {
    IfNotInString, A_LoopReadLine, <Name>, continue
    Number := trim(RegExReplace(A_LoopReadLine, "<Name>(.+)</Name>", "$1"))
    a6 := "Number: " Number "`n"
    If Number = <Name></Name>
    a6 =
    n = 1
    }
    k := k + 1
    MarkerList .= a1 a2 a3 a4 a5 a6 "`n"
    }
    FileDelete, %MarkerListFile%
    FileAppend, % MarkerList, %MarkerListFile%, UTF-8
    Msgbox, Done
    ExitApp

We use anonymous cookies to give you the best experience we can.
Our Privacy policy | GDPR Policy