<dd>If set, first bytes from the MPEG-TS stream are discarded. It may be
required for some drivers / hardware which does not flush completely
the MPEG-TS buffers after a frequency/parameters change.</dd>
+<p>
+ <dt><b>Input Buffer (Bytes)</b></dt>
+ <dd>By default, linuxdvb input buffer is 18800 bytes long. The accepted
+ range is 18800-1880000 bytes.</dd>
</dl>
<p>
.opts = PO_ADVANCED,
.off = offsetof(linuxdvb_frontend_t, lfe_skip_bytes),
},
+ {
+ .type = PT_U32,
+ .id = "ibuf_size",
+ .name = "Input Buffer (Bytes)",
+ .opts = PO_ADVANCED,
+ .off = offsetof(linuxdvb_frontend_t, lfe_ibuf_size),
+ },
{}
}
};
tvhpoll_add(efd, ev, 2);
/* Allocate memory */
- sbuf_init_fixed(&sb, 18800);
+ sbuf_init_fixed(&sb, MIN(MAX(18800, lfe->lfe_ibuf_size), 1880000));
/* Read */
while (tvheadend_running) {
lfe->lfe_type = type;
strncpy(lfe->lfe_name, name, sizeof(lfe->lfe_name));
lfe->lfe_name[sizeof(lfe->lfe_name)-1] = '\0';
+ lfe->lfe_ibuf_size = 18800;
lfe = (linuxdvb_frontend_t*)mpegts_input_create0((mpegts_input_t*)lfe, idc, uuid, conf);
if (!lfe) return NULL;