svenk Опубликовано 25 октября, 2017 · Жалоба Всем привет, Существует проблема в транскодинге с помощью ffmpeg входящего spts. Прием идет со спутника и с эфира голова wisi tangram. ffmpeg постоянно жалуется на поток: [h264 @ 0x4cd0e60] SPS unavailable in decode_picture_timing [h264 @ 0x4cd0e60] non-existing PPS 0 referenced [h264 @ 0x4cd0e60] SPS unavailable in decode_picture_timing [h264 @ 0x4cd0e60] non-existing PPS 0 referenced [h264 @ 0x4cd0e60] decode_slice_header error [h264 @ 0x4cd0e60] no frame! [h264 @ 0x4cd0e60] SPS unavailable in decode_picture_timing [h264 @ 0x4cd0e60] non-existing PPS 0 referenced [h264 @ 0x4cd0e60] SPS unavailable in decode_picture_timing [h264 @ 0x4cd0e60] non-existing PPS 0 referenced [h264 @ 0x4cd0e60] decode_slice_header error [h264 @ 0x4cd0e60] no frame! [h264 @ 0x4cd0e60] reference picture missing during reorder [h264 @ 0x4cd0e60] Missing reference picture, default is 2147483647 [h264 @ 0x4cd0e60] mmco: unref short failure Транскодирую в 3-x разрешениях, для сервиса OTT, проблема в том что она всплывает не только на HD каналах но и на SD, на выходе появляются артефакты. При использовании транскодера Mediaexcel такого не наблюдается. Есть ли какие либо дополнительные опции для mpegts и как это возможно пофиксить если вообще можно. Может кто то сталкивался с такой проблемой? Сама команда запуска: ffmpeg -re -threads 32 -thread_type 2 -i 'udp://235.240.10.6:9000?fifo_size=100000000&buffer_size=100000000&overrun_nonfatal=1' -preset:v veryfast -g 30 -c:a aac -c:v libx264 -profile:v baseline -r 15 -maxrate 512k -bufsize 2000k -ar 48000 -ac 2 -crf 23 -strict -2 -async 1 -sn -ab 64k -s 426x240 -vf setdar=16:9 -metadata service_name="Varzish_512" -f mpegts udp://236.240.10.6:9000?pkt_size=1316 -s 640x360 -r 25 -g 50 -preset:v veryfast -c:a aac -c:v libx264 -profile:v main -maxrate 1024k -bufsize 5000k -ar 48000 -ac 2 -crf 23 -strict -2 -async 1 -sn -ab 64k -vf setdar=16:9 -metadata service_name="Varzish_1000" -f mpegts udp://236.240.10.6:9001?pkt_size=1316 -s 854x480 -r 25 -g 50 -preset:v veryfast -c:a aac -c:v libx264 -profile:v high -maxrate 2048k -bufsize 10000k -ar 48000 -ac 2 -crf 23 -strict -2 -async 1 -sn -ab 64k -vf setdar=16:9 -metadata service_name="Varzish_2000" -f mpegts udp://236.240.10.6:9002?pkt_size=1316 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 25 октября, 2017 · Жалоба А систему то тюнил? Там поди буфера сокетов мелкие и может оно там дропается. Примеры sysctl см тут: http://www.netlab.linkpc.net/download/software/msd/tunings/ Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
svenk Опубликовано 25 октября, 2017 · Жалоба 2 часа назад, Ivan_83 сказал: А систему то тюнил? Там поди буфера сокетов мелкие и может оно там дропается. Систему тюнили. На выходе получаем поток с периодичными интервалами. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 25 октября, 2017 · Жалоба Точню тюнили параметры сокетов для юдп и вообще сокетов? А загрузка проца случаем не в полку? (хотя бы на одном ядре где ффмпег) Ваш супер-пупер железный энкодер тоже выдаёт мультикаст на одну и туже группу но разные порты? Я бы для начала начал выдавать мультикаст на другие IP. Потом попробовал разнести по принципу один канал - один ффмпег - один выход сконвертированного Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
svenk Опубликовано 25 октября, 2017 · Жалоба 3 часа назад, Ivan_83 сказал: Точню тюнили параметры сокетов для юдп и вообще сокетов? А загрузка проца случаем не в полку? (хотя бы на одном ядре где ффмпег) Ваш супер-пупер железный энкодер тоже выдаёт мультикаст на одну и туже группу но разные порты? Я бы для начала начал выдавать мультикаст на другие IP. Потом попробовал разнести по принципу один канал - один ффмпег - один выход сконвертированного 1) Тюнили 2) Шевелится но не в полку 3) А на декодинг не хочется ресурсы убивать Но по 3 надо попробовать! спасибо за совет! Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
pentarhh Опубликовано 29 октября, 2017 · Жалоба В 25.10.2017 в 18:17, svenk сказал: Всем привет, Существует проблема в транскодинге с помощью ffmpeg входящего spts. Прием идет со спутника и с эфира голова wisi tangram. ffmpeg постоянно жалуется на поток: [h264 @ 0x4cd0e60] SPS unavailable in decode_picture_timing [h264 @ 0x4cd0e60] non-existing PPS 0 referenced [h264 @ 0x4cd0e60] SPS unavailable in decode_picture_timing [h264 @ 0x4cd0e60] non-existing PPS 0 referenced [h264 @ 0x4cd0e60] decode_slice_header error [h264 @ 0x4cd0e60] no frame! [h264 @ 0x4cd0e60] SPS unavailable in decode_picture_timing [h264 @ 0x4cd0e60] non-existing PPS 0 referenced [h264 @ 0x4cd0e60] SPS unavailable in decode_picture_timing [h264 @ 0x4cd0e60] non-existing PPS 0 referenced [h264 @ 0x4cd0e60] decode_slice_header error [h264 @ 0x4cd0e60] no frame! [h264 @ 0x4cd0e60] reference picture missing during reorder [h264 @ 0x4cd0e60] Missing reference picture, default is 2147483647 [h264 @ 0x4cd0e60] mmco: unref short failure Транскодирую в 3-x разрешениях, для сервиса OTT, проблема в том что она всплывает не только на HD каналах но и на SD, на выходе появляются артефакты. При использовании транскодера Mediaexcel такого не наблюдается. Есть ли какие либо дополнительные опции для mpegts и как это возможно пофиксить если вообще можно. Может кто то сталкивался с такой проблемой? Сама команда запуска: ffmpeg -re -threads 32 -thread_type 2 -i 'udp://235.240.10.6:9000?fifo_size=100000000&buffer_size=100000000&overrun_nonfatal=1' -preset:v veryfast -g 30 -c:a aac -c:v libx264 -profile:v baseline -r 15 -maxrate 512k -bufsize 2000k -ar 48000 -ac 2 -crf 23 -strict -2 -async 1 -sn -ab 64k -s 426x240 -vf setdar=16:9 -metadata service_name="Varzish_512" -f mpegts udp://236.240.10.6:9000?pkt_size=1316 -s 640x360 -r 25 -g 50 -preset:v veryfast -c:a aac -c:v libx264 -profile:v main -maxrate 1024k -bufsize 5000k -ar 48000 -ac 2 -crf 23 -strict -2 -async 1 -sn -ab 64k -vf setdar=16:9 -metadata service_name="Varzish_1000" -f mpegts udp://236.240.10.6:9001?pkt_size=1316 -s 854x480 -r 25 -g 50 -preset:v veryfast -c:a aac -c:v libx264 -profile:v high -maxrate 2048k -bufsize 10000k -ar 48000 -ac 2 -crf 23 -strict -2 -async 1 -sn -ab 64k -vf setdar=16:9 -metadata service_name="Varzish_2000" -f mpegts udp://236.240.10.6:9002?pkt_size=1316 Попробуй выставить значение выходного буфера нулевым: -f mpegts udp://@236.240.10.6:9000?buffer_size=0 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...