Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[linux-dvb] Network reception success



HI Holger, HI Michael, HI ALL

Network Packet reception success!
(and some bugs with v4l2)

I tested dvb-ttpci and budget-patch on 2.4 and 2.6,
with focus on dvb_net and with conjunction with tv-capture
saa7134.

Generally, on 2.4 saa7134 can't work with dvb-kernel. v4l2
patches cause dvb-ttpci to crash on insmod

On 2.6, dvb-kernel makelinks breaks in-kernel saa7134, 
saa7134 refuses to insmod due to some unresolved ir_* symbols

saa7134: Unknown symbol ir_extract_bits
saa7134: Unknown symbol ir_input_init
saa7134: Unknown symbol ir_input_nokey
saa7134: Unknown symbol ir_input_keydown

OK, leaving saa7134, I turned on to network testing

I have taken into account the recommendations for packet 
continuity check. It printed no logs so I conclude that
DMA is working perfect.

However, continuity code counter was long time not modified,
I have to adapt it for the changed structs etc, the patch is here:

+++ dvb_demux.c	Sun Oct 26 01:59:31 2003
@@ -136,21 +136,21 @@
 {
 	int count = payload(buf);
 	int p;
-	//int ccok;
-	//u8 cc;
+	int ccok;
+	u8 cc;
 
 	if (count == 0)
 		return -1;
 
 	p = 188-count;
 
-	/*
+	
 	cc=buf[3]&0x0f;
-	ccok=((dvbdmxfeed->cc+1)&0x0f)==cc ? 1 : 0;
-	dvbdmxfeed->cc=cc;
+	ccok=((feed->cc+1)&0x0f)==cc ? 1 : 0;
+	feed->cc=cc;
 	if (!ccok)
 		printk("missed packet!\n");
-	*/
+	
 
 	if (buf[1] & 0x40)  // PUSI ?
 		feed->peslen = 0xfffa;


The discontinuous picture on 2.6.0-test8 with makelinks 
on mplayer (jerky motion) is relatated to mplayer/distribution. 
Reception from dvb is good and continuous.


The best achievement is the packet reception issue (CRC??), 
with the following patch I was able to get 100% packet reception
on budget-patch as far as it could be seen with ethereal!!!!

Without this patch, 10-20% packets are lost!

--- dvb-kernel/linux/drivers/media/dvb/dvb-core/dvb_net.c.orig	Sun Oct 26 01:27:46 2003
+++ dvb-kernel/linux/drivers/media/dvb/dvb-core/dvb_net.c	Sun Oct 26 01:28:07 2003
@@ -266,7 +266,7 @@
 		return ret;
 	}
 
-	ret = priv->secfeed->set(priv->secfeed, priv->pid, 32768, 0, 1);
+	ret = priv->secfeed->set(priv->secfeed, priv->pid, 32768, 0, 0);
 
 	if (ret<0) {
 		printk("%s: could not set section feed\n", dev->name);


Best regards, Emard


-- 
Info:
To unsubscribe send a mail to ecartis@linuxtv.org with "unsubscribe linux-dvb" as subject.



Home | Main Index | Thread Index