[multicat-devel] Issues with recording and playback
Eduardo Vieira
eduardovra at gmail.com
Thu Jan 5 22:12:23 CET 2012
Hi Christophe,
First of all, I've made some optimizations in the disk access part.
Now I'm using XFS file system with 4k block size, and these fstab
options:
defaults,noatime,nodiratime,nosuid,nodev,allocsize=64m
I've also added this to my sysctl.conf:
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.core.wmem_default = 16777216
Yet the behavior I've described to you earlier continues..
After a few days of testing I think I figured out what is happening here.
It seems that in intervals of 30 seconds the kernel blocks on the
write() call on the main loop while some packets arrive in the receive
socket buffer. When this occurs, multicat is taking longer to pull out
the packets from the socket buffer and saving the wrong timestamps in
the aux file.
The proof is when a remove the aux created by multicat and generate a
new one with ingests the video plays smoothly.
I can provide you links to download sample aux and ts files from my
server if you want (contact me privately if so).
To work around this problem I had 2 ideias: one is to give multicat
the possibility to stream a ts file based on the PCR present in it.
The other idea is to get the packet's timestamps based on this:
http://lwn.net/Articles/325929/
What do you think ?
Best Regards,
Eduardo
2012/1/3 Christophe Massiot <cmassiot at openheadend.tv>:
> Le 3 janv. 2012 à 23:08, Eduardo Vieira a écrit :
>
>> I'm having issues while recording and playing simultaneously a
>> multicast stream. The stream has about 10 Mbit/s, and it seems that
>> multicat is freezing in intervals of 30 seconds. I believe this is
>> happening because it's the interval that the kernel writes data from
>> cache memory to the disk (some kind of flush).
>> Do you have any configuration setup (kernel or file system parameters)
>> that is recommended for this application ?
>
> This is weird because I know people who use multicat to record ~30 channels on the same server (a good machine though). It the play-out freezes, it may be interesting to try:
> blockdev --setra 4096 /dev/sdXX
> _______________________________________________
> multicat-devel mailing list
> multicat-devel at videolan.org
> http://mailman.videolan.org/listinfo/multicat-devel
More information about the multicat-devel
mailing list