Как избавиться от ошибок "rc buffer underflow" и "HTTP error 503 Server too busy"?

Я пытаюсь создать видео поток с помощью ffmpeg и ffserver. Я хотел бы использовать кодировщики flv или mpeg1video, потому что, глядя на локальный ffmpeg, эти кодировщики обеспечивают довольно приличную скорость.

Но когда я пробую любой из них с помощью ffserver, я получаю либо ошибку "rc buffer underflow" (когда битрейт меньше), либо "HTTP error 503 Сервер слишком занят" (когда я увеличиваю битрейт, чтобы избежать первой ошибки).

Есть ли какая-то волшебная опция, которая позволяет мне передавать данные в ffserver и избегать этих ошибок?

Мой текущий конфиг:

<Stream live.ts>
Feed feed1.ffm
Format mpegts

NoAudio

VideoCodec flv
VideoSize 600x600
VideoFrameRate 30
VideoBufferSize 5

AVOptionVideo flags +global_header
AVOptionVideo qmin 2
AVOptionVideo qmax 56
PreRoll 5
StartSendOnKey
VideoBitRate 1000
</Stream>

1 ответ

Решение

FFServer возвращает 503 Server too busy когда пропускная способность превышена. Вы можете проверить использование полосы пропускания по http://localhost:8090/stat.html (при условии, что сервер находится на localhost).

Если вы хотите увеличить пропускную способность, просто измените MaxBandwidth установка в верхней части файла конфигурации, до потоков и каналов.

Например

MaxBandwidth 10000

устанавливает пропускную способность 10 Мбит / с, которой должно быть более чем достаточно для вашего потока.

Другие вопросы по тегам