← All posts tagged видео

OCTAGRAM
стерео avconv mathcad видео При помощи avconv разделил avi на один wav и кучу bmp, загнал в MathCAD, там нетривиально обработал, получил другую кучу bmp, склеил avconv обратно.

Вообще, задумка была в том, чтобы смоделировать подлинную поддержку стерео в операционной системе или хотя бы телевизоре/ТВ-приставке. Я хотел заснять скринкаст, как я меняю размеры окна плеера, и там подставить отмасштабированную стереокартинку, как оно должно быть при той поддержке, как я хочу. А как я хочу — это чтобы инвариантом были точки на горизонте, а не на поверхности, как это обычно делается (по моему мнению, неправильно) в тех стерео 3D плеерах, что я видел. А если можно это делать, то в UI гипотетического телевизора можно показывать в ряд корректно уменьшенные каналы.

Также в стерео 3D можно физически корректно вращать картинку вокруг горизонтальной оси. И это тоже можно применить в UI, сделав Coverflow, как в iTunes, но вертикальный. Ещё подумал на тему некоторых физически некорректных операциях, которые, тем не менее, могут быть корректны в стерео. Coverflow-то по-хорошему горизонтальный! И места по горизонтали больше. Может быть, вместо честного поворота по горизонтали, который для стерео невозможен, сделать такое подобие «поворота», чтобы по горизонтали пиксели нелинейно сжимались/разжимались, а по вертикали оставались нетронутыми, а потом обрезать лишнее и вписать в рамку. Насколько это будет выглядеть естественно? Может быть достаточно, чтобы реализовать в реальном ТВ.

В качестве сырья выбрал Duke Nukem 3D, только не в режиме анаглиф, а в режиме Crystal Eyes VR. Пожалел потом об этом. Вообще, хотелось записать Дюка в цветном стерео 3D, для зрелищности, но геморроя получилось прилично. В анаглифе Duke Nukem 3D кадры по сути в 16 градациях серого, но зато они синхронны, а в Crystal Eyes VR они чередуются. Захватывал DOSBox'ом, он захватил в 61fps всяких разных кадров, но из них много бракованных, когда одна половина кадра отрисована, а другая — нет. И сами кадры для левого и правого глаз меняются по очереди где-то с частотой 21 кадр в секунду (то есть, 10fps в одном ракурсе), при этом то один, то другой отстаёт от другого, и смотреть на отдельные кадры тяжело, они не сходятся, но в движении получается ещё терпимо. Пока больше всего времени потратил именно на преобразование кривых 61fps в нормальные 24fps так, чтобы отслеживать не изменившиеся кадры, браковать плохие, и из оставшихся хороших делать по возможности когерентное видео. До поворотов дело так и не дошло.
OCTAGRAM
парсинг cdn видео PlayWire оказался каким–то замороченным по сравнению с другими хостингами. URL у них неочевидные. Для тех, кто тоже парсит сайты с видео, вдруг пригодится. Mне сейчас известны 3 вида JSON URL'ов:
zeus.json, online
player.json, online
config.json, online

Причём, первые два — на config.playwire.com, а третий — на cdn.playwire.com, а я, читая не выполняющуюся часть кода JavaScript, пытался налепить на первый домен.
В своей работе я нашёл наиболее полезным zeus.json, в нём наибольшее количество желаемой информации: и длина, и постер, и ссылка на manifest.f4m. Я поначалу этот f4m проигнорировал, мол, а зачем мне HDS, если я знаю, как делать ссылки вида cdn.phoenix.intergi.com . Напрасно. Во–первых, узнал, что manifest.f4m — не обязательно HDS, а может быть и сборник прямых ссылок на mp4. Большинство последних видео сейчас всё же залиты по моему шаблону, так что заказчик был доволен, заплатил, но процентов 15% видео криво спарсились из–за того, что я не смотрел в f4m. Некоторые видео залиты под другим адресом, пример выше как раз такой. Если посмотреть в config.playwire.com можно сконструировать URL вида cdn.playwire.com , и этот URL работает. У большинства видео, впрочем, f4m такой: config.playwire.com , здесь есть 2 формата видео, для мобилок и обычный, и адрес у обоих по шаблону.
Некоторый интерес может представлять config.json, там дан rtmp адрес, вдруг кому–то это именно то, что нужно.
Нулевой или отсутствующий duration — видимо, бывает, как раз у видео старого образца. Видео может быть нормальным, но вот длина неизвестна, если, конечно, сайт с видео не предоставил её каким–то другим образом.
Постеров, на самом, деле, похоже, может быть 10. Если URL постера выглядит так: cdn.phoenix.intergi.com , то последнюю цифру можно менять от 0 до 9 или ставить по рандому. Про другие URL постеров не скажу, но ситуация может быть похожая. Очень может быть, что всё отличается от клиента к клиенту.