Форматы файлов, которые можно просматривать в приложении "Видеоматериалы"
Формат экрана SONY PS VITA = 960 x 544
Простой профиль MPEG-4 уровня 3, до 320 x 240 точек, AAC
H.264/MPEG-4 AVC Baseline/High/Main Profile Level 3,1, Maximum 720p, AAC
Формат экрана SONY PS VITA = 960 x 544/ Воспроизведение некоторых файлов поддерживаемых форматов или использование некоторых команд в панели управления может быть недоступно.
У некоторых материалов, поставляемых через Интернет и другими способами, есть ограничения на воспроизведение. Для получения дополнительной информации обратитесь по месту приобретения таких материалов.
В разделе (Фотографии) вы можете воспроизводить видеоролики, снятые с помощью приложения (Фотографии).
Как правильно выставить разрешение выходного видео в XviD4PSP 5 для PSVita.
Инструкция в картинках
Ставим всё как на скриншоте ниже
Если исходное видео не с аспектом 16:9, как в моём случае с 1920x1080, желательно придерживаться нескольких правил:
Ставьте высоту равной 544, если у исходника она больше или равна этому значению
Оставляйте её как у исходника, если она меньше - увеличение не даст улучшения в качестве
Когда подбираете ширину, смотрите на значение Ошибка (разница аспектов) - чем оно ближе к 0, тем лучше.
Как избавиться от зелёных полос во время просмотра широкоэкранного видео.
Способ №1 - добавление чёрных полей
Закидываем видео в конвертер
Ставим поля нужной высоты.
В данном случае (544-408)\2=68
Где 544 - высота конечного видео
408 - высота конечного видео без полей
Способ №2 - кроп со сторон
Делается всё там же.
Как просчитать? Так же просто: 544*2,3529-960\2
Да, это лишит нас некоторой информации из видео, но кто парится, когда по ТВ нам показывают фильмы в лучшем случае с аспектом 16:9, а зачастую и 4:3, когда в оригинале они намного шире?
Всё остальное видео приводите к этому аспекту (по ширине или по высоте, как вам хочется).
Математика элементарная: вычисляем аспект исходного видео; привязываем его к любой из сторон Виты 960 или 544; лишнее обрезаем или оставляем большее, либо меньшее, а так же соблюдаем спецификацию.
Ширина поуже, а высота выше разрешения Виты:
768х576 => 768:576=1,333; 544х1,333=725 => 725х544 (728 - первое)
Примечание:
(исправляем на 544 - кратно 8 без остатка) - нужно проверять, чтобы ширина и высота соответствовала спецификации.
Исправление ширины или высоты в отдельности приводит к непременному искажению картинки, то есть сплющиванию/расплющиванию или сжатию/расжатию.
Но небольшая корректировка в несколько пикселей никто не заметит, например подправить высоту с 540 на 544.
Вариант 2 без чёрных полос:
1024х576 => 1024:576=1,777; 544х1,777=967 => 967x544 (первое исправляем на 960 - кратно 16 без остатка)
1136х640 => 1136:640=1,775; 544х1,775=966 => 966x544 (первое 960)
1280х688 => 1280:688=1,860; 544х1,860=1012 => 1012х544 (первое 1008, либо 960 с кропом)
1120х476 => 1120:476=2,353; 544х2,353=1280 => 1280х544 (либо 960 с кропом)
1152х480 => 1152:480=2,400; 544х2,400=1306 => 1306x544 (первое 1296, либо 960 с кропом)
Ширина поуже, а высота выше разрешения Виты:
768х576 => 768:576=1,333; 960:1,333=720 => 960х720 (второе 544 с кропом)
Примечание:
(либо 960 с кропом) - то есть, у вас ширина или высота получается больше разрешения Vita. Кропом обрезается всё лишнее изображение до 960, например по бокам. Получится такой же эффект, как мы смотрим широкоформатные фильмы на телевизоре 4:3 во весь экран или суперширокоформатный на экране 16:9, зрители в принципе не замечают, что фильм, который мы смотрим, на самом деле широкоформатный.
(1280х544) - тут, когда по ширине или по высоте мы привязывает сторону к разрешению Виты, а другая сторона получается больше, тогда есть ещё один плюс, на Vita вы можете выставить формат экрана "На весь экран", тогда картинка сама заполныется полностью по высоте 544, а по ширине делает кроп за вас. Либо вы можете выставить по ширине, тогда картинка не будет обрезанной, а отобразится во всю ширину, но по высоте уменьшится, то есть получим эффект с чёрными полосками из "Варианта 1".
Предустановки (Настройки непосредственно качества).
P.S.: крутить никто не запрещает - не всяко видео влезет в определённый битрейт, посему считаю, что одного пресета в данном случае мало, а битрейт и сами накрутите, когда нужно.
на компе они просматриваются без зеленых полос, и я понял согласно чему, появляются зеленые полосы при просмотре на Вите:
960х544 (2 фильма), 960х540 и 720х308 воспроизводятся без зеленых полос.
960х408, 960х520 и 960х400 (2 фильма) воспроизводятся с зелеными полосками.
Т.е. Вите не нравятся сильно широкие фильмы даже если в них есть черные полосы, что с этим делать??
Если такое происходит, то тут надо понимать ещё одну вещь про чёрные/зелёные полоски:
Есть фильмы, допустим 960х400, обрезанные в чистом виде. То есть, по высоте они на 400, далее девайс сам заполняет пустоты сверху и снизу полосками.
Есть фильмы, допустим "960х400" (в кавычках), которые смотрятся в точности так же, но это на самом деле 960х544! - так же отображается в характеристиках свойств. Но почему-то у них точно такие-же по высоте чёрные полосы при просмотре.
Тут дело в том, что второй фильм по высоте не 400, а все 544, просто чёрные полосы идут в составе фильма, т.е. эти полоски и есть часть фильма, точно так же, как ошейник у собаки или пистолет в руках человека на видео.
Ну думаю поняли, что я хотел сказать.
Поэтому, раз уж пошла такая пляска с зелёной Витой, нельзя допускать пустоты в разрешении. Нужно тогда всегда придерживаться правила, чтобы обязательно фильм был скодирован полностью по ширине и высоте, пусть даже с чёрными полосами.
В настройках, там где Кроп, есть так же функция заполнения пустот чёрным цветом - это как раз и есть то, когда видео не сплющивается, а просто в состав фильма добавляются чёрные полоски, когда по ширине он во всю ширину, а по высоте не хватает аспекта.
Т.е. Вите не нравятся сильно широкие фильмы даже если в них есть черные полосы, что с этим делать??
Как ведут себя фильмы, по моему второму варианту? То есть, фильм привязываешь по максимуму к одной стороне, когда другая остаётся больше, т.е. уходит за пределы разрешения.
Появляются ли зелёные полоски при масштабированни по всей ширине, когда высота становится меньше и должны добавлятся чёртные полоски?
Кстати, тут пришла одна безумная мысль по поводу зелёных полосочек...
Они могут быть чисто зелёными 0х00FF00 - вот так этот цвет выглядет - зелёный по максимуму на 256, остальные цвета на нуле.
Они могут быть просто зелёными 0х008000 - вот так этот цвет выглядет - зелёный на половину на 128, остальные цвета на нуле.
Какой цвет показывает Вита, я не знаю )))
В первом случае - это чистый Хрома-кей, который используется в видеопроизводстве, когда на зелёный фон можно наложить любое другое изображение. Это делается, когда снимают в студии с зелёным полотном сзади, а потом накладывают на фон лазурный берег и получается, что действие происходит на берегу чёрного моря, а не в студии.
Во втором случае просто зелёный цвет, но так же может использоваться в Хромакее при соответствующих корректировках.
Поэтому у меня возникла мысль: "А не специально ли для эффектов Sony сделала эту фичу, чтобы заполнять пустоты зелёным, если разрешение видео меньше. То есть, возможно она это может использовать, чтобы прикреплять к видеороликам, рекламным например, тиллерам, а потом на фон накладывать движущуюся окантовку, рамочку и т.п.?"
ErikPshat, а там не пустоты заполняются, там жирная полоса прямо посередине вылазит =\
Хмм, у меня была ассоциация зелёных полос с чёрными, как я понял из разговоов ранее. Получается вы меня опять сбивали с толку всё это время, говоря про зелёные полосочки "типа вместо чёрных" ))) Вот что значит выражать свои мысли не правильно.
В таком случае, возможно это действительно БАГ, когда слишком широкое видео, по отношению к высоте, накладывает на видео зелёные полосы, как испорченный экран, если я правильно понял.
Да просто тогда не парьте себе мозг, а делайте кроп слишком широкого видео до 16:9, чтобы смотреть на весь экран вообще без чёрных полос. Экран на Вите же не как у меня телевизор 40", поэтому незачем ущерблять экран Виты ещё и чёрными полосками.
Кстати, видео нужно не 16:9, потому что это не формат Виты, ведь это 1,777, а у Виты 1,765.
в общем как правильно сказал COOLERbyPSP, Вита показывает зеленую полоску только при разрешении 960х<544, потому что если ширина будет больше 960, то тогда не важно если высота будет меньше 544, фильмы с разрешением 1040x432, 1120х476, 1152х480 смотрятся отлично
ErikPshat, насчёт того, что "лучше пиксель в пиксель"
Это скрин с PSP 100x, разрешение видео 720х576 (анаморфированное в 1024х576, но PSP этого не понимает). Как ни крути, а иероглифы в 480х272 именно на PSP (на компе ок) будут вести себя несколько...хреново, в силу того, что они красные.
(На белом фоне, наверное, не совсем удачный пример =\. Поищу ещё)
Вот. Запилил наглядное сравение. Но, почему-то при ресайзе из 720x576 на PSP немного режутся края. http://www.check2pic.ru/compare/19048/
Внимательно (невооружённым глазом видно) смотрим на грани красных объектов. И нет, это не артефакты компрессии.
Последний раз редактировалось COOLERbyPSP; 19.06.2012 в 03:48.
Не вижу связи. Вижу только, что при ресайзе битрейт явно подрезали и сравнение 2-ух одинаковых картинок 480х272, только с разными размерами 154 кб и 208 кб - вот и весь секрет.
ErikPshat, да ты упорот) Хоть 4 мегабита подай на 480х272, та же хрень будет. Меньший битрейт разве что убил напрочь шум. Скриншоты в битмапе по 382 килобайта мне не понравились - решил пожать (кстати в png - так что баттхёрт неясен). Не веришь - проверяй сам. PSP у тебя полно)
Могу ссылку на исходник дать, там каких-то 36Мбит\с.
Последний раз редактировалось COOLERbyPSP; 19.06.2012 в 06:31.
Проблема не конкретно в красном. Проблема в насыщеных RGB составляющих цветах. Раньше думал, что с матрицей экрана что-то не то, но нет, в играх же всё нормально. Думаю, сей "эффект" можно увидеть и на ПК, выставив вывод видео через VMR-7 (точно не помню, ковырял давно уже).
А за фото с магической_зелёной_хренью отдельное спасибо).
Тут явно видно, что реально чистый Хромакей 0х00FF00.
Думаю это всё-таки из-за ширины происходит сдвиг эффекта и всё-таки какая-то задумка Sony. Реально наводит на мысли, что задумывалось на фон ставить рамочку видео или картинки под уменьшенное видео. Делается это так... делается трейлер размером, например 760х320, а под ним, в качестве бэкграунда, воспроизводится другая заставка или картинка и вместо зелёного она заполняет фон, а где нет зелёного, там не затрагивается.
Нужно только узнать технологию, как 2 видео воспроизводить одновременно, думаю тут нужен XML.
Кстати, возможно такой эффект кто-нибудь встречал, например в заставках игр или в демороликах...
COOLERbyPSP,
эта "проблема" заложена в самом стандарте видео, а именно используемом цветовом пространстве YV12.
Дело в том, что видео кодируется не в привычном RGB, а в YV12. Это такой цветовой формат, в котором есть три компоненты - яроксть + две цветовых. Прикол в том, что из-за особенностей глаза (меньшая чувствительность к цвету, чем к яркости), можно кодировать цветовые компоненты в два раза меньше разрешении.
Таки образом на блок из 2х2 пикселя тратится не 4х3х8 = 96 бит (24 бита на пиксель в среднем), а 8 (один семпл первой цветовой составляющей) + 8 (один семпл второй) + 4х8 (четыре семпла яркостной) = 48 бит или 12 бит на пиксель в среднем. Т.е. выгода - в два раза, при практически минимальном визуальном отличии.
Картинко раз, и еще вики: http://ru.wikipedia.org/wiki/YUV
Но отличие таки есть, и оно заметно на вот таких мелких цветных деталях. Еще заметно на записях видео с экрана.
Вот например, видео в 4:4:4, и сравнение скрина с исходного видео и после ConvertToYV12 ().
Также из этого вытекает еще 1 проблема: как обратно все растягивать. Есть несколько алгоритмов интерполяции:
1) Nearest Neighbor (ака ближайший сосед). В общем из 1 пикселя получается 4 простым превращением 1 пикселя в 2х2 таких же. Например на твоей аве это будет выглядеть так: http://2.firepic.org/2/images/2012-0...xm7gf0afym.png
2) Что-нибудь отличное от него. Выглядит куда лучше.
Вот сравнение, скрин с одного видео, просто разные настройки рендерера (штука, которая из YV12 получает RGB, который на дисплей выводится): http://screenshotcomparison.com/comparison/131312
Беда виты в том, что она хрому (цветовую компоненту) масштабирует по первому алгоритму. Что с этим можно делать? Да разве что кодировать в разрешении выше нативного (видимо лучше всего - 720p), тогда дополнительное масштабирование всей картинки будет немного это все сглаживать. А еще можно гневное письмо в сони написать
З.ы. пока гоняю тесты, но на первый взгляд - вита потянула 720p с 9ю рефреймами (что соответствует High@L4.1), но пониженым до 3.1 левелом.
З.ы.ы. сам пока кодирую --preset <какой хочешь по соотношению скорость/сжатие> --tune animation --crf 17 --profile high --level 3.1 --vbv-maxrate 17500 --vbv-bufsize 17500, все ок даже с 720p@60fps видео.
Инфа про размер vbv буфера у виты - проверенная?) И таки рекомендую перейти на пресеты (medium это не пресет, это дефолт ), и если надо - уже крутить настройки относительно них. А то половина - это veryslow, плюс-минус. Их же совсем не зря сделали
З.ы.ы.ы. эта зелень - это мб YUV с 0 в каждой компоненте. Можете сами проверить http://fic.bos.ru/solutions/YUV2RGB.php Если как-нибудь кто-нибдуь снимет скрин с зеленью - можно будет проверить, число там близкое к 135 или к 255)
З.ы.ы.ы.ы. еще по поводу кодирования в натив/не натив - разницы особой нет - сама вита масштабирует неплохо, так что особой разницы между хорошим скейлером при кодировании и скейлом при воспроизведении нет. Но учитывая проблему с апсемплингом хромы - рекомендую таки 720p, а не натив.
З.ы.ы.ы.ы.ы. еще одна мысль по поводу зелени - так работает аппаратный оверлей.
An application using a hardware overlay gets a completely separate section of video memory that belongs only to that application. Because nothing else uses it, the program never needs to waste resources in checking whether a given piece of the memory belongs to it, nor does it need to monitor whether the user moves the window and changes the location of the video memory. To get the image from the separate video memory to display in tandem with the remaining shared elements on the display, the graphical subsystem associates a certain attribute (for example, a particular color) as a "mask" for that overlay, which the graphics card understands to mean that it is to draw from the separate overlay buffer onto the screen. (This technique has become known as "chroma key".)
Возможно рендрер считает, что он должен выводить на весь экран - и готовит область во весь экран... а видеокарта отдает видео не на весь экран - вот и остается "подготовленный" кусок экрана, в который ничего не вывели - и он имеет цвет "подготовленной" части.
З.ы.(6) tl;dr а сабы так и не завелись? А то в очень обширных настройках из суммарных 4х пунктов есть "язык субтитров" о_О
Последний раз редактировалось vivan; 20.06.2012 в 19:05.