|
Pustovetov
 Стаж: 17 лет 10 месяцев Сообщений: 4247
|
Pustovetov ·
18-Янв-09 11:12
(16 лет 8 месяцев назад)
vmbvmb писал(а):
1. Теоретический. Каковы могут быть причины такого растяжения и как их избегать при рипах?
Если делать анаморфный рип то надо правильно устанавливать соотношение сторон.
Цитата:
2. Практический. Есть ли программы, которые могут установить принудительное соотношение видео (как это делает mkvmerge в примере), но без перепаковки контейнера — с прямым доступом к нужным полям файла (как мы редактируем теги в музыке или графике, без перезаписи основных данных).
MatroskaProp. Там на закладке Matroska info встать на Display Size и нажать Change. Может быть поможет =)
|
|
_vmb
 Стаж: 17 лет Сообщений: 2062
|
_vmb ·
18-Янв-09 12:24
(спустя 1 час 12 мин., ред. 18-Янв-09 13:33)
Pustovetov, спасибо.
1. Но рип не анаморфный, насколько я могу понять: https://rutr.life/forum/viewtopic.php?t=1435882 (при анаморфе автор это указывает: https://rutr.life/forum/viewtopic.php?t=1437036)
2. К сожалению, в MatroskaProp можно выставить только разрешение (количество пикселов по горизонтали и вертикали), а не Aspect Ratio. Поэтому нужно ещё пересчитывать.
Попробовал пересчитать, как нужно изменить разрешение, чтобы пропорции восстановились. Для этого загрузил рип в редактор AVS скриптов через MeGUI. Затем выставил там DAR как 4:3 (было 1,5) и нажал Resize — Suggest Resolution (mod16). Программа пересчитала и выдала 656x480 вместо исходных 720x480. После этого на Preview пропорции восстановились. И если задать в MatroskaProp 656x480, всё нормально воспроизводится.
Оптимально было бы, если бы можно было бы сразу выставлять AR в свойствах при помощи программы. Но я, наверное, ищу слишком простых путей)
|
|
Pustovetov
 Стаж: 17 лет 10 месяцев Сообщений: 4247
|
Pustovetov ·
18-Янв-09 13:10
(спустя 45 мин.)
vmbvmb писал(а):
Pustovetov, спасибо. 1. Но рип не анаморфный
Рип то не анаморфный, но должен быть анаморфным
Цитата:
2. К сожалению, там можно выставить только разрешение (количество пикселов по горизонтали и вертикали), а не Aspect Ratio. Поэтому нужно ещё пересчитывать.
Ну да. Один раз пересчитать. 720x480 4:3 ресайзится обычно до 640x480 или 720x540
Цитата:
Оптимально было бы, если бы можно было бы сразу выставлять AR в свойствах при помощи программы. Но я, наверное, ищу слишком простых путей)
А есть разница между выставлением AR и разрешения?
|
|
_vmb
 Стаж: 17 лет Сообщений: 2062
|
_vmb ·
18-Янв-09 13:42
(спустя 32 мин.)
Pustovetov писал(а):
А есть разница между выставлением AR и разрешения
Ну, конечно, несущественная, лишний подсчёт и всё)
Вот только не могу понять, почему AVS предложил не 640x480, а 656x480? Это как-то связано с "mod16"? Ведь оба числа кратны 16? Зачем программа накинула лишние 16 пикселов? Нужно ли это исправлять вручную при подобных случаях?
И ещё очень хотелось бы, чтобы Вы кратко прояснили, когда рип нужно делать анаморфным.
И что лучше для качества: жесткий resize при рипе или установка разрешения при муксировании? Или это вообще разные вещи и имеют разное предназначение?
Простите, возможно у меня путаница в голове. Последние несколько дней только и делал, что читал разную справочную информацию на тему рипов. Может быть, был невнимателен или что-то недопонял.
|
|
_Woland_
 Стаж: 16 лет 9 месяцев Сообщений: 1067
|
_Woland_ ·
18-Янв-09 15:06
(спустя 1 час 23 мин.)
vmbvmb
Да, размеры ширины и высоты кадра идут с шагом 16 пихелей. Для соответствия со стандартом, если не ошибаюсь. Накинула наверно потому, что при resize она получила значения вроде 650х480, после чего округлила до ближайшего числа, кратного 16-ти. Вообще тебе лучше это объяснит Pustovetov, я в этом не профи) Но от себя добавлю, что наверно есть смысл делать разрешение анаморфным, скажем при размере кадра исходника 640х520. То есть что у нас получается, AR нарушен, лица героев вытянуты. Можно либо сделать ресайз до 640х480, чтобы пропорции восстановить, но потеряется часть информации - конечный результат имеет меньшее разрешение. Тогда возникает вопрос, а почему ширину кадра не увеличить до 720-ти? Тем более, что к горизонтальному разрешению глаз менее чувствителен. Можно, конечно, использовать алгоритм ресайза и сделать честные 720х520, но информации у нас в кадре не прибавится, а вот битрейта понадобится больше, потому что реальная площадь кадра увеличилась. Но есть ещё один вариант. Мы кодируем видео с тем же кадром 640х520, но указываем (видимо путем установки AR 4:3, просто я никогда не делал анаморф, поэтому точно не могу сказать), что кадр нужно растянуть до 720х520. То есть ресайз у нас происходит на лету во время воспроизведения, а не на этапе кодирования. Ну, как-то так. Фух. Че-то я расписался, а ведь я по другому вопросу.
Можно ли с помощью MeGUI (может в AviSynth скриптик создать) наложить на видео логотип? Какой-нибудь ещё полупрозрачный. Интересует для возможности создания видео для интернет-ресурса. Так сказать авторские права на видео указать в картинке.
|
|
_vmb
 Стаж: 17 лет Сообщений: 2062
|
_vmb ·
18-Янв-09 15:14
(спустя 7 мин.)
_Woland_, большое спасибо, немного разложилось по полочкам. То есть получается, что анаморф, как правило, предназначен для исправления косяков в пропорциях исходника? А устанавливается уже после самого кодирования, при муксировании, в свойствах дорожки? Ну, а насчёт логотипа, надеюсь, Вам ответят знающие люди.
|
|
_Woland_
 Стаж: 16 лет 9 месяцев Сообщений: 1067
|
_Woland_ ·
18-Янв-09 15:29
(спустя 15 мин.)
vmbvmb
Нет. Анаморф предназначен скорее для того, чтобы не потерять полезную информацию кадра и не тратить битрейт на кодирование бесполезной информации.  Ну, смотри. Два кадра. 720х520 и 640х520. На 1-й уходит больше битрейта и при использовании одинакового битрейта со вторым кадром - качество видео первого будет ниже, что логично. Но реально первый кадр не несет больше полезной информации. Если сделать ресайз кадра с 320х240 на 1280х960, мы ведь не получим HD видео, правильно?  Поэтому мы перекладываем этап ресайза с этапа кодирования на этап воспроизведения. И обрати внимание, что в этом случае мы не потеряли полезную информацию, которая хранится в высоте кадра, равном 520px. Если бы мы ужали высоту до 480, то часть информации была бы безвозвратно утеряно. Опять же. Мы ужимаем 1280х960 до 320х240, а потом обратно до 1280х960. Понятно дело, что у нас обратно HD видео опять не получится. Хотя. Можно сказать и так, что анаморф просто исправляет AR.
|
|
viktor_
 Стаж: 19 лет 3 месяца Сообщений: 879
|
viktor_ ·
18-Янв-09 15:48
(спустя 19 мин.)
_Woland_ писал(а):
Анаморф предназначен скорее для того, чтобы не потерять полезную информацию кадра и не тратить битрейт на кодирование бесполезной информации
Так я думаю будет точнее -
Цитата:
Суть анаморфа заключается в следующем: мы берём кадр размерности 2.35:1 и помещаем его в формат 16:9. Затем полученный кадр (16:9) по горизонтали сжимается до формата 12:9, т.е. 4:3. При этом вся картинка визуально становится как бы вытянутой по вертикали. Вот, теперь мы получили кадр формата 4:3, который и подвергается сжатию:
Этим количество кодируемых пиксел сокращается примерно на четверть, на долю анаморфированной картинки выпадает большее число строк, а значит, её изображение будет чётче.
|
|
_vmb
 Стаж: 17 лет Сообщений: 2062
|
_vmb ·
18-Янв-09 16:30
(спустя 42 мин.)
_Woland_, viktor_, механика вроде бы понятна. Хотелось бы понять весь набор причин для анаморфов. Для самой потребности колдовать с разрешением. Вот, например, Вы сравниваете два кадра: 720х520 и 640х520. Зачем делать анаморф 720х520 из 640х520? Ведь ни один размер не подпадает под стандарт 4:3 или 16:9. Или это относится к какому-то конкретному примеру, в котором 720х520 исправляет конкретный косяк с пропорциями?
|
|
@lolkin@
Стаж: 17 лет 5 месяцев Сообщений: 1362
|
@lolkin@ ·
18-Янв-09 16:41
(спустя 10 мин.)
Цитата:
Человеческий глаз в большей степени чувствителен к вертикальному разрешению, чем к горизонтальному, когда кодируют MPEG2-поток для DVD этим пользуются и сохраняя вертикальное разрешение, интерполируют горизонтальное. В этом и суть анаморфного разрешения при кодировании видео: вместо того, чтобы тратить битрейт на горизонтальные пиксели, рипер устанавливает вертикальное разрешение 1:1, а на горизонтальном экономит за счёт анаморфной интерполяции. Человеческому глазу сложно с расстояния отличить "честные" 1024x576 от тех же 1024x576 интерполированных из 720x576. Если рип был сделан с DVD, то вместо того, чтобы делать масштабирование с потерей части информации по вертикали, AVC поток можно кодировать и хранить в контейнере в том разрешении, которое было на DVD, а в самом контейнере с фильмом устанавливается флаг, который точно указывает в каких пропорциях необходимо конкретный фильм воспроизводить.
|
|
_vmb
 Стаж: 17 лет Сообщений: 2062
|
_vmb ·
18-Янв-09 17:00
(спустя 18 мин., ред. 18-Янв-09 17:46)
|
|
_Woland_
 Стаж: 16 лет 9 месяцев Сообщений: 1067
|
_Woland_ ·
18-Янв-09 17:34
(спустя 34 мин., ред. 18-Янв-09 17:34)
vmbvmb
Опечатался я) Не 520,а 540. 720х540, AR получается 4:3. P.S. Если исходник 720х576, а кадр должен быть с AR 16:9, то нужно растянуть его по ширине до 1024.
|
|
_vmb
 Стаж: 17 лет Сообщений: 2062
|
_vmb ·
18-Янв-09 17:44
(спустя 10 мин.)
_Woland_, ага, спасибо. И за второй ответ тоже, у меня уже, наверное, помутнение при расчётах. Теперь всё, кажется, становится на свои места.
|
|
viktor_
 Стаж: 19 лет 3 месяца Сообщений: 879
|
viktor_ ·
18-Янв-09 18:52
(спустя 1 час 7 мин.)
vmbvmb писал(а):
механика вроде бы понятна
опять же - недостаток анаморфного AVI - неспособность железных плееров его распознавать.
|
|
_vmb
 Стаж: 17 лет Сообщений: 2062
|
_vmb ·
18-Янв-09 20:24
(спустя 1 час 31 мин.)
Если AVS не может определить источник - прогрессивный он или чересстрочный - чем можно проверить? Можно ли в этом доверять MediaInfo? В том числе в определении Field Order?
|
|
spleet
  Стаж: 18 лет 9 месяцев Сообщений: 410
|
spleet ·
18-Янв-09 22:03
(спустя 1 час 38 мин.)
vmbvmb
megui неплохо определяет..
|
|
_vmb
 Стаж: 17 лет Сообщений: 2062
|
_vmb ·
19-Янв-09 00:11
(спустя 2 часа 8 мин.)
spleet, а что именно Вы имеете в виду? Если при помощи AVS Script Creator из меню tools (а в нём кнопка Analyse на вкладке Filters), так я именно этот способ и имею в виду: программа сообщает, что не может определить источник. Или есть ещё способ?
|
|
crazy-cactus
  Стаж: 17 лет 9 месяцев Сообщений: 2812
|
crazy-cactus ·
19-Янв-09 00:23
(спустя 11 мин.)
vmbvmb
можно попробовать определить в Xvid4PSP
|
|
_vmb
 Стаж: 17 лет Сообщений: 2062
|
_vmb ·
19-Янв-09 00:48
(спустя 24 мин.)
crazy-cactus, спасибо. Тип определил, но порядок полей опять unknown. Огромный он какой, и медлительный. Наверное, вомзожности это оправдывают, но пользоваться им только для определения пары параметров как-то накладно. Хотя это, конечно, лучше чем ничего. Ещё раз спасибо и на этом.
|
|
_Woland_
 Стаж: 16 лет 9 месяцев Сообщений: 1067
|
_Woland_ ·
19-Янв-09 03:53
(спустя 3 часа)
vmbvmb
На самом деле программа супер. По мне тоже туповата, но в ней нереально удобно делать скрипты AviSynth. Всякие шумодавы, корректоры и прочая мишура, потому что результат изменений сразу выводится. И как я раньше без всего этого обходился, ума не приложу.
|
|
Pustovetov
 Стаж: 17 лет 10 месяцев Сообщений: 4247
|
Pustovetov ·
19-Янв-09 09:01
(спустя 5 часов)
vmbvmb писал(а):
Вот только не могу понять, почему AVS предложил не 640x480, а 656x480? Это как-то связано с "mod16"? Ведь оба числа кратны 16? Зачем программа накинула лишние 16 пикселов? Нужно ли это исправлять вручную при подобных случаях?
Быстрее всего это связано с ITU/non-ITU В данном случае, в случае телевизионного сериала, имхо однозначно должно быть 640x480
Цитата:
И ещё очень хотелось бы, чтобы Вы кратко прояснили, когда рип нужно делать анаморфным. И что лучше для качества: жесткий resize при рипе или установка разрешения при муксировании? Или это вообще разные вещи и имеют разное предназначение?
dvdrip? 1) Когда мы считаем, что при даунсайзе потеряется важная детальность (а для тех же ntsc тв-сериалов в старое доброе время запись на цифровой пленке имела разрешение 640x480, так что при даунсайзе до 640x480 не факт, что мы что-то потеряем). 2) Когда мы не сильно ограничены по объему рипа. 3) Когда мы используем кодек x264. Вот если совпадают три этих условия, то мы можем сделать анаморфный рип.
|
|
Pustovetov
 Стаж: 17 лет 10 месяцев Сообщений: 4247
|
Pustovetov ·
19-Янв-09 09:08
(спустя 7 мин.)
_Woland_ писал(а):
Можно ли с помощью MeGUI (может в AviSynth скриптик создать) наложить на видео логотип? Какой-нибудь ещё полупрозрачный. Интересует для возможности создания видео для интернет-ресурса. Так сказать авторские права на видео указать в картинке. 
Скромно процитирую себя же с другого форума 
Допустим мы хотим наложить лого, с маской прозрачности и опционально цветом. Вариантов много, вот простенький (опять же считаем что картинки размером c видео и ntsc). В маске черный - не накладывать, белый - накладывать, серый всех степеней градации - смешивать.
function logo(clip dst,string logo_file,string mask_file,bool "chroma_flag")
{
chroma_flag = default ( chroma_flag, false)
mask_clip = ImageReader(mask_file, start=0, end=dst.framecount(), use_DevIL=true).ConvertToYV12(matrix="PC.601").AssumeFPS("ntsc_film")
logo_clip = ImageReader(logo_file, start=0, end=dst.framecount(), use_DevIL=true).ConvertToYV12().AssumeFPS("ntsc_film")
(chroma_flag==true) ? overlay (dst, logo_clip, mask=mask_clip) : overlay (dst, logo_clip, mask=mask_clip,mode="luma")
}
logo("logo.png","mask.png",true)
пример использования сварганеный за 5 минут из аватарки вопрошавшего
От балды за пару минут соорудил картинку и маску и наложил на видео
было так стало сяк
|
|
_vmb
 Стаж: 17 лет Сообщений: 2062
|
_vmb ·
19-Янв-09 09:33
(спустя 25 мин.)
_Woland_, Pustovetov, спасибо.
|
|
_Woland_
 Стаж: 16 лет 9 месяцев Сообщений: 1067
|
_Woland_ ·
19-Янв-09 15:02
(спустя 5 часов, ред. 19-Янв-09 15:02)
Pustovetov
Спасибо. Если я хочу выбрать кастомный fps, могу я просто в AssumeFPS забить значение? Скажем AssumeFPS(23.976). И при работе этого скрипта картинка с лого должна быть такого же размера, что и кадр? То есть, к примеру, если я хочу, чтобы лого было в углу на HD картинке, то понадобится делать лого с маской 1280х720 и при этом большая часть маски будет представлять черный цвет? P.S. О. Раз уж пошла такая пьянка) А вообще реально сделать посредством того же avs, чтобы лого было, скажем, первые 10 секунд, затем исчезало, потом появлялось на 10 секунд каждый последующие 5 минут. Да ещё чтобы плавно проявлялось? О как) Не, если это слишком сложно, то не надо, не хочется сильно напрягать тебя. Но просто интересно.
|
|
_Woland_
 Стаж: 16 лет 9 месяцев Сообщений: 1067
|
_Woland_ ·
19-Янв-09 15:20
(спустя 18 мин., ред. 19-Янв-09 15:20)
Как узнать AVC Level видео-ряда? Уже откодированного. P.S. Вопрос отпал. Nero ShowTime показывает эту информацию.
|
|
Ra3ik
 Стаж: 16 лет 11 месяцев Сообщений: 20
|
Ra3ik ·
19-Янв-09 15:31
(спустя 10 мин., ред. 19-Янв-09 15:31)
Сори что не совсем по сабжу, не знаю где еще спросить.
Adobe Premiere Pro 7.0
Исходники - видео 1280*800, 29.97 фпс
Слепил, рендерю, получаю в результате картинку 1280*800, но из нее реально изображение примерно 640*400, а вокруг как рамка черная. Подскажите что сделать чтобы изображение стало действительно с нужным разрешением. Пара скринов (настройки рендеринга, результат) Прямоугольники на изображении и должны быть, изображение как будто просто уменьшили =\
|
|
Pustovetov
 Стаж: 17 лет 10 месяцев Сообщений: 4247
|
Pustovetov ·
19-Янв-09 18:31
(спустя 3 часа)
_Woland_ писал(а):
Pustovetov
Спасибо. Если я хочу выбрать кастомный fps, могу я просто в AssumeFPS забить значение? Скажем AssumeFPS(23.976).
Читаем доку к ависинту (не зря же ее Физик на русский переводил). В частости доку на AssumeFPS =)
Цитата:
И при работе этого скрипта картинка с лого должна быть такого же размера, что и кадр? То есть, к примеру, если я хочу, чтобы лого было в углу на HD картинке, то понадобится делать лого с маской 1280х720 и при этом большая часть маски будет представлять черный цвет?
Угу. Конечно overlay имеет среди параметров смещение (по умолчанию оно 0), так что можно сделать картинки маленькие и указать смещение, но подобная модификация скрипта в качестве "домашнего задания" =) P.S. О. Раз уж пошла такая пьянка) А вообще реально сделать посредством того же avs, чтобы лого было, скажем, первые 10 секунд, затем исчезало, потом появлялось на 10 секунд каждый последующие 5 минут. Да ещё чтобы плавно проявлялось? О как) Не, если это слишком сложно, то не надо, не хочется сильно напрягать тебя. Но просто интересно.Можно. Но сложнее. Правильнее всего наверно использовать ConditionalReader и FadeIn к клипу с лого перед наложением.
|
|
_Woland_
 Стаж: 16 лет 9 месяцев Сообщений: 1067
|
_Woland_ ·
19-Янв-09 19:12
(спустя 40 мин.)
Pustovetov
Направление понял, пасиб)
|
|
shellgen
  Стаж: 18 лет 11 месяцев Сообщений: 6417
|
shellgen ·
19-Янв-09 19:27
(спустя 14 мин.)
_Woland_ писал(а):
P.S. О. Раз уж пошла такая пьянка) А вообще реально сделать посредством того же avs, чтобы лого было, скажем, первые 10 секунд, затем исчезало, потом появлялось на 10 секунд каждый последующие 5 минут. Да ещё чтобы плавно проявлялось? О как) Не, если это слишком сложно, то не надо, не хочется сильно напрягать тебя. Но просто интересно.
Рекурсивная функция пишется за 5 минут, scriptclip+fadeio.
|
|
Ra3ik
 Стаж: 16 лет 11 месяцев Сообщений: 20
|
Ra3ik ·
19-Янв-09 20:49
(спустя 1 час 21 мин.)
Вопрос снимается, прчину фигни нашел
|
|
|