Release Notes - 0.26

From MythTV Official Wiki
Revision as of 20:26, 5 August 2012 by Llib (talk | contribs) (1st half of commits, a few corrections, addition of blank template at the end.)

Jump to: navigation, search


Important.png Note: Please note that the following reflects changes for a future release of MythTV currently in development and not recommended for production use. The current release is 31.0.

Important 0.26 Dates
Event Date Changeset
Development Started 20 Aug 2011 df47df3
Alpha Released 18 Jul 2012 4a40145
Beta Released TBD TBD
RC Released TBD TBD
Final Release TBD TBD

0.26-release encompasses development revisions from [df47df3] though [TBD]
The Key New Features and Major Changes below are relative to 0.25. They are based on commits up to: [5239296] dated Sun Jul 29 2012.


Key New Features

Add HTTP Live Streaming recorder [17c164a]

Major Changes

  • Conversion of internal times to UTC. Stored times will be converted by the database update mechanism. For example, tables program, recorded, oldrecorded, recordupdate will have their starttimes and endtimes converted to UTC. This should be of interest to daylight savings time users.
  • mythsyslogserver, a new system for handling all log requests. ZeroMQ is included in this release.
  • Numerous HLS (HTTP Live Streaming) playback fixes.
  • Add ability to override Bonjour's service name (-O BonjourHostname=mycomputer.)
  • Almost a complete rewrite of RAOP server, used for Airtunes/AirPlay.
  • Added recording rule templates [71c65b]
  • The format of config.xml has changed and mysql.txt is no longer used. Example:
  • Allow themes to customize caption/subtitle formatting [f13eeb0].
  • Make the subtitle zoom factor into a live setting [0089f7d].

Prerequisite Changes


Added support libraries/prerequisites


Removed support libraries/prerequisites


Special Notices & Instructions

  • MySQL must have time zone tables added, see MySQL_Time_Zone_Tables.
  • If you need mythffplay, add --enable-sdl to your configure run [fb90f73].
  • User scripts/tools that depended on mysql.txt should be reviewed. Since MythTV no longer uses mysql.txt, its no longer updated. Scripts/tools could stop working.
  • The (broken) "Expire in deleted order" setting has been removed [928135e].
  • HLS users must use --enable-libmp3lame when running configure [628ea66].
  • Note that if --verbose vbi</code is used with <code>mythfrontend, a "DEPRECATED_608_TELETEXT" message will now appear in logs. Support for CEA-608 teletext captions willbe removed in 0.27. The log entries will allow users to check whether they would be affected. Refs #10786 [7b1aef8].
  • Users referencing logfiles (e.g. those created by using --logpath will note that their timestamps are now in UTC [28d9324]


Warning.png Warning: The commits are being compiled off-line, changes made to them will be lost. This warning will go away when they are complete, which is 50% as of this update.




New Features
Bug Fixes
  • [825182e] Speed up loading of the Watch Recordings screen and the Previously Recorded screen by doing most of the buttonlist initialization in the background. The speedup is most noticeable when the screen contains hundreds or thousands of entries and mythfrontend is running on a relatively slow processor such as an Atom.

Key Bindings, Jump Points, and Input Devices

New Features
Bug Fixes

Guide Data, EIT, Program Info, and Media Metadata

Bug Fixes


Bug Fixes

Video Playback

Bug Fixes
  • [60cf735]: Fixes #9861. Upside-down videos taken on an iPhone are correctly flipped.
  • [3bbf624]: An option is added to the playback OSD menu to allow an in-progress playlist to be cancelled.
  • [4d0bbbe]: The ExactSeeking setting (seek to exact frame) is removed, in favor of more adaptive, sensible behavior. When doing relative seeks, snap to the nearest keyframe if its distance from the target frame is within 10% of the total seek distance. When seeking within the cutlist editor, use a value of 50% instead. Exact frame seeking is always used for absolute seeks (bookmark seek, skips based on cutlist/commskiplist, preview generation), and for keyframe and single-frame seeking in the cutlist editor.

Disc Playback (DVD, Blu-Ray, etc) and Media Detection

Bug Fixes

OSD, EPG, MHEG, CC, and Subtitles

New Features
Bug Fixes
  • [f13eeb0] Formatting of text-based captions and subtitles is put under theme control, via the new theme file osd_subtitle.xml. The CCBackground and DefaultSubtitleFont settings are removed.
  • [631bb1e] The Prefer708Captions setting is removed. CEA-708 captions are now always preferred over CEA-608 captions (though CEA-608 captions can still be selected during playback).
  • [0089f7d] The OSDCC708TextZoom setting is removed from the setup options and is now implemented as a live setting. The Subtitles sub-menu of the playback OSD menu has an option that allows the user to change the zoom setting for text-based subtitles during playback and see the effect immediately. Changes are immediately saved.
  • [461f42d] A similar live setting is added for bitmap-based subtitles, such as in DVD/BD videos.
  • [689a7b5] Improved handling of forced subtitles, both at the track level and at the individual subtitle level.
  • [ea554c9] Refs #10808 Track auto-selection is improved to take forced tracks into account.
  • [5c047f4] A complete set of CEA-708 fonts is provided.
  • [7b1aef8]: Refs #10786 CEA-608 teletext caption support is deprecated and will be removed in 0.27. Note that this is different from DVB teletext subtitles and standard CEA-608 closed captions.

Network Control

New Features
Bug Fixes


New Features
HTTP Live Streaming (all HLS changes collected here)
  • [45ff0a4]: Very quick HTTP live streaming support
  • [099b6cc]: Add HTTP Live Streaming playback
  • [0182f85]: Add 'Auto' as a valid width on the HLS test page.
  • [a46e9be]: HTTP Live Streaming fixes in AVFormatWriter
  • [c3774a8]: HTTP Live Streaming fix. Refs #10729.
  • [0a6818f]: Remove path names from HLS playlist entries.
  • [e2ef040]: Make HLS AES-128 support conditional on libcrypto being installed
  • [ac6d8e1]: Make HLS AES-128 support conditional on libcrypto being installed
  • [5d6b2c4]: Reorganise libmythtv, creating a DVD, Bluray and HLS sub-folder and moving their respective related code into them.
  • [d5528ae]: Fix seeking in HLS playback..
  • [17c164a]: Add HTTP Live Streaming recorder.
  • [5a8db30]: Loosen test for initial stream alignment before prefetch. We could otherwise end up with a stream with no segment left. So we ensure there's always at least one.
  • [413a8e0]: Fix HLS transcoding after 199342ef7a.
  • [e7a6d7e]: Squelch an inuseprograms DB warning during HLS transcode. Closes #10520.
  • [f66816d]: HLS encoder enhancements.
  • [71f462c]: Make HLS encoder debugging a little easier.
  • [628ea66]: Various HLS bugfixes.
  • [28fd68a]: Set the HLS status message when transcoding starts.
  • [aef3087]: HLS Fix and mythtranscode optimization. Fixes #10923.
  • [6fb8692]: Switch HLS audio encoding back to AAC by default.
  • [d4e5c78]: Enable --avf mode to mythtranscode for testing HLS encoding.
  • [8ae3403]: Add a way to hide the player window in the HLS .qsp test page.
  • [8e96e2e]: HLS/--avf encoder fixes.
  • [2e9333d]: More HLS encoder fixes.
  • [4f6c08b]: Add method to immediately interrupt HLS read or seek. Ref #10934
UTC Changes (all UTC changes collected here)
  • [df47df3]: This changes the internal representation of time to UTC.
  • [7768968]: It helps to return the date you've constructed from in a date function..
  • [00f505d]: Convert to local time before calling dayOfWeek() for week day check.
  • [1a99f69]: Date/Time cleanup of ManualSchedule.
  • [ce0aced]: Make the FileScanner's location enum private and fix some locations where sed had replaced the local kDatabase with MythDate::kDatabase.
  • [1c5bca8]: Fix some trivial issues in plugins.
  • [63b999e]: Remove QDateTime->QString conversion for a DATETIME binding.
  • [19ec6e8]: Fix some instances where ISODate was being used for DB insterts.
  • [ccb9e83]: Trivial fixes for plugins.
  • [613d43b]: Convert times to UTC in fromXMLTVDate.
  • [c6f6410]: Simplify calc_utc_offset().
  • [0d836c7]: Add UTC conversion DB update.
  • [bb40b6e]: Add progrstart,progend to things updated by for UTC in dbver 1303.
  • [8143b40]: Make MythDate::fromString() set the timespec to Qt::UTC.
  • [1f8c590]: Increment myth proto and services versions.
  • [b9f7eb1]: Convert QDateTime in various services to UTC ASAP. Also fixes three memory leaks in Dvr service.
  • [92bf53d]: Update additional tables for UTC.
  • [4700abc]: Use local time instead of UTC for "scheduled to end at" string.
  • [7fb9747]: Fix some UTC breakage for find and custom rules.
  • [4fcea3e]: Fix perl bindings to adjust to the UTC change
  • [181641a]: Fix scheduler related issues resulting from the UTC changes.
  • [cb5d81f]: Fix mac compilations following UTC and qjson changes
  • [f2dd6f9]: Convert some the code in [d4f718cd1] Myth Services UTC commit, to use MythDate utility functions.
  • [19d6095]: Use QDateTime::currentDateTimeUtc() with Qt 4.7+
  • [14ad67e]: Keep MythUIClock time in UTC internally.
  • [8fd31be]: Fixes #10853. Create next update time in terms of UTC.
  • [aa162d5]: Fix upnp following UTC conversion.
  • [28d9324]: Use UTC time for createion of log files.
  • [103d8a1]: Fixes #10877. Add MythDate::as_utc() wrapper where necessary.
  • [6c234ae]: Return 'asof' time in UTC.
  • [6f63799]: Add timezone awareness to datetime class.
This is going to break some stuff until I figure out what all needs to
be handled as local or UTC.
  • [c99ce87]: Remove toLocalTime in a couple RSSParse functions.
  • [4cb4f60]: Add missing QDateTime timespec.
  • [5b86d8b]: Use `date` type rather than `datetime` for 'releasedate attribute'.
  • [c2ef5d1]: Use `date` rather than `datetime` for storing dates.
  • [4f028f3]: Refactor mythmiscutil.h splitting off date/time stuff into mythdate.h and timezone stuff into mythtimezone.h
  • [92ce8e2]: Fix some mythmiscutil.h->mythdate.h changes missed in [4f028f388c].
  • [f840288]: Put in the MythDate use in logging timestamps
  • [c062750]: Fixes #10827. When comparing dates for Yesterday/Today/Tomorrow output, use local time.
  • [b149724]: Use MythDate::current().toTime_t().
  • [7624433]: Use MythDate::current() to get current time in DVR class.
Bug Fixes
  • [bd883d7]: Almost complete rewrite of RAOP server
  • [c45628d]: Add two network utility methods to ServerPool for Airplay and RAOP
  • [1d375db]: Add two network utility methods to ServerPool for Airplay and RAOP
  • [29cd39b]: Use new ServerPool capabilities, and only advertise AirPlay via Bonjour if the server creation was successful
  • [f125f53]: Always re-use the same computer ID for AirPlay. Share ID between RAOP and AirPlay
  • [fe11b61]: Various fixes in Airplay
  • [357573a]: Fix seeking with some http streamed content
  • [1f4f89b]: Add AirPlay support from iTunes.
  • [604b4f7]: Fix AirPlay compilation if RAOP isn't compiled in.
  • [3756e32]: Use correct time in Airplay server response.
  • [1216d2a]: Add general methods for emitting and retrieving TV playback status via Qt signals.
  • [a519a4d]: Allows multiple sessions to Airplay and RAOP Fixes #10885
  • [ae61cb9]: Add playback registration handling
  • [933bffc]: Adapt Airplay and RAOP to new playback registration mechanism.
  • [11ea7ef]: Add graphic user configuration for AirPlay.
  • [fa1571c]: Add AirPlay password authentication support. Fixes #10310
  • [fa54d5d]: Fix possible deadlock in AirPlay serve

Scanning and Tuner/Recorder Support

Channel Scanner

Ceton InfiniTV




IPTV Recorder




Other Hardware "Support"

Consumer Electronics Control Support - "CEC"


New Features
  • [e326f26]: Don't translate terms related to the "Missed Future" recording status.
  • [7babade]: Log entire reschedule requests.
  • [71c65ba]: Add recording rule templates. See commit for details.
  • [d418754]: Schedule editor flexibility and other enhancements. See commit for details.
  • [788bc51]: Protect the reschedule queue with a seperate lock to fix a backend deadlock. Refs #10771
  • [6cb14ee]: More scheduler/recorder deadlock avoidance.
Bug Fixes
  • [cbb8eb1]: Add duplicate checking and limited matching optimizations and other scheduler related changes. See the commit for details on this change. Fixes #10533
  • [ca27332]: Hopefully remove more scheduler/recorder deadlocks. Fixes #10647, #10770 and #10771.
  • [8881796]: Fix 0ms sleep time calculation in scheduler. Fixes #10279.

Setup / mythtv-setup

New Features
Bug Fixes


New Features
Bug Fixes


New Features
Bug Fixes
  • [33705ae]: Apply the MythUIShape's alpha attribute when drawing it.
  • [2afae60]: Make MythUIType::SetPosition() a non-virtual, descendants should not need to override this to change SetPostion() functionality. Overriding SetPosition(const MythPoint&) should be sufficient, and is what existing descendants do now.
  • [e763a6a]: Handle mouse in mythuibuttontree.
  • [c9497cb]: Fix incorrect deletion of a MythUIType object in MythUIButtonList::CopyFrom() which left an invalid pointer in the list of children. Refs #10807
  • [36364d1]: Protect the MythUIType destructor to prevent it being called incorrectly. Refs #10807
  • [b4f440f]: Replace stray tabs in mythuibuttonlist.h
  • [6cfda0c]: Rename a couple of methods in MythUIButtonList to avoid confusion with other similarly named methods elsewhere.
  • [a336dc1]: Rename MythUIEditBar::SetPosition() to SetEditPosition() to avoid confusion with the wider use of SetPosition() to set the x,y coords of a widget.
  • [8438a0e]: Change MythUIButtonList::SetValue() to pass QString by a const reference rather than value.
  • [8d6e680]: const correctness fix in mythui.
  • [d7a27a1]: Initialize m_Time properly in MythUIClock.
  • [ff9073d]: MythUIButtonList::MoveDown: Prevent segfault when there are not enough items to process.

Translations & Localization/Internationalization

  • [daf67b1]: Updated Finnish MythFrontend and all plugins translation from Ilkka Tengvall.
  • [15591c6]: Update the Spanish translation.
  • [20e83ec]: Revert "Updated Finnish MythFrontend and all plugins translation"
  • [c4b33d3]: Updated Finnish MythFrontend and all plugins translation from Ilkka Tengvall
  • [2d686db]: Updated Norwegian Bokmal translation update
  • [4b8b3cc]: New Bulgarian MythNews and MythZoneMinder translation
  • [cfbbed0]: Updated Spanish/Spain MythFrontend translation from Antonio Marcos Lopez Alonso
  • [5d2fe3d]: Updated Italian MythFrontend Translation from Morris Cavestro
  • [7c3f7da]: Updated Italian MythFrontend translation from Morris Cavestro
  • [045e606]: Use QLocale::toString() in preference to sprintf or QString::number() since this will format numerical strings according to the preferred format for the user's locale. Also combine a 'split' string into one for translation, since concatenated strings cannot be translated correctly.
  • [59703a7]: Fix an instance of a concatenated translated string which prevents proper translation.
  • [7d9bb76]: Replace some more instances of concatenated strings which cannot be translated correctly.
  • [1ff0145]: Improve the translation of strings in the DeleteMap class.
  • [5b56d64]: Avoid a segfault in the language selection prompt if no translations have been installed.
  • [ed073b5]: Updated Spanish/Spain MythFrontend, MythArchive and MythMusic translation from Antonio Marcos Lopez Alonso
  • [2834294]: Translate some additionnal strings in the Information Center
  • [266ebc2]: Translate the Blu Ray regions in the settings pages.
  • [aad4f63]: Some MythGallery translation fixes.
  • [e9a7a13]: Remove the concatenation to permit proper translation.
  • [70f02af]: Translation context changes and remove of concatenations.
  • [44f23ce]: Remove old translations from the ExecTV sample
  • [15d9bca]: Removal of concatenations and translation context changes.
  • [c043899]: Miscellaneous translation fixes (concatenations, context, comments...)
  • [20d8ef6]: Updated Spanish/Spain MythFrontend, MythGallery, MythGame and MythMusic translation from Antonio Marcos Lopez Alonso.
  • [a31cd26]: Italian translation uodate from Morris Cavestro
  • [55b46eb]: MythGame miscellaneous translations files (context, etc...)
  • [857c86f]: Small MythWeather translation context change
  • [39adcf8]: MythNews small context change
  • [5007f04]: Updated Greek MythFrontend, MythGallery, MythGame, MythMusic, MythNews and MythWeather translation from Yianni Vidalis
  • [2075e9f]: Updated Greek MythFrontend Translation from Yianni Vidalis
  • [5811dd2]: Updated Italian MythFrontend translation from Morris Cavestro
  • [0767239]: DVB descriptors translation context change
  • [da63aa5]: Translation context change for cc608 program types/categories
  • [bf557a8]: Updated Normwegian Bokmal MythFrontend, MythGame, MythMusic, MythNews and MythWeather Translation from Rune Evjen
  • [721cf61]: Updated Estonian MythFrontend, MythGallery, MythGame, MythMusic, MythNews and MythWeather translation from Marko Punnar
  • [73621b9]: Updated Estonian MythFrontend, MythArchive, MythBrowser, MythGame, MythMusic, MythNews, MythWeather and MythZoneMinder translation from Marko Punnar
  • [cec08db]: Updated Hong Kong Chinese MythFrontend and MythArchive translatation from Walter Cheuk
  • [a7f980f]: Clarify translated error strings for mythfilldatabase too, signed off by Nicholas Riendeau on behalf of the translation team.
New Features
Bug Fixes




DVR Menu Theme









Misc. Theme Development

New Features
Bug Fixes


Mac OS X

New Features
Bug Fixes


New Features
Bug Fixes
  • [42e5084]: libmyth: mediamonitor-windows add removeable media handling Fixes #10295
  • [263d868]: Improves cache file selection for Windows.
  • [1c48a36]: Attempt to fix windows build
  • [253e963]: Hopefully fix Windows build #2 libmythbluray depends on libxml, yet it's not linked against it.
  • [4a7845e]: Hopefully fix Windows build #2
  • [68b34f2]: Unbork setsockopt for Windows (hopefully)
  • [8a0724f]: Clean up windows support in signalhandling.cpp
  • [89106e6]: Have SyslogLogger defined in Windows, but with empty methods
  • [62f3c64]: Refs #10841. Define SIGBUS as SIGSEGV on windows systems.
  • [230d8b9]: Fix windows compilation error
  • [f32d6cb]: Disable SignalHandler::AddHandler for windows
  • [769d296]: Try to fix configure for windows
  • [11dee65]: Trying again to fix windows configure



New Features
Bug Fixes




New Features
Bug Fixes


New Features
Bug Fixes


New Features
Bug Fixes
  • [8c48b71]: MythMusic: Pass the full filename to TagExists() in Metadata::getTagger()
  • [eaa903e]: Make mythmusic work right with new ffmpeg API
  • [c5d987c]: Clean up a bunch of mythmusic compile warnings
  • [ba0b3de]: Fix a warning in mythmusic's synaesthesia visualiser.
  • [4762bb7]: MythMusic: Fix a segfault introduced by the ffmpeg resync
  • [e3699a6]: MythMusic: Remove some no longer used key bindings
  • [e7e6492]: MythMusic: Add keybindings to jump to all the views
  • [fa9edd6]: MythMusic: Add TOGGLESHUFFLE and TOGGLEREPEAT keybindings
  • [9bc18c8]: MythMusic: Make 'All Tracks' add all the tracks to the playlist
  • [b6dc2b2]: MythMusic: Add directory browsing to the playlist editor
  • [9217878]: MythMusic: Add the missing mm_directory.png
  • [3a29f2f]: Update mythmusic for new ffmpex-mmx.h header
  • [28ed490]: mythmusic: Fix cross compiling for win32 Fixes #10742
  • [81cc283]: Add 'year' to music metadata for upnp
  • [f668f40]: Store music filesize and expose to the UI.
  • [992cba7]: Add filesize to music metadata for upnp
  • [7dae5c7]: libmythbase: Handle mixed-mode (audio+data) CDs Fixes #10296
  • [cdde562]: MythMusic: Add ice/shoutcast radio stream playback
  • [d5137aa]: Hunk missed from mythmusic streaming merge.
  • [ab33b88]: MythMusic: Add some menu items for the new radio stream playback
  • [356e59a]: Use the global musicDir variable instead of querying the setting
  • [92083c8]: MythMusic: Fix showing the mini-player while playing a radio stream
  • [ebf4860]: MythMusic: Couple of tweaks to streaming radio playback
  • [2f03c91]: Fix translation concatenation issue in MusicPlayer
  • [42b2b24]: Silence some MythMusic initialisation warnings
  • [84aac9d]: libmyth: Avoid a divide by 0 exception in AudioOutputBase
  • [4c15a87]: Remove unused files from mythmusic
  • [b2379ae]: Fix segfault after music scan completes.




New Features

MythVideo/Video Gallery

New Features
Bug Fixes


New Features
Bug Fixes


New Features
Bug Fixes


Bug Fixes
  • [426de1b]: Refs #10311. Port zoneminder use for MythSocket to ReferenceCounter.

Support libraries & Frameworks

UPnP / Bonjour

New Features
Bug Fixes
RAOP Related
  • [e41a283]: Fixed RAOP audio decoding to use all frames in a packet
  • [a787633]: Convert the RAOP audio decode to use new ffmpeg API
  • [3d62be7]: Make RAOP server properly handle any size of decoded audio packets.
  • [a2c32ba]: Fix crash in RAOP when a client disconnect
  • [640ddc3]: Rework RAOP protocol handling
  • [3265013]: Add full IPv6 support to RAOP and fix Bonjour discovery of RAOP service.
  • [34dcb2b]: Add full IPv6 support to RAOP and fix Bonjour discovery of RAOP service.
  • [374e2cd]: Fix RAOP time request failing to send
  • [9be52e2]: Pre-increment iterators for efficiency in serverpool and mythraopconnection.
  • [ea65b58]: Fix RAOP following ffmpeg resync


  • [96787df]: Remove old ffmpeg contents
  • [4300f0e]: FFmpeg sync as of 03/31/2012
  • [52be988]: Cumulated changes from previous sync
  • [9cb02de]: Make it compile at least the ffmpeg part
  • [940dd94]: Roll-up of all changes after the previous sync
  • [6c3653c]: Make it all compile...
  • [126cff6]: Get playback working.
  • [e23cc71]: Fix ffmpeg install to include .so.major as needed
  • [ed6aa4c]: Fix nuppeldecoder use of ffmpeg API
  • [340a68d]: OK, that was the right idea, but the wrong way around.
  • [449d36d]: Fixed a couple more ffmpeg _encode_* API deprecations
  • [75eafd4]: Fix goom to use av_get_cpu_flags() from current ffmpeg
  • [106132b]: FFmpeg adjustment.
  • [30b7da7]: Fix error introduced in [940dd94]
  • [174c795]: re-sync FFmpeg to SHA:ea5dab58e074a91330e1f076a4cbe8fece889afe
  • [a3e747b]: FFmpeg resync to SHA1:cc4d80c99ff3169b71c62691d5c7602ef673c3dc
  • [ed69ea8]: FFmpeg resync to SHA1:f218121a4d79f9aab45526f3d1655ec2cc8de0d1
  • [3369fcf]: Rename files to have more consistent naming scheme between all new FFmpeg files

MythXML, API Service, & Webserver

  • [3c0d159]: Add eTag (entity Tag) support to Services API to help cache data on client.

Python bindings

Perl bindings

PHP bindings

Utility Applications





  • [e778f23]: Add more debug logs in the DataDirect and MythDLMgr code Refs {{ticket|10662}
  • [bb58a94]: Marking episode first/last showings performance. Fixes #10482
  • [4ba7c3d]: Make mythfilldatabase calls put user-provided args last. Fixes #10683
  • [c06b706]: Specify MySQL storage engine for mfdb temp tables.
  • [1a14842]: Clarify an error message to indicate that the xmltv grabber is erroring, not mythfilldatabase





  • [3892279]: Add 'adult' and 'alias' to Person class.
  • [e99630e]: Add support for additional Studio information.
  • [166655c]: Update README for additional options.
  • [75a14b7]: Correct cache file selection logic inverted by 4663490f8fa.
  • [61045e4]: Allow Datalists to be sorted natively without supplying a key.
  • [ddc0cb0]: Allow locale fallthrough for movie images and alternate titles.
  • [2e4bc64]: Correct Studio.logo processing.
  • [2198d9e]: Update Logo() class with proper image sizes from Configuration().
  • [86b54a1]: Add slice support to search result pager.
  • [e0d6041]: Adds proper encoding to strings being passed to a request.
  • [08bffa5]: Add __contains__ for proper lookup in cache Engines class.
  • [e16d9af]: Assorted fixes and enable metadata grabber.
  • [40243c9]: Fix Recorded.exportMetadata()
  • [4ade93e]: Fix the default behaviour of mythmetadatalookup, we were passing a string to LookerUpper::HandleAllRecordings() instead of a bool.
  • [7aebf8c]: Fix updating of metadata info in RecordingRule.
  • [361834a]: Use proper type when exporting Metadata objects from database classes.
  • [139a98e]: Disable artwork processing for exportMetadata().
  • [de9ede4]: Add the new strings we will use for video metadata parsing. Refs #10613
  • [ea5aa87]: Fix metadata options editor for multiple results. Refs #10383









= Infrastructure Fixes/Improvements

  • [59dc8b8]: Bump all version numbers from 0.25 to 0.26 - distclean recommended
  • [243e20c]: Fix indenting after 990e579f724bb2d1af87be98028ad664a5795bc0
  • [ecda14d]: Fix a clang-related compile issue. Fixes #10473.
  • [d5f22eb]: Fix a compiler warning.
  • [ab284a5]: Make the qjson .pro files compile and install our way
  • [9d02591]: Make libs compile cleanly
  • [fd1b335]: Fix compile by changing uint -> uint32_t
  • [b9184ef]: fix adjust filters on non x86 platforms.
  • [08e8883]: Re-enable yadif filter on mac.
  • [375d12e]: Compile ffmpeg with -O3 on mac..
  • [5243960]: Comment out -Werror=missing-prototypes
  • [4963b9d]: Ensure no modification to FFmpeg libavformat's URLProtocol change would break our code
  • [6582bbf]: Change the other use of ~MythRenderD3D9 to use a DecrRef()
  • [a44c784]: Add missing include in audiopulsehander.cpp
  • [6a0b994]: Add missing header to commbreakmap.cpp
  • [e466033]: Add a whole bunch of missing includes to commbreakmap.cpp, it was implicitly including everything.
  • [28588ea]: Add compat.h to playbackboxhelper.cpp for MinGW compilation.
  • [99aa14d]: Include signal.h in mythbackend/main.cpp for SIGINT
  • [d7a9fca]: Define USING_MINGW when building programs with MinGW
  • [f729934]: Add a couple missing header include.
  • [733316d]: Silence some warnings from QT's code parser (lupdate)
  • [89810e7]: Alternate fix for QT warning.
  • [ec778d3]: Hook in the BUILDLIBDIR in
  • [830c8cd]: oops. remove the -L from QMAKE_LIBDIR.
  • [93fc5d5]: Attempt to override the QMAKE_LIBDIR path for mingw
  • [06153b2]: Ignore generated file MyMETA.yml.
  • [17a73ed]: Fixes #10523. Make cast explicit for C++11 happiness.
  • [970d9b1]: Formatting fixes in logging.h
  • [e38c94c]: Hook in the LATE_LIBS to get the Qt lib path
  • [a63936f]: Don't set the version if in mingw
  • [dd53183]: Argh. Re-"link" qjson/include/QJson if it's a file
  • [cfcc4d4]: Put more SyslogLogger methods in #ifndef _WIN32
  • [2b6654f]: Seems mingw doesn't have sys/socket.h. Junk.
  • [9639b04]: Make setsockopt do (const char *) on arg 4
  • [e65cc21]: Formatting fixes.
  • [dc8bfb4]: Completely remove the #define setsockopt in compat.h
  • [8cf59d7]: Add prototype in qjson to shut up the compiler
  • [cd670ec]: Partial support for PHP 5.4 #10504
  • [b92683a]: Fix usleep dep in gcc 4.7
  • [bf7b838]: Fixes #10649. Add toString() medthod to TeletextDescriptor.
  • [0c88729]: Refs #10649. Minor rejigging of [bf7b8386c]; move toString() implementation to .cpp and make more consistend with atsc/scte output.
  • [f2a0d74]: Refs #10311. Port MythSocket code to ReferenceCounter.
  • [4a3581d]: Rework ownership of RingBuffer and MythPlayer in transcode. Refs #10616
  • [74aabda]: Bump API version due to the extensive log changes
  • [d9ac417]: Qt5 compatibility fixes.
  • [13f3b77]: Remove unused DBCleanup housekeeping job.
  • [610046d]: Fix transposed args in comment
  • [329f1c3]: Add log message for 1302 DB upgrade
  • [65cf894]: Disable strict mode in MySQL connections.
  • [3009980]: Fix some icc compiler warnings.
  • [05edfd9]: Some const fixes to make icc happy.
  • [6a64891]: Eliminate ConstFilterInfo_. There is no constructor which means we need to rely on a gcc c++ extension for initialization.
  • [12a3eac]: Fix compilation with clang/clang++ - configure: we can't use CFLAGS for compiling C++ code, especially as CFLAGS would include -std=c99 which makes no sense for C++ - was compiled as a C++ file, not an objective-C++ file, gcc was forgiving about the error, clang++ isn't
  • [8f998ab]: Fix compilation of greedy deinterlacer when using clang...
  • [a20b125]: OS X build fix - libmythqjson.dylib, not mythqjson.framework
  • [f8f49a3]: MSocketDevice::bind() returns false not -1 on error...
  • [65b0f74]: Move up <0 check to before cast to unsigned.. caught by icpc.
  • [24c95ee]: Fix typo in time zone support check.
  • [4e1f1f2]: Silence icc compiler warnings.
  • [5aae42d]: Silence icc warnings.
  • [5ff71cc]: Correct an indent and a case problem
  • [70bba77]: Remove some ancient debugging code in SignalMonitor.
  • [db21385]: Fix documentation in mythsystem.h
  • [e7409ec]: Fix errant version check for libcec
  • [dba1f86]: Fix a retarded vim-based typo
  • [2bf1785]: Add wincrypt.h to windows file for hdhomerun. Fixes #10513
  • [397e464]: Service Contract cleanup
  • [1baa202]: Fix a typo.
  • [c97f954]: Properly license service stuff inside mythbackend.
  • [d4672dd]: Optimize MainServer::HandleFileTransferQuery()
  • [9acc853]: Always return 'OK' to protocol commands instead of a mix of 'OK' and 'ok'
  • [2c19748]: Apply changes made in mainserver to libmythprotoserver as well.
  • [08b8835]: Dashes should be replaced with spaces, not removed
  • [f0b1a28]: fix tab/space
  • [3c57587]: Properly delete thread names on deregistration
  • [16da04d]: Propagate the INSTALL_ROOT to DESTDIR for zeromq
  • [0034a85]: Clean up deferred deletes MThreadPool.
  • [4053fd7]: Whitespace.
  • [eebf43e]: Ignore some icpc warnings.
  • [44d4933]: const correctness fixes for mpeg classes.
  • [0680c4f]: Suppress implict conversion warning (icpc).
  • [9b41af7]: Ignore icc warning 913.
  • [0e4437c]: Clean up some small memory leaks in logging
  • [2b22633]: Missed a spot. Also fix the .pc file
  • [5e3803e]: And missed another spot. Please let this be all :)
  • [ef2b377]: this is python. do assignent right.
  • [f21c868]: Disable a few more icc warnings.
  • [c2883d0]: Make intended uint->int conversion explicit.
  • [ed02128]: Fix double-decrement in database logging. ooops.
  • [6f4f87b]: Minor cleanup of unused code
  • [7aea313]: Fix incorrect cast causing loss of integer precision in RingBuffer
  • [fe00ebc]: Fix the indent of c53542f.
  • [ea6ec5b]: Remove the concateration from two help texts.
  • [c46be30]: Fix the context of some strings are remove concaternations.
  • [4957e21]: Minor formatting, plus add back the bufferMutex
  • [e2a0efd]: Add missing case statement. Fixes {{ticket|10764}
  • [e4f3d08]: use qIsNaN in place of ::isnan. Fixes #10524
  • [d94970b]: freemheg: Support bitmaps with included content
  • [0a864fd]: freemheg: Catch divide by zero
  • [abc52ed]: freemheg: Support JPEG bitmaps
  • [9170d84]: freemheg: Print ActionSlot number in disassembly to aid debugging
  • [ed1bb0c]: freemheg: Added ASN1 codes for InteractionChannel
  • [2699d86]: Tidy up MythConfirmationDialog::ShowOkPopup()
  • [bfbd67b]: Don't leave an invalid pointer when deleting the main stack
  • [8072c0e]: freemheg: Better tab handling
  • [462c6eb]: freemheg: Correct font x-resolution
  • [bde24c5]: Remove use of OF zlib macro in MythGame. Refs #10507
  • [31f09a8]: Formatting changes. Nothing to see here, move along.
  • [8cdf5da]: Fix schema from ac4e2d9
  • [cb152cb]: Fix typo in scannerpath schema creation
  • [bf285bb]: Fix doxygen comment
  • [71869c7]: Resync libmythdvdnav with upstream
  • [640963b]: Check the return value of dvdnav_title_play and if playback fails try the next title on the DVD
  • [b7f7d52]: Fix a typo in last commit.
  • [eff95fc]: Add 'copyrightlogo' type to all scripts, but left unused for now
  • [086801d]: Bump mythweather script versions to force a cache refresh
  • [d01b7d2]: If 'copyrightlogo' is 'none' then treat it as an empty string
  • [fc8880e]: Fix build warnings about modifying a const variable
  • [65faa48]: Fix compilation issue on some systems
  • [ec2ac41]: Correct bad copy/paste in ServerPool.
  • [1316335]: Remove the use of abs(long long) as it freaks out ARM compilers. Fixes #10915
  • [6810255]: Get rid of some (now after 02c0b3c) unused variables.
  • [f312843]: Remove some duplicate strings by writing them the same way they appear elsewhere...
  • [9cc6ba6]: Correct import errors with utility folder.
  • [b14564a]: Fix ignore on external/zeromq/src/libzmq.pc
  • [67bc2cd]: Disable -Woverloaded-virtual.
  • [262c7c7]: Add missing files after 60cf735.

Build Related

  • [390569b]: Run git status before git describe to clear false dirties
  • [4a40145]: Setting VERSION to v0.26-alpha
  • [59f4a77]: Fix capitalization conventions. Fix signed/unsigned compiler warnings.


  • [a95a2ce]: Fix a typo in configure
  • [9e1ba1c]: Add AS_O and CXX_O to configure - fix ppc build
  • [f04d226]: Try to fix debian slave by changing order of checks in configure
  • [fb90f73]: Disable SDL by default
  • [68b53a6]: Accept --enable-sdl configure option
  • [e4aabbe]: Update configure to be in sync with our current FFmpeg
  • [44e64a3]: Update ./configure qt version check to allow Qt5.
  • [d6b4689]: Add support for icc & icpc compilation in configure.
  • [460d1a8]: Missing parenthesis in mythtv/configure.
  • [354fd02]: Add check for libuuid in top-level configure


  • [19897d3]: Fix some emptiness check inefficiencies highlighted by cppcheck.
  • [6daec74]: Fix error in zeroing memory for surfaces in VAAPIContext found by cppcheck.
  • [7d88cef]: Don't check for a null pointer here, it can never be null and the existance of the check confuses cppcheck/coverity.
  • [3bade07]: Silence a cppcheck warning.
  • [23ae058]: Silence cppcheck warning.
  • [97cfab1]: Silence cppcheck warning
  • [8e324c6]: Fix some cppcheck warnings.
  • [ba86761]: Fix initialisation of arrays in MethodInfo::Invoke(). Identified by Cppcheck
  • [af3f939]: Fix some issues found by cppcheck
  • [6b444ad]: Initialize m_initialWaiting in ctor (silence cppcheck)
  • [0998b7a]: Add a log message to appease cppcheck


  • [b989db6]: Fix potential null pointer de-reference spotted by Coverity.
  • [a68210c]: Fix minor memory leak spotted by coverity
  • [805cac5]: Fix minor memory leak in MythUIButtonList::DistributeButtons() discovered by Coverity
  • [4b72e8f]: Fix Coverity warning about memory leak on error in VideoOutputBase. Very minor bug since something would have to be critically wrong for us to hit this code.
  • [943bfe9]: Fix a few 'Unchecked dynamic_cast' warnings from Coverity in libmythui. Most of these could safely be switched to static_cast because they are not expected to fail.
  • [46bcb72]: Guard against possible null pointer dereference identified by Coverity.
  • [53c2234]: Fix possible divide by zero identified by Coverity
  • [64410be]: Return value of ioctl wasn't being checked in JoystickMenuThread::Init(), caught by Coverity.
  • [1725f1b]: Fix bad memset calls in JoystickMenuThread::Init(). Caught by coverity.
  • [4a86d41]: Silence some variable initialisation warnings, all false positives but if it makes Coverity happy then so be it.
  • [0a9ac9b]: Add missing 'break' statement to myth_av_log() switch. Spotted by Coverity.
  • [653a236]: Fix a leak detected by Coverity.
  • [fae8d9f]: Add missing break statement in PlaybackBox::ShowAvailabilityPopup(). Caught by Coverity.
  • [02f5463]: Fix assumption that ints would be initialised to zero in JobQueueEntry, this isn't the case with C++. It appears that this would have caused any job that didn't include a chanid to abort even though the code indicates that it's perfectly valid to have a job which doesn't operate on a recording and wouldn't require the chanid. I don't know enough about the intended behaviour to say whether this will fix a user-visible bug ... Discovered by Coverity.
  • [c85ed06]: Fix assignment where comparison was intended in FreeSurround::getLatency(). Caught by Coverity
  • [95e6182]: Fix a bunch of memory leaks in mythmetadatalookup. Coverity.
  • [389ba60]: Fix CID 700722: Allocation too small for string (Coverity) in AudioOutputPulseAudio::ChooseHost()
  • [22f9867]: Fix potential double-free (found by Coverity)
  • [99ebebd]: Use the correct delete for the array pulse_host. Reported by Coverity.
  • [3bdc0d1]: Fix PIP video frames being initialised with the size of the pointer instead of the actual frame size due to a sizeof() error. Spotted by Coverity
  • [ec2a3df]: Fix a potential NULL pointer dereference in an error case. won't be a crash. This was also identified by Coverity.
  • [502f0b0]: Re-organise some things to stop Coverity et al warning about possible null pointer dereferences in mythfrontend.
  • [10d1cc6]: Always check the return value of QSqlQuery::next() before accessing results in the Housekeeper. In fact we only needed to check next() in these instances, the isActive() and size() calls were redundant. Coverity defects 700272 and 700271.
  • [7533cf2]: Always check the return value of QSqlQuery::next() before accessing results in MainServer. Ee only needed to check next() in these instances, the isActive() and size() calls were redundant and have been removed. Coverity defects 700273 and 700274.
  • [9bddf5b]: Fix a null pointer dereference in MainServer::HandleQueryRecording(). This bug would have made it possible to crash a backend with a malformed QUERY_RECORDING message. Coverity defect 700420
  • [9f7cb75]: Always check the return value of QSqlQuery::next() and QSqlQuery::exec() before accessing results in Scheduler::UpdateManuals() and UPnpCDSTv::AddItem(). Coverity defects 700275 and 700276.
  • [b30825e]: Fix several memory leaks in services/dvr.cpp. Coverity defects 700670, 700671, 700672 & 700673
  • [29ca559]: Batch fix for unchecked instances of QSqlQuery::next(). Fixes multiple Coverity warnings.
  • [54b1144]: Declare StateVariableBase destructor as virtual so that the correct destructor is called for derived classes. Coverity defect 701004
  • [b38a290]: Stop Coverity complaining of a memory leak in mythavtest. In reality we exit immediately after this apparent leak so it would have zero impact. Coverity 'defect' 700669
  • [c77d8ed]: Fix memory leak in services/frontend.cpp - Frontend::InitialiseActions(). Coverity defect 700675
  • [1207821]: Fix misplaced else condition in osd.cpp. This just looks like a mistake, the else appended to the wrong block. dialog cannot be null, but Create() can and will fail. Related to Coverity defect 700311 'Logically dead code'
  • [8c8bd19]: Fix another misplaced else condition in osd.cpp. Exact same problem as in [12078211] just in another place. Related to Coverity defect 700312 'Logically dead code'
  • [ff462b7]: Stop Coverity whining about mixing enum values in StatusBox::doTunerStatus()
  • [fb132ff]: Fix several possible null pointer dereferences in tv_play.cpp. Coverity defects 700398, 700399, 700400, 700401, 700402 & 700693
  • [1d7922c]: Don't check m_statusText for NULL it's redundant and confuses Coverity.
  • [7809398]: Fix a couple of memory leaks in mythgame. Coverity defects 703765 & 703766
  • [dfb717c]: Fix leak in MythNetVision. Coverity defect 703767
  • [7493e12]: RomInfo constructor was being called with an empty string where it called for a boolean. Coverity defect 703726
  • [2eabe31]: Send haveResult() with an empty QString instead of a an empty C string. Avoids ambiguity with the version of this signal which takes a boolean arg. Coverity defect 703725
  • [de2eef3]: Fix integer overflow bug in AutoExpire::CalcParams().
  • [687f242]: Fix a number of minor issues reported by Coverity for mythmusic.
  • [d314019]: Remove unused member variable in MythWeather's SourceManager class. Silences warning from Coverity, defect 703838
  • [18d0a1c]: Fix a possible but insignificant leak in MythArchive's VideoSelector::getVideoListFromDB(). Coverity defect 703764
  • [2e80053]: Remove dead member variables from FileTransfer.