Opened 12 years ago

Closed 11 years ago

#944 closed defect (worksforme)

SIGSEGV with 1080i TS file and hard frame drop.

Reported by: bpringlemeir@… Owned by: beastd
Priority: normal Component: vo
Version: HEAD Severity: normal
Keywords: Cc:
Blocked By: Blocking:
Reproduced by developer: Analyzed by developer:

Description

configuration: --prefix=/usr --confdir=/etc/mplayer --enable-gui --enable-menu --enable-alsa --enable-cddb --enable-cdparanoia --enable-libcdio --enable-debug

When hard frame drop is turned on a 1080i TS capture, a sigsegv is sent. If I don't press the 'd' key to turn on hard frame dropping, then things seem to work. The file is several GB. Here is the stack trace,

demux_mpg: 30000/1001fps NTSC content detected, switching framerate.
Warning! FPS changed 23.976 -> 29.970 (-5.994005) [4]

demux_mpg: 24000/1001fps progressive NTSC content detected, switching framerate.

demux_mpg: 30000/1001fps NTSC content detected, switching framerate.
Warning! FPS changed 23.976 -> 29.970 (-5.994005) [4]

demux_mpg: 24000/1001fps progressive NTSC content detected, switching framerate.

demux_mpg: 30000/1001fps NTSC content detected, switching framerate.
Warning! FPS changed 23.976 -> 29.970 (-5.994005) [4]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1222994240 (LWP 16451)]
0x08518ab8 in mpeg2_set_buf (mpeg2dec=0x890eac0, buf=0x8956300, id=0x89562e0) at decode.c:359
(gdb) bt full
#0 0x08518ab8 in mpeg2_set_buf (mpeg2dec=0x890eac0, buf=0x8956300, id=0x89562e0) at decode.c:359

fbuf = <value optimized out>

#1 0x0814a7a1 in decode (sh=0x89060d8, data=0xb7087008, len=73964, flags=0) at vd_libmpeg2.c:213

mpi = <value optimized out>
type = 3
use_callback = 0
mpi_new = (mp_image_t *) 0x89562e0
ph = <value optimized out>
context = (vd_libmpeg2_ctx_t *) 0x890e850
mpeg2dec = (mpeg2dec_t *) 0x890eac0
info = (const mpeg2_info_t *) 0x8912d10
framedrop = 0

#2 0x0810ec2c in decode_video (sh_video=0x89060d8, start=0xb7087008 , in_size=73960, drop_frame=0, pts=88533.1640625) at dec_video.c:366

mpi = <value optimized out>
t = 304330299
t2 = <value optimized out>

#3 0x080861ed in main (argc=2, argv=0xbfe7d824) at mplayer.c:2049

a_pos = 1.8500726216790336e-313
aq_sleep_time = 0.0274426416
time_frame = -3.43583743e-05
frame_time_remaining = <value optimized out>
blit_frame = 0
mem_ptr = <value optimized out>
opt_exit = 0
i = <value optimized out>
gui_no_filename = 0

(gdb) quit

This is my .mplayer/config (probably brain dead)
# Write your default config options here!

# Allow double bufferring.
#double=yes

# Drop frames to sync A/V
framedrop=yes

# Gradually adjust the audio to smooth out A/V timing problems.
autosync=500
mc=5

# No software scaling.
zoom=no

# Use the x11 video extention.
vo=xv

#Don't change video mode.
vm=no

# Use v4l2 and use ALSA DMA between sound devices.
tv=driver=v4l2,chanlist=us-cable,device=/dev/video0,alsa,adevice=hw.1,0,amode=1,audiorate=32000,forceaudio,volume=100

# This demuxer allows for smoother video playback for OTA streams.
#demuxer=lavf
#lavfdopts=probesize=128

# Full screen mode.
fs=yes

#Don't display A/V status.
quiet=yes

Here is the tail of midentify,

ID_VIDEO_ID=17
ID_VIDEO_ID=17
ID_AUDIO_ID=20
ID_FILENAME=Intelligence.S02E06.HDTV.1080i-FARiK.ts
ID_DEMUXER=mpegts
ID_VIDEO_FORMAT=0x10000002
ID_VIDEO_BITRATE=25000000
ID_VIDEO_WIDTH=1920
ID_VIDEO_HEIGHT=1080
ID_VIDEO_FPS=29.970
ID_VIDEO_ASPECT=0.0000
ID_AUDIO_FORMAT=8192
ID_AUDIO_BITRATE=0
ID_AUDIO_RATE=0
ID_AUDIO_NCH=0
ID_LENGTH=1086.73
ID_VIDEO_CODEC=mpegpes
ID_AUDIO_BITRATE=384000
ID_AUDIO_RATE=48000
ID_AUDIO_NCH=2
ID_AUDIO_CODEC=a52

Change History (2)

comment:1 Changed 12 years ago by compn

can you try mplayer -vc ffmpeg12 yourfile

i think (unless i'm reading the gdb report incorrectly) that its crashing in libmpeg2.

comment:2 Changed 11 years ago by bpringlemeir@…

  • Resolution set to worksforme
  • Status changed from new to closed

I haven't seen this bug re-occur. I don't normally turn on hard frame dropping, but I did re-try this with ffmpeg12. I don't have identical .config (mc=10, autosync=30).

Note: See TracTickets for help on using tickets.