On Sonntag 21 Januar 2007 11:52, Torgeir Veimo wrote:
> If you're struggling with bad lip sync using either mgatv or viatv
> output, try applying this patch to reduce the allowed difference
> between audio and video;
I'm seeing a similar problem with my G400.
But I reduced the skip limit from 8 to 6. Prehaps I should reduce it more.
Further I added some logging:
Jan 22 21:04:44 bodega1 vdr: [6464] [mpeg2decoder] skipped (10, 210 [2490 ->
586])
Jan 22 21:05:59 bodega1 vdr: [6464] [mpeg2decoder] skipped (9, 171 [2530 ->
613])
Jan 22 21:07:01 bodega1 vdr: [6464] [mpeg2decoder] skipped (10, 209 [2567 ->
655])
Jan 22 21:08:11 bodega1 vdr: [6464] [mpeg2decoder] skipped (9, 170 [2608 ->
707])
So my system skips around 9 to 10 frames per minute.
60 * 25 = 1500 frames.
So the TV frame rate is 25 * 1490 / 1500 = 24.833 Hz .
I guess I've to ask Ville if there is a way to increase the dot clock
of my card in some way.
diff to get the numbers:
? dfb_report_skipped-01.diff
Index: mpeg2decoder.c
===================================================================
RCS file: /cvsroot/softdevice/softdevice/mpeg2decoder.c,v
retrieving revision 1.70
diff -U3 -r1.70 mpeg2decoder.c
--- mpeg2decoder.c 7 Nov 2006 19:01:37 -0000 1.70
+++ mpeg2decoder.c 22 Jan 2007 20:22:07 -0000
@@ -923,10 +923,28 @@
else if (delay < -frametime()*100)
delay = -frametime()*100;
- if (offset > 8*frametime())
- hurry_up=1;
- else if ( (offset < 2*frametime()) && (hurry_up > 0) )
- hurry_up=0;
+ {
+ static uint64_t skip_time = 0;
+ static int frames_skipped = 0,
+ start_offset = 0;
+
+ if (hurry_up)
+ frames_skipped++;
+
+ if (offset > 6*frametime()) {
+ if (!hurry_up) {
+ frames_skipped = 0;
+ start_offset = offset;
+ skip_time = getTimeMilis();
+ }
+ hurry_up=1;
+ } else if ( (offset < 2*frametime()) && (hurry_up > 0) ) {
+ hurry_up=0;
+ skip_time = getTimeMilis() - skip_time;
+ dsyslog ("[mpeg2decoder] skipped (%d, %lld [%d -> %d])",
+ frames_skipped, skip_time, start_offset, offset);
+ }
+ }
#if 1
int dispTime=syncTimer->GetRelTime();
--
Stefan Lucke
_______________________________________________
Softdevice-devel mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/softdevice-devel