Как ускорить работу кодера ffmpeg-x264 - PullRequest
0 голосов
/ 02 марта 2012

Я портировал ffmpeg-x264 для Android, но проблема в том, что кодировщику требуется больше времени для кодирования кадра. Для кодирования требуется более 100 мс, а в некоторых устройствах, таких как LG и samsung, процессор увеличивается до 85%. Я использую следующий код avcodeccontextsettings

c->bit_rate = 256000;
c->width = width;
c->height = height;
c->gop_size = 2;//75;
c->pix_fmt = PIX_FMT_YUV420P;
c->codec_type=AVMEDIA_TYPE_VIDEO;
c->codec_id=CODEC_ID_H264;
c->cqp=36;

есть ли другие настройки, которые ускоряют кодирование ffmpeg и используют меньший процент процессора

Ответы [ 2 ]

0 голосов
/ 03 марта 2012

Я предлагаю вам спросить на x264-devel (http://mailman.videolan.org/listinfo/x264-devel). Они работают над asm-версией для ARM, включая поддержку NEON. Я думаю, что им нужна помощь в этом (у них была некоторая помощь Google-кода, которую нужно интегрировать). IЯ уверен, что Джейсон Гарретт-Глейзер выполнил профилирование на устройствах ARM и знает, какие настройки лучше всего подходят для достижения максимальной производительности.

0 голосов
/ 02 марта 2012

Если ваш компьютер недостаточно быстр, вы можете ускорить сжатие за счет степени сжатия. Вы можете использовать '-me zero', чтобы ускорить оценку движения, и '-intra', чтобы полностью отключить оценку движения (у вас есть только I-кадры, что означает, что оно примерно так же хорошо, как сжатие JPEG).

http://ffmpeg.org/ffmpeg.html#Tips

...