Если ffmpeg не нашел audio дорожку из INPUT, не начинать кодирование и продолжать\анализировать входной поток. Заголовок FLV сначала cодержит только video, потом прилетает новый заголовок где есть audio, но ffmpeg начинает кодировать сразу же ТОЛЬКО видео. Как быть?
Input #0, flv, from 'rtmp://127.0.0.1:1935/live/stream':
Metadata:
|RtmpSampleAccess: true
Duration: N/A, start: 2816209.627000, bitrate: N/A
Stream #0:0: Data: none
Stream #0:1: Video: h264 (Constrained Baseline), yuv420p(progressive), 320x240, 7.50 fps, 7.50 tbr, 1k tbn, start 2816209.627000
Спустя некоторое время цепляется AUDIO
Stream #0:0: Video: h264 ([7][0][0][0] / 0x0007), yuv420p(tv, bt709, progressive), 360x202 [SAR 404:405 DAR 16:9], q=2-31, 128 kb/s, 20 fps, 1k tbn
Metadata:
encoder : Lavc62.15.100 libx264
Side data:
CPB properties: bitrate max/min/avg: 0/0/128000 buffer size: 0 vbv_delay: N/A
Stream #0:1: Audio: aac (LC) ([10][0][0][0] / 0x000A), 44100 Hz, stereo, fltp, 48 kb/s
Metadata:
encoder : Lavc62.15.100 aac
Если ко выходу добавить
-map a:0 -map v:0
то если нет аудио, ffmpeg завершается с ошибкой, повторный запуск ffmpegс этими параметрами (когда в стриме уже есть audio) — идет нормальная кодировка. Как бы заставить его ждать пока придет аудио, а не завершать работу?