Opened 14 years ago

Closed 14 years ago

Last modified 14 years ago

#1361 closed defect (invalid)

Lots of "NVP: prebuffering pause" while watching HD recording, audio stutters

Reported by: smalenfant@… Owned by: Isaac Richards
Priority: minor Milestone: unknown
Component: mythtv Version: 0.19
Severity: medium Keywords: NVP prebuffering pause stutter
Cc: Ticket locked: no

Description

I just upgraded to .19 from .18 (atrpms). I have audio stutter (almost not noticable, mostly audible in high moving scene or in songs) problem in both 720p and 1080i programming. 1080i programming is worst... As you can see in the log here, the prebuffering pause are happening every ~100ms. 0.18 was working flawlessly for months for watching HDTV.

Connected at 100 mbits (0.19.20060121-2) :<br> Frontend : P4 2.4 Ghz 1G RAM FX5200 w/XvMC<br> Backend : Duron 1.6 Ghz 384M RAM w/2 Air2PC 200G(data only) on XFS<br>

What's installed on both my system :<br> [mythtv@stevexp ~]$ rpm -qa | grep 2.6.15<br> alsa-kmdl-2.6.15-1.1831_FC4-1.0.10-43.rhfc4.at<br> kernel-2.6.15-1.1831_FC4<br> nvidia-graphics7667-kmdl-2.6.15-1.1831_FC4-1.0_7667-68.rhfc4.at<br>

Attaching a short log file, I'll try to get some more debug.

Anything else needed?

Attachments (1)

shortLog.txt (1.4 KB) - added by smalenfant@… 14 years ago.
Short Log of the NVP problem seen on the frontend

Download all attachments as: .zip

Change History (8)

Changed 14 years ago by smalenfant@…

Attachment: shortLog.txt added

Short Log of the NVP problem seen on the frontend

comment:1 Changed 14 years ago by Isaac Richards

Resolution: invalid
Status: newclosed

users list question.

comment:2 Changed 14 years ago by smalenfant@…

Resolution: invalid
Status: closedreopened

I need to re-open this ticket, looks like I'm not the only one having issues with 0.19 and pre-buffering problems. How can I and the developper provide assistance to resolve this issue?

comment:3 Changed 14 years ago by Isaac Richards

Resolution: invalid
Status: reopenedclosed

As said above, use the mailing lists for discussions about performance.

comment:4 Changed 14 years ago by smalenfant@…

Resolution: invalid
Status: closedreopened

I think I've found why I'm having issues with recording. Please don't close before analysing this. The buffers used by the function CalcReadAheadThresh? returns smaller buffers for recording with rawbitrate under 18000 kbits/sec.

All my recording that are over 18mbits works fine, all the one under doesn't.

For example :

Terminator (Plays fine) start_time: 38308.760 duration: 8335.827 bitrate=18421 kb/s CalcReadAheadThresh?(65384 KB) -> threshhold(2650 KB) min read(32 KB) blk size(512 KB)

American Idol (Plays horribly) start_time: 65694.620 duration: 3605.606 bitrate=12973 kb/s CalcReadAheadThresh?(15384 KB) -> threshhold(819 KB) min read(32 KB) blk size(256 KB)

Looking at the source code, it seems that when the playback speed is over 1.5x, it would work fine because the buffer are bigger. As soon as it resume to normal, stutters starts again on stream with bitrate lower than 18000. I have proven this by trying it...

No prebuffer pause when playback is 2x! 'video_output' mean = '21299.68', std. dev. = '15939.60', fps = '46.95' 'video_output' mean = '21756.72', std. dev. = '18567.09', fps = '45.96' 'video_output' mean = '19804.54', std. dev. = '7594.39', fps = '50.49'

So as part of this, I'm asking if it would be possible to have an option to increase the buffers via a setting in the database (the current one I believe is only for the backend). Maybe a multiplier.

I strongly believe the buffer algorithm needs to be revisted. The bigger buffer should be used for stream of at least 12000 kbits/sec. The American Idol one was ~13000 kbits/sec and plays horribly.

Have I made my case now? :)

comment:5 Changed 14 years ago by bjm

Resolution: invalid
Status: reopenedclosed

Not a debate forum to "make a case". No patch attached. Send email to email lists.

comment:6 Changed 14 years ago by anonymous

FYI: I had this problem, but it went away when I changed from real-time scheduling to regular scheduling (by making mythfrontend no longer suid). I know if this just coincidentally changed performance characteristics, or if it's actually related to the problem.

comment:7 Changed 14 years ago by anonymous

FYI: I tried changing the suid and realtime scheduling and problem persists.

Note: See TracTickets for help on using tickets.