summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog2
-rw-r--r--src/libreal/xine_decoder.c6
2 files changed, 4 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index 189de9fba..307852a5d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -19,7 +19,7 @@ xine-lib (1-beta13)
* dxr3: libavcodec from xine's ffmpeg plugin can now be used for MPEG reencoding
(so reencoding is now possible without installing any additional libraries)
* add support seeking in real media files
- * fix playback of real video 1.0 (rv10)
+ * fix playback of real video versions 1 (rv10) and 4 (rv40)
xine-lib (1-beta12)
* enabled SVQ3 video decoding via ffmpeg
diff --git a/src/libreal/xine_decoder.c b/src/libreal/xine_decoder.c
index 2ff895291..8755d43b9 100644
--- a/src/libreal/xine_decoder.c
+++ b/src/libreal/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.34 2003/04/09 12:29:13 guenter Exp $
+ * $Id: xine_decoder.c,v 1.35 2003/05/26 22:33:39 jstembridge Exp $
*
* thin layer to use real binary-only codecs in xine
*
@@ -252,7 +252,7 @@ static int init_codec (realdec_decoder_t *this, buf_element_t *buf) {
#endif
/* setup rv30 codec (codec sub-type and image dimensions): */
- if (init_data.format>=0x20200002){
+ if ((init_data.format>=0x20200002) && (buf->type != BUF_VIDEO_RV40)) {
unsigned long cmsg24[8];
unsigned long cmsg_data[9];
int result;
@@ -446,7 +446,7 @@ static void realdec_decode_data (video_decoder_t *this_gen, buf_element_t *buf)
this->num_chunks);
#endif
- if ( (buf->content[0] & 0x20) == 0) {
+ if (((buf->content[0] & 0x20) == 0) || (buf->type != BUF_VIDEO_RV30)) {
memcpy (this->chunk_buffer+this->chunk_buffer_size, buf->content, buf->size);