On Wed, Aug 22, 2018 at 4:30 AM Tudor Suciu <tudor.su...@gmail.com> wrote:
>
> Hello,
>
> I get errors when I try to send a live srt stream that the first packet is
> too big:
> 21:30:39.896626/ffmpeg*E: SRT.c: LiveSmoother: payload size: 1504 exceeds
> maximum allowed 1316
>
> Here are example commands for server and client:
> ffmpeg -re -i ~/Downloads/ToS-4k-1920.mov -vcodec libx264 -g 50 -refs 1 -s
> 640x360 -b:v 1000k -acodec aac -b:a 64k -flush_packets 0 -f mpegts "srt://
> 127.0.0.1:5555?mode=listener"
> ffplay srt://127.0.0.1:5555
>
> A patch that fully solves the issue is:
> diff --git a/libavformat/libsrt.c b/libavformat/libsrt.c
> index 0f9529d263..156a4776e2 100644
> --- a/libavformat/libsrt.c
> +++ b/libavformat/libsrt.c
> @@ -412,6 +412,8 @@ static int libsrt_open(URLContext *h, const char *uri,
> int flags)
> return AVERROR_UNKNOWN;
> }
>
> + h->max_packet_size = 1316;
> +
> /* SRT options (srt/srt.h) */
> p = strchr(uri, '?');
> if (p) {
>
> How would you like this option to be made work in a way that can be
> accepted in ffmpeg?
> Is there a way to change the max packet size without this patch?
>
In your case, I don't think hard coding max packet size == 1316 is not
a good idea in loopback device, and after deep in the srt
library(https://github.com/Haivision/srt) source code, I think srt
library need to fix the hardcode about packet size limition.
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel