Mark Adams a écrit :
>> Result is :
>> -------------------------------
>> 1 current frame + 0 field 0 flipping on field 0
>> 1 current frame + 2 field 0 flipping on field 0
>> 1 current frame + 40 field 0 flipping on field 0
>> 1 current frame + 1 field 0 flipping on field 0
>> 2 current frame + 1 field 1 flipping on field 0
>> 12 current frame + 1 field 0 flipping on field 0
>> 2 current frame + 1 field 1 flipping on field 0
>> 1 current frame + 2 field 0 flipping on field 0
>> 2 current frame + 1 field 0 flipping on field 0
>
> ... etc...
>
> OK then, it appears that you're simply not able to generate frames fast
> enough, with the effect that frames will be repeated. If that happens and
> the frames are interlaced, you will see nasty judder because you get to see
> something like field 1, field 2, field 3, field 4, field 3, field 4, field
> 7, field 8 etc.
>
> Wherever you see '+2' in the output, that means that more than 1 frame
> period has elapsed since the last frame was flipped.
If I understand correctly, "+1" means that there was no dropped frames,
whether the flip occured during field 0 or 1. Field 1 meaning that
decoding was a bit late, but not enough to show stutter on screen...
> You can see that often the flips occur first during field 0 of a frame,
> then
> after a few frames, they've slipped into field 1, then you skip a frame and
> go back to field 0.
That's softdevice behaviour, which tries to keep up with frame rate. OK.
> I suspect that the DirectFB gfxdriver and the framebuffer are working
> perfectly but your hardware is just not able to keep up with generating
> frames.
This is a Via C3 Nehemiah 1GHz, with the following CPU usage on typical
live TV :
* software decoding:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2820 vdr 15 0 264m 54m 5696 S 58.0 24.7 0:42.09 vdr
* hardware decoding:
3118 vdr 15 0 278m 50m 5580 S 37.7 23.2 0:17.70 vdr
General CPU usage (HW decoding):
Cpu(s): 20.0% us, 9.3% sy, 0.0% ni, 66.3% id, 0.0% wa, 4.3% hi, 0.0% si
Maybe the problem is the load average, which seems to reach 1.00 (after
a few minutes):
load average: 1.07, 1.02, 0.50
(this may be biased by logging and "top", ssh, etc.)
That's on the softdevice side it seems.
Laz's 1.2GHz may be just the missing bit to get full synch...
> 307 current frame + 1 field 0 flipping on field 0
>
> 792 current frame + 1 field 0 flipping on field 0
>
> Those bits probably displayed properly, yes?
I guess... Since output is directed to a buffered file, I can't say for
sure.
> I presume that output you quoted was for the software decode case? How
> does it look when you use the hardware decoder?
This was the hardware decoder. The following set is with software decoding :
1 current frame + 0 field 0 flipping on field 0
1 current frame + 2 field 0 flipping on field 0
1 current frame + 26 field 1 flipping on field 0
1 current frame + 1 field 0 flipping on field 0
1 current frame + 4 field 0 flipping on field 0
15 current frame + 1 field 0 flipping on field 0
3 current frame + 1 field 1 flipping on field 0
1 current frame + 2 field 0 flipping on field 0
1 current frame + 1 field 0 flipping on field 0
3 current frame + 1 field 1 flipping on field 0
1 current frame + 2 field 0 flipping on field 0
1 current frame + 1 field 0 flipping on field 0
3 current frame + 1 field 1 flipping on field 0
1 current frame + 2 field 0 flipping on field 0
1 current frame + 1 field 0 flipping on field 0
3 current frame + 1 field 1 flipping on field 0
1 current frame + 2 field 0 flipping on field 0
1 current frame + 1 field 0 flipping on field 0
3 current frame + 1 field 1 flipping on field 0
1 current frame + 2 field 0 flipping on field 0
1 current frame + 1 field 0 flipping on field 0
3 current frame + 1 field 1 flipping on field 0
1 current frame + 2 field 0 flipping on field 0
2 current frame + 1 field 0 flipping on field 0
2 current frame + 1 field 1 flipping on field 0
1 current frame + 2 field 0 flipping on field 0
1 current frame + 1 field 0 flipping on field 0
3 current frame + 1 field 1 flipping on field 0
1 current frame + 2 field 0 flipping on field 0
4 current frame + 1 field 0 flipping on field 0
9 current frame + 1 field 1 flipping on field 0
1 current frame + 2 field 0 flipping on field 0
22 current frame + 1 field 0 flipping on field 0
2 current frame + 1 field 1 flipping on field 0
2 current frame + 1 field 0 flipping on field 0
16 current frame + 1 field 1 flipping on field 0
1 current frame + 1 field 0 flipping on field 0
2 current frame + 1 field 1 flipping on field 0
10 current frame + 1 field 0 flipping on field 0
16 current frame + 1 field 1 flipping on field 0
11 current frame + 1 field 0 flipping on field 0
4 current frame + 1 field 1 flipping on field 0
1 current frame + 1 field 0 flipping on field 0
82 current frame + 1 field 1 flipping on field 0
2 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
30 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
2 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
1 current frame + 1 field 0 flipping on field 0
9 current frame + 1 field 1 flipping on field 0
1 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
63 current frame + 1 field 0 flipping on field 0
11 current frame + 1 field 1 flipping on field 0
1 current frame + 1 field 0 flipping on field 0
3 current frame + 1 field 1 flipping on field 0
7 current frame + 1 field 0 flipping on field 0
5 current frame + 1 field 1 flipping on field 0
1 current frame + 1 field 0 flipping on field 0
2 current frame + 1 field 1 flipping on field 0
1 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
66 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
1 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
4 current frame + 1 field 0 flipping on field 0
14 current frame + 1 field 1 flipping on field 0
1 current frame + 1 field 0 flipping on field 0
6 current frame + 1 field 1 flipping on field 0
1 current frame + 1 field 0 flipping on field 0
11 current frame + 1 field 1 flipping on field 0
59 current frame + 1 field 0 flipping on field 0
6 current frame + 1 field 1 flipping on field 0
2 current frame + 1 field 0 flipping on field 0
2 current frame + 1 field 1 flipping on field 0
67 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
1 current frame + 1 field 0 flipping on field 0
3 current frame + 1 field 1 flipping on field 0
2 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
16 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
2 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
1 current frame + 1 field 0 flipping on field 0
3 current frame + 1 field 1 flipping on field 0
1 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
1 current frame + 1 field 0 flipping on field 0
3 current frame + 1 field 1 flipping on field 0
34 current frame + 1 field 0 flipping on field 0
7 current frame + 1 field 1 flipping on field 0
1 current frame + 1 field 0 flipping on field 0
10 current frame + 1 field 1 flipping on field 0
1 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
2 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
4 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
1 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
2 current frame + 1 field 0 flipping on field 0
8 current frame + 1 field 1 flipping on field 0
85 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
29 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
28 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
17 current frame + 1 field 0 flipping on field 0
15 current frame + 1 field 1 flipping on field 0
1 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
73 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
33 current frame + 1 field 0 flipping on field 0
2 current frame + 1 field 1 flipping on field 0
21 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
2 current frame + 1 field 0 flipping on field 0
2 current frame + 1 field 1 flipping on field 0
3 current frame + 1 field 0 flipping on field 0
2 current frame + 1 field 1 flipping on field 0
1 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
7 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
2 current frame + 1 field 0 flipping on field 0
3 current frame + 1 field 1 flipping on field 0
1 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
2 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
11 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
2 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
23 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
6 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
42 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
2 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
2 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
2 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
20 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
3 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
171 current frame + 1 field 0 flipping on field 0
1 current frame + 1 field 1 flipping on field 0
1584 current frame + 1 field 0 flipping on field 0
This case has no +2, except at the beginning. After that, the output is
smooth.
@Stefan : is upgrading softdevice from 0.3.1 to CVS a good idea to try
to improve this (I know, the answer is not "no") ?
--
NH
_______________________________________________
directfb-users mailing list
[email protected]
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-users