@mypallmall

Как автоматизировать создание субтитров, при наличии транскрипта с временем начало каждой фразы? (Lynda.com)?

Ситуация такая.

Есть транскрипт с временем начала каждой фразы. Нужно его синхронизировать с роликами курса.


Пример транскрипта:

00:04 Hello, and welcome to Web Form Design Best Practices.
00:07 Now we're taking a detail dive into what makes web forms tick and even looking
00:11 at a couple of ways to gather information from people without using web forms at all.
00:15 So if you're interested in boosting conversion while delighting your customers,
00:19 this is the course for you.
00:21 At the beginning, we'll quickly look at why web forms matter.
00:24 From commerce, to community to information gathering, web forms play a crucial
00:29 role on the web and the details in web form design can have a really big impact.
00:34 Next, we'll take a look at how we organize web forms;



Текст транскрипта находиться в файле .txt, вопрос как можно максимально упростить и ускорить его преобразование в .srt?


Пример курса с транскриптом на рутрекере Web Form Design Best Practices


Пробовал несколько программ — нечего не вышло.

Может есть какие-то легкие в использовании скрипты?

Курсов великое множество и делать это все в ручную — абсурд.



Еще вопрос, если кто подскажет как ускорить скачивание роликов с Lynda.com, будет совсем хорошо.

Что бы, не качать каждый ролик отдельно, и потом в ручную переименовывать.

А, поставить на закачку курс целиком.


Хотя последнее наверное стоит задать отдельным вопросом.
  • Вопрос задан
  • 3950 просмотров
Решения вопроса 1
ag666
@ag666
У меня есть тулза, которая из файлика вот с таким содержанием (строчки с разделителем между временем и текстом в виде 1 таба — только такие строчки, никакие другие не прокатят):

00:04 Hello, and welcome to Web Form Design Best Practices.
00:07 Now we're taking a detail dive into what makes web forms tick and even looking
00:11 at a couple of ways to gather information from people without using web forms at all.
00:15 So if you're interested in boosting conversion while delighting your customers,
00:19 this is the course for you.
00:21 At the beginning, we'll quickly look at why web forms matter.
00:24 From commerce, to community to information gathering, web forms play a crucial
00:29 role on the web and the details in web form design can have a really big impact.
00:34 Next, we'll take a look at how we organize web forms;


Делает файлик вот с таким содержанием (srt — завершение последней строчки через 5 сек всегда, ну и в случае с длинными паузами — строчка перед паузой — 5 сек длится всегда):

1
00:00:04,000 --> 00:00:07,000
Hello, and welcome to Web Form Design Best Practices.

2
00:00:07,000 --> 00:00:11,000
Now we're taking a detail dive into what makes web forms tick and even looking

3
00:00:11,000 --> 00:00:15,000
at a couple of ways to gather information from people without using web forms at all.

4
00:00:15,000 --> 00:00:19,000
So if you're interested in boosting conversion while delighting your customers,

5
00:00:19,000 --> 00:00:21,000
this is the course for you.

6
00:00:21,000 --> 00:00:24,000
At the beginning, we'll quickly look at why web forms matter.

7
00:00:24,000 --> 00:00:29,000
From commerce, to community to information gathering, web forms play a crucial

8
00:00:29,000 --> 00:00:34,000
role on the web and the details in web form design can have a really big impact.

9
00:00:34,000 --> 00:00:39,000
Next, we'll take a look at how we organize web forms;
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 4
@Eddy_Em
Скриптик можно накатать: считываем первое поле в переменную time, второе — в переменную string (причем нужно запоминать предыдущие значения, т.е. самый первый прогон ничего писать не будет); вместе с этим заводим счетчик N; инкрементируем N, записываем его в файл, далее пишем время начала --> время конца и текст.

Грубо говоря, так:
#!/bin/sh
N=0
time0=""; string0=""
while read time string
do
  if [ "$time0" != "" ]; then
    N=$[N+1]
    echo -e "$N\n$time0 --> $time\n$string0\n" >> sub.srt
  fi
  time0=$time; string0=$string
done < sub.txt
echo -e "$N\n$time0 --> end\n$string0\n" >> sub.srt

останется лишь вручную заменить слово end на время окончания показа последней строки субтитр.
Да, если время придется преобразовывать к другому формату, лучше будет воспользоваться каким-нибудь другим скриптовым языком.
Ответ написан
Комментировать
Eternalko
@Eternalko
> Текст транскрипта находиться в файле .txt, вопрос как можно максимально упростить и ускорить его преобразование в .srt?

alternativeto.net/searchresult.aspx?search=subtitle

Если не помог софт для субтитров, предлагаю использовать эксель ;)
Ну или скрипт написать какой

>Что бы, не качать каждый ролик отдельно, и потом в ручную переименовывать.
1) Download Master
2) В опере в боковой панеле есть вкладка Links. Просто вбейте в поиск что-то типа video/.wmw выделите и правой мышкой Download all
Ответ написан
jj_killer
@jj_killer
Мне кажется, что данных транскрипта недостаточно для построения субтитров так как время указано с точностью до секунды, а не до десятых долей и нету времени окончания фразы. Боюсь, что собранные с этого субтитры могут сильно усложнять восприятие.
Ответ написан
Комментировать
ngreduce
@ngreduce
Чисто теоретически, если вооружиться каким-либо софтом для распознавания речи, то можно дополнить существующую информацию. Но это лишь теория.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы