Skip to content

Commit

Permalink
Merge branch 'master' into new-logging
Browse files Browse the repository at this point in the history
Conflicts:
	mythtv/libs/libmythtv/DeviceReadBuffer.cpp
	mythtv/libs/libmythtv/NuppelVideoRecorder.cpp
	mythtv/libs/libmythtv/ThreadedFileWriter.cpp
	mythtv/libs/libmythtv/channelbase.cpp
	mythtv/libs/libmythtv/dvbrecorder.cpp
	mythtv/libs/libmythtv/dvbstreamhandler.cpp
	mythtv/libs/libmythtv/firewiresignalmonitor.cpp
	mythtv/libs/libmythtv/hdhrrecorder.cpp
	mythtv/libs/libmythtv/hdhrstreamhandler.cpp
	mythtv/libs/libmythtv/iptvrecorder.cpp
	mythtv/libs/libmythtv/iptvsignalmonitor.cpp
	mythtv/libs/libmythtv/signalmonitor.cpp
	mythtv/libs/libmythtv/tv_rec.cpp
	mythtv/programs/mythbackend/main_helpers.h
	mythtv/programs/mythbackend/scheduler.cpp
	mythtv/programs/mythtranscode/mpeg2fix.cpp
  • Loading branch information
Beirdo committed May 16, 2011
2 parents 4233a16 + 6ab3ca9 commit d62cc57
Show file tree
Hide file tree
Showing 153 changed files with 8,069 additions and 6,149 deletions.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@@ -0,0 +1,2 @@
Has an intro and contains a summary main menu with 10 recordings per page.
Does not have a chapter selection submenu, recording titles, dates or category.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@@ -0,0 +1,125 @@
<?xml version="1.0" encoding="UTF-8"?>
<mythburntheme>

<!-- Theme for MythBurn - show intro & main menu with 10 recordings -->

<fonts>
<font name="title" size="22" color="yellow"
effect="outline" shadowcolor="black" shadowsize="1">FreeSans.ttf</font>
<font name="subt" size="18" color="white"
effect="outline" shadowcolor="black" shadowsize="1">FreeSans.ttf</font>
<font name="desc" size="14" color="white"
effect="outline" shadowcolor="black" shadowsize="1">FreeSans.ttf</font>
</fonts>

<intro filename="mythtv_intro.mpg"/>

<menu background="Black-Background.png" music="silence.ac3">
<item>
<previous filename="previous.png"
x="20" y="400" w="48" h="48"
mask="previous_mask.png" static="True"/>

<!-- The text here should be Page X of Y, but mythburn can't do that yet -->
<text x="55" y="500" w="70" h="22"
value="Page %page" font="desc"
static="True" align="left"/>

<text x="20" y="20" w="390" h="30"
value="%title" font="title"
static="True" align="left"/>

<graphic filename="%thumbnail"
x="130" y="59" w="120" h="90"
static="False" halign="left" valign="top"/>
<text x="130" y="59" w="280" h="30"
value="%subtitle" font="subt"
static="False" align="left"/>
</item>

<item>
<graphic filename="%thumbnail"
x="130" y="160" w="120" h="90"
static="False" halign="left" valign="top"/>
<text x="130" y="160" w="280" h="30"
value="%subtitle" font="subt"
static="False" align="left"/>
</item>

<item>
<graphic filename="%thumbnail"
x="130" y="260" w="120" h="90"
static="False" halign="left" valign="top"/>
<text x="130" y="260" w="280" h="30"
value="%subtitle" font="subt"
static="False" align="left"/>
</item>

<item>
<graphic filename="%thumbnail"
x="130" y="360" w="120" h="90"
static="False" halign="left" valign="top"/>
<text x="130" y="360" w="280" h="30"
value="%subtitle" font="subt"
static="False" align="left"/>
</item>

<item>
<graphic filename="%thumbnail"
x="130" y="460" w="120" h="90"
static="False" halign="left" valign="top"/>
<text x="130" y="460" w="280" h="30"
value="%subtitle" font="subt"
static="False" align="left"/>
</item>

<item>
<graphic filename="%thumbnail"
x="430" y="60" w="120" h="90"
static="False" halign="left" valign="top"/>
<text x="430" y="60" w="280" h="30"
value="%subtitle" font="subt"
static="False" align="left"/>
</item>

<item>
<graphic filename="%thumbnail"
x="430" y="160" w="120" h="90"
static="False" halign="left" valign="top"/>
<text x="430" y="160" w="280" h="30"
value="%subtitle" font="subt"
static="False" align="left"/>
</item>

<item>
<graphic filename="%thumbnail"
x="430" y="260" w="120" h="90"
static="False" halign="left" valign="top"/>
<text x="430" y="260" w="280" h="30"
value="%subtitle" font="subt"
static="False" align="left"/>
</item>

<item>
<graphic filename="%thumbnail"
x="430" y="360" w="120" h="90"
static="False" halign="left" valign="top"/>
<text x="430" y="360" w="280" h="30"
value="%subtitle" font="subt"
static="False" align="left"/>
</item>

<item>
<next filename="next.png"
x="75" y="400" w="48" h="48"
mask="next_mask.png" static="False"/>

<graphic filename="%thumbnail"
x="430" y="460" w="120" h="90"
static="False" halign="left" valign="top"/>
<text x="430" y="460" w="280" h="30"
value="%subtitle" font="subt"
static="False" align="left"/>
</item>
</menu>
</mythburntheme>
3 changes: 3 additions & 0 deletions mythplugins/mythgallery/dcrawplugin/dcrawplugin.cpp
Expand Up @@ -38,5 +38,8 @@ QImageIOHandler *DcrawPlugin::create(QIODevice *device, const QByteArray &format
return handler;
}

// This shouldn't be necessary, but it shuts up the dang compiler warning.
QObject* qt_plugin_instance_dcrawplugin();

Q_EXPORT_PLUGIN2(dcrawplugin, DcrawPlugin)

1 change: 1 addition & 0 deletions mythtv/VERSION
@@ -0,0 +1 @@
SOURCE_VERSION="v0.25pre"
6 changes: 6 additions & 0 deletions mythtv/bindings/php/MythBackend.php
Expand Up @@ -50,6 +50,12 @@ static function find($host = null, $port = null) {
function __construct($host, $port = null) {
$this->host = $host;
$this->ip = _or(setting('BackendServerIP', $this->host), $host);

// If the IP contains a ':' It's likely an IPv6 address so enclose it in '[]'
if (strpos($this->ip,":") > 0) {
$this->ip = "[" + $this->ip + "]";
}

$this->port = _or($port, _or(setting('BackendServerPort', $this->host), 6543));
$this->port_http = _or(setting('BackendStatusPort', $this->host), _or(setting('BackendStatusPort'), 6544));
}
Expand Down
11 changes: 11 additions & 0 deletions mythtv/configure
Expand Up @@ -115,6 +115,7 @@ Advanced options (experts only):
--dvb-path=HDRLOC location of directory containing
'linux/dvb/frontend.h', not the
directory with frontend.h [$dvb_path_default]
--disable-asi disable support for ASI recorder
--disable-x11 disable X11 support
--x11-path=X11LOC location of X11 include files [$x11_path_default]
--disable-xrandr disable X11 resolution switching
Expand Down Expand Up @@ -1344,6 +1345,7 @@ MYTHTV_CONFIG_LIST='
hdpvr
iptv
ivtv
asi
joystick_menu
libfftw3
libmpeg2external
Expand Down Expand Up @@ -1773,6 +1775,7 @@ v4l_deps="backend linux_videodev_h linux_videodev2_h"
vdpau_deps="opengl vdpau_vdpau_h vdpau_vdpau_x11_h"
xrandr_deps="x11"
xv_deps="x11"
asi_deps="backend"

<<BLOCKQUOTE
# tests
Expand Down Expand Up @@ -1977,6 +1980,7 @@ enable hdhomerun
enable hdpvr
enable iptv
enable ivtv
enable asi
enable lamemp3
enable libass
enable libxml2
Expand Down Expand Up @@ -3997,6 +4001,12 @@ int main(void) {
}
EOF

enabled asi && check_cc <<EOF || disable asi
#include <dveo/asi.h>
#include <dveo/master.h>
int main(void) { return 1; }
EOF

# Check that all MythTV build "requirements" are met:
enabled lamemp3 && check_lib2 lame/lame.h lame_init -lmp3lame -lm ||
die "ERROR! You must have the Lame MP3 encoding library installed to compile MythTV."
Expand Down Expand Up @@ -4444,6 +4454,7 @@ if enabled backend; then
echo "DVB-S2 support ${fe_can_2g_modulation-no}"
echo "HDHomeRun support ${hdhomerun-no}"
echo "IPTV support ${iptv-no}"
echo "ASI support ${asi-no}"
fi

if enabled frontend; then
Expand Down
14 changes: 7 additions & 7 deletions mythtv/libs/libmyth/programinfo.cpp
Expand Up @@ -2032,19 +2032,19 @@ QString ProgramInfo::GetPlaybackURL(
(gCoreContext->GetNumSetting("MasterBackendOverride", 0)) &&
(RemoteCheckFile(this, false)))
{
tmpURL = QString("myth://") +
gCoreContext->GetSetting("MasterServerIP") + ':' +
gCoreContext->GetSetting("MasterServerPort") + '/' + basename;
tmpURL = gCoreContext->GenMythURL(gCoreContext->GetSetting("MasterServerIP"),
gCoreContext->GetSetting("MasterServerPort").toInt(),
basename);

VERBOSE(VB_FILE, LOC +
QString("GetPlaybackURL: Found @ '%1'").arg(tmpURL));
return tmpURL;
}

// Fallback to streaming from the backend the recording was created on
tmpURL = QString("myth://") +
gCoreContext->GetSettingOnHost("BackendServerIP", hostname) + ':' +
gCoreContext->GetSettingOnHost("BackendServerPort", hostname) + '/' +
basename;
tmpURL = gCoreContext->GenMythURL(gCoreContext->GetSettingOnHost("BackendServerIP", hostname),
gCoreContext->GetSettingOnHost("BackendServerPort", hostname).toInt(),
basename);

VERBOSE(VB_FILE, LOC + QString("GetPlaybackURL: Using default of: '%1'")
.arg(tmpURL));
Expand Down
15 changes: 11 additions & 4 deletions mythtv/libs/libmythbase/msocketdevice.cpp
Expand Up @@ -173,21 +173,23 @@ MSocketDevice::MSocketDevice( int socket, Type type )
The \a type argument must be either MSocketDevice::Stream for a
reliable, connection-oriented TCP socket, or \c
MSocketDevice::Datagram for an unreliable UDP socket.
The socket is created as an IPv4 socket.
The socket protocol type is defaulting to unknown leaving it to
connect() to determine if an IPv6 or IPv4 type is required.
\sa blocking() protocol()
*/
MSocketDevice::MSocketDevice( Type type )
: fd( -1 ), t( type ), p( 0 ), pp( 0 ), e( NoError ),
d(new MSocketDevicePrivate(IPv4))
d(new MSocketDevicePrivate(Unknown))

// d(new MSocketDevicePrivate(IPv4))
{
#if defined(MSOCKETDEVICE_DEBUG)
qDebug( "MSocketDevice: Created MSocketDevice object %p, type %d",
this, type );
#endif
init();
setSocket( createNewSocket(), type );
//setSocket( createNewSocket(), type );
}

/*!
Expand Down Expand Up @@ -276,6 +278,11 @@ MSocketDevice::Protocol MSocketDevice::protocol() const
return d->protocol;
}

void MSocketDevice::setProtocol( Protocol protocol )
{
d->protocol = protocol;
}

/*!
Returns the socket number, or -1 if it is an invalid socket.
Expand Down
4 changes: 3 additions & 1 deletion mythtv/libs/libmythbase/msocketdevice.h
Expand Up @@ -66,6 +66,8 @@ class MBASE_PUBLIC MSocketDevice: public QIODevice
Type type() const;
Protocol protocol() const;

void setProtocol( Protocol protocol );

int socket() const;
virtual void setSocket( int socket, Type type );

Expand Down Expand Up @@ -133,6 +135,7 @@ class MBASE_PUBLIC MSocketDevice: public QIODevice
Error error() const;

inline bool isSequential() const { return true; }
int createNewSocket();

protected:
void setError( Error err );
Expand Down Expand Up @@ -160,7 +163,6 @@ class MBASE_PUBLIC MSocketDevice: public QIODevice
#endif

static void init();
int createNewSocket();
Protocol getProtocol() const;

private: // Disabled copy constructor and operator=
Expand Down
21 changes: 20 additions & 1 deletion mythtv/libs/libmythbase/msocketdevice_unix.cpp
Expand Up @@ -391,7 +391,26 @@ void MSocketDevice::setOption( Option opt, int v )
bool MSocketDevice::connect( const QHostAddress &addr, quint16 port )
{
if ( !isValid() )
return false;
{
#if !defined(QT_NO_IPV6)
if ( addr.protocol() == QAbstractSocket::IPv6Protocol ) {
setProtocol(IPv6);
VERBOSE(VB_SOCKET, "MSocketDevice::connect: setting Protocol to IPv6");
}
else
#endif
if ( addr.protocol() == QAbstractSocket::IPv4Protocol ) {
setProtocol(IPv4);
VERBOSE(VB_SOCKET, "MSocketDevice::connect: setting Protocol to IPv4");
}

VERBOSE(VB_SOCKET, "MSocketDevice::connect: attempting to create new socket");
setSocket( createNewSocket(), t);

// If still not valid, give up.
if ( !isValid() )
return false;
}

pa = addr;
pp = port;
Expand Down
21 changes: 20 additions & 1 deletion mythtv/libs/libmythbase/msocketdevice_win.cpp
Expand Up @@ -405,7 +405,26 @@ void MSocketDevice::setOption( Option opt, int v )
bool MSocketDevice::connect( const QHostAddress &addr, quint16 port )
{
if ( !isValid() )
return false;
{
#if !defined(QT_NO_IPV6)
if ( addr.protocol() == QAbstractSocket::IPv6Protocol ) {
setProtocol(IPv6);
VERBOSE(VB_SOCKET, "MSocketDevice::connect: setting Protocol to IPv6");
}
else
#endif
if ( addr.protocol() == QAbstractSocket::IPv4Protocol ) {
setProtocol(IPv4);
VERBOSE(VB_SOCKET, "MSocketDevice::connect: setting Protocol to IPv4");
}

VERBOSE(VB_SOCKET, "MSocketDevice::connect: attempting to create new socket");
setSocket( createNewSocket(), t);

// If still not valid, give up.
if ( !isValid() )
return false;
}

pa = addr;
pp = port;
Expand Down

0 comments on commit d62cc57

Please sign in to comment.