From: Andrea <mariofutire@googlemail.com>
To: linux-dvb@linuxtv.org
Subject: [linux-dvb] Help with demux, dvr and ringbuffers
Date: Sat, 01 Mar 2008 19:03:28 +0000 [thread overview]
Message-ID: <47C9A880.2020701@googlemail.com> (raw)
Hi,
I've understood a bit more how demux, dvr and rigbuffers work, but I still have a couple of issues.
I've been studying tzap, which seems much easier than gnutv.
tzap opens the demux twice (audio and video) and then opens the dvr to read the multiplexed data.
There are 3 ringbuffers involved:
When a demux is opened, a ringbuffer of 8192 is created (so there are 2 of them).
I can change its size using DMX_SET_BUFFER_SIZE on the demux.
Then when the dvr is opened an other ringbuffer is created of size 1925120 = 18 * 100 * 1024.
I don't know how to change its size.
My question is the following:
When I setup the demux to output to the dvr with DMX_OUT_TS_TAP, what happens afterwards?
Is the following correct or wrong?
1) The "kernel" will write data into the 2 buffers
2) The "kernel" will read from the 2 demuxes and write to the dvr.
This has very low latency so a small ringbuffer for the 2 demuxes is ok.
3) A userspace application has to read from the dvr. If it is not fast enough the dvr's ringbuffer
gets filled and we are in troubles.
If this happens I think the best solution would be to overwrite the oldest data.
This ringbuffer needs to take into account all sort of bottleneck one might have.
If it is true I have to find how to change the size of the dvr's ringbuffer.
Anybody knows why the callback (in dmxdev.c)
static int dvb_dvr_do_ioctl(struct inode *inode, struct file *file,
unsigned int cmd, void *parg)
does not handle DMX_SET_BUFFER_SIZE? Is there an intrinsic issue or is it just to be done?
_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
reply other threads:[~2008-03-01 19:03 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=47C9A880.2020701@googlemail.com \
--to=mariofutire@googlemail.com \
--cc=linux-dvb@linuxtv.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox