Commits on Aug 29, 2016
  1. @jpoet
Commits on Aug 22, 2016
  1. @dizygotheca

    Fix crash when frontend can't find the database

    e845eae introduced a duplicate class name that
    corrupts Qt moc processing of signals, resulting in a segfault when the frontend
    tries to invoke the Database Settings dialog.
    All credit to StuartA for his dogged sleuthing.
    Fixes #12735
    dizygotheca committed Aug 22, 2016
Commits on Aug 21, 2016
  1. VBox: Relax the firmware version check to allow for VJ.x.xx versions

    It looks like the new 3rd generation boxes are using a new VJ kernel and
    firmware. Fixes #12855.
    Paul Harrison committed Aug 21, 2016
Commits on Aug 17, 2016
  1. @bennettpeter

    Fix Raspberry Pi digital audio AC-3 passthrough.

    Fixes #12827
    bennettpeter committed Aug 17, 2016
  2. @bennettpeter
  3. @bennettpeter
Commits on Aug 13, 2016
  1. Serialization Implementation for XML: gcc6/Qt5.{6,7} SEGVs

    Missed one (actually, there are at least 2 more.) The author
    is trying to carve out some time to look for the actual fix.
    Thanks to PlanetEater for catching this.
    Refs #12782
    Bill Meek committed Aug 13, 2016
Commits on Aug 7, 2016
  1. mythwikiscripts: fix after the wiki switched to using https

    * Change the URL
    * Switch to using urlopen from urllib since lxml does not support https
    Paul Harrison committed Aug 7, 2016
Commits on Aug 4, 2016
  1. Serialization Implementation for XML: gcc6/Qt5.{6,7} SEGVs

    This isn't a MythTV bug, rather an issue with Qt5.{6,7,??}
    and gcc version 6. This will get Arch users with the above
    combinations working until a proper solution is developed.
    In XmlSerializer::GetContentName when pMetaObject is NULL,
    a SEGV fires rather that getting a -1 return from
    Examples: <be>:6544/Myth/version and <be>:6544/Myth/GetHostName.
    Both fail on Arch linux with the above combinations.
    Thanks for the research on:,
    testing on the ticket, and the reference to:
    Refs #12782
    Bill Meek committed Aug 4, 2016
  2. Revert "Refs #12782 Fix segmentation fault in QMetaObject::indexOfCla…

    Breaks some Services API endpoints, e.g. Myth/GetHostName.
    This reverts commit c3a7929.
    Refs #12782
    Bill Meek committed Aug 4, 2016
Commits on Aug 3, 2016
  1. @gigem
Commits on Aug 2, 2016
  1. @gigem
Commits on Jul 26, 2016
  1. @jyavenard @bennettpeter

    Revert "Player: Improve low bit rate / high latency stream playback"

    This reverts commit f307a3d.
    Cause stutter until channel changes
    (cherry picked from commit b97ea66)
    Signed-off-by: Peter Bennett <>
    Fixes #12717
    jyavenard committed with bennettpeter Oct 13, 2014
Commits on Jul 21, 2016
  1. mythzmserver: try harder to find an analysis frame for an event

    We now first try to find an alarm analysis frame and if not found
    fallback to an alarm normal frame and finally a normal frame.
    Paul Harrison committed Jul 21, 2016
  2. @PlanetEater @stuarta

    Refs #12782 Fix segmentation fault in QMetaObject::indexOfClassInfo()

    Also Refs #12668
    The NULL check for pMetaProp in xmlSerializer.cpp should protect the
    GetContentName() call too.
    (cherry picked from commit 36e180f)
    Signed-off-by: Stuart Auchterlonie <>
    PlanetEater committed with stuarta Jun 21, 2016
  3. @brianjmurrell @stuarta

    Fixes #12831 Warn the user if the database ping fails

    Since subsequent database operations will fail, but in a
    rather unobvious way.
    Signed-off-by: Stuart Auchterlonie <>
    brianjmurrell committed with stuarta Jul 21, 2016
Commits on Jul 20, 2016
Commits on Jul 18, 2016
  1. Fix issue with TagLib for MSVC build.

    Change location of zlib dependency.
    David Blain committed Jul 18, 2016
Commits on Jul 15, 2016
  1. @gigem

    Raise the maximem maximum recording limit to 10.

    With schedule as group, some users will likely want more virtual
    inputs.  Also, fix part of the problem preventing the initial value
    for new cards from being set correctly.  The rest will have to come
    gigem committed Jul 15, 2016
Commits on Jul 14, 2016
  1. @gigem

    Improve the short circuiting in Scheduler::IsBusyRecording().

    There are a couple of cases where we can stop checking more inputs and
    return early.
    gigem committed Jul 14, 2016
  2. @gigem
  3. @gigem
  4. @gigem

    Change AutoExpire::Update() to use a proper queue.

    Previously, it essentially acted as if it had a one entry queue.
    Consequently, if multiple recordings started at the same time, all but
    the first would have to wait causing them to be delayed, sometimes by
    several seconds.  Now, none of them have to wait.
    gigem committed Jul 14, 2016
Commits on Jul 12, 2016
  1. @gigem

    Work around a suspected Qt bug affecting some settings.

    There is a suspected bug in some versions of Qt, notably in version
    5.6.1 in Debian, where calling QVariant::toString() returns garbage if
    the MySQL type is TINYINT.  Because MythTV does this for all settings,
    it is possible for a setting to lose its previous value when a
    settings dialog is entered.  The work around is to have MySQL cast the
    value to a string type before it gets to MythTV.  Thanks to Karl Dietz
    for suggesting this fix.
    gigem committed Jul 12, 2016
Commits on Jul 11, 2016
  1. @gigem
  2. @gigem

    Add the remaining support for the Schedule as Group feature.

    When enabled for an device, all virtual inputs for it will be
    scheduled as a single, grouped input.  Programs will not be assigned
    to a specific, virtual input until right before recording is to start.
    This is much more efficient than scheduling each virtual input
    individually.  While this doesn't reduce the scheduler's big O from
    O(N^2), or possibly even O(N^3), it can greately reduce N.
    The current down side with enabling Schedule as Group, is that the
    scheduler assumes the grouped input can handle an unlimited number of
    simultaneous recordings.  In reality, the input still has to honor its
    maximum recording setting because MythTV requires all such resources
    to be pre-allocated.  Consequently, it is possible to run out of
    inputs and have reocrdings fail in worst case situations.  Therefore,
    be sure to overprovision the maximum recordings setting for your
    expected situation.
    gigem committed Jul 11, 2016
  3. @gigem

    Don't treat the schedgroup input as just a placeholder.

    Only the scheduler needs to treat it specially, so let it be used
    normally like any other input.
    gigem committed Jul 10, 2016
  4. @gigem

    More prepatory work for the schedula as group feature.

    Add sgroupid to RecordingInfo for scheduler use.  Cache various input
    related information within the scheduler in sinputinfomap.  Don't
    match on inputs that can't be scheduled in the first place instead of
    discarding them after the fact.  Remove some debug code from the
    previous commit.
    gigem committed Jul 10, 2016
  5. @gigem

    Add "Pending" as a formal recording status.

    Previously, pending was a short-lived, pseudo status within the
    scheduler to indicate that a recorder had been notified of a pending
    recording, but it had not yet started.  This change upgrades pending
    to a full fledged, recording status and exposes it to the rest of
    gigem committed Jul 8, 2016
  6. @gigem
  7. @gigem

    Change CardUtil::GetConflictingInputs() to ignore schedgroup inputs.

    Also, use one database query for the job instead of several.
    gigem committed Jul 6, 2016
  8. @gigem

    Add support for configuring the schedule as group feature.

    Note that it's currently disabled until the rest of the support is
    gigem committed Jul 5, 2016
  9. @gigem

    Revert most of the recent changes dealing wiht reclimit.

    After discussing it with John Poet, we decided to take a different
    approach that does not require major changes to the recorders.
    gigem committed Jul 4, 2016