Торренты   
 
 


Готовый выходной 3Д формат в видео. Попеременная пара.

Тема начиналась как информативный топик о 3Д форматах, но потом переросла в интересное обсуждение как заложить в видео физически или с помощью скрипта кадровую секвенцию (пейдж-флип или попеременную пару). Пока удалось сделать два вывода:
1) Файл в готовой попеременной паре (пейдж-флип) воспроизведенный в Стереоскопик плеере снижает загрузку системы при таком же весе, размере, разрешении, битрейде как стереопара с теми же характеристиками.
2) Если сделать видео пейдж-флип с большим числом к/с (через скрипт не трогая исходник стереопару, дело пары секунд), то его можно смотреть любым обычным плеером (без стереодров и стереофильтров трансформации) напрямую в затворных очках. Это работает, проверено.
Возможно будет полезно обладателям МАКов, так как стереоплееров под них нет, вот не в курсе а AviSynth под МАК есть? Или тем у кого стереоплеер не фурычит или старые очки и нет стереодров под них.
Комментарии:

Пред.  1, 2, 3, 4, 5, 6, 7, 8, 9  След.






Ребят, есть прогресс! Причем очень нелогичный. Даже не заморачивался с скриптом чтоб сделать семпл пейдж-флип. Взял готовый (ссылка выше) тупо в Виртуал Дабе изменил 50к/с на 100к/с, соответственно размер не вырос кол-во кадров тоже но время воспроизведения сократилось вдвое, ну хрен с ним суть в проверки синхронизации с очками. И что самое удивительное, проигрывая этот файл в МедиаКлассик в затворных очках всё синхронно и стабильно идет причем правильно и синхронно на разных частотах 100,85,75,60Гц развертки монитора, на 120Гц не синхрон. Как такое может быть? Частота видео 100Гц а синхрон с очками на любой частоте ниже100Гц??? И вторая аномалия, то же видео с 50к/с в Дабе тупо в 85к/с чтоб проверить 85Гц, и вот именно на 85Гц не синхронно, вернее периоды в 1сек правильный/вывернутый объем, зато на частотах 75,60Гц всё синхронно и правильно??? Получается что синхронно буден на любой более низкой частоте чем к/с в видео, или просто надо кратно 2 от первоисточника к/с увеличивать?
Что кто скажет, объяснит процесс синхрона 100к/с с 100,85,75,70,60Гц напрямую без стереодров и софт пейдж-флип (без стереоплеера вообше) и рассинхрон 85к/с с 85Гц, а синхрон с 75,70,60Гц?
 

Привет, Zagruzin! Сорри, что я потерялся :-)
Попробуйте следующий скрипт:
Код:
DirectShowSource("Имя файла.mkv")
ChangeFPS(60)
Поменяет частоту кадров на 60к/с, думаю понятно где изменять частоту кадров на другие значения для проверки. Скрипт можно открывать сразу плеером и смотреть в реал тайм.
Я правильно понимаю, что вы смотрите в затворных очках (типа Стелл), которые снимают вертикальн. синхроимпульсы сразу с выхода видеокарты? Или всё-таки через 2 проектора с поляризаторами, которые подключены по схеме расширенного рабочего стола по горизонтали? Во втором случае проще выводить через стереоскопик, выбрав метод просмотра "Горизонтальная стереопара".
 

Кстати, открывая скрипт с разными частотами кадров в MPC Home Cinema, и нажимая "Ctrl+J" видна информация частот, на входе, на выходе и задержек в ms. Получается эти задержки в ms и являются управляющими временем отображения кадра подстраеваемые под частоту обновления экрана - короче от этих значений всё пляшет (я так думаю, но не факт):
 

Я правильно понимаю, что вы смотрите в затворных очках (типа Стелл), которые снимают вертикальн. синхроимпульсы сразу с выхода видеокарты?
В точку, контроллер по V-синх с выхода. Вот потому и проблемы с стереодровами и невозможность 3ДБД исо смотреть, так как ни в Повер ни в Тотал нет программ пейдж-флип, а Н-видиа дрова сами знаете как с поддержкой железа, ОС и сторонних очков, альтернативные тоже не интересуют, так как не играю в 3Д. И ещё проблема, что во всех версиях Стереоскопика выше 1.2.1 (пробовал все версии 1.5.х и 1.6.х) не работает программный пейдж-флип, выводит моно ракурс Ф7 меняет на другой моно ракурс, хз почему, все что можно пошаманил, в 1.2.1 всё идет.
Или всё-таки через 2 проектора с поляризаторами, которые подключены по схеме расширенного рабочего стола по горизонтали?
Ну если бы так, то вообще зачем нужен этот гребанный нестабильный пейдж-флиппинг, можно было сразу стереопару смотреть обычным плеером или в любом стереоплеере "дуал скрин аутпут" и 100% надежность расположения ракурсов.
Попробуйте следующий скрипт:
Просто изменить к/с не достаточно, скорость проигрывания вырастит или дубликаты будут подряд 1Л-1Лдубль,1П.., надо хитро, через кадр дублировать, например 1лев дублируется после 1 прав, затем 1прав, после 2лев, а ещё лучше чтоб исходник не трогался а всё это дублирование через скрипт или данные в контейнере.
И ещё есть ли объяснение что 100к/с одинаково синхронно с 100,85,75,70,60Гц??? а 85к/с не синхронно с 85Гц:) а на нижних синхронно?
 

Так там в стереоскопике при выборе Метода просмотра "Программный pageflipping" становится активным "Glasses control":
Это разве не выбор просмотра под определённые очки?
Ну если бы так, то вообще зачем нужен этот гребанный нестабильный пейдж-флиппинг, можно было сразу стереопару смотреть обычным плеером или в любом стереоплеере "дуал скрин аутпут" и 100% надежность расположения ракурсов.
Повторяю - он вовсе не нестабильный, а точно такой же как и вертик. горизонтальн. пары, т.е. стабильный. Вот ваш ролик при выводе просмотра перекрёстной парой косоглазием смотреть спокойно можно:
 

Так там в стереоскопике при выборе Метода просмотра "Программный pageflipping" становится активным "Glasses control":
Я же говорю что шаманил везде и это тоже и галочку синхрон с видеокартой, но если плеер не выводит на экран попеременно то и синхронизация не поможет, моно он как в окне Скопика так и в очках, синхронно но моно:) Сам плеер должен при переключении в софт пейдж-флип в полноэкранном размере мерцать ракурсами а у меня он одним ракурсом мерцает, ну один ракурс выводит как 2Д плеер. Может кроме типа очков должно быть сочетание галочки ещё чего-то, синхр с картой или не использовать Директ Х?
И потом СТЕЛ не ЕД, контроллер у них лучше и немного другой, и Блю линия у них ещё есть но у меня она не установлена (системный файлик, ставил как-то разницы не заметил нафига она нужна, если только в дисках от СТЕЛ она прописана в видео, потому у них и пережатка ДВД).
В 1.2.1 таких настроек вообще нет, и всё прекрасно по умолчанию работает на любой частоте. Может в новых версиях особое требование к железу (может минимальная модель карты от 9900 к примеру), ОС и её битности или совместимости с очками ввели, может минимальный пейдж от 120Гц, хотя и на 120 тоже не пашет. Ещё один человек, продвинутый 3Д-шник задавал на Реалли такой вопрос, та же ситуация, не пашет и всё на всех новых версиях, и я уже раз 100, так до сих пор ни кто и не ответил. На всякий случай ХР 64бит, квадро, 4Гб оперативы, ЖФ 9500.
Повторяю - он вовсе не нестабильный, а точно такой же как и вертик. горизонтальн. пары, т.е. стабильный.
Для плеера он стабильный, а вместе с разверткой монитора он дает сбои, небольшая заминка, глюк, тормоз, пауза, сворачивание окна и ракурсы уже в очках шиворот навыворот.
А понял что что ты имеешь ввиду, что пейдж-файл и стереопара одинаково надежна и слеты ракурсов и там и сям будут одинаковые из-за пейдж вывода, именно вывод ненадежный, я это хотел сказать, так как он не аппаратный и ракурсы без маркеров, комп не знает где правый а где левый ракурс. Такого нет во всех технологиях (так как там такого вывода как пейджинг нет как класс) кроме затворного, хоть один пример слета ракурсов в анаглифе или поляризации или двухпроекторном Долби, это всё равно что у вас фото стереопары само по себе поменяется ракурсами, это и в ФШ не так просто сделать, а чтоб само...:). А в затворном он повсеместный, в кинотеатрах глюки бывают, в ТВ смотрел в М-видео много моделей, очень много мини глюков с переменой ракурсов или сбоя частоты, но автоматом на место возвращает так как аппаратное стерео, а вот софт пейдж не возвращает в правильное положение ракурсы.
 

Может дело в ХР?
Zagruzin, есть одна нестандартная идейка. Вы ведь давно уже занимаетесь изучением 3Д технологий просмотра разных форматов. Я только с начала сентября нынешнего года стал вникать немного в это 3Д (а всё началось с покупки 3Д Вижен очков и монитора Асер, т.е. сначала приобрёл - потом изучать :-)) Я к чему - вы, наверное многих знаете стереофилов-стереоманов (нужное подчеркнуть:-)), и может хорошо знаете Alexpk, так он не только 3Д блурик хакнул, но также сделал эмулятор 3Д вижен трансмиттера (пирамидки). Если есть с ним контакт, то помоему все проблемы легко решатся, только, наверное нужен будет Windows7 (они напару с kostasoft уже многое сделали). Тут на форуме также где-то мелькала инфа, что можно использовать нвидиавские очки с другими затворными очками.
 

Вопрос с новым готовым форматом актуален не только для старой аппаратуры и очков, но и например думаю в будущем популярные наборы 3Д проектора с ДЛП-линк и набором очков Х-панд с ДЛП-линк (или масса подобных от производителей проекторов) которые и качественнее и дешевле 3Д вижн и трансмиттер не нужен. Как на этом наборе смотреть с компа? Синхрон очков только с проектором, а откуда сигнал на вход проектора надежный подавать? Сейчас есть два варианта, оба плохие:) 1) Либо через Стереоскопик через софт пейдж-флип, но никто не застрахован от слета ракурсов и беготни до клавы к кнопке F7 и игры тогда вообще отпадают. А ещё может Скопик как у меня не работать в софт. 2) Либо докупать дополнительно один набор 3Д-вижн очков (из-за пирамидки) только для того чтоб активировать более надежный пейджинг в стереодровах Н-видиа. Ну и 3) альтернативные дрова в которых пейджинг как несовершенная опция, тоже не вариант.
И кстати в моем семпле 100к/с всё равно с периодами в несколько минут ракурсы слетают, видать сказывается накопление ошибок не ровного числа кадров 99,8ххх или плавающей с копейками развертки карты/моника.
 

Вот, кстати, скрипт набросал:
Код:
v=DirectShowSource("Avatar.PageFlip.mkv")
L=SelectEven(v).ChangeFPS(30).ConvertToYUY2()
R=SelectOdd(v).ChangeFPS(30).ConvertToYUY2()
Interleave (L, R)
 

Да, Костя, Алекс, Кирилл бы в 5сек вопрос решили либо положительно, либо отрицательно за не рациональностью или невозможностью. У Кости есть свой форум, можно написать, или на Реалли темку поднять (там ей место а не здесь), но по пустякам дергать не хочется, у меня так, спортивный интерес, понял что работает, но опять не сильно стабильно, чтоб дальше вникнуть и усовершенствовать, не хватает знаний. И в скрип не въехал, на входе пейджинг, потом в 30к/с каждый ракурс, потом опять в пейджинг с 60к/с? А допустим есть два раздельных с 30к/с надо сделать попеременку в 120к/с, пишем в скрипте Лев - изменить 60фпс, Прав то же самое, потом интерлив? Что-то мне кажется вся эта затея ненадежная, к/с с копейками, частота тоже немного плавает, жестко не совместятся, будут накапливаться погрешности, да и от тормозов и сбоев слетит.
Конечно программная эмуляция 3Д-вижн хорошо, чтоб дрова заставить работать, но опять некоторым не подходит, ОС и карта не та:) Но хороший выход для ДЛП-линк проекторов и очков.
 

Zagruzin
А через какой плеер вы смотрите гориз. вертик. пары, если стереоскопик так у вас тупит?
 

Новые версии не работают, вернее абсолютно всё работает прекрасно, кроме самой нужной функции программный пейдж:), а стоит Стереоскопик 1.2.1 там всё работает и кстати всё что есть здесь открывает. Но мне новая нужна чтоб ещё и фото смотреть, старая не умеет. Евгений раньше писал что надо новые версии Стереоскопика ставить чтоб МКВ смотреть например, что в старых не пойдет, ни чего подобного всё читает древняя версия. Можно ещё смотреть КостаСофт плеером, там тоже есть софт пейдж-флип и он даже в оконном режиме работает.
 

Так тогда всё просто!
Открывайте файлы PageFlip при помощи такого скрипта:
Код:
v=DirectShowSource("Avatar.PageFlip.mkv").ConvertToYUY2
L=SelectEven(v)
R=SelectOdd(v)
StackHorizontal (L, R)
В скопике выберете как горизонтальную пару и всё. В реал тайме смотреть сможете. :-))
 

:) у меня нет пейдж файлов, и Стереоскопиком могу все форматы открыть. Всё наоборот, открываем стереопару скриптом с удвоенными через раз кадрами в пейджинге через обычный плеер и смотрим. Теоретически просто интересно заложить в файл или через скрипт фильтр трансформации в пейджинг с нужной частотой, или физически составить такую секвенцию к/с чтоб сразу с очками работала, запустил диск через деку и смотри сразу в затворных на ТВ. Короче смысл убрать стереоплеер из этой цепочки, как анаглиф - готовый 3Д формат в файле, одел очки и смотри на чем угодно, так же и с секвенцией, включил файл чем угодно и на чем угодно и смотри в затворных, в интерлейсе такое же есть, если монитор чересстрочный как Залман или Панас ТВ поляризационный, так и интерлейс видео напрямую в стерео идет, а для затворного надо готовый пейджинг с "тактом" под конкретные очки.
Одно получилось у тебя точно - пейдж файлы экономят ресурсы, так как меньше трансформаций чем из стереопары, стереопару надо в отдельные файлы представить и слить в попеременку, продублировать кадры а готовая попеременка идет на выход без преобразований (кроме как дублирования кадров). Второе что с этим не связано, заложить в файл работу стереоскопика чтоб смотреть обычным плеером заранее трансформированное видео.
 

Прежде всего непойму почему вы используете везде ChangeFPS ? Ведь он меняет частоту удалением или дублированием кадров, т.е. из вашей цепочки LRLRLRLRLR c fps скажем 29,970 в 100 может получиться цепочка LLLRRLLLRRLLLRRLLLRRLLLRR - отсюда будет рассинхрон
если вам надо 100(120) Гц синхронизированного пейджфлипа - то прежде всего вам надо добиться частоты L,R источников 23.976-25 (29.970) , затем удвоить количество кадров в каждом из источников (возможно здесь можно применить changeFPS 2* 23.976-25 (29.970) ), сделать интерлив и догнать поток до нужной частоты с помощью AssumeFPS
Завтра попробую на ED контроллере + ЭЛТ потом отпишусь что вышло - а то мне самому не нравиться работа Software Pageflip в стереоскопике - постоянно срывы - приходится в чересстрочку переходить (благо у ED она есть)
Кстати говоря, если открыть интерлейс стерео в обычном плеере и включить контроллер в интерлейс режим то синхронизация очень хорошая и без срывов - и без всяких стереоскопик плееров
 

Понял очередность действий, не делать из исходников попеременку с удвоенным к/с а потом разгонять до нужной, а сначала разгонять отдельные ракурсы а потом в попеременку сливать, тогда не будет LLLRRLLL. Проблема в кратной 2 к/с оригинала к Гц очков, если кратности нет, то не понятно как наращивать к/с на кривое число. Например как уложить в 120Гц исходник с 24 к/с, 30к/с как раз ложится, но вот эти 29,97 хвостики смущают, похоже из-за них через несколько минут ракурс меняется потом опять через этот же период восстанавливается, так сказать стабильное накопление ошибок или погрешностей:) или плавающие к/с и развертка с хвостиками и плавающая.
из вашей цепочки LRLRLRLRLR c fps скажем 29,970 в 100
Нет, в цепочку уже 48 ели исходник 24 или 50к/с если 25, или 60 если 30.
 

так для этого и нужен AssumeFPS (sync_audio=true) - именно он догонит частоту скажем с 29.970*4 = 119.88 до 120 не трогая количества и порядка кадров. Вот в ChangeFPS нужно пользоваться дробями:
ChangeFPS(48000,1001) для 23.976 источника
ChangeFPS(60000,1001) для 29.970 источника
иначе он наломает дров с количеством кадров
для 24.000 и 25.000 можно попробовать ChangeFPS(48) и ChangeFPS(50)
Короче скрипт для 23.976 примерно такой:
L=L.ChangeFPS(48000,1001)
R=R.ChangeFPS(48000,1001)
out=Interleave(L,R)
out=out.AssumeFPS(100, 1, true)
return(out)
 

Если при применении
ChangeFPS(48000,1001) для 23.976 источника
ChangeFPS(60000,1001) для 29.970 источника
будут проблемы стоит попробовать вместо этого
ChangeFPS(5994,125) для 23.976 источника
ChangeFPS(5994,100) для 29.970 источника
С 24.000 и 25.000 не должно быть проблем
ChangeFPS(24,1) для 24.000 источника
ChangeFPS(25,1) для 25.000 источника
 

Вот, отлично. Надо попробовать. Вот только давно скриптом не пользовался, да и не сильно шарю. Если можно чуть поподробнее с самого начала полный скрип, опен видео через директ стрим копи и т.д. чтоб я только путь к файлам указал. Возьму с мыльниц 1280х720р два исходника в н264 .mp4 29,97к/с
И ещё вопрос, этот скрипт только для конвертации в новый файл, кстати с пережатием или без в директ стрим копи, и можно через скрип просто открыть и смотреть на лету, не трогая исходники, например в папке два раздельных с 30к/с или скачанная от сюда стереопара 24к/с?
30к/с хорошо в 120 ложится под общий стандарт 120Гц в затворном. С 24 хуже в 120 или не принципиально если не делится к/с или с копейками?
Ещё такая хрень, человек писал что 3Д-вижн с стереодровами работает стабильно без слетов а параллельно включенные СТЕЛ очки по V-синх всё равно иногда (5 раз за фильм слетают):) Может у меня не софт пейдж флип в плеере слетает, а сами очки не надежно по V-синх синхронизируются и тогда даже готовый файл с идеальным пейджингом тоже может слетать из-за V-синх.
Т.е. проблема как смотреть на комплекте проектор + ДЛП -линк очки остается актуальной пока нет эмуля 3Д-вижн или нужно докупать Н-видиа очки чтоб дрова активизировать, так как софт пейдж Стереоскопика не вариант.
 

Zagruzin, привет!
Так вы ни один скрипт не пробовали, которые я писал? :(
У себя проверял через такой скрипт в стереоскопик плеере и 3д вижен на своём почти 6-ти минутном отрывке аватара (частота на выходе 60к/с):
Код:
v=DirectShowSource("Avatar.PageFlip.mkv").ConvertToYUY2
L=SelectEven(v).ChangeFPS(30)
R=SelectOdd(v).ChangeFPS(30)
Interleave (L, R)
Ни какого рассинхрона кадров нет!
может получиться цепочка LLLRRLLLRRLLLRRLLLRRLLLRR - отсюда будет рассинхрон
С чего взяли, что будет так?
"ChangeFPS - изменяет частоту кадров удалением или копированием кадров."©правка
Если увеличиваем частоту, то я так понимаю, что кадры будут только добавляться (дублироваться), поэтому просмотр такого видео идёт немного с запинками (не плавно), но слётов ракурсов - нет.
Вобщем теория - теорией, а на практике, всё же проверять тоже стОит.
 

Страница 2 из 9

Пред.  1, 2, 3, 4, 5, 6, 7, 8, 9  След.