参考:最简单的基于FFMPEG的推流器附件:收流器
rtmp拉流例程:
#include <stdio.h>
#include "libavformat/avformat.h"
#include "libavutil/time.h"
#include "libavutil/mathematics.h"
// rtmp拉流,保存为out.flv文件
#define RTMP_ADDR "rtmp://127.0.0.1:1935/live/1234"
void receive_rtmp(const char *out_file) {
// 输入rtmp url
AVFormatContext *ifmt_ctx = NULL;
if (avformat_open_input(&ifmt_ctx, RTMP_ADDR, 0, 0) < 0) {
printf("failed to open input file\n");
goto _Error;
}
printf("open input\n");
if (avformat_find_stream_info(ifmt_ctx, 0) < 0) {