Ticket #5283 (closed defect: fixed)
Opened 4 years ago
Last modified 4 years ago
startup with non unity timestretch doesnt work properly
| Reported by: | markspieth | Owned by: | ijr |
|---|---|---|---|
| Priority: | minor | Milestone: | unknown |
| Component: | mythtv | Version: | unknown |
| Severity: | medium | Keywords: | |
| Cc: | Ticket locked: | no |
Description
if a program/group has a non 1.0 timestretch associated with it, timestretch is not initialized correctly.
whilst this is primarily due to multiple calls to reconfigure which are probably not necessary, the underlying support function does not cater for removal of timestretch without the subsequent stretch value not being 1.0
attached patch allows correct reinitialization of timestretch within reconfigure.
Attachments
Change History
comment:1 Changed 4 years ago by jppoet@…
Mark says my segfault is not part of the audio stuff. That being said, my mythfrontend randomly segfaults if "mythtv_initialtimerstretch.1.patch" is applied. I am attaching a BT.
Changed 4 years ago by jppoet@…
- Attachment gdb.txt.bz2 added
BT of segfault triggered by this ticket
comment:2 Changed 4 years ago by jppoet@…
Interesting. Using a kernel command line of "nosmp maxcpus=1" does *not* fix the segfault, but it does make the BT different. It still dies on a memcpy, but now it is at around line 1033 of audiooutputbase.cpp (SVN: 16252):
(gdb) up
#1 0xb6a08033 in AudioOutputBase::_AddSamples (this=0xac5c0008, buffer=0x94aa680, interleaved=true, samples=1536, timecode=24836170) at audiooutputbase.cpp:1033
//len = WaitForFreeSpace(amount);
char *ob = encoder->GetOutBuff();
if (amount >= bdiff)
{
memcpy(audiobuffer + org_waud, ob, bdiff);
ob += bdiff;
amount -= bdiff;
org_waud = 0;
}
if (amount > 0)
----> memcpy(audiobuffer + org_waud, ob, amount);
bdiff = AUDBUFSIZE - amount;
org_waud += amount;
}
(gdb) print org_waud
$2 = 1536000
(gdb) print ob
$3 = 0x9549200 "rø\037N\001"
(gdb) print amount
$4 = 6144
URL: http://cvs.mythtv.org/svn/branches/release-0-21-fixes/mythtv
Repository Root: http://cvs.mythtv.org/svn
Repository UUID: 7dbf422c-18fa-0310-86e9-fd20926502f2
Revision: 17246
I am attaching a trace and the BT.
comment:3 Changed 4 years ago by danielk
- Status changed from new to closed
- Resolution set to fixed
Changed 4 years ago by jppoet@…
- Attachment mythtv_initialtimerstretch.2.patch added
release-0-21-fixes version of patch, including fix for triggered overflow
