[vdr] CAM-Start: Delay?

Wolfgang Goeller wgoeller at heraklit.ch
Wed Nov 2 00:17:35 CET 2005


Hello Reinhard

> When running with default buffers, do you get the same number of errors 
> for both cRemux instances (i. e. while a recording is active) as in the 
> sample you sent recently?

No I got definitely more - don't know why.
My Machine is AMD Athlon(tm) XP 2000+ based with 750 MB
OS is SuSE 9.0
The only plugin for vdr is remote-plugin.
My recorder-card is a Hauppauge Nexus
Recording is done to a software Raid 0 - array of two disks.
The system resides on a separate disk.
There is no other disk-activity than just that of the recording.
On the machine there is as long as recording is done next to no
activity (neither disk nor anything else).
My CPU is according to top between 80 and 90% idle during records
Typically: 15-19% system 0-0.3% user
Tasks: 77 total,  6 running, 67 sleeping, 5 stopped

I changed remux.c according to your proposal and started a new
recording - swiss channel already tuned in from the previous
recording. It started without any cAudioRepacker-error but
after 7 Minutes I got the following messages:
(( BTW: after the recording ended, the messages showed up again))
(Note the CAM - message!)

Nov  2 00:07:06 gorgias vdr[20670]: cAudioRepacker(0xC0): skipped 572 
bytes while syncing on next audio frame
Nov  2 00:07:06 gorgias vdr[20670]: cAudioRepacker(0xC1): skipped 1468 
bytes while syncing on next audio frame
Nov  2 00:07:06 gorgias vdr[20670]: TS continuity error (8)
Nov  2 00:07:06 gorgias vdr[20670]: TS continuity error (2)
Nov  2 00:07:06 gorgias vdr[20670]: cAudioRepacker(0xC1): skipped 1468 
bytes while syncing on next audio frame
Nov  2 00:07:06 gorgias vdr[20670]: cAudioRepacker(0xC1): skipped 118 
bytes to sync on next audio frame
Nov  2 00:07:06 gorgias vdr[20668]: cAudioRepacker(0xC0): skipped 572 
bytes while syncing on next audio frame
Nov  2 00:07:06 gorgias vdr[20668]: cAudioRepacker(0xC1): skipped 1468 
bytes while syncing on next audio frame
Nov  2 00:07:06 gorgias vdr[20668]: TS continuity error (8)
Nov  2 00:07:06 gorgias vdr[20668]: TS continuity error (2)
Nov  2 00:07:06 gorgias vdr[20668]: cAudioRepacker(0xC1): skipped 1468 
bytes while syncing on next audio frame
Nov  2 00:07:06 gorgias vdr[20668]: cAudioRepacker(0xC1): skipped 118 
bytes to sync on next audio frame
Nov  2 00:07:15 gorgias vdr[20650]: CAM: Viaccess, 01, 0500, 0500
Nov  2 00:07:22 gorgias vdr[20670]: cAudioRepacker(0xC1): skipped 558 
bytes to sync on next audio frame
Nov  2 00:07:22 gorgias vdr[20668]: cAudioRepacker(0xC1): skipped 558 
bytes to sync on next audio frame
Nov  2 00:07:22 gorgias vdr[20670]: cAudioRepacker(0xC0): skipped 4 
bytes to sync on next audio frame
Nov  2 00:07:22 gorgias vdr[20668]: cAudioRepacker(0xC0): skipped 4 
bytes to sync on next audio frame
Nov  2 00:10:00 gorgias /USR/SBIN/CRON[20704]: (root) CMD 
(/usr/local/bin/vcr-kontrolle)
Nov  2 00:10:00 gorgias vdr[20670]: recording thread ended (pid=20670, 
tid=213001)
Nov  2 00:10:00 gorgias vdr[20669]: file writer thread ended (pid=20669, 
tid=196614)
Nov  2 00:10:00 gorgias vdr[20646]: cTS2PES got 0 TS errors, 1 TS 
continuity errors
Nov  2 00:10:00 gorgias vdr[20646]: cTS2PES got 0 TS errors, 1 TS 
continuity errors
Nov  2 00:10:00 gorgias vdr[20646]: buffer stats: 128028 (1%) used
Nov  2 00:10:00 gorgias vdr[20646]: timer 6 (42 2355-0010 'Testauf2') stop

> 
> What's your machine's CPU load when a recording kicks in?
> 
> Could disk activity cause dropping of some TS packets?
> 
> Locate cTS2PES::ts_to_pes() in remux.c and activate the following line, 
> which is currently a comment:
> 
>         //dsyslog("TS continuity error (%d)", ccCounter);
> 
> Do you now get such messages in front of c*Repacker messages?
> 
> Could you check your syslog setup to make sure that such debug messages 
> go into the same file as esyslog() messages (c*Repacker uses them)? A 
> simple test would be to look for the following messages in your 
> /var/log/messages:
> 
>    dsyslog("setting watchdog timer to %d seconds", WatchdogTimeout);
>    dsyslog("max. latency time %d seconds", MaxLatencyTime);
>    dsyslog("assuming manual start of VDR");
>    dsyslog("next timer event at %s", *TimeToString(Next));
> 
> Some of them are always generated when starting VDR.
> 
> Bye.




More information about the vdr mailing list