Hello,
my VDR has exactly *one* Full Featured DVB card as tuner card. The card has *no* hardware mods.
If I record a channel with "higher bandwith" (like the german ARD) and watch this channel at the same time, then, after some time, VDR, the driver or "something else" seems to get problems with some kind of "buffer".
The following log is from a try with VDR 1.7.10, but I'm able to reproduce the same bug with 1.7.11, too. The DVB drivers are the latest drivers from the v4l hg repository.
While this recording, the OSD also gets *pretty* slow. Seems like the FF-card gets pretty busy.
Yours
Christopher Reimer
Log follows:
Jan 2 13:13:00 vdr vdr: [3691] switching device 1 to channel 5 Jan 2 13:13:01 vdr vdr: [3702] TS buffer on device 1 thread ended (pid=3691, tid=3702) Jan 2 13:13:01 vdr vdr: [3691] timer 1 (5 1313-1535 'Catch me if you can - Mein Leben auf der Flucht') start Jan 2 13:13:01 vdr vdr: [3691] Title: 'Catch me if you can - Mein Leben auf der Flucht' Subtitle: 'Spielfilm USA 2002 (Catch me if you can)' Jan 2 13:13:01 vdr vdr: [3691] record /var/vdr/video0/Catch_me_if_you_can_-_Mein_Leben_auf_der_Flucht/2010-01-02.13.13.5-0.rec Jan 2 13:13:01 vdr vdr: [3691] creating directory /var/vdr/video0/Catch_me_if_you_can_-_Mein_Leben_auf_der_Flucht Jan 2 13:13:01 vdr vdr: [3691] creating directory /var/vdr/video0/Catch_me_if_you_can_-_Mein_Leben_auf_der_Flucht/2010-01-02.13.13.5-0.rec Jan 2 13:13:01 vdr vdr: [3701] buffer stats: 4136 (0%) used Jan 2 13:13:01 vdr vdr: [3701] receiver on device 1 thread ended (pid=3691, tid=3701) Jan 2 13:13:01 vdr vdr: [3691] recording to '/var/vdr/video0/Catch_me_if_you_can_-_Mein_Leben_auf_der_Flucht/2010-01-02.13.13.5-0.rec/00001.ts' Jan 2 13:13:01 vdr vdr: [3708] recording thread started (pid=3691, tid=3708) Jan 2 13:13:01 vdr vdr: [3709] receiver on device 1 thread started (pid=3691, tid=3709) Jan 2 13:13:01 vdr vdr: [3710] TS buffer on device 1 thread started (pid=3691, tid=3710) Jan 2 13:13:02 vdr vdr: [3691] switching to channel 3 Jan 2 13:13:02 vdr vdr: [3691] info: Kanal nicht verfügbar! Jan 2 13:13:03 vdr vdr: [3697] channel 5 (Das Erste) event Sam 02.01.2010 13:10-13:15 (VPS: 02.01 13:10) 'Tagesschau' status 4 Jan 2 13:13:04 vdr vdr: [3691] switching to channel 5 Jan 2 13:13:04 vdr vdr: [3691] buffer stats: 0 (0%) used Jan 2 13:13:04 vdr vdr: [3691] creating directory /var/cache/vdr/vtx/S19.2E-1-1101-28106 Jan 2 13:13:04 vdr vdr: [3711] osdteletext-receiver thread started (pid=3691, tid=3711) Jan 2 13:13:05 vdr vdr: [3691] OSD size changed to 720x576 @ 1,42222 Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:31 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:35 vdr vdr: [3710] buffer usage: 80% (tid=3709) Jan 2 13:14:41 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:41 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:41 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:41 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:41 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:41 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:41 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:41 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:41 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:41 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:41 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:41 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:41 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:41 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:41 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:41 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:41 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:14:41 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:14:41 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:15:08 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:15:08 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:15:08 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:15:10 vdr vdr: [3710] buffer usage: 80% (tid=3709) Jan 2 13:15:16 vdr vdr: [3710] buffer usage: 90% (tid=3709) Jan 2 13:15:18 vdr vdr: [3710] buffer usage: 100% (tid=3709) Jan 2 13:15:55 vdr vdr: [3697] channel 5 (Das Erste) event Sam 02.01.2010 13:10-13:15 (VPS: 02.01 13:10) 'Tagesschau' status 1 Jan 2 13:15:56 vdr vdr: [3697] channel 5 (Das Erste) event Sam 02.01.2010 13:15-15:25 (VPS: 02.01 13:15) 'Catch me if you can - Mein Leben auf der Flucht' status 2 Jan 2 13:16:33 vdr vdr: [3710] ERROR: driver buffer overflow on device 1 Jan 2 13:16:35 vdr vdr: [3709] ERROR: skipped 11 bytes to sync on TS packet on device 1 Jan 2 13:16:50 vdr vdr: [3697] channel 5 (Das Erste) event Sam 02.01.2010 13:15-15:25 (VPS: 02.01 13:15) 'Catch me if you can - Mein Leben auf der Flucht' status 4 Jan 2 13:17:15 vdr vdr: [3710] buffer usage: 60% (tid=3709) Jan 2 13:17:15 vdr vdr: [3710] buffer usage: 70% (tid=3709) Jan 2 13:17:16 vdr vdr: [3710] buffer usage: 80% (tid=3709) Jan 2 13:17:17 vdr vdr: [3710] buffer usage: 90% (tid=3709) Jan 2 13:17:17 vdr vdr: [3710] buffer usage: 100% (tid=3709) Jan 2 13:19:47 vdr vdr: [3710] ERROR: driver buffer overflow on device 1 Jan 2 13:19:50 vdr vdr: [3709] ERROR: skipped 11 bytes to sync on TS packet on device 1 Jan 2 13:24:36 vdr vdr: [3710] ERROR: driver buffer overflow on device 1 Jan 2 13:24:38 vdr vdr: [3709] ERROR: skipped 11 bytes to sync on TS packet on device 1 Jan 2 13:25:56 vdr vdr: [3710] ERROR: driver buffer overflow on device 1 Jan 2 13:25:58 vdr vdr: [3709] ERROR: skipped 11 bytes to sync on TS packet on device 1 Jan 2 13:36:02 vdr vdr: [3710] ERROR: driver buffer overflow on device 1 Jan 2 13:36:04 vdr vdr: [3709] ERROR: skipped 11 bytes to sync on TS packet on device 1 Jan 2 13:37:59 vdr vdr: [3710] ERROR: driver buffer overflow on device 1 Jan 2 13:38:01 vdr vdr: [3709] ERROR: skipped 11 bytes to sync on TS packet on device 1 Jan 2 13:44:33 vdr vdr: [3710] ERROR: driver buffer overflow on device 1 Jan 2 13:44:36 vdr vdr: [3709] ERROR: skipped 11 bytes to sync on TS packet on device 1 Jan 2 13:46:17 vdr vdr: [3710] ERROR: driver buffer overflow on device 1 Jan 2 13:46:19 vdr vdr: [3709] ERROR: skipped 11 bytes to sync on TS packet on device 1 Jan 2 13:47:22 vdr vdr: [3710] ERROR: driver buffer overflow on device 1 Jan 2 13:47:24 vdr vdr: [3709] ERROR: skipped 11 bytes to sync on TS packet on device 1 Jan 2 13:48:09 vdr vdr: [3710] ERROR: driver buffer overflow on device 1 Jan 2 13:48:12 vdr vdr: [3709] ERROR: skipped 11 bytes to sync on TS packet on device 1 Jan 2 13:48:52 vdr vdr: [3710] ERROR: driver buffer overflow on device 1 Jan 2 13:48:54 vdr vdr: [3709] ERROR: skipped 11 bytes to sync on TS packet on device 1 Jan 2 13:49:10 vdr vdr: [3710] ERROR: driver buffer overflow on device 1 Jan 2 13:49:13 vdr vdr: [3709] ERROR: skipped 11 bytes to sync on TS packet on device 1 Jan 2 13:49:35 vdr vdr: [3710] ERROR: driver buffer overflow on device 1 Jan 2 13:49:37 vdr vdr: [3709] ERROR: skipped 11 bytes to sync on TS packet on device 1 Jan 2 13:50:10 vdr vdr: [3710] ERROR: driver buffer overflow on device 1 Jan 2 13:50:13 vdr vdr: [3709] ERROR: skipped 11 bytes to sync on TS packet on device 1 Jan 2 13:50:49 vdr vdr: [3710] ERROR: driver buffer overflow on device 1 Jan 2 13:50:51 vdr vdr: [3709] ERROR: skipped 11 bytes to sync on TS packet on device 1 Jan 2 13:52:19 vdr vdr: [3710] ERROR: driver buffer overflow on device 1 Jan 2 13:52:21 vdr vdr: [3709] ERROR: skipped 11 bytes to sync on TS packet on device 1 Jan 2 13:52:27 vdr vdr: [3708] recording to '/var/vdr/video0/Catch_me_if_you_can_-_Mein_Leben_auf_der_Flucht/2010-01-02.13.13.5-0.rec/00002.ts' Jan 2 13:54:08 vdr vdr: [3710] ERROR: driver buffer overflow on device 1 Jan 2 13:54:10 vdr vdr: [3709] ERROR: skipped 11 bytes to sync on TS packet on device 1 Jan 2 13:55:50 vdr vdr: [3710] ERROR: driver buffer overflow on device 1 Jan 2 13:55:52 vdr vdr: [3709] ERROR: skipped 11 bytes to sync on TS packet on device 1
Am Sonntag 10 Januar 2010 schrieb Christopher Reimer:
While this recording, the OSD also gets *pretty* slow. Seems like the FF-card gets pretty busy.
You need a Full-TS Mod for this.
For details about this Mod have a look at this page:
http://www.vdr-wiki.de/wiki/index.php/Full-TS_Mod
Regards Michi
Hi, This problem is well known and there is no solution without hw mods's available.
The question is: Is there a way to disable the output while recording such channels? This will be great for ff card without full-ts-mod.
Regards Halim
Hi,
Another question: Wouldn't it be possible to make the current VDR work with "old" firmwares? Maybe with a switch to the kernel driver, which toggles between "real" TS mode and PES/TS transcoding on the CPU?
The FF card works well, if PES is used. It seems to be the switch to TS which makes FF cards fail. So if the card only works well with PES in unmodded form, then the users should have a chance to keep with PES on this card. Maybe it would even be better to use some kind of transcoding by default and only switch to "real" TS if the full-TS mod is detected.
IMHO it is not good to force users to mod their cards, if they want to switch to the future VDR 1.8 (or 2.0 or whatever version number Klaus plans for the future release). Most users will fail to mod the card, as the Full TS mod is by far the most complicated mod for the FF card. I'm pretty good at soldering, but I don't think I would manage to successfully do a full-TS mod.
CU
Manuel
On Sun, Jan 10, 2010 at 4:37 AM, Manuel Reimer Manuel.Reimer@gmx.de wrote:
The problem is with the design (lack of adequate bandwidth) of your card, not VDR. I don't think it makes much sense to force/limit VDR in any way just to accommodate design flaws with that FF card (which I own as well btw). I agree that users experiencing this problem should consider the hw mod or adding another adapter.
Also, the switch to ts was prompted by a few factors, one of which being many users requesting it. VDR is finally getting away from the limitations of being based around FF cards, let's not take any steps backwards!
VDR User wrote:
A wrapper between TS and PES wouldn't have to be placed into VDR, but into the kernel driver.
My idea was the following: The FF card is able to play PES pretty well. It fails, if more than one channel on a transponder is recorded, but this is no major problem.
Now, with the switch to TS in VDR, the kernel driver has been modified, so TS can be fetched from the FF card. Even the firmware for the card has been modified. IMHO this means, that the card now has to transfer TS from the tuner through the DSP to the PCI bus.
I don't know exactly how the card works internally, but may it be possible that PES needs less bandwith than TS does? If so, then maybe the modification of the firmware was bad idea, as the card is not able to handle the TS stream. A much better idea would be, in this case, to let the card work with PES, internally, as it was designed to do. To be able to deliver TS to VDR, a PES to TS translation could be placed into the kernel driver. VDR wouldn't even know, that the card still works with PES.
This has *nothing* to do with the Full TS mod, as this mod routes the data directly to the PCI bus, without the need to pass the data through the DSP.
Maybe this should be discussed on a more "driver related" mailing list?
CU
Manuel
Or wait for dvbsddevice plugin or similar to have a workaround for your card.
From the Change log:
- The support for full featured DVB cards of the TT/FuSi design has been moved into the new plugin 'dvbsddevice'. On systems that use such a card as their primary device, this plugin now needs to be loaded when running VDR in order to view live or recorded video. If the plugin is not loaded, the card will be treated like a budget DVB card, and there will be no OSD or viewing capability.
Theunis
2010/1/10 Timothy D. Lenz tlenz@vorgon.com:
Theunis Potgieter wrote:
Or wait for dvbsddevice plugin or similar to have a workaround for your card.
Depends on the source of the problem. If the problem is the tuner part, then this part is not in a separate plugin, as VDR still handles DVB cards without additional plugins. Most probably the bug doesn't even have something to do with VDR. It seems to be the switch to TS, which causes this problems. Maybe it's a bad idea to force the card to work with TS internally.
CU
Manuel
Am 11.01.2010 16:12, schrieb Manuel Reimer:
The PES-based VDR-1.6 also has trouble when recording from high bandwidth channels. It doesn't crash though, it just has slow OSD, juddery playback and partially broken recordings. And by the way: The recording interface has always been fetching the TV stream in TS format. Only playback was using PES.
To avoid this, either switch to a lower bandwidth channel that is fed from a budget card, or start a recording playback and go to pause. That way the bandwidth should be low enough.
A nice workaround would be a plugin that does this automatically as soom as the FF device tries to record and playback high bandwidth channels at the same time.
Cheers,
Udo
Udo Richter wrote:
And the switch to TS playback can't be the reason, why the card now seems to have higher load?
Only one card in this system.
... maybe this could get part of the new dvbsddevice plugin, already in the VDR source? Of course, this feature would have to be configurable and disabled by default, but IMHO this is the right place for this feature.
CU
Manuel