Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Single Post  Topic: Avisynth 
Author Message
Flasher



PostPosted: Mon Dec 19, 2016 21:56    Post subject: Reply with quote

Code:
'========================================== VBS =========================================
' Добавление/замена сверху содержимого AVS-скрипта команд(ы) фильтра с путём к видеофайлу
' Параметры: "<путь к avs>" "<путь к видео>" <команда фильтра>
' Пример: %V %T%M AviSource
'========================================================================================
With WSH.Arguments
  If .Count <> 3 Then MsgBox "Укажите 3 параметра!", 4144, " Правка (создание) AVS" : WSH.Quit
  AVS = .Item(0) : Video = .Item(1) : Pref = .Item(2)
End With : Str = Pref & "(""" & Video & """)"
Exs = "|asf|avi|divx|flv|mkv|mov|mp4|mpg|ts|"
With CreateObject("Scripting.FileSystemObject")
  If .FileExists(Video) And InStr(Exs, "|" & LCase(.GetExtensionName(Video) & "|")) Then
    If .FileExists(AVS) And LCase(.GetExtensionName(AVS)) = "avs" Then
      If .GetFile(AVS).Size <> 0 Then
        With .OpenTextFile(AVS)
          For i = 1 to 3
            Execute "Str" & i & " = .ReadLine" : If .AtEndOfStream Then Exit For
          Next : If Not .AtEndOfStream Then All = .ReadAll End If : .Close
        End With
        With New Regexp
          .IgnoreCase = True : .Pattern = "\w+Source\(.+\)" : L = vbNewLine
          If .Test(Str1) Then
            If Not .Test(Str2) Then Str = Str & L & Str2
            .Pattern = "^AudioDub *\( *V, *A\)$"
            If Not .Test(Str3) Then Str = Str & L & Str3
          End If
        End With : If Not IsEmpty(All) And InStr(All, L) <> 1 Then All = L & All
      End If :  .OpenTextFile(AVS, 2).Write Str & All
    Else nAVS = .GetParentFolderName(AVS) & "\" & .GetBaseName(Video) & ".avs"
         If Not .FileExists(nAVS) Then .CreateTextFile(nAVS).Write Str
    End If
  End If
End With

_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.


Last edited by Flasher on Tue Dec 20, 2016 15:57; edited 7 times in total
View user's profile Send private message


Powered by phpBB © 2001, 2005 phpBB Group