[MPlayer-users] MPlayer crashes on MPEG-1 or -2 on a PPC/G5

Steven M. Schultz sms at 2BSD.COM
Tue Aug 10 05:58:45 CEST 2004


On Sat, 7 Aug 2004, Steven M. Schultz wrote:

> 	It appears that MPEG-1 and MPEG-2 decoding has suffered some breakage
> 	when MPlayer is run on a PPC/G5 (OS/X 10.3.4).

	I believe the changes made around August 2 in libmpeg2 are when the
	MPEG-1/MPEG-2 decoding on a PPC ceased working.

> 	After a couple seconds of a pure green playback window MPlayer crashes
> 	with a 'MPlayer interrupted by signal 10 in module: decode_video'
> 	error.

	The stack back trace at the time of the fault is:

Program received signal EXC_BAD_ACCESS, Could not access memory.
0x00000000 in ?? ()
(gdb) where
#0  0x00000000 in ?? ()
Cannot access memory at address 0x0
Cannot access memory at address 0x0
#1  0x000a8670 in mpeg2_slice (decoder=0xff3040, code=16724096, buffer=0x4b1d40 "") at slice.c:2052
#2  0x0009c154 in mpeg2_parse (mpeg2dec=0x28022444) at decode.c:188
#3  0x00079e48 in decode (sh=0xff3080, data=0x1, len=16724032, flags=50331647) at vd_libmpeg2.c:113
#4  0x000519e0 in decode_video (sh_video=0xff3080, start=0x1 <Address 0x1 out of bounds>, in_size=1208099908, drop_frame=4224560) at dec_video.c:309
#5  0x00006f98 in SDL_main (argc=4089520, argv=0x407630) at mplayer.c:2115

	The value of 'code' to mpeg2_slice looks suspicious at 16724096.

gdb) print *decoder
$2 = {
  bitstream_buf = 1473448832, 
  bitstream_bits = -9, 
  bitstream_ptr = 0x24050be "L.\231U?H?\230eQH ", 
  dest = {0x6a0c000 "????????\f\003", 0x6a25c80 "\003\003\003\003\003\003\003\003\005\005\005\003\002\001\001\001\005\005\004\004\002\002\002\001", 0x6a20a00 ""}, 
  offset = 208, 
  stride = 352, 
  uv_stride = 176, 
  slice_stride = 5632, 
  slice_uv_stride = 1408, 
  stride_frame = 352, 
  limit_x = 672, 
  limit_y_16 = 448, 
  limit_y_8 = 464, 
  limit_y = 224, 
  b_motion = {
    ref = {{0x6968000 "????????", 0x6981c80 "", 0x697ca00 "\022\022\022\023\023\023\023\023"}, {0x0, 0x0, 0x0}}, 
    ref2 = {0x0, 0x0}, 
    pmv = {{1, -7}, {1, -7}}, 
    f_code = {3, 2}
  }, 
  f_motion = {
    ref = {{0x6988000 "????????", 0x69a1c80 "\f\f\f\f\f\f\f\f", 0x699ca00 ""}, {0x0, 0x0, 0x0}}, 
    ref2 = {0x0, 0x0}, 
    pmv = {{0, 0}, {0, 0}}, 
    f_code = {2, 1}
  }, 
  motion_parser = {0xa2e18 <motion_zero_420>, 0xa20a0 <motion_fr_field_420>, 0xa1e34 <motion_fr_frame_420>, 0xa256c <motion_fr_dmv_420>, 0}, 
  dc_dct_pred = {16384, 16384, 16384}, 
  DCTblock = {0 <repeats 60 times>, 384, 0, 0, 16}, 
  picture_dest = {0x6a0c000 "????????\f\003", 0x6a25c80 "\003\003\003\003\003\003\003\003\005\005\005\003\002\001\001\001\005\005\004\004\002\002\002\001", 0x6a20a00 ""}, 
  convert = 0x79cfc <draw_slice>, 
  convert_id = 0x2241330, 
  dmv_offset = 0, 
  v_offset = 16, 
  quantizer_matrix = {0xff35c0, 0xff45c0, 0xff35c0, 0xff45c0}, 
  chroma_quantizer = {0xff31c0, 0xff41c0}, 
  quantizer_prescale = {{{0 <repeats 64 times>}, {8, 16, 19, 22, 22, 26, 26, 27,
...
  width = 352, 
  height = 240, 
  vertical_position_extension = 0, 
  chroma_format = 0, 
  coding_type = 3, 
  intra_dc_precision = 6, 
  picture_structure = 3, 
  frame_pred_frame_dct = 1, 
  concealment_motion_vectors = 0, 
  intra_vlc_format = 1, 
  top_field_first = 0, 
  scan = 0x3e66fc "", 
  second_field = 0, 
  mpeg1 = 0, 
  quantizer_scale = 112, 
  quant_store = 0x22140a0 'p' <repeats 200 times>..., 
  quant_stride = 22
}

	At that point I'm stuck.  Is the problem in libmpeg2 (the mpeg2dec
	program from libmpeg2.sourceforge.net works fine) or earlier in 
	MPlayer?

	Any other PPC/MAC users having MPEG-1/-2 playback problems?

	Cheers,
	Steven Schultz




More information about the MPlayer-users mailing list