# HG changeset patch # User michael # Date 1090756774 0 # Node ID 813b0119a98eeb8791cc02f4ea0f4c9a2e42f8a7 # Parent b0b8bf74cd492b89491496410ac9aeb4fafbe8c2 ffserver fixes by (Koos Vriezen ) diff -r b0b8bf74cd49 -r 813b0119a98e aviobuf.c --- a/aviobuf.c Wed Jul 21 01:21:06 2004 +0000 +++ b/aviobuf.c Sun Jul 25 11:59:34 2004 +0000 @@ -148,7 +148,8 @@ return -EPIPE; s->buf_ptr = s->buffer; s->buf_end = s->buffer; - s->seek(s->opaque, offset, SEEK_SET); + if (s->seek(s->opaque, offset, SEEK_SET) == (offset_t)-EPIPE) + return -EPIPE; s->pos = offset; } s->eof_reached = 0; @@ -449,8 +450,8 @@ static int url_seek_packet(void *opaque, int64_t offset, int whence) { URLContext *h = opaque; - url_seek(h, offset, whence); - return 0; + return url_seek(h, offset, whence); + //return 0; } int url_fdopen(ByteIOContext *s, URLContext *h) diff -r b0b8bf74cd49 -r 813b0119a98e ffm.c --- a/ffm.c Wed Jul 21 01:21:06 2004 +0000 +++ b/ffm.c Sun Jul 25 11:59:34 2004 +0000 @@ -150,6 +150,7 @@ fst = av_mallocz(sizeof(FFMStream)); if (!fst) goto fail; + av_set_pts_info(st, 64, 1, 1000000); st->priv_data = fst; codec = &st->codec; diff -r b0b8bf74cd49 -r 813b0119a98e utils.c --- a/utils.c Wed Jul 21 01:21:06 2004 +0000 +++ b/utils.c Sun Jul 25 11:59:34 2004 +0000 @@ -428,7 +428,13 @@ if (!fmt) { /* read probe data */ pd->buf_size = get_buffer(pb, buf, PROBE_BUF_SIZE); - url_fseek(pb, 0, SEEK_SET); + if (url_fseek(pb, 0, SEEK_SET) == (offset_t)-EPIPE) { + url_fclose(pb); + if (url_fopen(pb, filename, URL_RDONLY) < 0) { + err = AVERROR_IO; + goto fail; + } + } } }