[mythtv] ringbuffer.cpp

Jean-Yves Avenard jyavenard at gmail.com
Sun Feb 23 01:03:06 UTC 2014


On 23 February 2014 05:06, Jonas Arndt <jonas.arndt at thearndtfamily.com> wrote:

> The difference in the logs of my friend's backend is that he has many many
> =>  D TFWWrite threadedfilewriter.cpp:489 (DiskLoop)
> TFW(/data1/Recordings/2655_20140222010733.mpg:49): write(65424) cnt 0 total
> 0
>
> *cnt 0 total 0*. I don't have any of those on my system, even though I ran
> with debug enabled watching live TV a full evening. I guess this means that
> the writer thread doesn't have anything to write. Who is feeding this guy?
> Where does the RTP(UDP) stream from the HDHomeRun fit in? Sorry for all the
> questions. I am just trying to understand how this is put together and if I
> am chasing a red herring with the HDHomeRun network thingy

That's not what the log means. If you look at the source code
(mythtv/libs/libmythbase/threadedfilewriter.cpp line 485)

        LOG(VB_FILE, LOG_DEBUG, LOC + QString("write(%1) cnt %2 total %3")
                .arg(sz).arg(writeBuffers.size())
                .arg(totalBufferUse));

so it means in your case the threaded file writer wrote 65424 byes,
and that the write buffer is now empty (the write buffer count is in
64kB up to 1MB packets)

If that's all you are seeing, it either means it is not fed data
quickly enough, or the storage medium is super fast (unlikely)

The maximum bitrate of a DVB or ATSC source is about 20Mbit/s; that's
typically *much* slower than what your typical hard drive can sustain.
so seeing cnt 0 total 0 isn't abnormal; on my system, I see them every
few seconds or so

JY


More information about the mythtv-dev mailing list