问题
skipping %d segments ahead, expired from playlists
static int read_data(void *opaque, uint8_t *buf, int buf_size){ ... if (v->cur_seq_no < v->start_seq_no) { av_log(NULL, AV_LOG_WARNING, "skipping %d segments ahead, expired from playlists/n", v->start_seq_no - v->cur_seq_no); v->cur_seq_no = v->start_seq_no; } ...}
Failed to reload playlist
static int read_data(void *opaque, uint8_t *buf, int buf_size){...reload:if (!v->finished && av_gettime_relative() - v->last_load_time >= reload_interval) { if ((ret = parse_playlist(c, v->url, v, NULL)) < 0) { av_log(v->parent, AV_LOG_WARNING, "Failed to reload playlist %d/n", v->index); return ret; } /* If we need to reload the playlist again below (if * there's still no more segments), switch to a reload * interval of half the target duration. */ reload_interval = v->target_duration / 2; }...}
分析原因: 接收解析m3u8时出错,在parse_playlist里会按http协议请求m3u8,然后解析收到的内容。
新闻热点
疑难解答