[Mesa-dev] [PATCH 5/6] vl: Remove most members of pipe_video_decoder
Andy Furniss
andyqos at ukfsn.org
Tue Dec 6 13:54:26 PST 2011
Maarten Lankhorst wrote:
> create_buffer, destroy_buffer and set_buffer are a curiosity of vl_mpeg12_decoder
> and shouldn't be part of the api.
>
> set_quant_matrix and set_reference_frames shouldn't be separate calls, but part of
> picparm, which is a requirement for h264 to work.
> set_decode_target and set_picture_parameters should instead be passed as argument to
> decode_(bitstream,macroblocks). flush is used to signal in XvMC that current frame has
> ended. begin_frame and end_frame are moved into vl_mpeg12_decoder internally.
I get a crash with R600 and mplayer -vc ffmpeg12vdpau after this patch.
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb6c946d0 (LWP 31981)]
0xb6733579 in vl_mpeg12_decode_macroblock (decoder=0xad83018,
target=0x0, picture=0x0, macroblocks=0xbfc6edb4, num_macroblocks=1) at
vl/vl_mpeg12_decoder.c:644
644 buf->mv_stream[i][mb_addr] = MotionVectorToPipe
(gdb) bt
#0 0xb6733579 in vl_mpeg12_decode_macroblock (decoder=0xad83018,
target=0x0, picture=0x0, macroblocks=0xbfc6edb4, num_macroblocks=1) at
vl/vl_mpeg12_decoder.c:644
#1 0xb6734e8e in vl_mpg12_bs_decode (bs=0xb7b13c0, n=<value optimized
out>, len=40001, lens=0xbfc6ee60, buffer=0xbfc6ee80) at
vl/vl_mpeg12_bitstream.c:930
#2 0xb673314b in vl_mpeg12_decode_bitstream (decoder=0xad83018,
target=0xb81e470, picture=0xbfc6eec8, n=1, total_len=40001,
lens=0xbfc6ee60, data=0xbfc6ee80) at vl/vl_mpeg12_decoder.c:707
#3 0xb66d2d74 in vlVdpDecoderRender (decoder=5, target=14,
picture_info=0x8900728, bitstream_buffer_count=1,
bitstream_buffers=0xb81da18) at decode.c:382
#4 0x080f053f in draw_slice (image=0xbfc6ef9c, stride=0xbfc6ef8c,
w=720, h=576, x=0, y=0) at libvo/vo_vdpau.c:986
#5 0x08241096 in draw_slice (s=0xb70c870, src=0xad847d0,
offset=0xbfc6efec, y=0, type=3, height=576) at libmpcodecs/vd_ffmpeg.c:519
#6 0x0844edd3 in ff_draw_horiz_band (s=0xb71ff80, y=0, h=576) at
mpegvideo.c:2117
#7 0x0850520c in ff_vdpau_mpeg_picture_complete (s=0xb71ff80,
buf=0xb6953008 "", buf_size=40001, slice_count=36) at vdpau.c:245
#8 0x084267ee in decode_chunks (avctx=0xb70c870, picture=0xb70c7a0,
data_size=0xbfc6f284, buf=0xb6953008 "", buf_size=40001) at mpeg12.c:2301
#9 0x08426d26 in mpeg_decode_frame (avctx=0xb70c870, data=0xb70c7a0,
data_size=0xbfc6f284, avpkt=0xbfc6f230) at mpeg12.c:2272
#10 0x084ee9d5 in avcodec_decode_video2 (avctx=0xb70c870,
picture=0xb70c7a0, got_picture_ptr=0xbfc6f284, avpkt=0xbfc6f230) at
utils.c:611
#11 0x08240344 in decode (sh=0xad82eb0, data=0xb6953008, len=40001,
flags=0) at libmpcodecs/vd_ffmpeg.c:826
#12 0x08146fcf in decode_video (sh_video=0xad82eb0, start=0xb6953008 "",
in_size=40001, drop_frame=0, pts=0.23999999463558197) at
libmpcodecs/dec_video.c:412
#13 0x080c35fb in update_video (blit_frame=0xbfc72564) at mplayer.c:2398
#14 0x080c788d in main (argc=4, argv=0xbfc72634) at mplayer.c:3823
More information about the mesa-dev
mailing list