View previous topic :: View next topic |
Author |
Message |
Dimsok
Joined: 17 Aug 2014 Posts: 663
|
(Separately) Posted: Sun Aug 04, 2019 01:40 Post subject: |
|
|
Правильно могут быть переименованы 2 субтитра - название фильма.rus.srt/sub/ass/ssa, название фильма.eng.srt/sub/ass/ssa. Если они существуют, то ничего не делать.
Не понимаю, что значит вперемешку. Переименовываться ведь по одному файлу за раз будет. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Sun Aug 04, 2019 08:16 Post subject: |
|
|
Какая разница, за сколько раз?
В папке 5 файлов:
1. Name.sub
2. Name.rus.srt
3. Name.rus.ass
4. Name.eng.ssa
5. Name.mp4
Под курсором первый файл. Следуя твоей логике, eng добавлять нельзя, т.к. остальные имеют только 2 rus вместо 3-х, но и rus нельзя, т.к. уже есть srt с такой добавкой. Вот тебе и гремучая смесь. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
Dimsok
Joined: 17 Aug 2014 Posts: 663
|
(Separately) Posted: Mon Aug 05, 2019 03:02 Post subject: |
|
|
Я же пишу, что в таком случае ничего не делать (если уже имеются 2 (или 3) и 4). |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon Aug 05, 2019 13:57 Post subject: |
|
|
Quote: | Хотя бы один из трёх. | Так это ответ был? Я подумал, что это повторение моих слов (аля цитата). Т.е. я правильно понимаю, что игнорировать в случае, когда есть любая из 6-ти комбинаций eng/rus? "2 (или 3) и 4" — это уже не то же самое, и ты об этом нигде не писал. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
Dimsok
Joined: 17 Aug 2014 Posts: 663
|
(Separately) Posted: Tue Aug 06, 2019 02:11 Post subject: |
|
|
Quote: | Хотя бы один из трёх. |
Я думал, это было достаточно ясно. Ну посуди, зачем мне 2 (и тем более 3) разных типа субтитров для одного языка. Это же не марки или монеты. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Tue Aug 06, 2019 02:20 Post subject: |
|
|
Ты мне на 2-й вопрос ответишь, ядрён батон? )
Зачем/не зачем — скрипту без разницы. Нужно отшить ложные срабатывания. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
Dimsok
Joined: 17 Aug 2014 Posts: 663
|
(Separately) Posted: Tue Aug 06, 2019 02:38 Post subject: |
|
|
Если есть любая из 4-х комбинаций rus (srt,sub,ass,ssa), именовать в eng того расширения, которое имеет выделенный файл субтитра. Если и eng имеет уже любую из 4-х комбинаций, то ничего не делать. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Tue Aug 06, 2019 03:52 Post subject: |
|
|
Тестируй: Code: | '============================ VBS =============================
' Переименование базового имени субтитра под курсором в базовое
' имя одиночного видеофайла и подходящее языковое расширение
' Параметры: %V <маска расширений видео>
' Пример: %V *.avi;*.mkv;*.mp4
'==============================================================
Option Explicit: Dim Items, F, BN, Ext, sExt, Exts, E
With CreateObject("Scripting.FileSystemObject")
F = WSH.Arguments(0)
If .FileExists(F) Then
Set Items = CreateObject("Shell.Application")._
NameSpace(.GetParentFolderName(F)).Items
Items.Filter 8256, WSH.Arguments(1)
If Items.Count <> 1 Then WSH.Quit
BN = .GetBaseName(Items.Item(0).Path)
Ext = .GetExtensionName(F) : Set Items = Nothing
If InStr("|srt|sub|ass|ssa|", "|" & LCase(Ext) & "|") Then
If InStr("|.eng|.rus|", "|" & Right(LCase(BN), 4) & "|") = 0 Then
sExt = ".rus." : Exts = "srt sub ssa ass"
For Each E in Split(Exts)
If .FileExists(BN & sExt & E) Then sExt = ".eng." : Exit For
Next
If sExt = ".eng." Then
For Each E in Split(Exts)
If .FileExists(BN & sExt & E) Then WSH.Quit
Next
End If
.GetFile(F).Name = BN & sExt & Ext
End If
End If
End If
End With |
_________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Last edited by Flasher on Tue Aug 06, 2019 04:54; edited 6 times in total |
|
Back to top |
|
|
Dimsok
Joined: 17 Aug 2014 Posts: 663
|
(Separately) Posted: Tue Aug 06, 2019 04:01 Post subject: |
|
|
Строка 22
Символ 76
Предполагается наличие ')' |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Tue Aug 06, 2019 04:07 Post subject: |
|
|
Исправил. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
Dimsok
Joined: 17 Aug 2014 Posts: 663
|
(Separately) Posted: Tue Aug 06, 2019 04:16 Post subject: |
|
|
Имя субтитра не меняется, только добавляется языковая метка.
11.srt в 11.rus.srt, хотя имя видео другое совсем. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Tue Aug 06, 2019 04:24 Post subject: |
|
|
Мда. Не заглянул в первый код. См. сейчас. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
Dimsok
Joined: 17 Aug 2014 Posts: 663
|
(Separately) Posted: Tue Aug 06, 2019 04:29 Post subject: |
|
|
Работает как и в первом варианте. При наличии файл.avi и файл.rus.srt выделенному субтитру sub даётся тот же язык - файл.rus.sub (а надо eng). |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Tue Aug 06, 2019 04:41 Post subject: |
|
|
Обновил. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
Dimsok
Joined: 17 Aug 2014 Posts: 663
|
(Separately) Posted: Tue Aug 06, 2019 04:49 Post subject: |
|
|
На том же примере, если файл.rus.sub srt, то:
Строка 30
Символ 8
Файл уже существует. |
|
Back to top |
|
|
|