Playback skips about every minute, NVP: Timed out...

Hi All,

I've been trying to figure out this problem for the past month. Playback of Live TV, recordings and Xvid files all pause about once every minute.

I get the following messages in my log accompanying each pause. The pause is for about 1.5 seconds, then it goes back to normal for about a minute and does it again.
This problem has persisted through several installs. Also, another thing I noticed is that some setup menus on the frontend take a few seconds to draw.

Logfile:
2009-03-13 12:16:09.848 VideoOutputXv: XVideo Adaptor Name: 'NV17 Video Overlay'
2009-03-13 12:16:11.199 NVP: Enabling Audio
2009-03-13 12:17:07.539 NVP: Timed out waiting for free video buffers.
2009-03-13 12:17:07.696 WriteAudio: buffer underrun
2009-03-13 12:18:18.573 NVP: Timed out waiting for free video buffers.
2009-03-13 12:18:18.703 WriteAudio: buffer underrun
2009-03-13 12:19:29.724 NVP: Timed out waiting for free video buffers.
2009-03-13 12:19:29.881 WriteAudio: buffer underrun

I am running mythtv on a Dual Opteron 250 system (2.4 GHz), Tyan S2885 mobo, 1280MB ram, Geforce 4 Ti4600 video card, Sound Blaster Live, and an HD Homerun tuner, 250GB SATA hdd.
I am running Mythdora 10.21 I currently have deinterlacing off and am playing back with standard Xvideo.

Things I have tried:
- noapic, acpi_use_timer_override kernel options
- disabling glx modules e.g., http://www.mythtv.org/wiki/Troubleshooting:NVP:_Timed_out_waiting_for_free_video_buffers
- different video cards, Geforce 6600GT has same behavior with same drivers
- disabled sound, switched to on-board AC97, switched to AC3 digital out
- tweaked AGP to ensure FW and SBA were on, also tried NvAGP and AGPGART
- ensured DMA was enabled on hard drive, have tried installs on an SATA Drive and PATA
- playedback with XvMC on the Geforce 6600, same skips
- NVIDIA 180.29 drivers with the Geforce 6600

My xorg.conf:
Section "Files"
ModulePath "/usr/lib/xorg/modules/extensions/nvidia"
ModulePath "/usr/lib/xorg/modules"
EndSection

Section "Module"
# Disable "glx"
# Disable "dri"
EndSection

Section "ServerFlags"
Option "AIGLX" "off"
EndSection

Section "Monitor"
Identifier "Monitor0"
VendorName "Unknown"
ModelName "Unknown"
HorizSync 28.0 - 33.0
VertRefresh 43.0 - 72.0
Option "DPMS"
EndSection

Section "Device"
Identifier "Videocard0"
Driver "nvidia"
Option "UseEvents" "True"
EndSection

Section "Screen"
Identifier "Screen0"
Device "Videocard0"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
EndSubSection
EndSection

Section "Extensions"
Option "Composite" "Disable"
EndSection

nope

I swear mythtv must like tricking me. Sometimes I think I've found the fix and everything is hunky dory for about 2 hours, then the behavior goes back to the way it was. I still have not found a solution that works and I'm frankly out of ideas. I guess I could try compiling my own kernel but I have had problems getting the nvidia 96xx drivers to compile.

I can't attest to the xvid

I can't attest to the xvid skipping, but I have seen similar behaviour myself. However, the pattern I notice is that if I do not wait for the "Live Preview" to show up recordings menu and I attempt to just play the file, I get hiccups and similar messages in my logs.

The other thing I've noticed is that I need to kill the frontend from time-to-time and restart it to get things to play nicely. From what I can tell the issues I've seen have happened in the older 0.21 version of MD5 and the current on in MD10.

Ryan

fixed it

Thanks for your reply, I _finally_ figured out the problem. About a month ago I upgraded my main system and used all my old parts to build a new mythbox. The old mythbox had a stick of 256MB ECC ram, PC1600. Since the new mythbox needed ECC DDR and I only had ram in the slots going to the first CPU, I put this in a slot for CPU2. I figured a little extra ram wouldn't hurt.

I hadn't tried taking that stick out, it passed memtest so I thought it was ok. But, because each CPU is its own memory controller and linux must have been using the memory as if it were unified and controlled by 1 memory controller. Thus for real-time playback of video, etc the processes must have been waiting to get data from the slower memory causing the pauses.

I guess the lesson is that if you're using a real-time system, make sure all your RAM is the same speed on all memory busses.

I have the same problem

I have the same problem using as frontend a fairly new laptop with nvidia card.So I don't think that your explanation makes sense :)

Might have found the final fix

In the playback profile under TV settings, I had changed the max. cpus from 1 to 2. So, the frontend was trying to run the decoding multithreaded and timings must have been getting out of sync. I switched it back to 1 cpu and now it's playing back smooth.