Opened 14 years ago
Closed 14 years ago
Last modified 14 years ago
#9041 closed defect (Fixed)
Mythvideo seg fault playing iso
Reported by: | paul<at>planar.id.au | Owned by: | markk |
---|---|---|---|
Priority: | minor | Milestone: | unknown |
Component: | MythTV - DVD Playback | Version: | Master Head |
Severity: | medium | Keywords: | |
Cc: | Ticket locked: | no |
Description (last modified by )
I'm getting a segfault with trunk when playing 1 specific iso - one that worked albeit with some audio issues with 0.23. Other isos are playing, I assume it's something specific to this one file.
The file is the "Eagles Hell Freezes Over Tour." It's always had audio issues in 0.23 - playing fast, playing slow, sounding funny. I believe there is something unique about the audio track. I upgraded to trunk yesterday, and I'm now getting a segfault.
When running mythfrontend with -v all, the last bit of the trace looks like:
2010-10-02 10:27:58.225 DVDRB: safe_read: called after DVDNAV_STOP 2010-10-02 10:27:58.225 RingBuf(/usr/share/mythtv/server/mythvideo/The Eagles Hell Freezes Over Tour.iso): ReadPriv(..2048, normal): ReadDirect checksum 54849 2010-10-02 10:27:58.225 RingBuf(/usr/share/mythtv/server/mythvideo/The Eagles Hell Freezes Over Tour.iso): ReadPriv(..2048, normal) @0 -- begin 2010-10-02 10:27:58.225 DVDRB: safe_read: called after DVDNAV_STOP 2010-10-02 10:27:58.225 RingBuf(/usr/share/mythtv/server/mythvideo/The Eagles Hell Freezes Over Tour.iso): ReadPriv(..2048, normal): ReadDirect checksum 54849 2010-10-02 10:27:58.225 RingBuf(/usr/share/mythtv/server/mythvideo/The Eagles Hell Freezes Over Tour.iso): ReadPriv(..2048, normal) @0 -- begin 2010-10-02 10:27:58.225 DVDRB: safe_read: called after DVDNAV_STOP 2010-10-02 10:27:58.225 RingBuf(/usr/share/mythtv/server/mythvideo/The Eagles Hell Freezes Over Tour.iso): ReadPriv(..2048, normal): ReadDirect checksum 54849 2010-10-02 10:27:58.225 RingBuf(/usr/share/mythtv/server/mythvideo/The Eagles Hell Freezes Over Tour.iso): ReadPriv(..2048, normal) @0 -- begin 2010-10-02 10:27:58.225 DVDRB: safe_read: called after DVDNAV_STOP 2010-10-02 10:27:58.225 RingBuf(/usr/share/mythtv/server/mythvideo/The Eagles Hell Freezes Over Tour.iso): ReadPriv(..2048, normal): ReadDirect checksum 54849 2010-10-02 10:27:58.225 RingBuf(/usr/share/mythtv/server/mythvideo/The Eagles Hell Freezes Over Tour.iso): ReadPriv(..2048, normal) @0 -- begin 2010-10-02 10:27:58.225 DVDRB: safe_read: called after DVDNAV_STOP 2010-10-02 10:27:58.225 RingBuf(/usr/share/mythtv/server/mythvideo/The Eagles Hell Freezes Over Tour.iso): ReadPriv(..2048, normal): ReadDirect checksum 54849 2010-10-02 10:27:58.225 [mpeg @ 0xb6cea0c0]Probe buffer size limit 5000000 reached 2010-10-02 10:27:58.225 [mpeg @ 0xb6cea0c0]Estimating duration from bitrate, this may be inaccurate Segmentation fault The lines above are repeated a large number of times, the last thing before them was: 2010-10-02 10:29:36.152 MythUIHelper: Cache too big (21284120), removing :-usr-share-mythtv-server-mythvideo-posters-7350_coverart.jpg-reflected-164x270.png: 2010-10-02 10:29:36.153 MythUIHelper: 2 images are eligible for expiry 2010-10-02 10:29:36.153 MythUIHelper: Cache too big (21106168), removing :-usr-share-mythtv-server-mythvideo-posters-0092890.jpg--133x280.png: 2010-10-02 10:29:36.153 MythUIHelper: NOT IN RAM CACHE, Adding, and adding to size :-usr-share-mythtv-server-mythvideo-fanart-0123815_fanart.jpg--1280x1023.png: :523 7760: 2010-10-02 10:29:36.153 MythUIHelper: MythUIHelper::CacheImage : Cache Count = :215: size :20965720: 2010-10-02 10:29:36.153 MythUIImage(0x917c448): LoadImage found in cache :-usr-share-mythtv-server-mythvideo-fanart-0123815_fanart.jpg--1280x1023.png: RefCount = 2 2010-10-02 10:29:36.160 RingBuf(/usr/share/mythtv/server/mythvideo/The Eagles Hell Freezes Over Tour.iso): ReadPriv(..2048, normal) @0 -- begin 2010-10-02 10:29:36.160 DVDRB: Entering DVDNAV_WAIT 2010-10-02 10:29:36.160 DVDRB: Exiting DVDNAV_WAIT status 2010-10-02 10:29:36.160 Entering DVD Still Frame 2010-10-02 10:29:36.170 DVDNAV_STOP 2010-10-02 10:29:36.170 RingBuf(/usr/share/mythtv/server/mythvideo/The Eagles Hell Freezes Over Tour.iso): ReadPriv(..2048, normal): ReadDirect checksum 54849 2010-10-02 10:29:36.170 RingBuf(/usr/share/mythtv/server/mythvideo/The Eagles Hell Freezes Over Tour.iso): ReadPriv(..2048, normal) @0 -- begin 2010-10-02 10:29:36.170 DVDRB: safe_read: called after DVDNAV_STOP 2010-10-02 10:29:36.171 RingBuf(/usr/share/mythtv/server/mythvideo/The Eagles Hell Freezes Over Tour.iso): ReadPriv(..2048, normal): ReadDirect checksum 54849 2010-10-02 10:29:36.171 RingBuf(/usr/share/mythtv/server/mythvideo/The Eagles Hell Freezes Over Tour.iso): ReadPriv(..2048, normal) @0 -- begin 2010-10-02 10:29:36.171 DVDRB: safe_read: called after DVDNAV_STOP
Finally, a backtrace of the segfault itself is attached.
I'd attach the iso file, but seeing as it's a DVD iso and large, that probably isn't practical (or legal). But if there's a way to subset it and leave it useful, I'm happy to do that. From my naive view, it sounds like it's just the DVD navigation stuff that's crashing, so possibly there isn't much of the content that's needed.
Attachments (3)
Change History (10)
comment:2 Changed 14 years ago by
comment:3 Changed 14 years ago by
Can you please attach the full, unedited output of 'mythfrontend -v playback' Thanks
comment:4 Changed 14 years ago by
mythfrontend log attached as requested. It's quite large, but most of it is the repeated "safe_read: called after DVDNAV_STOP", there's only a few pages of content other than that.
Let me know if there's anything else I can add.
comment:5 Changed 14 years ago by
Status: | new → assigned |
---|
comment:6 Changed 14 years ago by
Resolution: | → Fixed |
---|---|
Status: | assigned → closed |
Almost certainly fixed in trunk and release-0-24-fixes
comment:7 Changed 14 years ago by
I have tested and can confirm this is fixed for this iso on trunk.
Looking at the info, it looks to me like there's something about the DVD that's causing a loop that isn't exiting correctly, and we're then overfilling a buffer that was set to be far larger than we would feasibly need. As to the why of the loop, or even where that loop is, that's beyond my current skills.