Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Цифровые технологии » Видео и аудио: обработка и кодирование » x264

Ответить
Настройки темы
x264

Аватара для GreatWizard

Старожил


Сообщения: 200
Благодарности: 1

Профиль | Отправить PM | Цитировать


Хотелось бы по-больше узнать о этом способе видео сжатия, какой для него контейнер использовать, с каким звуком, вообще какую реализацию использовать... и все возможные мелочи
Как я понимаю собрались дяденьки из MPEG и сделали такой стандарт видеосжатия H.264 , еще и AVC( Advanced Video Coding). Где-то наверно опубликовали правила его исп-ния и выложили исходники и кто-то берется его реализовывать ..
Вот уже поступают беты от разных компаний или лиц (MoonLight, Ateme он вроде и Неро ?, x264....что-то вроде)
1) Насколько они могут сами изменять H.264 из MPEG ?
2) То есть какой лучше?
3) Допустим хочу закодировать DVD с H.264 и AAC или OGG, как ???
4) И самое главное откуда брать кодеки, проги. Их скажем не совсем просто взять, еще такие огр файлы бывают.

Вот чтобы не ошибаться, прошу поделиться той мнфой что сможете..
P.S. Я бы рылся днями, времени нет. Уже пытался не очень успешно
Да и все этот скпер пак H264_AAC_MP4 забросили ???

Отправлено: 18:48, 07-01-2005

 

Аватара для redkhmear

Пользователь


Сообщения: 84
Благодарности: 3

Профиль | Отправить PM | Цитировать


Цитата delog:
не пропадает »
я вообще хп юзаю, а виста каличная!

-------
Есть только две бесконечные вещи: Вселенная и глупость. Хотя насчет Вселенной я не вполне уверен.


Отправлено: 19:02, 26-11-2008 | #791



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 30
Благодарности: 4

Профиль | Отправить PM | Цитировать


delog,
это который keyframe interval? или что-то другое?
Цитата delog:
изображение не пропадает? »
Вистой не пользуюсь)


To All,

т. к. я в этом деле новичок, хотелось бы задать несколько вопросов, на основе которых можно в итоге сделать "шапку" к теме, или создать толковый FAQ. Я думаю, что это будет очень полезно, ведь в многочисленных "инструкциях" говорится в основном только о значениях опций, но не о их предназначении.

Закладка Main

1. Mode - выбор режима кодирования.
Режимы:
читать дальше »
  1. ABR - кодирование со средней скоростью потока данных. Использует тот же механизм что и automated 2pass, кодек сам устанавливает оптимальныe границы изменения скорости для заданного среднего значения, а следовательно и размера файла.
  2. Const. Quantizer
  3. 2pass - 1st pass - Первый проход двухпроходного кодирования. Можно использовать менее агрессивные настройки для быстрого прохода.
  4. 2pass - 2nd pass - Второй проход двухпроходного кодирования. Ставим конечные настройки.
  5. Automated - 2pass - Режим автоматического двухпроходного кодирования.
  6. 3pass - 1st pass
  7. 3pass - 2nd pass
  8. 2pass - 3rd pass
  9. Automated - 3pass - Режим автоматического трех проходного кодирования.
  10. Const. Quality - это как в XviD, качество от 0,1 до 54(0,1-максимальное качество,54-минимальное).

2. Turbo - позволяет запустить первый проход с упрощенными настройками кодека, благодаря этому время кодирования первого прохода уменьшается примерно в три раза. При этом качество выходного видео незначительно теряет в качестве.

3. lossless - Сжатие без потерь.

4. PSNR и SSIM calculation - методы измерения качества обработаного цифрового видео. На качество не влияют.

5. Number of Threads - Число потоков.
читать дальше »
Для оптимальной скорости число потоков должно быть равно числу виртуальных или физических ядер процессора, т.е. устанавливать 2 на одноядерном процессоре с гипертридингом (HT) или двухядерном процессоре. Примечание: если поставить число потоков больше числа используемых процессоров, то скорость снизится. В некоторых случаях HT может уменьшить скорость кодирования. В старых версиях x264 использование нескольких потоков снижало качество. (Кадр разбивался на слайсы, которые кодировались независимо и поэтому не могли иметь референсные связи).

Значения и результаты при использовании двухядерного процессора:
читать дальше »
  1. 1 - Результат 100% fps и 100% качество
  2. 2 - Результат +70% fps и 99% качество (поправьте меня если ошибаюсь, но как я не крутил результаты - разницы не заметил)
  3. 0(Auto) - При данном значении кодек сам устанавливает число потоков (в моем случае почему-то 3)
  4. n - у кого есть, отпишитесь пожалуйста.


6. AVC level - уровень сложности AVC.
читать дальше »
  1. Level 4.1
  2. Level 5.1
  3. Unrestricted -


7. Deblocking - Фильтр деблокинга.
читать дальше »
MPEG-4 AVC представляет видео в виде перемещающихся блоков(макроблоков). Фильтр цикличного деблокинга (in loop filter) определяет края этих квадратов и определённым образом уравнивает их разницу (смазывает). Фильтр деблокинга - стандартная опция MPEG-4 AVC и он не должен быть отключен. Если битрейт достаточно большой то можно смело ставить отрицательные значения деблокинга для увеличения чёткости - а если битрейт маленький то и деблокинг нужен побольше чтобы квадраты не вылезли, но при этом упадет чёткость.
  1. Deblocking Strength - Сила деблокинга.
    читать дальше »
    Вычисляется для каждого макроблока, исходя из квантизера для него и близлежащих
    макроблоков. Альфа определяет является ли приграничный квадрат блочным или же на самом деле это деталь.
    Это похоже на порог. Бета так же похожа на порог, но используется для того, чтобы убедиться в однородности
    картинки с обеих приграничных сторон и, тем самым, отделить детали от блочности. Когда определена блочность,
    альфа решает какую силу использовать (максимально допустимое изменение пикселя). Бета немного изменяет
    силу, если блок однородный.

  2. Deblocking Threshold - Порог деблокинга.
    читать дальше »
    Порог деблокинга устанавливает жёсткость отбора
    блочности фильтром. Сила деблокинга регулирует, как сильно определённые блоки будут смягчены.
    Значения по умолчанию сочетают аккуратность удаления блочности и сохранение деталей. Значения
    должны лежать в диапазоне от -3 до 3 (чем ниже значения, тем меньше устраняется блочность.
    Отрицательные значения не означают, что блочность оставляется). Примечание: слишком высокие
    значения дадут потерю многих деталей и текстур или смазывание. Установка слишком низких
    значений оставит резкие края и "москитный шум" (mosquito noise). Должна быть положительная
    взаимосвязь между двумя коэффициентами деблокинга (желательно, чтобы обе цифры были минусовых
    или плюсовых значений). Если вы увеличиваете силу, то должны увеличить и порог.


Отвечаем пожалуста все по возможности и дополняем друг друга

Последний раз редактировалось Polishchuk, 03-12-2008 в 08:24.


Отправлено: 10:11, 27-11-2008 | #792


Аватара для redkhmear

Пользователь


Сообщения: 84
Благодарности: 3

Профиль | Отправить PM | Цитировать


Ну ты накатал!

Цитата:
это который keyframe interval? или что-то другое?
Да это который keyframe interval! fps*5=keyframe interval.

1) Ставишь automated 2pass и ставишь все настройки, потом жмёш Enqueue, megui сам поставит 2 прохода в queue(удобнее чем в virtualdub ставть 2 прохода в job). ABR - кодирования со средней скоростью потока данных. Использует тот же механизм, кодек сам устанавливает оптимальныe границы изменения скорости для заданного среднего значения, а следовательно и размера файла.
Const. Quality - это как в XviD, качество от 0,1 до 54(0,1-максимальное качество,54-минимальное).
Const. Quantizer - затрудняюсь ответить!
2) Сколько кодил разницы не увидел!
3) Сжатие без потерь!
4) Это методы измерения качества обработаного цифрового видео. И на качество они не влияют.
5) Ставь сколько у тебя процессоров и не парься(у меня 1 проц, стотит 1)
6) AVC level - это опять же аналогия с divx и xvid, для разного разрешения свой битрейт(посмотри в xvid там когда меняешь левел меняется макс. битрейт и др. настройки). Unrestricted позволяет самому включать все галочки, что нам собственно и надо(ограничений нет).
7) Да!
Цитата Polishchuk:
source is anime »
Скорее всего это какие-то настройки деинтерлейса, что бы гребёнки не было или что-то в этом роде(не пользовался).
Цитата Polishchuk:
Для чего нужен ресайз? »
Для изменения размера, например, dvd имеет размер 720*576(576-pal,480-ntsc), а фильм при просмотре имеет соотношение 16:9. Вот и делаешь ресайз до 720*400 и конвертируешь! В твоём варианте(1280*534) соотношение 16:9 и ресайз тебе делать не надо(только если не хочешь уменьшить разрешение, скажем до 720*400).
Давай пилить вторую закладку!

ЗЫ нсчёт Deblocking посмотри предыдущие топики, там на эту тему чуть ли не подрались.

-------
Есть только две бесконечные вещи: Вселенная и глупость. Хотя насчет Вселенной я не вполне уверен.


Последний раз редактировалось redkhmear, 27-11-2008 в 16:14.


Отправлено: 11:16, 27-11-2008 | #793


Пользователь


Сообщения: 121
Благодарности: 14

Профиль | Отправить PM | Цитировать


Консольная версия порадовала скоростью работы. Радует, что используются оба ядра процессора. Кстати, видео при прокрутке у меня тоже тормозит, я поставил b-frames = 2. Когда поставил 1 стало нормально.

Вопросы по некоторым удобствам:
1. Предварительный просмотр. Хочу чтоб было как в дубе - слева необработаное видео, а справа с примененными фильтрами. И чтоб изменения параметров фильтра сразу отображались. Такое возможно?
2. Непахает neroAacEnc.exe. Почему? Путь в настройках указан, в главном окне выбрано Nero AAC *scrachpad*, в очередь добавлено, что еще надо сделать?

-------
MeGUI для чайников.


Отправлено: 21:39, 27-11-2008 | #794


Аватара для redkhmear

Пользователь


Сообщения: 84
Благодарности: 3

Профиль | Отправить PM | Цитировать


1. возможно, надо скрипт писать
2. поставь mp4-aac

-------
Есть только две бесконечные вещи: Вселенная и глупость. Хотя насчет Вселенной я не вполне уверен.


Отправлено: 22:07, 27-11-2008 | #795


Новый участник


Сообщения: 30
Благодарности: 4

Профиль | Отправить PM | Цитировать


redkhmear,
Спасибо, отредактировал

Отправлено: 03:22, 28-11-2008 | #796


Новый участник


Сообщения: 30
Благодарности: 4

Профиль | Отправить PM | Цитировать


пункт 6. Помоему ты перепутал уровень с профилем

Отправлено: 03:54, 28-11-2008 | #797


Новый участник


Сообщения: 30
Благодарности: 4

Профиль | Отправить PM | Цитировать


Термины:
  1. VBV - верификатор видео буфера. Для чего предназначен?
  2. Quantizer - что это?
  3. B-Frames - что это такое и с чем их кушают, а также I-Frames и P-Frames

Закладка RC and ME

Rate control:
читать дальше »

1. VBV Buffer Size - Размер буфера VBV
читать дальше »
Устанавливает максимальный размер видео буфера, который может задерживать начало проигрывания, если он слишком большой и быть причиной дерганий (заикания), если он слишком мал. Актуально только для аппаратных декодеров и при сетевом вещании.


2. VBV Maximum Bitrate - Максимальный битрейт для VBV
читать дальше »
Устанавливает максимальный битрейт, разрешённый в видео буфере.


3. VBV Initial Buffer - Начальный размер VBV
читать дальше »
Начальный уровень заполнения верификатора видео буфера. Устанавливает уровень заполненности видео буфера, нужный для начала проигрывания. Низкий уровень может стать причиной снижения исходного качества, чрезмерно высокий - искусственно завышает качество.

4. Bitrate Variance - Колебание битрейта (%)
читать дальше »
Допускает изменения битрейта. Низкие значения - меньше варьируемость, высокие - больше.
Регулирует, как сильно битрейт будет колебаться от установленного среднего битрейта. Низкие значения ограничивают изменение битрейта, производя файл, хорошо попадающий в итоговый размер, исходя из установленного битрейта, но ухудшают способность кодека адаптироваться к изменению сложных сцен. Высокие значения увеличивают изменения (скачкИ) битрейта, которые ухудшают возможность потоковой передачи и делают размер непредсказуемым, но улучшают способность кодека адаптироваться к изменению сложных сцен. Установка значения в 0% даст в результате работу в режиме постоянного битрейта. Установив 100%, Вы получите изменения битрейта в зависимости от сложности кодируемой сцены. (Установив 100% Вы получите сжатие в режиме постоянного квантизера - CQ.)

5. Quantizer Compression - Кривая квантования
читать дальше »
Позволяет изменяться среднему квантизеру (т.е. качеству). Низкие значения означают меньшую изменчивость, высокие - большую. Примечание: 0 означает постоянное качество, 1 означает максимальные колебания.

Регулирует, насколько сильно может колебаться качество в пределах установленного среднего битрейта. Низкие значения уменьшают область колебания битрейта, производя файлы предсказуемого размера, но ухудшают способность кодека адаптироваться к изменению сложных сцен, где потеря деталей может быть не так важна. Высокие значения увеличивают разброс качества, который может улучшить визуальное качество путём уменьшения качества на малозаметных деталях и увеличивая там, где детали более заметны. Значение 0 даст в результате постоянное качество. Установив 1, Вы получите значительные изменения качества на разных участках клипа.

6. Temp. Blur of est. Frame complexity - Временное сглаживание оценки сложности сцены (кадров) (до компрессии кривой квантования)
читать дальше »
Более низкие значения этого параметра позволяют квантизерам более резко изменяться при усложнении или упрощении сцены. Более высокие значения заставляют квантизеры меняться более плавно. Cplxblur гарантирует, что каждый опорный (I) фрейм сопоставим по качеству со следующим P фреймом. Также эта опция позволяет не тратить впустую биты при кодировании чередующихся сложных и простых сцен, во время которых происходят флуктуации квантизеров. Имеет смысл поэкспериментировать с этим параметром при кодировании анимации. Данный параметр задействуется только при двухпроходном кодировании.

7. Temp. Blur of Quant after CC - Временное сглаживание параметров квантизации (После компрессии кривой квантования)
читать дальше »
Похоже на cplxblur, только используется не до, а после curve compression (--qcomp). Данный параметр задействуется только при двухпроходном кодировании.

M.E.:
читать дальше »

1. Chroma M.E. - Оценка движения в цветовой составляющей.
читать дальше »
Оценка движения в цветовой составляющей видео при расчёте движения. Улучшает качество.


2. M.E. Range - Максимальное кол-во итераций при поиске векторов движения.
читать дальше »
Итерация (лат. iteratio — повторение) Одно из ряда повторений какой-либо математической операции, использующее результат предыдущей аналогичной операции.
Определяет максимальное количество попыток (с измененными данными) нахождения оптимального варианта при поиске вектора движения макроблока. Чем больше, тем лучше качество.
рекомендуется ставить не больше 16, т. к. дальше разница в качестве незначительная


3. Scene Change Sensitivity

4. M.E. Algorithm

5. Subpixel Refinement

Misc:
читать дальше »

1. Keyframe Interval

2. Min. GOP Size

3. Noise Reduction

4. Encode interlaced

Quant Options
читать дальше »

1. CABAC

2. Number of Reference Frames

3. Mixed Reference frames

4. Trellis

5. Psy-RD Strength

6. Psy-Trellis Strength

7. No Dct Decimation

8. No Fast P-Skip

Закладка Advanced

Quantizers:
читать дальше »

1. Min/Max/Delta

2. Quantizers Ratio (I:P / P:B)

3. Chroma QP Offset

4. Credits Quantizer

Adaptive Quantizers:
читать дальше »

1. Mode

2. Strength

Quantizer Matrices

Macroblock Options:
читать дальше »

1. Adaptive DCT

2. I4x4

3. P4x4

4. I8x8

5. P8x8

6. B8x8

B-Frames:
читать дальше »

1. Number of B-Frames

2. Adaptive B-Frames

3. B-Pyramid

4. Weighted B-Prediction

5. B-Frame mode

6. B-Frames bias

Custom Command Line - Какие опции можно указывать? У меня стоит --mvrange 511 --aud --nal-hrd --sar 1:1 - Что это значит?

Пока что все, пальцы уже устали, после выходных буду вписывать дополнения

Последний раз редактировалось Polishchuk, 03-12-2008 в 09:02.


Отправлено: 04:35, 28-11-2008 | #798


Аватара для redkhmear

Пользователь


Сообщения: 84
Благодарности: 3

Профиль | Отправить PM | Цитировать


Термины

1. VBV - скорее всего используется про потоковом видео.
2. Quantizer - Кодек разбивает видео на макроблоки (8*8pix,16*16pix), и различные части изображения кодирует по разному, исходя из тех или иных условий и параметров. 1-максимальное качество, а 51-минимальное. Единственное, что хочу сказать по квантам, так то, что менять кванты не надо, в старых версиях надо было, чтобы втиснутся в битрейт и выжать максимум качества. Сейчас при стандартных всё влезает! В VP7 у меня были такие настройки: до 450kbps-18\56(min\max), 1500-8/56, 2000 и далее 4(2)/56.
3. B-Frames - кадры с низким разрешением. Они иногда помогают, если требуемое качество видео не умещается в требуемый поток. Такие кадры вставляются между обычными кадрами. Есть ещё матрицы квантования, которые можно загрузить, нужны они (как мне кажется) токлько на низких битрейтах(в mpeg-4 asp, чтобы не было квадратов, в avc незнаю), хотя и стандартная нормально работает

Закладка RC and ME

1. У тебя есть аппаратный декодер и сетевое вещание? У меня нет.
Пункты 1.,2. и 3. - это для потокового видео.
4. Поставишь мало - статика будет смотреться хорошо, а динамика смазано. Много поставишь - наоборот. Всё зависит от видео. Мне кажется по умолчанию этакая "золотая середина".
5. 6. 7. - ну тут всё понятно, лучше не трогать. Распределение битрейта.

M.E.: - анализаторы движения(или векторы)
1. Chroma M.E. - видимо анализ движения на слое chrom.
2. M.E. Range - количество итераций(повторов) поиска при анализе движения. В mpeg4, хранится не весь кадр целиком, а только та часть которая меняется.
3. Scene Change Sensitivity - интенсивность смены сцен, скорее всего для быстрого реагирование на смену кадра.
4. M.E. Algorithm и 5. Subpixel Refinement - это алгоритмы векторов движения, чем больше тем точнее, но тем больше вычислений.

Misc:
1. Определяет, где находится статика, а где динамика, для лучшего сжатия.(ключевые кадры)
2. Минимальный кейврейм интервал.
3. Шумоподавление. Обычно в виде мошек(чёрные точки), когда оцифровывают с плёнки. Лучше использовать шумодав для avisynth(fft3Dfilter, fft3dgpu).
4. если видео черестрочно ставть галку, если прогрессивное не стваь(логично да?).
Мои пальчики тоже устали, потом допишу!

-------
Есть только две бесконечные вещи: Вселенная и глупость. Хотя насчет Вселенной я не вполне уверен.


Последний раз редактировалось redkhmear, 28-11-2008 в 16:53.


Отправлено: 14:49, 28-11-2008 | #799


Пользователь


Сообщения: 121
Благодарности: 14

Профиль | Отправить PM | Цитировать


3. B-frames - это двунаправленные кадры, кодируются только отличия от предыдущих кадров, а также последующих. I-frames - ключевые кадры, весь кадр кодируется полностью. P-frames - промежуточные кадры, кодируются только отличия от предыдущих кадров. Количество кадров на которые можно ссылаться задается параметром max.reference frames (16 максимум).

Никто не в курсе, с какими настройками надо кодить, чтобы видео воспроизвелось на смартфоне?

-------
MeGUI для чайников.


Отправлено: 18:52, 28-11-2008 | #800



Компьютерный форум OSzone.net » Цифровые технологии » Видео и аудио: обработка и кодирование » x264

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Сравнение VP7 x264 H.264 Igor_D Видео и аудио: обработка и кодирование 500 24-10-2010 19:49
x264 и интерлейс Andrew Placid Видео и аудио: обработка и кодирование 5 28-11-2007 13:42
кодируем в X264 - Легко! Marikus Видео и аудио: обработка и кодирование 3 23-04-2007 22:52
Virtual Dub + x264 Kaz Видео и аудио: обработка и кодирование 5 25-02-2007 09:51
Проблема с извлечением видео из mkv (сжато x264) kazarin Видео и аудио: обработка и кодирование 26 18-06-2006 16:40




 
Переход