Некоторые размышления по поводу индексации МПЕГа

Здесь обсуждаются любые продукты компании СофтЛаб-НСК для телевизионного вещания (Форвард Т, Форвард ТС, Форвард Голкипер, Форвард Рефери, Форвард Офис, Форвард Инжест)

Модераторы: ElenVR, Людмила, PR

Ответить
vd
Сообщения: 2311
Зарегистрирован: 05 мар 2003 19:21

Сообщение vd »

> Смысл - сделать работу индексера прозрачной для пользователя, скормил ОнЭйру папку - пошла подготовка...

Я не совсем понимаю в данном случае смысл слов "прозрачной для пользователя". Если индексатор будет сам запускаться в фоновом режиме при "скармливании ОнЭйру папки", где тут "прозрачность"? А если я по ошибке ткнулся не в ту папку, в ней запустилось индексирование - а там, например, 10000 файлов. Через 10 секунд понял, что ошибся, выбрал другую папку, но индексирование в ней не запустится, пока предыдущая папка не будет проиндексирована.

По поводу "мелких" файлов - как программа сама определит, какие файлы "мелкие", а какие - не очень? Как себя вести с "немелкими" файлами? Надеяться на то, что они таки проиндексированы заранее? А почему тогда и "мелкие" заранее не проиндексировать?

По-моему, попытка найти ответы на эти вопросы в конце концов сведется к тому, что все MPEG-файлы нужно складывать в папку (и ее подпапки), которую все время мониторит AutoMPEGIndexer.
Евгений Веревкин
Сообщения: 150
Зарегистрирован: 22 янв 2008 08:51
Откуда: Новокузнецк

Сообщение Евгений Веревкин »

vd писал(а): Я не совсем понимаю в данном случае смысл слов "прозрачной для пользователя".
Здесь я подразумеваю под прозрачностью отсутствие необходимости совершать дополнительные действия, в виде запуска индексера.
vd писал(а): Если индексатор будет сам запускаться в фоновом режиме при "скармливании ОнЭйру папки", где тут "прозрачность"? А если я по ошибке ткнулся не в ту папку, в ней запустилось индексирование - а там, например, 10000 файлов. Через 10 секунд понял, что ошибся, выбрал другую папку, но индексирование в ней не запустится, пока предыдущая папка не будет проиндексирована.
Есть мнение, что это решается кнопочкой "остановить индексирование" в интерфейсе.
vd писал(а): По поводу "мелких" файлов - как программа сама определит, какие файлы "мелкие", а какие - не очень? Как себя вести с "немелкими" файлами? Надеяться на то, что они таки проиндексированы заранее? А почему тогда и "мелкие" заранее не проиндексировать?
"Программа сама" и длительность файла умеет определять, и размер :-) пороговые значения настроить, думаю, тоже не проблема :-)
vd писал(а): По-моему, попытка найти ответы на эти вопросы в конце концов сведется к тому, что все MPEG-файлы нужно складывать в папку (и ее подпапки), которую все время мониторит AutoMPEGIndexer.
Я как бы в предыдущем посте про это упоминал, и еще раз повторюсь - концепция "горячих папок" - это есть хорошо, и у неё вагон плюсов, но это не единственно возможный вариант.

Просто создается впечатление, что "Форвард" постепенно обрастает кучей маленьких дополнительных приложений, реализующих тот или иной дополнительный функционал. Понятно, что написать мелкую утилитку проще и дешевле, чем встраивать этот функционал в основную софтину, но, на мой взгляд, это порочная практика, поскольку чем больше софтинок - тем сильнее путаница...
vd
Сообщения: 2311
Зарегистрирован: 05 мар 2003 19:21

Сообщение vd »

Понятно, что написать мелкую утилитку проще и дешевле, чем встраивать этот функционал в основную софтину, но, на мой взгляд, это порочная практика, поскольку чем больше софтинок - тем сильнее путаница...
Вы смешиваете разные вещи. Да, куча мелких программ - это не всегда хорошо. Но, правда, обычно это не от хорошей жизни - у нас мало людей. И в 99% случаев есть простой выбор: либо будет сделана отдельная программа, либо какая-то функция не будет сделана вообще.

Наличие отдельного индексатора - это необходимость. Без индексирования, сделанного заранее (!), MPEG-файлы в эфир выдать с помощью нашего ПО нельзя. Наличие отдельной программы, про которую нужно помнить, "дисциплинирует" пользователя, вынуждает заранее проиндексировать файлы, чтобы к моменту выдачи в эфир они были уже готовы.

Допустим, функция индексирования встроена в FDOnAir. К моменту выдачи в эфир оказалось, что какой-то MPEG-файл нужно выдавать в эфир прямо сейчас, а он еще не проиндексирован - заранее это сделать забыли. Файл размером 10 гигабайт, индексироваться будет полчаса. Автомат, определяющий "большие" и "мелкие" файлы, отложил индексирование этого файла на задний план. Что предлагаете делать в такой ситуации?

А в последнее время люди все чаще выдают в эфир HD-видео. Объемы HD MPEG-файлов уже десятками гигабайт исчисляются.
Евгений Веревкин
Сообщения: 150
Зарегистрирован: 22 янв 2008 08:51
Откуда: Новокузнецк

Сообщение Евгений Веревкин »

vd писал(а): Допустим, функция индексирования встроена в FDOnAir. К моменту выдачи в эфир оказалось, что какой-то MPEG-файл нужно выдавать в эфир прямо сейчас, а он еще не проиндексирован - заранее это сделать забыли. Файл размером 10 гигабайт, индексироваться будет полчаса. Автомат, определяющий "большие" и "мелкие" файлы, отложил индексирование этого файла на задний план. Что предлагаете делать в такой ситуации?
Ну так 10 гигов в mpeg2 при битрейте 8МБит/с - это два - два с половиной часа видео, это случай эфирного сервера уже, тут действительно горячая папка лучше...

А вот для коротких роликов, типа новостных сюжетов и т.п. - тут может и пригодиться...
vd
Сообщения: 2311
Зарегистрирован: 05 мар 2003 19:21

Сообщение vd »

А в случае HD-видео 10 гигов - это меньше часа.

Я так и не понял: как должна вести себя индексация MPEG-файлов в FDOnAir, когда в него добавляют новую папку? Сразу начинать индексировать все, что в этой папке? Или "мелкие" файлы не индексировать вовсе? Или наоборот, индексировать только "мелкие"? А с "большими" как быть? Ставить в какую-то отдельную очередь? Как должен выглядеть весь процесс в целом? Можете, расписать в деталях, как вы это представляете?
Евгений Веревкин
Сообщения: 150
Зарегистрирован: 22 янв 2008 08:51
Откуда: Новокузнецк

Сообщение Евгений Веревкин »

А скорость индексации HD такая же?

А как вижу - примерно так же, как выглядит ситуация с avi, когда его копируешь по сети в папку, которая есть в интерфейсе:
файл появляется, но помечен красным и надписью "ERROR"
Файл скопировался - сообщение об ошибке пропало, можно работать...
Можно вместо "ERROR" прогрессбар приделать, например...

Для случая, когда форвард выступает в качестве сервера эфира, это может и не нужно, а в случае, когда нужна оперативность - например, в случае, если форвард используется в качестве титровального и видеосервера на прямых эфирах - может быть прикольно. Как минимум, тем, что не нужно переходить в другое окно при необходимости добавить очередной сюжет. И процесс индексации режиссер наблюдает тоже в своем основном рабочем окне.
vd
Сообщения: 2311
Зарегистрирован: 05 мар 2003 19:21

Сообщение vd »

А скорость индексации HD такая же?
Она, в основном, зависит от скорости чтения данных с диска, а не от разрешения видео. При индексации собственно декодирования видео/звуковых данных не производится, только анализируются пакеты данных в файле.
в случае, если форвард используется в качестве титровального и видеосервера на прямых эфирах - может быть прикольно. Как минимум, тем, что не нужно переходить в другое окно при необходимости добавить очередной сюжет
Неужели сюжеты вам приносят за 5 минут до прямого эфира? Или прямо в эфире?
Евгений Веревкин
Сообщения: 150
Зарегистрирован: 22 янв 2008 08:51
Откуда: Новокузнецк

Сообщение Евгений Веревкин »

vd писал(а): Неужели сюжеты вам приносят за 5 минут до прямого эфира? Или прямо в эфире?
Ох, всякое бывает :))))
vd
Сообщения: 2311
Зарегистрирован: 05 мар 2003 19:21

Сообщение vd »

И как вы "боретесь" с необходимостью индексирования таких файлов, которые принесли только что, а их надо в эфир прямо сейчас?
Евгений Веревкин
Сообщения: 150
Зарегистрирован: 22 янв 2008 08:51
Откуда: Новокузнецк

Сообщение Евгений Веревкин »

Да работаем-то мы в DV :-)
vd
Сообщения: 2311
Зарегистрирован: 05 мар 2003 19:21

Сообщение vd »

В чем тогда у вас проблема с MPEG-файлами, если вы ими не пользуетесь?
Евгений Веревкин
Сообщения: 150
Зарегистрирован: 22 янв 2008 08:51
Откуда: Новокузнецк

Сообщение Евгений Веревкин »

vd писал(а):В чем тогда у вас проблема с MPEG-файлами, если вы ими не пользуетесь?
Я там где-то в самом начале писал, что это больше мысль вслух.
vd
Сообщения: 2311
Зарегистрирован: 05 мар 2003 19:21

Сообщение vd »

Предлагаю на будущее исходить из реальных потребностей, а не общих мыслей. Мы бы с радостью реализовали все потенциальные пожелания, но на всё сил не хватает.
Евгений Веревкин
Сообщения: 150
Зарегистрирован: 22 янв 2008 08:51
Откуда: Новокузнецк

Сообщение Евгений Веревкин »

vd писал(а):Предлагаю на будущее исходить из реальных потребностей, а не общих мыслей. Мы бы с радостью реализовали все потенциальные пожелания, но на всё сил не хватает.
Эммм... Сорри, если я неверно сформулировал мысль, но я не требовал запилить эту функцию прямо сейчас :-)

Что же до реальных потребностей - мне почему-то кажется, что хотя бы поразмышлять на тему "куда двигаться дальше в общем" тоже бывает полезно :-)
vd
Сообщения: 2311
Зарегистрирован: 05 мар 2003 19:21

Сообщение vd »

У нас размышлений на будущее года на 3 вперед хватает :-) Людей столько нет :-(

Впрочем, я так и не понял до конца вашу мысль по поводу следующей ситуации. Допустим, мы сделали в FDOnAir встроенную возможность индексации, с настройкой: если файл меньше N мегабайт, то файлы индексировать прямо в FDOnAir. Пусть это N установлено пользователем (вами) в значение 10.

Вам принесли сотню MPEG-файлов разного размера. Какие-то из файлов меньше этих 10 мегабайт, какие-то больше. Вы их копируете с внешнего носителя в какую-то папку. Эту папку добавляете в FDOnAir. Он быстренько проиндексировал часть файлов, которые меньше 10 мегабайт. Дальше возникает вопрос: что делать с остальными "большими" файлами?

Варианты:
- вообще не индексировать (их должен вручную проиндексировать оператор)
- индексировать, но не в первую очередь (хотя, почему?)
- добавлять в очередь индексирования программы AutoMPEGIndexer (не совсем понимаю, чем это отличается от предыдущего варианта)

И что делать в случае, если "мелкие" файлы быстро проиндексировались, а в эфир (внезапно!) нужно выдать именно "большой" файл, который не проиндексирован?

Вот вы говорите, что сами не пользуетесь MPEG-файлами. В то же время, те, кто ими пользуется, попросили нас сделать автоматический индексатор. И вроде как он их полностью устраивает. Вообще говоря, если он заранее правильно настроен на какие-то папки (причем, там можно задать всего одну папку с опцией "индексировать вложенные папки"), он проиндексирует появившиеся файлы в них быстрее, чем FDOnAir - в нем ведь нужно еще папку выбрать, а это тоже какое-то время занимает.

Вы поймите нас правильно: прежде, чем что-то реализовывать, нам нужно на 100% понимать, как это должно работать и использоваться в реальной жизни. Мы не можем позволить себе реализовать что-то абы как, а потом окажется, что либо оно все равно задачу решает не на 100%, либо этим пользоваться вообще неудобно, либо уже имеющийся инструмент (в данном случае - AutoMPEGIndexer) эту задачу решал лучше. Время разработки дорого стоит (во всех смыслах).

Насчет того, что AutoMPEGIndexer - очередная "лишняя" программа. Ну, это как сказать. Она висит себе иконкой в System Tray, никому не мешает, никаких окон сама не показывает, пока ее вручную не откроют. Работает автоматически в фоновом режиме. Чем это так уж плохо? Тем, что ее настройки не вынесены прямо в FDOnAir? Так там и без этого настроек столько, что впору новое окно с закладками заводить.
Ответить