[MPlayer-cvslog] CVS: main/libmpdemux demux_mkv.c,1.55,1.56
Moritz Bunkus CVS
syncmail at mplayerhq.hu
Wed Mar 22 19:58:05 CET 2006
- Previous message: [MPlayer-cvslog] CVS: main cfg-mplayer.h, 1.258, 1.259 m_property.c, 1.1, 1.2 m_property.h, 1.1, 1.2 mplayer.c, 1.916, 1.917
- Next message: [MPlayer-cvslog] CVS: main/DOCS/tech slave.txt,1.51,1.52
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
CVS change done by Moritz Bunkus CVS
Update of /cvsroot/mplayer/main/libmpdemux
In directory mail:/var2/tmp/cvs-serv3839
Modified Files:
demux_mkv.c
Log Message:
Fix for playing RealVideo on PPC/big endian processors. Patch by Emanuele Giaquinta (emanuele ! giaquinta () gmail ! com).
Index: demux_mkv.c
===================================================================
RCS file: /cvsroot/mplayer/main/libmpdemux/demux_mkv.c,v
retrieving revision 1.55
retrieving revision 1.56
diff -u -r1.55 -r1.56
--- demux_mkv.c 27 Feb 2006 19:48:31 -0000 1.55
+++ demux_mkv.c 22 Mar 2006 18:58:03 -0000 1.56
@@ -2724,12 +2724,26 @@
dp_hdr_t *hdr;
uint8_t chunks;
int isize;
+#ifdef WORDS_BIGENDIAN
+ uint8_t *p;
+ int i;
+#endif
chunks = *buffer++;
isize = --size - (chunks+1)*8;
dp = new_demux_packet (sizeof (*hdr) + size);
memcpy (dp->buffer + sizeof(*hdr), buffer + (chunks+1)*8, isize);
+#ifdef WORDS_BIGENDIAN
+ p = (uint8_t *)(dp->buffer + sizeof(*hdr) + isize);
+ for (i = 0; i<(chunks+1)*8; i+=4) {
+ p[i] = *((uint8_t *)buffer+i+3);
+ p[i+1] = *((uint8_t *)buffer+i+2);
+ p[i+2] = *((uint8_t *)buffer+i+1);
+ p[i+3] = *((uint8_t *)buffer+i);
+ }
+#else
memcpy (dp->buffer + sizeof(*hdr) + isize, buffer, (chunks+1)*8);
+#endif
hdr = (dp_hdr_t *) dp->buffer;
hdr->len = isize;
- Previous message: [MPlayer-cvslog] CVS: main cfg-mplayer.h, 1.258, 1.259 m_property.c, 1.1, 1.2 m_property.h, 1.1, 1.2 mplayer.c, 1.916, 1.917
- Next message: [MPlayer-cvslog] CVS: main/DOCS/tech slave.txt,1.51,1.52
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the MPlayer-cvslog
mailing list