我正在使用 FFMPEG 库编写一个 RTSP 发布程序。
输入一直在读取从相机接收数据的缓冲区。我使用 rtsp url 作为输出。即 avformat_alloc_output_context2(&ofmt_ctx,NULL,“rtsp”,输出)。
现在我需要强制输出使用 TCP 作为 rtsp_transpot。我试过下面的代码。但它不起作用。还有其他方法可以实现吗?谢谢。
AVDictionary *options = NULL;
av_dict_set(&options, "rtsp_transport", "tcp", 0);
ret = avformat_open_input(&fmt_ctx, avio_ctx->buffer, fmt_ctx->iformat, &options);
AVDictionary *options = NULL;
av_dict_set(&options, "rtsp_transport", "tcp", 0);
ret = avio_open2(&ofmt_ctx->pb, output, AVIO_FLAG_WRITE, NULL, &options);
最佳答案
我自己找的。
使用 avformat_write_header(ofmt_ctx, &options);
关于tcp - ffmpeg 编码力 rtsp 输出流使用 TCP 作为 rtsp_transport,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29977208/