rpms/mythtv/devel ChangeLog, 1.2, 1.3 mythtv-0.25.2-fixes.patch, 1.1, 1.2 mythtv.spec, 1.102, 1.103

Richard Shaw hobbes1069 at rpmfusion.org
Sat Aug 25 18:55:34 CEST 2012


Author: hobbes1069

Update of /cvs/free/rpms/mythtv/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv7332

Modified Files:
	ChangeLog mythtv-0.25.2-fixes.patch mythtv.spec 
Log Message:
* Mon Jul 16 2012 Richard Shaw <hobbes1069 at gmail.com> - 0.25.2-1
- Patch HLS for adapative x264 profile.
- Make sure mythbackend starts after time has synced.
- Update to latest fixies/0.25.



Index: ChangeLog
===================================================================
RCS file: /cvs/free/rpms/mythtv/devel/ChangeLog,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- ChangeLog	22 Jul 2012 18:42:46 -0000	1.2
+++ ChangeLog	25 Aug 2012 16:55:34 -0000	1.3
@@ -1,3 +1,73 @@
+commit 46cab93562429cd19029402a2387f63a72aeb898
+Author: Raymond Wagner <rwagner at mythtv.org>
+Date:   Tue Jul 31 14:21:22 2012 -0400
+
+    Correct --printexpire option in mythbackend.
+    
+    This corrects logic that was accidentally inverted in 8bc8dd54, and
+    allows `mythbackend --printexpire` to be used again.
+    (cherry picked from commit a9f18c63bfb23494ee83a8ba76d82fc320617067)
+
+commit 8ab229a8bed860fb0855797c683655a7465e2ee4
+Merge: a4cdc9e 1c496c8
+Author: Raymond Wagner <rwagner at mythtv.org>
+Date:   Tue Jul 31 14:22:32 2012 -0400
+
+    Merge branch 'fixes/0.25' of code.mythtv.org:mythtv into fixes/0.25
+
+commit 1c496c81662eabda444452071eb18f2fd375d4d0
+Author: Kyle <klillis at gmail.com>
+Date:   Mon Jul 30 13:34:11 2012 -0400
+
+    Fixes #10897. Clear paused when we unpause FirewireRecorder.
+    
+    Signed-off-by: Daniel Thor Kristjansson <danielk at cuymedia.net>
+
+commit 9c199a42258f2a19dd1c8d3b934e6eb04f1757ce
+Author: Daniel Thor Kristjansson <dkristjansson at mythtv.org>
+Date:   Tue Jul 24 12:13:16 2012 -0400
+
+    Fixes #10870. Fix Start/Stop race condition in StreamHandler.
+    
+    This is a backport of [445faaa47].
+
+commit a72e341a4653a1b683b7ae5ac87bcaa3092d20fa
+Author: Stuart Morgan <smorgan at mythtv.org>
+Date:   Sun Jul 29 12:42:41 2012 +0100
+
+    Restore setup pincode following [57adc5d120] - 'Flatten the Setup Menus in the default menu theme' which dropped util_menu.xml but failed to carry over the <password> markup.
+    (cherry picked from commit 134417fe3bf7170f3419d2388a6c26afe16c4927)
+
+commit 3256849b14cc882536a153e7fbe4724adf03260c
+Author: Jim Stichnoth <jstichnoth at mythtv.org>
+Date:   Tue Jul 24 10:56:15 2012 -0700
+
+    Subtitles: backport some code to enable cc608 TT deprecation log message.
+
+commit 39fad46248bbcbe5ab27068e73fb7c5a91bc155b
+Author: Jim Stichnoth <jstichnoth at mythtv.org>
+Date:   Tue Jul 24 08:23:53 2012 -0700
+
+    Subtitles: Put a "DEPRECATED_608_TELETEXT" message into the logs.
+    
+    Support for CEA-608 teletext captions is to be removed.  Allow users
+    to check whether they would be affected.  Refs #10786.
+    (cherry picked from commit 7b1aef85ec92658acb91c1ff019aed909e5df30a)
+
+commit 9e0d839be7667056dc65b79711dda84159a1b13d
+Author: Stuart Morgan <smorgan at mythtv.org>
+Date:   Tue Jul 24 14:11:47 2012 +0100
+
+    Set m_cdWatcher to NULL after deletion, fixes segfault on exiting frontend. Fixes #10936
+    (cherry picked from commit de851dd273eaa80689a427f915c7db40d015e0ba)
+
+commit 10a68895e1fcd5c409058d2eb61fe59e78736235
+Author: Stuart Morgan <smorgan at mythtv.org>
+Date:   Sun Jul 22 23:24:40 2012 +0100
+
+    Fix segfault after music scan completes.
+    (cherry picked from commit b2379ae9b8d42c23c3feee26b52a1f0a2ebef394)
+
 commit ed58b3a818a1796340ba0f085a53159eb1d52266
 Author: Stuart Morgan <smorgan at mythtv.org>
 Date:   Sat Jul 21 23:53:41 2012 +0100
@@ -14,6 +84,13 @@
     e.g. GStreamer/Source/gst-plugins-ugly/gst/synaesthesia/synaescope.c
     (cherry picked from commit e331017f2d1ee9be82da9c0b64ca4435ec3efd1e)
 
+commit a4cdc9e01295991056cdc8c5411e70937b1a4842
+Merge: 450ed91 f0e2ad8
+Author: Raymond Wagner <rwagner at mythtv.org>
+Date:   Fri Jul 20 21:06:48 2012 -0400
+
+    Merge branch 'fixes/0.25' of code.mythtv.org:mythtv into fixes/0.25
+
 commit f0e2ad85dbdd6dd4041a8b1e7d8b17e7b8746b63
 Author: Jean-Yves Avenard <jyavenard at mythtv.org>
 Date:   Wed Jul 18 20:49:11 2012 +1000
@@ -41,3 +118,12 @@
     off network access.
     
     Signed-off-by: Jean-Yves Avenard <jyavenard at mythtv.org>
+
+commit 450ed915d3a13b84489ecdebdad6fca18fc8c312
+Author: GDragon <gdragon at jetcom.org>
+Date:   Mon Jul 9 15:33:31 2012 -0400
+
+    Properly set job type in fromProgram and fromRecorded methods.
+    
+    Signed-off-by: Raymond Wagner <rwagner at mythtv.org>
+    (cherry picked from commit 868a566c1d635be3e60f83438f87b6f21d9f1780)

mythtv-0.25.2-fixes.patch:
 checksums/mythplugins-0.25.2.md5sum             |    1 
 checksums/mythtv-0.25.2.md5sum                  |    1 
 mythplugins/mythmusic/mythmusic/musicplayer.cpp |    7 
 mythplugins/mythmusic/mythmusic/polygon.h       |    4 
 mythtv/bindings/python/MythTV/dataheap.py       |    2 
 mythtv/html/setup/wizard-network.qsp            |    4 
 mythtv/libs/libmythbase/serverpool.cpp          |  196 +++++++++++++++---------
 mythtv/libs/libmythtv/firewirerecorder.cpp      |    1 
 mythtv/libs/libmythtv/streamhandler.cpp         |   34 +---
 mythtv/libs/libmythtv/streamhandler.h           |    6 
 mythtv/libs/libmythtv/subtitlescreen.cpp        |    6 
 mythtv/libs/libmythtv/subtitlescreen.h          |    7 
 mythtv/programs/mythbackend/main_helpers.cpp    |    2 
 mythtv/themes/defaultmenu/mainmenu.xml          |    1 
 14 files changed, 176 insertions(+), 96 deletions(-)

Index: mythtv-0.25.2-fixes.patch
===================================================================
RCS file: /cvs/free/rpms/mythtv/devel/mythtv-0.25.2-fixes.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- mythtv-0.25.2-fixes.patch	22 Jul 2012 18:42:46 -0000	1.1
+++ mythtv-0.25.2-fixes.patch	25 Aug 2012 16:55:34 -0000	1.2
@@ -1,8 +1,58 @@
- mythplugins/mythmusic/mythmusic/polygon.h |    4 +-
- mythtv/html/setup/wizard-network.qsp      |    4 +
- mythtv/libs/libmythbase/serverpool.cpp    |  196 +++++++++++++++++++----------
- 3 files changed, 133 insertions(+), 71 deletions(-)
+ checksums/mythplugins-0.25.2.md5sum             |    1 +
+ checksums/mythtv-0.25.2.md5sum                  |    1 +
+ mythplugins/mythmusic/mythmusic/musicplayer.cpp |    7 +
+ mythplugins/mythmusic/mythmusic/polygon.h       |    4 +-
+ mythtv/bindings/python/MythTV/dataheap.py       |    2 +
+ mythtv/html/setup/wizard-network.qsp            |    4 +
+ mythtv/libs/libmythbase/serverpool.cpp          |  196 +++++++++++++++--------
+ mythtv/libs/libmythtv/firewirerecorder.cpp      |    1 +
+ mythtv/libs/libmythtv/streamhandler.cpp         |   34 ++---
+ mythtv/libs/libmythtv/streamhandler.h           |    6 +-
+ mythtv/libs/libmythtv/subtitlescreen.cpp        |    6 +-
+ mythtv/libs/libmythtv/subtitlescreen.h          |    7 +-
+ mythtv/programs/mythbackend/main_helpers.cpp    |    2 +-
+ mythtv/themes/defaultmenu/mainmenu.xml          |    1 +
+ 14 files changed, 176 insertions(+), 96 deletions(-)
 
+diff --git a/checksums/mythplugins-0.25.2.md5sum b/checksums/mythplugins-0.25.2.md5sum
+new file mode 100644
+index 0000000..16f5965
+--- /dev/null
++++ b/checksums/mythplugins-0.25.2.md5sum
+@@ -0,0 +1 @@
++80466458a82759d213fe69af63d6dc80  mythplugins-0.25.2.tar.bz2
+diff --git a/checksums/mythtv-0.25.2.md5sum b/checksums/mythtv-0.25.2.md5sum
+new file mode 100644
+index 0000000..f02e863
+--- /dev/null
++++ b/checksums/mythtv-0.25.2.md5sum
+@@ -0,0 +1 @@
++2bf8c0aa75e88d39747e59c27aa6072e  mythtv-0.25.2.tar.bz2
+diff --git a/mythplugins/mythmusic/mythmusic/musicplayer.cpp b/mythplugins/mythmusic/mythmusic/musicplayer.cpp
+index b0cccf5..d94e08f 100644
+--- a/mythplugins/mythmusic/mythmusic/musicplayer.cpp
++++ b/mythplugins/mythmusic/mythmusic/musicplayer.cpp
+@@ -105,6 +105,7 @@ MusicPlayer::~MusicPlayer()
+         m_cdWatcher->stop();
+         m_cdWatcher->wait();
+         delete m_cdWatcher;
++        m_cdWatcher = NULL;
+     }
+ 
+     if (!hasClient())
+@@ -283,6 +284,12 @@ void MusicPlayer::stop(bool stopAll)
+         m_output = NULL;
+     }
+ 
++    if (stopAll && m_cdWatcher)
++    {
++        m_cdWatcher->stop();
++        m_cdWatcher->wait();
++    }
++
+     // because we don't actually stop the audio output we have to fake a Stopped
+     // event so any listeners can act on it
+     OutputEvent oe(OutputEvent::Stopped);
 diff --git a/mythplugins/mythmusic/mythmusic/polygon.h b/mythplugins/mythmusic/mythmusic/polygon.h
 index 2884d8e..d859d5d 100644
 --- a/mythplugins/mythmusic/mythmusic/polygon.h
@@ -23,6 +73,26 @@
      }
  };
  #endif
+diff --git a/mythtv/bindings/python/MythTV/dataheap.py b/mythtv/bindings/python/MythTV/dataheap.py
+index dd832ba..ae817e7 100644
+--- a/mythtv/bindings/python/MythTV/dataheap.py
++++ b/mythtv/bindings/python/MythTV/dataheap.py
+@@ -612,6 +612,7 @@ class Job( DBDataWrite, JOBTYPE, JOBCMD, JOBFLAG, JOBSTATUS ):
+     def fromRecorded(cls, rec, type, status=None, schedruntime=None,
+                                hostname=None, args=None, flags=None):
+         job = cls(db=rec._db)
++        job.type = type
+         job.chanid = rec.chanid
+         job.starttime = rec.starttime
+         if status:
+@@ -632,6 +633,7 @@ class Job( DBDataWrite, JOBTYPE, JOBCMD, JOBFLAG, JOBSTATUS ):
+         if prog.rectype != prog.rsRecorded:
+             raise MythError('Invalid recording type for Job.')
+         job = cls(db=prog._db)
++        job.type = type
+         job.chanid = prog.chanid
+         job.starttime = prog.recstartts
+         if status:
 diff --git a/mythtv/html/setup/wizard-network.qsp b/mythtv/html/setup/wizard-network.qsp
 index 03c37ac..59b67a9 100644
 --- a/mythtv/html/setup/wizard-network.qsp
@@ -289,3 +359,196 @@
          }
      }
  
+diff --git a/mythtv/libs/libmythtv/firewirerecorder.cpp b/mythtv/libs/libmythtv/firewirerecorder.cpp
+index 9caa28e..fbb5ed0 100644
+--- a/mythtv/libs/libmythtv/firewirerecorder.cpp
++++ b/mythtv/libs/libmythtv/firewirerecorder.cpp
+@@ -210,6 +210,7 @@ bool FirewireRecorder::PauseAndWait(int timeout)
+     {
+         LOG(VB_RECORD, LOG_INFO, LOC +
+             QString("PauseAndWait(%1) -- unpause").arg(timeout));
++        paused = false;
+         StartStreaming();
+         unpauseWait.wakeAll();
+     }
+diff --git a/mythtv/libs/libmythtv/streamhandler.cpp b/mythtv/libs/libmythtv/streamhandler.cpp
+index 2b0a7b6..fbe9399 100644
+--- a/mythtv/libs/libmythtv/streamhandler.cpp
++++ b/mythtv/libs/libmythtv/streamhandler.cpp
+@@ -26,9 +26,15 @@ StreamHandler::StreamHandler(const QString &device) :
+ 
+ StreamHandler::~StreamHandler()
+ {
+-    if (!_stream_data_list.empty())
++    QMutexLocker locker(&_add_rm_lock);
++
+     {
+-        LOG(VB_GENERAL, LOG_ERR, LOC + "dtor & _stream_data_list not empty");
++        QMutexLocker locker2(&_listener_lock);
++        if (!_stream_data_list.empty())
++        {
++            LOG(VB_GENERAL, LOG_ERR, LOC +
++                "dtor & _stream_data_list not empty");
++        }
+     }
+ 
+     // This should never be triggered.. just to be safe..
+@@ -41,6 +47,8 @@ void StreamHandler::AddListener(MPEGStreamData *data,
+                                 bool needs_buffering,
+                                 QString output_file)
+ {
++    QMutexLocker locker(&_add_rm_lock);
++
+     LOG(VB_RECORD, LOG_INFO, LOC + QString("AddListener(0x%1) -- begin")
+                 .arg((uint64_t)data,0,16));
+     if (!data)
+@@ -93,6 +101,8 @@ void StreamHandler::AddListener(MPEGStreamData *data,
+ 
+ void StreamHandler::RemoveListener(MPEGStreamData *data)
+ {
++    QMutexLocker locker(&_add_rm_lock);
++
+     LOG(VB_RECORD, LOG_INFO, LOC + QString("RemoveListener(0x%1) -- begin")
+                 .arg((uint64_t)data,0,16));
+     if (!data)
+@@ -158,12 +168,6 @@ void StreamHandler::Start(void)
+     while (!_running && !_error && _running_desired)
+         _running_state_changed.wait(&_start_stop_lock, 100);
+ 
+-    if (!_running_desired)
+-    {
+-        LOG(VB_GENERAL, LOG_WARNING, LOC +
+-            "Programmer Error: Stop called before Start finished");
+-    }
+-
+     if (_error)
+     {
+         LOG(VB_GENERAL, LOG_WARNING, LOC + "Start failed");
+@@ -175,17 +179,9 @@ void StreamHandler::Stop(void)
+ {
+     QMutexLocker locker(&_start_stop_lock);
+ 
+-    do
+-    {
+-        SetRunningDesired(false);
+-        while (!_running_desired && _running)
+-            _running_state_changed.wait(&_start_stop_lock, 100);
+-        if (_running_desired)
+-        {
+-            LOG(VB_GENERAL, LOG_WARNING, LOC +
+-                "Programmer Error: Start called before Stop finished");
+-        }
+-    } while (_running_desired);
++    SetRunningDesired(false);
++    while (_running)
++        _running_state_changed.wait(&_start_stop_lock, 100);
+ 
+     wait();
+ }
+diff --git a/mythtv/libs/libmythtv/streamhandler.h b/mythtv/libs/libmythtv/streamhandler.h
+index 1db0584..8f97cdb 100644
+--- a/mythtv/libs/libmythtv/streamhandler.h
++++ b/mythtv/libs/libmythtv/streamhandler.h
+@@ -45,7 +45,9 @@ class PIDInfo
+ typedef QMap<uint,PIDInfo*> PIDInfoMap;
+ 
+ // locking order
+-// _pid_lock -> _listener_lock -> _start_stop_lock
++// _pid_lock -> _listener_lock
++// _add_rm_lock -> _listener_lock
++//              -> _start_stop_lock
+ 
+ class StreamHandler : protected MThread, public DeviceReaderCB
+ {
+@@ -101,6 +103,8 @@ class StreamHandler : protected MThread, public DeviceReaderCB
+     bool              _needs_buffering;
+     bool              _allow_section_reader;
+ 
++    QMutex            _add_rm_lock;
++
+     mutable QMutex    _start_stop_lock;
+     volatile bool     _running_desired;
+     volatile bool     _error;
+diff --git a/mythtv/libs/libmythtv/subtitlescreen.cpp b/mythtv/libs/libmythtv/subtitlescreen.cpp
+index 9ec70e9..43dc711 100644
+--- a/mythtv/libs/libmythtv/subtitlescreen.cpp
++++ b/mythtv/libs/libmythtv/subtitlescreen.cpp
+@@ -922,7 +922,8 @@ void FormattedTextSubtitle::InitFromCC608(vector<CC608Text*> &buffers,
+             CC708CharacterAttribute attr(isItalic, isBold, isUnderline,
+                                          clr[min(max(0, color), 7)],
+                                          useBackground);
+-            FormattedTextChunk chunk(captionText, attr, parent);
++            FormattedTextChunk chunk(captionText, attr, parent,
++                                     cc->teletextmode);
+             line.chunks += chunk;
+             LOG(VB_VBI, LOG_INFO,
+                 QString("Adding cc608 chunk (%1,%2): %3")
+@@ -1089,6 +1090,7 @@ bool FormattedTextChunk::Split(FormattedTextChunk &newChunk)
+             QString("Failed to split chunk '%1'").arg(text));
+         return false;
+     }
++    newChunk.isTeletext = isTeletext;
+     newChunk.parent = parent;
+     newChunk.format = format;
+     newChunk.text = text.mid(lastSpace + 1).trimmed() + ' ';
+@@ -1119,6 +1121,8 @@ QString FormattedTextChunk::ToLogString(void) const
+         .arg(format.boldface);
+     str += QString("font=%1 ").arg(format.font_tag);
+     str += QString(" text='%1'").arg(text);
++    if (isTeletext)
++        str += " DEPRECATED_608_TELETEXT";
+     return str;
+ }
+ 
+diff --git a/mythtv/libs/libmythtv/subtitlescreen.h b/mythtv/libs/libmythtv/subtitlescreen.h
+index 44b3f6a..8821dff 100644
+--- a/mythtv/libs/libmythtv/subtitlescreen.h
++++ b/mythtv/libs/libmythtv/subtitlescreen.h
+@@ -110,11 +110,11 @@ class FormattedTextChunk
+ {
+   public:
+     FormattedTextChunk(const QString &t, CC708CharacterAttribute formatting,
+-                       SubtitleScreen *p)
+-        : text(t), format(formatting), parent(p)
++                       SubtitleScreen *p, bool teletext = false)
++        : text(t), format(formatting), parent(p), isTeletext(teletext)
+     {
+     }
+-    FormattedTextChunk(void) : parent(NULL) {}
++    FormattedTextChunk(void) : parent(NULL), isTeletext(false) {}
+ 
+     QSize CalcSize(float layoutSpacing = 0.0f) const
+     {
+@@ -130,6 +130,7 @@ class FormattedTextChunk
+     QString text;
+     CC708CharacterAttribute format;
+     SubtitleScreen *parent; // where fonts and sizes are kept
++    bool isTeletext;
+ };
+ 
+ class FormattedTextLine
+diff --git a/mythtv/programs/mythbackend/main_helpers.cpp b/mythtv/programs/mythbackend/main_helpers.cpp
+index 5017af4..28d5a4a 100644
+--- a/mythtv/programs/mythbackend/main_helpers.cpp
++++ b/mythtv/programs/mythbackend/main_helpers.cpp
+@@ -405,7 +405,7 @@ int handle_command(const MythBackendCommandLineParser &cmdline)
+         return (ok) ? GENERIC_EXIT_OK : GENERIC_EXIT_CONNECT_ERROR;
+     }
+ 
+-    if (!cmdline.toBool("printexpire"))
++    if (cmdline.toBool("printexpire"))
+     {
+         expirer = new AutoExpire();
+         expirer->PrintExpireList(cmdline.toString("printexpire"));
+diff --git a/mythtv/themes/defaultmenu/mainmenu.xml b/mythtv/themes/defaultmenu/mainmenu.xml
+index 1c72a92..b747575 100644
+--- a/mythtv/themes/defaultmenu/mainmenu.xml
++++ b/mythtv/themes/defaultmenu/mainmenu.xml
+@@ -41,6 +41,7 @@
+         <text>Setup</text>
+         <description>Configure MythTV and plugins</description>
+         <action>MENU main_settings.xml</action>
++        <password>SetupPinCode</password>
+     </button>
+ 
+ </mythmenu>


Index: mythtv.spec
===================================================================
RCS file: /cvs/free/rpms/mythtv/devel/mythtv.spec,v
retrieving revision 1.102
retrieving revision 1.103
diff -u -r1.102 -r1.103
--- mythtv.spec	22 Jul 2012 18:42:46 -0000	1.102
+++ mythtv.spec	25 Aug 2012 16:55:34 -0000	1.103
@@ -1293,7 +1293,7 @@
 %{_datadir}/pixmaps/myth*.png
 %{_datadir}/mythtv/metadata/
 # Myth Video is now Video Gallery
-%attr(-,mythtv,mythtv) %{_localstatedir}/lib/mythvideo
+%attr(0775,mythtv,mythtv) %{_localstatedir}/lib/mythvideo
 
 %files base-themes
 %{_datadir}/mythtv/themes/
@@ -1365,7 +1365,7 @@
 %doc mythplugins/mythgallery/README
 %{_libdir}/mythtv/plugins/libmythgallery.so
 %{_datadir}/mythtv/i18n/mythgallery_*.qm
-%attr(-,mythtv,mythtv) %{_localstatedir}/lib/pictures
+%attr(0775,mythtv,mythtv) %{_localstatedir}/lib/pictures
 %endif
 
 %if %{with_mythgame}
@@ -1387,7 +1387,7 @@
 %doc mythplugins/mythmusic/COPYING
 %doc mythplugins/mythmusic/README
 %{_libdir}/mythtv/plugins/libmythmusic.so
-%{_localstatedir}/lib/mythmusic
+%attr(0775,mythtv,mythtv) %{_localstatedir}/lib/mythmusic
 %{_datadir}/mythtv/musicmenu.xml
 %{_datadir}/mythtv/music_settings.xml
 %{_datadir}/mythtv/i18n/mythmusic_*.qm


More information about the rpmfusion-commits mailing list