@Wildberies said in Как уникализировать видео?:
Поделитесь идеями,как можно реализовать возможность уникализации видео через BAS?
ffmpeg
Есть дерево каталогов записанное в файл скриптом. Вот небольшой отрезок этого дерева: 
Задача - удалить все корневые и промежуточные каталоги (отмечены жёлтым) и оставить только конечные каталоги продукции.
Пытаюсь реализовать в цикле по принципу: если последующая строка содержит в себе предыдущую, то удаляем предыдущую. Иными словами, все корневые каталоги являются подстроками у любых вложенных в них каталогов, и напротив, конечный каталог не будет являться подстрокой другого конечного каталога.
Пробую реализовать в коде, но что-то пошло не так:
var list = VAR_LIST
var length = list.length
for (i=0;i<length;i++){
if (i==0){
var second = list[i]
} else {
var first = list[i]
var j = i - 1
var second = list[j]
if(first.indexOf(second) + 1) {
list[j] = '<delete>'
}
}
}
VAR_NEW_LIST = list
Ставлю вместо удаляемых элементов <delete> и при следующем цикле просто перезаписываю всё, что не "<delete>" в новый список. Иначе если удалять сразу, нумерация массива съезжает.
Но этот алгоритм удаляет почему-то и конечные каталоги (хотя не все). Не могу понять, где я допустил ошибку.
@Pragmatik Это существующие каталоги? Или просто строки?
VAR_LIST=VAR_LIST.filter(function(item,i){
if(VAR_LIST.length>i+1){
return VAR_LIST[i+1].indexOf(item)<0
}
return true;
})