[Mplayer-dev-eng] Porting to IRIX/Solaris
Jean-Francois Beleyn
gianfranco at ulyssis.org
Mon Aug 6 00:04:41 CEST 2001
On Sat, 4 Aug 2001, Arpi wrote:
> Hi,
>
> > Also got a seg fault when i opened an avi (divx), after some time i
> > located the problem at:
> >
> > aviheader.c line 91:
> > sh_video->bih=calloc((chunksize<sizeof(BITMAPINFOHEADER))?sizeof(BITMAPINFOHEADER):chunksize,1);
>
> what is segfaulting? calloc() function or sh_video == NULL ?
>
sh_video == NULL
on line 78:
if(h.fccType==streamtypeVIDEO){
we only need to compare the first 32 bits not the full 64 , so:
if(((int) h.fccType)==((int) streamtypeVIDEO)){
or maybe make FOURCC and mmioFOURCC 32 bit (int) instead of 64 bit
(DWORD/long) on alpha ?
done the last thing:
#ifndef mmioFOURCC
#ifdef ARCH_ALPHA
#define mmioFOURCC( ch0, ch1, ch2, ch3 ) \
( (int)(unsigned char)(ch0) | ( (int)(unsigned char)(ch1) << 8 ) | \
( (int)(unsigned char)(ch2) << 16 ) | ( (int)(unsigned char)(ch3) << 24
) )
#else
#define mmioFOURCC( ch0, ch1, ch2, ch3 )
\
( (long)(unsigned char)(ch0) | ( (long)(unsigned char)(ch1) << 8 ) |
\
( (long)(unsigned char)(ch2) << 16 ) | ( (long)(unsigned char)(ch3) <<
24 ) )
#endif /* ARCH_ALPHA */
#endif /* mmioFOURCC */
not sure if it has to be in :
loader/wine/vfw.h
or loader/wine/avifmt.h
or loader/DirectShow/default.h
and
#ifdef ARCH_ALPHA
typedef unsigned int DWORD;
#else
typedef unsigned long DWORD;
#endif
in :
libvo/vo_odivx.c
or loader/wine/windef.h
or loader/DirectShow/default.h
...
> > It's probably a 32 vs 64 bit thing.
> don't think so.
>
now still have no moving picture, but the verbose-messages seems a lot
better (frame, size, rate, ... values seems ok now ) and i got some
(shitty) sound ...
greetings
gianfranco
_______________________________________________
Mplayer-dev-eng mailing list
Mplayer-dev-eng at lists.sourceforge.net
http://lists.sourceforge.net/lists/listinfo/mplayer-dev-eng
More information about the MPlayer-dev-eng
mailing list