Similar problem here, with XBMC clients on Ubuntu 14.04, openelec 4.0.6, and windows 7. My backend doesn't crash every time, but it always fails to connect. My XBMC log file is here:
http://xbmclogs.com/show.php?id=238286
The attempt to watch live tv happened around 18:35:56. Here's a snippet from my mythbackend.log. Except for the last few lines, everything looks the same when connecting with mythfrontend (which works fine).
Jun 30 18:35:56 media-server mythbackend: mythbackend[2223]: I TVRecEvent tv_rec.cpp:1050 (
HandleStateChange) TVRec[12]: Changing from None to WatchingLiveTV
Jun 30 18:35:56 media-server mythbackend: mythbackend[2223]: I TVRecEvent mythdbcon.cpp:409
(PurgeIdleConnections) New DB connection, total: 11
Jun 30 18:35:56 media-server mythbackend: mythbackend[2223]: I TVRecEvent tv_rec.cpp:3603 (
TuningCheckForHWChange) TVRec[12]: HW Tuner: 12->12
Jun 30 18:35:56 media-server mythbackend: mythbackend[2223]: N CoreContext autoexpire.cpp:2
64 (CalcParams) AutoExpire: CalcParams(): Max required Free Space: 3.0 GB w/freq: 14 min
Jun 30 18:35:56 media-server mythbackend: mythbackend[2223]: I ProcessRequest mainserver.cp
p:1561 (HandleAnnounce) MainServer::HandleAnnounce FileTransfer
Jun 30 18:35:56 media-server mythbackend: mythbackend[2223]: I ProcessRequest mainserver.cp
p:1563 (HandleAnnounce) adding: spica as a remote file transfer
Jun 30 18:35:56 media-server mythbackend: mythbackend[2223]: E HDHRStreamHandler recorders/
dtvsignalmonitor.cpp:322 (HandlePAT) DTVSigMon[12](131C2E75-2): Program #0 not found in PAT
!#012Program Association Section#012 PSIP tableID(0x0) length(13) extension(0x20f)#012
version(17) current(1) section(0) last_section(0)#012 tsid(527) programCount(1)#012
program number 901 has PID 0x00a0
Jun 30 18:35:56 media-server mythbackend: mythbackend[2223]: E HDHRStreamHandler recorders/
dtvsignalmonitor.cpp:328 (HandlePAT) DTVSigMon[12](131C2E75-2): But there is only one progr
am in the PAT, so we'll just use it
Jun 30 18:35:56 media-server mythbackend: mythbackend[2223]: N HDHRStreamHandler recorders/
dtvsignalmonitor.cpp:367 (HandlePMT) DTVSigMon[12](131C2E75-2): PMT says program 901 is enc
rypted
Jun 30 18:35:56 media-server mythbackend: mythbackend[2223]: E HDHRStreamHandler recorders/
hdhrstreamhandler.cpp:206 (UpdateFilters) HDHRSH(131C2E75-2): UpdateFilters called in wrong
tune mode
Jun 30 18:35:56 media-server mythbackend: mythbackend[2223]: N CoreContext autoexpire.cpp:2
64 (CalcParams) AutoExpire: CalcParams(): Max required Free Space: 3.0 GB w/freq: 14 min
Jun 30 18:35:56 media-server mythbackend: mythbackend[2223]: E TVRecEvent recordinginfo.cpp
:928 (InsertProgram) RecordingInfo::InsertProgram(ProgramInfo(3850_20140630223556.mpg): cha
nname(ESPNHD) startts(Mon Jun 30 22:00:00 2014) endts(Mon Jun 30 23:00:00 2014)#012
recstartts(Mon Jun 30 22:35:56 2014) recendts(Mon Jun 30 23:00:00 2014)#012
title(SportsCenter)): recording already exists...
Jun 30 18:35:56 media-server mythbackend: mythbackend[2223]: E TVRecEvent recorders/recorde
rbase.cpp:206 (SetStrOption) RecBase[12](131C2E75-2): SetStrOption(...recordingtype): Optio
n not in profile.
Jun 30 18:35:56 media-server mythbackend: mythbackend[2223]: E ProcessRequest fileringbuffe
r.cpp:307 (OpenFile) FileRingBuf(/storage/sdc/livetv/3850_20140630223556.mpg): OpenFile():
File too small (0B).
Jun 30 18:35:56 media-server mythbackend: mythbackend[2223]: E ProcessRequest mainserver.cp
p:1681 (HandleAnnounce) MainServer: Can't open /storage/sdc/livetv/3850_20140630223556.mpg
Jun 30 18:35:56 media-server mythbackend: mythbackend[2223]: W MythSocketThread(77) mainser
ver.cpp:5971 (connectionClosed) MainServer: Unknown socket closing MythSocket(0x162da20)
Jun 30 18:35:56 media-server mythbackend: mythbackend[2223]: I TVRecEvent tv_rec.cpp:1050 (
HandleStateChange) TVRec[12]: Changing from WatchingLiveTV to None
I looked at the recordings directory, and there were two files - the one listed above, 3850_20140630223556.mpg, and one a second later - 3850_20140630223557.mpg. The first had zero bytes, the second 376.
I noticed that when watching with mythfrontend, the backend also sometimes creates two files and writes the video stream to the second, later file. This goes back to previous versions as I see the same pattern in livetv files from a month ago.