]> git.sesse.net Git - ffmpeg/blobdiff - libavformat/yuv4mpegdec.c
avformat/mpegts: reindent after last change
[ffmpeg] / libavformat / yuv4mpegdec.c
index ff0125e4cf3065832ae6a446d4f91d593ef25229..eff7fc518e413e8941551bbef6c305f8e2945057 100644 (file)
@@ -314,7 +314,13 @@ static int yuv4_read_packet(AVFormatContext *s, AVPacket *pkt)
 static int yuv4_read_seek(AVFormatContext *s, int stream_index,
                           int64_t pts, int flags)
 {
-    if (avio_seek(s->pb, pts * s->packet_size + s->internal->data_offset, SEEK_SET) < 0)
+    int64_t pos;
+
+    if (flags & AVSEEK_FLAG_BACKWARD)
+        pts = FFMAX(0, pts - 1);
+    pos = pts * s->packet_size;
+
+    if (avio_seek(s->pb, pos + s->internal->data_offset, SEEK_SET) < 0)
         return -1;
     return 0;
 }