[mythtv-users] Re: FreeBSD,
Was: Third Attempt At Installing MythTV
Carl Fongheiser
carlfongheiser at gmail.com
Sat May 7 15:49:35 UTC 2005
> Thank you, however I started there and came across two problems. First
> and foremost was that my system wasn't stable on that setup. The second
> is the port files build MythTV 0.17 which has some bug regarding
> daylight savings time, making everything in the guide one hour off.
> Google searches showed the problem was resolved in 0.18. I tried to
> compile 0.18 on my own but kept getting errors. I don't recall exactly
> but I think the errors had something to do with paths on FreeBSD not as
> expected. Obviously someone with more skills and knowledge than I could
> have worked around those. But at that point I decided to try a Linux
> distro as that's what Myth was written for.
There is a minor problem building MythTV 0.18 on FreeBSD, but nothing horrible.
If you edit libs/libmyth/DisplayResX.cpp, and add:
#include <sys/types.h>
to the top, it will build fine.
There's another problem you'll run into if you are using a FreeBSD box
as a frontend for another box that records in NuppelVideo or MPEG4
format. Basically, the automatic array allocation in the MP3 decoder
thread exceeds the thread's stack limit. Here's a patch for that
(ignore the timestamps, BTW; I had to shuffle some files around to
make the diff):
--- libs/libmythtv/nuppeldecoder.cpp.orig Sat May 7 10:45:07 2005
+++ libs/libmythtv/nuppeldecoder.cpp Sat May 7 10:46:08 2005
@@ -1055,8 +1055,8 @@
StoreRawData(strm);
int lameret = 0;
- short int pcmlbuffer[audio_samplerate * 4];
- short int pcmrbuffer[audio_samplerate * 4];
+ short int *pcmlbuffer = new short int[audio_samplerate * 4];
+ short int *pcmrbuffer = new short int[audio_samplerate * 4];
int packetlen = frameheader.packetlength;
do
@@ -1073,10 +1073,14 @@
{
VERBOSE(VB_IMPORTANT, QString("lame decode
error: %1, exiting").arg(lameret));
errored = true;
+ delete [] pcmlbuffer;
+ delete [] pcmrbuffer;
return false;
}
packetlen = 0;
} while (lameret > 0);
+ delete [] pcmlbuffer;
+ delete [] pcmrbuffer;
}
else
{
Carl Fongheiser
More information about the mythtv-users
mailing list