summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--demux/aviheader.c3
-rw-r--r--demux/demux_asf.c1
-rw-r--r--demux/demux_avi.c1
-rw-r--r--demux/demux_lavf.c1
-rw-r--r--demux/demux_ts.c5
-rw-r--r--stream/stream.c14
-rw-r--r--stream/stream.h1
-rw-r--r--sub/subreader.c2
8 files changed, 3 insertions, 25 deletions
diff --git a/demux/aviheader.c b/demux/aviheader.c
index 2226be25d4..c1b9c59692 100644
--- a/demux/aviheader.c
+++ b/demux/aviheader.c
@@ -479,7 +479,6 @@ if (priv->isodml && (index_mode==-1 || index_mode==0 || index_mode==1)) {
// read the standard indices
for (cx = &priv->suidx[0], i=0; i<priv->suidx_size; cx++, i++) {
- stream_reset(demuxer->stream);
for (j=0; j<cx->nEntriesInUse; j++) {
int ret1, ret2;
memset(&cx->stdidx[j], 0, 32);
@@ -543,7 +542,6 @@ if (priv->isodml && (index_mode==-1 || index_mode==0 || index_mode==1)) {
{
uint32_t id;
uint32_t db = 0;
- stream_reset (demuxer->stream);
// find out the video stream id. I have seen files with 01db.
for (idx = &((AVIINDEXENTRY *)priv->idx)[0], i=0; i<priv->idx_size; i++, idx++){
@@ -590,7 +588,6 @@ freeout:
if(index_mode>=2 || (priv->idx_size==0 && index_mode==1)){
int idx_pos = 0;
// build index for file:
- stream_reset(demuxer->stream);
stream_seek(demuxer->stream,demuxer->movi_start);
priv->idx_size=0;
diff --git a/demux/demux_asf.c b/demux/demux_asf.c
index 0b8da6930f..f800e09dc3 100644
--- a/demux/demux_asf.c
+++ b/demux/demux_asf.c
@@ -628,7 +628,6 @@ static demuxer_t* demux_open_asf(demuxer_t* demuxer)
init_priv(asf);
if (!read_asf_header(demuxer,asf))
return NULL;
- stream_reset(demuxer->stream);
stream_seek(demuxer->stream,demuxer->movi_start);
// demuxer->idx_pos=0;
// demuxer->endpos=avi_header.movi_end;
diff --git a/demux/demux_avi.c b/demux/demux_avi.c
index daf542bfac..a07f022cde 100644
--- a/demux/demux_avi.c
+++ b/demux/demux_avi.c
@@ -456,7 +456,6 @@ static demuxer_t* demux_open_avi(demuxer_t* demuxer){
demuxer->video->id=-1; // autodetect
}
- stream_reset(demuxer->stream);
stream_seek(demuxer->stream,demuxer->movi_start);
if(priv->idx_size>1){
// decide index format:
diff --git a/demux/demux_lavf.c b/demux/demux_lavf.c
index efe8edd43c..53f583570f 100644
--- a/demux/demux_lavf.c
+++ b/demux/demux_lavf.c
@@ -143,7 +143,6 @@ static int64_t mp_seek(void *opaque, int64_t pos, int whence)
return -1;
current_pos = stream_tell(stream);
if (stream_seek(stream, pos) == 0) {
- stream_reset(stream);
stream_seek(stream, current_pos);
return -1;
}
diff --git a/demux/demux_ts.c b/demux/demux_ts.c
index 8b2a2d84ba..a16891907d 100644
--- a/demux/demux_ts.c
+++ b/demux/demux_ts.c
@@ -470,7 +470,6 @@ static int ts_check_file(demuxer_t * demuxer)
if(_read < buf_size-1)
{
mp_msg(MSGT_DEMUX, MSGL_V, "COULDN'T READ ENOUGH DATA, EXITING TS_CHECK\n");
- stream_reset(demuxer->stream);
return 0;
}
@@ -992,9 +991,6 @@ static demuxer_t *demux_open_ts(demuxer_t * demuxer)
demuxer->type= DEMUXER_TYPE_MPEG_TS;
demuxer->ts_resets_possible = true;
-
- stream_reset(demuxer->stream);
-
packet_size = ts_check_file(demuxer);
if(!packet_size)
return NULL;
@@ -1079,7 +1075,6 @@ static demuxer_t *demux_open_ts(demuxer_t * demuxer)
start_pos - priv->ts.packet_size;
demuxer->movi_start = start_pos;
demuxer->reference_clock = MP_NOPTS_VALUE;
- stream_reset(demuxer->stream);
stream_seek(demuxer->stream, start_pos); //IF IT'S FROM A PIPE IT WILL FAIL, BUT WHO CARES?
diff --git a/stream/stream.c b/stream/stream.c
index d77ecfae6e..d27b3f5f3f 100644
--- a/stream/stream.c
+++ b/stream/stream.c
@@ -304,7 +304,8 @@ static int stream_reconnect(stream_t *s)
return 0;
s->eof = 1;
- stream_reset(s);
+ s->pos = 0;
+ s->buf_pos = s->buf_len = 0;
// Some streams (internal http.c) don't support STREAM_CTRL_RECONNECT,
// but do it when trying to seek.
@@ -523,6 +524,7 @@ static int stream_seek_unbuffered(stream_t *s, int64_t newpos)
}
}
}
+ s->eof = 0; // EOF reset when seek succeeds.
return -1;
}
@@ -561,7 +563,6 @@ static int stream_seek_long(stream_t *s, int64_t pos)
break; // EOF
}
- s->eof = 0; // EOF reset when seek succeeds.
while (stream_fill_buffer(s) > 0) {
if (pos <= s->buf_len) {
s->buf_pos = pos; // byte position in sector
@@ -623,15 +624,6 @@ int stream_skip(stream_t *s, int64_t len)
return 1;
}
-void stream_reset(stream_t *s)
-{
- if (s->eof) {
- s->pos = 0;
- s->buf_pos = s->buf_len = 0;
- s->eof = 0;
- }
-}
-
int stream_control(stream_t *s, int cmd, void *arg)
{
if (!s->control)
diff --git a/stream/stream.h b/stream/stream.h
index 73cfd6e87d..db58a2fba0 100644
--- a/stream/stream.h
+++ b/stream/stream.h
@@ -307,7 +307,6 @@ struct MPOpts;
*/
struct bstr stream_read_complete(struct stream *s, void *talloc_ctx,
int max_size, int padding_bytes);
-void stream_reset(stream_t *s);
int stream_control(stream_t *s, int cmd, void *arg);
void stream_update_size(stream_t *s);
void free_stream(stream_t *s);
diff --git a/sub/subreader.c b/sub/subreader.c
index 8c5a259196..f3821ba5ab 100644
--- a/sub/subreader.c
+++ b/sub/subreader.c
@@ -1212,7 +1212,6 @@ static const char* guess_cp(stream_t *st, const char *preferred_language, const
detected_sub_cp = guess_buffer_cp(buffer, buflen, preferred_language, fallback);
free(buffer);
- stream_reset(st);
stream_seek(st,0);
return detected_sub_cp;
@@ -1255,7 +1254,6 @@ sub_data* sub_read_file(char *filename, float fps, struct MPOpts *opts)
int sub_format = SUB_INVALID;
for (utf16 = 0; sub_format == SUB_INVALID && utf16 < 3; utf16++) {
sub_format=sub_autodetect (fd, &uses_time, utf16);
- stream_reset(fd);
stream_seek(fd,0);
}
utf16--;