Am Donnerstag, 28. August 2003 22:07 schrieb Thomas Backlund:
> From: "Steffen Barszus" <[EMAIL PROTECTED]>
>
> > Am Donnerstag, 28. August 2003 21:05 schrieb Thomas Backlund:
> > > - fix mod_dvb build framework again, and add some updates/fixes
> > > from cvs, but don't break Juans crc32 fixes :)
> >
> > Will try that out tomorrow. Does that mean you have too the
> > play_iframe() patch applied ? If yes i would compile vdr according
> > to that :)
>
> I'm not sure...
> I used the cvs snapshot from 20030827, + some added ids..
>
> Could you send it to me so I can verify, an if it's not added,
> I'll add it to my next build yhat should hit the mirrors tomorrow,
> or on saturday...
>
> Thomas
This is the patch, taken from dvb mailinglist. I'm not sure if it is
safe, but it was reported to smooth dvd playback with vdr's dvd-plugin.
If you need a clean patch (if that patch does not apply i will ask
oliver endriss for a clean patch) I have asked mostly, because to take
advantage of the patch, vdr needs a different compiling/patch.
If your mod_dvb wworks so well as the last one, i hope Juan takes your
version :))
A pitty that i don't have the skystar2 (b2c2) yet to test with.
---------------------------------------------------------------------
--- av7110.c.org Sat Aug 23 17:35:11 2003
+++ av7110.c Tue Aug 26 20:01:17 2003
@@ -4237,29 +4237,23 @@ dvb_audio_write(struct file *file, const
return dvb_aplay(av7110, buf, count, file->f_flags&O_NONBLOCK,
0);
}
-u8 iframe_header[] = { 0x00, 0x00, 0x01, 0xe0, 0x00, 0x00, 0x80, 0x00,
0x00 };
-
#define MIN_IFRAME 400000
static int
play_iframe(av7110_t *av7110, u8 *buf, unsigned int len, int nonblock)
{
- int i, n=1;
+ int i, n;
if (!(av7110->playing&RP_VIDEO)) {
if (AV_StartPlay(av7110, RP_VIDEO) < 0) {
return -EBUSY;
}
- n=MIN_IFRAME/len+1;
}
/* setting n always > 1, fixes problems when playing stillframes
consisting of I- and P-Frames */
n=MIN_IFRAME/len+1;
- /* FIXME: nonblock? */
- dvb_play(av7110, iframe_header, sizeof(iframe_header), 0, 1, 0);
-
for (i=0; i<n; i++)
dvb_play(av7110, buf, len, 0, 1, 1);
--------------------------------------------------------------------------------------