сервера под транскодинг

52 views
Skip to first unread message

Александр Бубнов

unread,
Jul 4, 2014, 8:06:15 AM7/4/14
to stream...@googlegroups.com
привет.
уважаемые, поделитесь впечатлениями, какое железо брать для сабжа?
у меня есть опыт только на Xeon E3-1230 v2, и мне как-то не очень нравится:
ffmpeg на (vp6|h264) -> h264(-profile:v high -preset:v faster -tune:v ssim +мелкий тюнинг) выдает 150fps на SD(~600kbit).
хотелось бы больше, конечно. 

основной вопрос, конечно, процессоры - все остальное, полагаю, менее важно. 

Max Lapshin

unread,
Jul 4, 2014, 1:23:36 PM7/4/14
to stream...@googlegroups.com

E5 на мой взгляд ещё хуже.

Глупый вопрос: а у тебя проц не в энергосбережении?

04.07.2014 16:06 пользователь "Александр Бубнов" <alex.b...@gmail.com> написал:
--
Вы получили это сообщение, поскольку подписаны на группу "streaming-ru".
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес streaming-ru...@googlegroups.com.
Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout.

Александр Бубнов

unread,
Jul 4, 2014, 2:15:58 PM7/4/14
to stream...@googlegroups.com
И тут я всерьез задумался... 
Вообще, понятия не имею, но с чего бы серверу вдруг уходить в энергосбережение? И что, 150фпс это НАСТОЛЬКО мало?

Может, у меня ffmpeg+x264 как-то криво собраны?  

Max Lapshin

unread,
Jul 4, 2014, 2:31:54 PM7/4/14
to stream...@googlegroups.com
«криво собраны» — это такой миф из серии, позвать батюшку освятить сервер с фрибсдой что бы лучше работала.

libx264 здорово развивается и там регулярно делают очень серьезные ускорения. Процентов так на 5% скорости в определенных условиях.


Многие современные линуксы по умолчанию втыкают cpu_governor в powersave и ставят частоту в половину от номинальной.



Александр Бубнов

unread,
Jul 4, 2014, 3:45:29 PM7/4/14
to stream...@googlegroups.com

«криво собраны» — это такой миф из серии, позвать батюшку освятить сервер с фрибсдой что бы лучше работала.

libx264 здорово развивается и там регулярно делают очень серьезные ускорения. Процентов так на 5% скорости в определенных условиях.
 
Попробовал на свежесобранных ffmpeg-2.2.3+x264-stable-latest. Все те же 150.
190-200 без overlay-картинки, о которой забыл в первый раз. 
 
Многие современные линуксы по умолчанию втыкают cpu_governor в powersave и ставят частоту в половину от номинальной.

 Не, governor ondemand. Но я еще обращу на это внимание, так же как и на приколы intel_idle. 

В итоге не греть себе голову и взять Xeon E3-1280(Haswell, 3.6-4GHz)?

Max Lapshin

unread,
Jul 4, 2014, 3:56:52 PM7/4/14
to stream...@googlegroups.com
Ты главное посмотри на /proc/cpuinfo —  сколько там мегагерц.

Ну и покажи полностью свои настройки.

Александр Бубнов

unread,
Jul 4, 2014, 4:10:57 PM7/4/14
to stream...@googlegroups.com
~$ cpufreq-info | grep -E 'governor | current CPU frequency'
                  The governor "performance" may decide which speed to use
  current CPU frequency is 3.30 GHz.
                  The governor "performance" may decide which speed to use
  current CPU frequency is 3.30 GHz.
                  The governor "performance" may decide which speed to use
  current CPU frequency is 3.30 GHz.
                  The governor "performance" may decide which speed to use
  current CPU frequency is 3.30 GHz.
                  The governor "performance" may decide which speed to use
  current CPU frequency is 3.30 GHz.
                  The governor "performance" may decide which speed to use
  current CPU frequency is 3.30 GHz.
                  The governor "performance" may decide which speed to use
  current CPU frequency is 3.30 GHz.
                  The governor "performance" may decide which speed to use
  current CPU frequency is 3.30 GHz.
 
Но это я сейчас руками ставил governor. В ondemand при транскодинге выходила картина чуть похуже, в среднем 4 из 8 ядер не на максимальной частоте и средний фпс на глаз на ~5 меньше. В принципе, с этим все более-менее понятно.

Настройки:
ffmpeg $IN \ 
-c:v libx264 \ 
-profile:v high -preset:v faster -tune:v ssim \
-x264-params subme=6:rc-lookahead=40:vbv-bufsize=550:vbv-maxrate=500:keyint=12 \ 
-c:a libfaac -ac 2 -b:a 96k \
 $OUT
 
пятница, 4 июля 2014 г., 23:56:52 UTC+4 пользователь Max Lapshin написал:

Александр Бубнов

unread,
Jul 4, 2014, 4:13:05 PM7/4/14
to stream...@googlegroups.com
Но это, кстати, не совсем те настройки, под которые я выбираю железо. Там все будет разнообразнее. 

Max Lapshin

unread,
Jul 4, 2014, 4:43:44 PM7/4/14
to stream...@googlegroups.com
vbv-bufsize=550:vbv-maxrate=500:keyint=12

ты что хочешь получить?

keyint=12 — это два раза в секунду кейфрейм.

vbv-bufsize равный maxrate будет _как-то_ работать только когда у тебя GOP равен секунде.



Александр Бубнов

unread,
Jul 4, 2014, 5:07:15 PM7/4/14
to stream...@googlegroups.com

Про vbv-bufsize не знал, перепроверю.

А вот про keyint - у меня исходники, стыдно сказать, 12 fps, которые, вроде как, наследуются результатом, если явно не указано обратное. Но я уточню, спасибо.

05 июля 2014 г. 1:43 пользователь "Max Lapshin" <max.l...@gmail.com> написал:
--
Вы получили это сообщение, поскольку подписаны на одну из тем в группе "streaming-ru".
Чтобы отменить подписку на эту тему, перейдите по ссылке https://groups.google.com/d/topic/streaming-ru/ULfAK6JCAfQ/unsubscribe.
Чтобы отменить подписку на эту группу и все ее темы, отправьте письмо на электронный адрес streaming-ru...@googlegroups.com.

Александр Бубнов

unread,
Jul 4, 2014, 5:07:15 PM7/4/14
to stream...@googlegroups.com

А получить я хочу минимально пострадавшее изображение в пределах 500кбит, и чтобы этим занимался сам x264.
Я понимаю, что 500кбит, 12фпс и "качество изображения" в одном контексте звучит довольно сомнительно, но что есть, то есть.

05 июля 2014 г. 1:43 пользователь "Max Lapshin" <max.l...@gmail.com> написал:
vbv-bufsize=550:vbv-maxrate=500:keyint=12

--
Вы получили это сообщение, поскольку подписаны на одну из тем в группе "streaming-ru".
Чтобы отменить подписку на эту тему, перейдите по ссылке https://groups.google.com/d/topic/streaming-ru/ULfAK6JCAfQ/unsubscribe.
Чтобы отменить подписку на эту группу и все ее темы, отправьте письмо на электронный адрес streaming-ru...@googlegroups.com.

Max Lapshin

unread,
Jul 5, 2014, 6:06:32 AM7/5/14
to stream...@googlegroups.com


суббота, 5 июля 2014 г., 1:07:15 UTC+4 пользователь Александр Бубнов написал:

А получить я хочу минимально пострадавшее изображение в пределах 500кбит, и чтобы этим занимался сам x264.
Я понимаю, что 500кбит, 12фпс и "качество изображения" в одном контексте звучит довольно сомнительно, но что есть, то есть.


у тебя есть какие-то требования по задержке кодирования?
Это файлы или поток? 

Александр Бубнов

unread,
Jul 5, 2014, 12:36:02 PM7/5/14
to stream...@googlegroups.com
Файлы. Требование только по скорости транскодинга, крайне желательно не менее 10*фпс оригинала для тех SD, о которых сейчас речь.
То есть запросто может выйти, что в очереди 4 трехчасовых файла, а пользователи их в этот момент уже хотят.

суббота, 5 июля 2014 г., 14:06:32 UTC+4 пользователь Max Lapshin написал:

Max Lapshin

unread,
Jul 5, 2014, 12:38:47 PM7/5/14
to stream...@googlegroups.com
Так сделай keyint хотя бы в 60

Александр Бубнов

unread,
Jul 5, 2014, 2:39:23 PM7/5/14
to stream...@googlegroups.com
Я помню, что keyint=12 выставил из-за каких-то приколов с HLS, но не помню каких. Какие-то рекомендации в духе "желательно, чтобы длина GOP не превышала 1.5-2 секунд".
Тоже перепроверю.

суббота, 5 июля 2014 г., 20:38:47 UTC+4 пользователь Max Lapshin написал:
Reply all
Reply to author
Forward
0 new messages