[mythtv-users] AlwaysStreamFiles broken under some conditions in 0.24-fixes and no longer a setting in the menu so cannot be unset easily

Roger Heflin rogerheflin at gmail.com
Sun Jul 17 21:51:45 UTC 2011

On 06/30/2011 07:51 PM, Roger Heflin wrote:
> Hello,
> I have a separate backend w/2 frontends.
> One frontend works fine and does not use remote file transfer, the
> other frontend uses remote file transfer when doing playback, on some
> videos this causes excessively high network loads and high cpus loads
> on the backend (note network is wired Gbit) on some transcoded files
> (transcoded to SD) in these cases I can copy back the un-transcoded
> 1080i original and play it just fine, and it has a much higher bitrate
> that the transcoded content that is not working, so something odd is
> going on. Also, all of my stuff is trancoded to the same format and
> only some transcoded recording have these issues.
> What is causing one frontend to use remote file vs local? both
> frontends have the storage location mounted via nfs in the exact same
> directory as is on the actual backend. One shows
> ringbuf(localfilename) the other shows RingBuf(myth://192.168.), so
> there has to be something configured for one to use local vs myth:,
> but looking through the menus I don't find anything that looks like it
> would control this.
> And any ideas what is causing the backend behavior? On the same
> frontend a working video produces a network rate of about
> 450Kbyte/second (about right for bitrate), the non-working video
> produces an IO rate of about 12.5MByte per second. I have confirmed
> that both the frontend and backend are connected with properly working
> gigabit, on the bad videos mythbackend on the backend maxes out the
> cpu attempting to send out this excessive network traffic, as soon as
> the video is stopped the traffic goes away, on the good videos the cpu
> usage is reasonable. The other frontend appears to work because it is
> not using remote file transfer.
> Vidoes play just fine using nfs with mplayer on the frontend having
> the issues, I suspect it will play just fine on that frontend if I can
> get it to not use remote file transfer bypassing whatever is going on
> when the backend server streams the data.
> Ideas?

Fixed - this is a bug.

Setting AlwaysStreamFiles appears to no longer be in settable in the 
frontend settings, and StreamFiles appears to be badly broken in some 
cases, but while the setting has been removed from the frontend 
settings menu the frontend playback code seems to still stream files 
if that value is set.   So if you had an older frontend that this was 
set on the playback code will still use it in 0.24-fixes, but you 
cannot change it anymore without directly touching the DB.

I did the following and it made the difficult frontend start to work:

update mythconverg.settings SET data=0 where value='AlwaysStreamFiles';

Previous to that using the build-in streaming resulting the the 
backend sending out data across the network as fast as it could 
(35-40MByte per second) and saturated the network and still was not 
fast enough to keep the video/audio going...something in the streaming 
code seems to act up and be either duplicating data or just sending 
data wrong on the network, this resulted in choppy audio/video on one 
of my 2 frontends (the other one did not have alwaysstreamfiles set).

Suggestion: someone should change the playback code to ignore this 
setting if this setting is no longer changeable in the menu and is 
broken, which it appears to be in at least my case.

More information about the mythtv-users mailing list