Commit 85c1e586 authored by Christophe Massiot's avatar Christophe Massiot

* extra/kernel-patches : Check in kernel patches for lower granularity.

parent 69a87e57
......@@ -2,6 +2,9 @@ $Id$
Changes between 1.2 and 1.3:
----------------------------
* Fix latency and potential packet loss during CAM communication
* Add optional kernel patches for lower latency
* Smooth packet output with an extra buffer
* Syslog support with -l option
* Override FEC Inner with -F option
* Override Rolloff with -R option
......
......@@ -152,12 +152,13 @@ Buffering
DVB cards usually output packets in big chunks. This can be problematic
with low bitrate multiplexes. By default, DVBlast bufferizes 200 ms
and tries to smooth the output. It may be desired to change this value
with the -L option. The appropriate value should be :
with the -L option. The appropriate value for the output latency should be :
chunk_size / multiplex_bitrate
The chunk size for saa7146-based cards is 512000 bits ; for cx23885-based
cards is 192512 bits. The multiplex_bitrate depends on the symbol rate and
many other factors such as the modulation.
The chunk size for saa7146-based cards is 512000 bits ; for
cx23885-based cards is 192512 bits. The chunk size can be modified with
an appropriate kernel patch (see extra/). The multiplex_bitrate depends
on the symbol rate and many other factors such as the modulation.
The current default value allows for multiplex_rates as low as 2.56 Mbi/s.
Smaller multiplexes are rare but exist, so in that case you may want to
......@@ -187,6 +188,9 @@ streams it will introduce padding. People with low bitrate streams and
nice receivers with big buffers can raise this value to avoid superfluous
padding and lower the total bitrate.
Please bear in mind though that setting a value for max retention time
greater than the output latency has no effect.
Monitoring
==========
......
--- linux/drivers/media/video/cx23885/cx23885-dvb.c.orig 2010-06-29 15:32:09.000000000 +0200
+++ linux/drivers/media/video/cx23885/cx23885-dvb.c 2010-06-29 15:32:16.000000000 +0200
@@ -83,7 +83,7 @@
struct cx23885_tsport *port = q->priv_data;
port->ts_packet_size = 188 * 4;
- port->ts_packet_count = 32;
+ port->ts_packet_count = 4;
*size = port->ts_packet_size * port->ts_packet_count;
*count = 32;
--- linux/drivers/media/dvb/ttpci/budget-core.c.orig 2010-06-09 08:54:16.000000000 +0200
+++ linux/drivers/media/dvb/ttpci/budget-core.c 2010-06-09 08:28:23.000000000 +0200
@@ -145,7 +145,7 @@
saa7146_write(dev, BASE_EVEN3, 0);
}
saa7146_write(dev, PROT_ADDR3, budget->buffer_size);
- saa7146_write(dev, BASE_PAGE3, budget->pt.dma | ME1 | 0x90);
+ saa7146_write(dev, BASE_PAGE3, budget->pt.dma | ME1 | 0x60);
saa7146_write(dev, PITCH3, budget->buffer_width);
saa7146_write(dev, NUM_LINE_BYTE3,
About DVBlast kernel patches
============================
These kernel patches are designed to dramatically improve the latency
between the DVB card and DVBlast's output, especially on low symbol rate
transponders, at the expense of a slightly higher CPU consumption.
Basically they decrease the size of the transmission buffers from the card,
so that TS packets are handled more frequently.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment