diff options
author | Marco Zuehlke <andruil@users.sourceforge.net> | 2004-01-16 16:03:53 +0000 |
---|---|---|
committer | Marco Zuehlke <andruil@users.sourceforge.net> | 2004-01-16 16:03:53 +0000 |
commit | e4df8106aec324aed7f759e059705d1f0185c986 (patch) | |
tree | c6ff959f36bed4176c41780321ce933982f7be48 /src/libffmpeg/xine_decoder.c | |
parent | 47c69591d476cc4e51f297cd61df8972e300c813 (diff) | |
download | xine-lib-e4df8106aec324aed7f759e059705d1f0185c986.tar.gz xine-lib-e4df8106aec324aed7f759e059705d1f0185c986.tar.bz2 |
ffmpeg: repair BUF_FLAG_FRAME_START\ndemux_ogg: don't send too many preview buffer
CVS patchset: 6050
CVS date: 2004/01/16 16:03:53
Diffstat (limited to 'src/libffmpeg/xine_decoder.c')
-rw-r--r-- | src/libffmpeg/xine_decoder.c | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/src/libffmpeg/xine_decoder.c b/src/libffmpeg/xine_decoder.c index 885c7c0ab..7879fc1a3 100644 --- a/src/libffmpeg/xine_decoder.c +++ b/src/libffmpeg/xine_decoder.c @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA * - * $Id: xine_decoder.c,v 1.150 2004/01/12 17:35:16 miguelfreitas Exp $ + * $Id: xine_decoder.c,v 1.151 2004/01/16 16:03:54 andruil Exp $ * * xine decoder plugin using ffmpeg * @@ -979,20 +979,19 @@ static void ff_decode_data (video_decoder_t *this_gen, buf_element_t *buf) { } if(!(buf->decoder_flags & BUF_FLAG_FRAME_START)) { - xine_fast_memcpy (&this->buf[this->size], buf->content, buf->size); - if(codec_type == BUF_VIDEO_RV10) { this->context->slice_offset[this->context->slice_count] = this->size; this->context->slice_count++; } - - this->size += buf->size; } + xine_fast_memcpy (&this->buf[this->size], buf->content, buf->size); + this->size += buf->size; + if (buf->decoder_flags & BUF_FLAG_FRAMERATE) this->video_step = buf->decoder_info[0]; - if ( (buf->decoder_flags & (BUF_FLAG_FRAME_END|BUF_FLAG_FRAME_START)) + if ( (buf->decoder_flags & (BUF_FLAG_FRAME_END)) || this->is_continous) { vo_frame_t *img; @@ -1122,14 +1121,10 @@ static void ff_decode_data (video_decoder_t *this_gen, buf_element_t *buf) { } if(buf->decoder_flags & BUF_FLAG_FRAME_START) { - xine_fast_memcpy (&this->buf[this->size], buf->content, buf->size); - if(codec_type == BUF_VIDEO_RV10) { this->context->slice_offset[0] = this->size; this->context->slice_count = 1; } - - this->size += buf->size; } } else { |