Difference between revisions of "Feature Wishlist"

From MythTV Official Wiki
Jump to: navigation, search
(Menu Mode)
m (Platforms)
(125 intermediate revisions by 64 users not shown)
Line 1: Line 1:
{| cellpadding=5 cellspacing=5
+
{{Note box|Before making any feature requests to the MythTV developers, one first needs to understand the most basic truth about MythTV: ''"MythTV is a project by developers, for developers."'' If you look at things in that light, comments that get made by developers to users who submit feature requests ("Sounds good; I look forward to your patch") make a whole lot more sense.}}
|width=300|__TOC__
 
|valign=top|Before making any feature requests to the MythTV developers, one first needs to understand the most basic truth about MythTV: ''"MythTV is a project by developers, for developers."'' If you look at things in that light, comments that get made by developers to users who submit feature requests ("Sounds good; I look forward to your patch") make a whole lot more sense.
 
  
 
The developers of MythTV work for free (obviously), in their spare time. Most/all of them write software for a living, where they work all day long on things that other people want them to work on. When they work on Myth they focus on what's important to them. A feature gets implemented because a developer wants it bad enough to spend his spare time writing it and testing it, and believes in it strongly enough to defend it from the other developers (which helps to avoid the feature creep common in some projects). Bugs, especially crash bugs, get worked on by all of the devs as they encounter them as those impact everyone.
 
The developers of MythTV work for free (obviously), in their spare time. Most/all of them write software for a living, where they work all day long on things that other people want them to work on. When they work on Myth they focus on what's important to them. A feature gets implemented because a developer wants it bad enough to spend his spare time writing it and testing it, and believes in it strongly enough to defend it from the other developers (which helps to avoid the feature creep common in some projects). Bugs, especially crash bugs, get worked on by all of the devs as they encounter them as those impact everyone.
Line 7: Line 5:
 
That's not to say that the users don't matter, or that the developers never implement something that comes from a user. It's just that unless a developer says either "why didn't I think of that" or "I could knock that out in a couple hours" it will be a much lower priority.
 
That's not to say that the users don't matter, or that the developers never implement something that comes from a user. It's just that unless a developer says either "why didn't I think of that" or "I could knock that out in a couple hours" it will be a much lower priority.
  
Requests from people who have contributed back to the project in some way carry a LOT more weight. Developers by and large tend to be rather blunt. People often mistake being terse and to the point for being insulting. Then they start a [http://www.gossamer-threads.com/lists/mythtv/users/59418 flame war on the mailing list] (which is pretty much certain death for a feature request) all because a developer either a) didn't take 3 paragraphs to tell them "I'm not going to work on this" or they think that the developer should drop whatever they're doing because *they* want it done. A lot of the devs are a bit defensive when it comes to requests, largely due to previous bad experiences.
+
{{HelpUs}}
  
And, finally, remember this: if there's something you want badly enough, [http://www.gossamer-threads.com/lists/mythtv/dev/166419 you can always offer to pay someone to do it].
+
Requests from people who have contributed back to the project in some way carry a LOT more weight. Developers by and large tend to be rather blunt. People often mistake being terse and to the point for being insulting. Then they start a [http://www.gossamer-threads.com/lists/mythtv/users/59418 flame war on the mailing list] (which is pretty much certain death for a feature request) all because a developer either '''a)''' didn't take 3 paragraphs to tell them "I'm not going to work on this" or '''b)''' they think that the developer should drop whatever they're doing because *they* want it done. A lot of the devs are a bit defensive when it comes to requests, largely due to previous bad experiences.
 +
 
 +
And, finally, remember this: if there's something you want badly enough, [http://groups.google.com/group/mythtv-contractors you can always offer to pay someone to do it].
  
 
:Editor's note: Even moreso than on most pages, if you add a note here that a wishlist item is now available or in process, ''please note which version that information applies to'' ('added in 0.19', for example).  Remember: wiki pages live forever. --[[User:Baylink|Baylink]] 17:00, 12 February 2006 (UTC)
 
:Editor's note: Even moreso than on most pages, if you add a note here that a wishlist item is now available or in process, ''please note which version that information applies to'' ('added in 0.19', for example).  Remember: wiki pages live forever. --[[User:Baylink|Baylink]] 17:00, 12 February 2006 (UTC)
|}
+
 
 
== How to make a suggestion ==
 
== How to make a suggestion ==
  
Line 19: Line 19:
 
* Before anything else, ''check the [[Current Version]] release notes to make sure it's not already in there (yes, this happens).
 
* Before anything else, ''check the [[Current Version]] release notes to make sure it's not already in there (yes, this happens).
 
* Clearly indicate that it's a request, not a demand.
 
* Clearly indicate that it's a request, not a demand.
* Indicate your understanding that code speaks louder than words. (i.e. "If I could I'd write up a patch that does this but I'm not a dev")
+
* Understand that code speaks louder than words. If you can, write a patch and submit it to [http://svn.mythtv.com TRAC]
 
* Be very clear with how you envision your idea working. The more details you have in your request the better chance you have hitting that magical "knock it out in a couple of hours" mark.
 
* Be very clear with how you envision your idea working. The more details you have in your request the better chance you have hitting that magical "knock it out in a couple of hours" mark.
* Make sure you're not repeating a previous request. (search the mailing list archives)
+
* Make sure you're not repeating a previous request. (Search the wiki and [http://www.gossamer-threads.com/lists/mythtv/ mailing list archives])
 
* Do NOT be offended if a developer responds with "sounds good; I look forward to your patch".
 
* Do NOT be offended if a developer responds with "sounds good; I look forward to your patch".
 
* Requests from people who have contributed back to the project in some way carry a LOT more weight.
 
* Requests from people who have contributed back to the project in some way carry a LOT more weight.
 +
When you're ready to submit your suggestion, add it to the end of the relevant page and section listed in "The Wishlists" section below.
  
== In Development ==
+
__NOTOC__
  
There are many items which are in active development (people are writing code). Some of them are listed below, and others [http://svn.mythtv.org/trac/wiki/FutureDevelopment at the developers' Trac wiki page].
+
== The Wishlists ==
 +
* [[Feature Wishlist (Setup)|Setup and Configuration]] -- Anything for the setup process including hardware support. These are '''things you want mythtv to do prior to actually running mythtv'''.
  
* [http://gossamer-threads.com/lists/mythtv/dev/7175 Share MythVideo/MythMusic-files between all frontends (via backend?)], Thor is working on this so called [[MFD/MFE]] feature. [http://gossamer-threads.com/lists/mythtv/users/69087?#69087 It is planned to go into 0.16 (but wasn't)] ''Easily accomplished with NFS''
+
* [[Feature Wishlist (Backend Addons)|Backend Addons]] -- Backend additions are '''things you want mythtv to do when you're not around'''.
* Add an option to play FM-radio through a FM tuner (NOTE: A patch exists http://mythextra.napsi.net/mythFM.html but there's current less development on that)
 
* A method to allow review of email on a POP3 server.  No need to download the email, just browse what is there and read/delete/etc. in work: http://mythextra.napsi.net/
 
* [http://svn.mythtv.org/trac/ticket/368 Videotext/Teletext] for PVR250/350/500 and digital TV-Cards
 
* Mouse support. Would make it possible to use a touch screen to control MythTv. - option added
 
  
== Backend Addons ==
+
* [[Feature Wishlist (Frontend Addons)|Frontend Addons]] -- Frontend additions are '''things you want to do in mythtv while using recordings'''.
=== General ===
 
  
*Be able to change channels in the program guide.  When selecting a channel you are only able to set the recording priorities (I know of the option to just change the channel).  There should also be a "Turn to this channel immediately" menu item in the record menu.  This way you can use both features in one, without having to switch the guide behavior in the setup.
+
* [[Feature Wishlist (Plugin Addons)|Plugin Addons]] -- Plugin additions are '''things you want to do in mythtv while not using recordings'''.
* Ability to save the stream from a single capture card to more than one file, and awareness of this capability by the scheduler.  This would allow scheduling two "overlapping" recordings (because one or both had a preroll or postroll, and they aired consecutively on the same channel) to each have their prerolls and postrolls preserved, without requiring using a second tuner just because there was an overlap of a few minutes.  This potentially doubles traffic to the disk during that interval, but disk bandwidth is relatively cheap, and adding extra tuners to deal with this problem is not (and maybe even be impossible for machines with few PCI slots). [Consider especially the case of an episode marathon, all of which will eventually get saved to DVD.  Without prerolling/postrolling, any scheduling offset is guaranteed to chop off the beginning/end of each episode if there's the slightest clock skew, the missing pieces may wind up on different DVDs, and there may ''still'' be missing pieces due to the dropped seconds while the tuner reininitalizes itself at the beginning of each capture.  Avoiding this with pre/postrolls currently doubles the number of tuners required, but writing the overlap intervals simultaneously would not.] This would be of significant benefit in Australia, where pretty much everything starts/ends many minutes early/late (5-10 minutes is quite common). [[http://www.gossamer-threads.com/lists/mythtv/users/164427 1], [http://www.gossamer-threads.com/lists/mythtv/users/135511 2], [http://www.gossamer-threads.com/lists/mythtv/users/130207 3], [http://www.gossamer-threads.com/lists/mythtv/users/128968 4], [http://www.gossamer-threads.com/lists/mythtv/dev/12884 5]].
 
* Add Support to view multiple Channels from one Transponder with DVB. So that you can use more recordings, PIP as if you have two cards if you only have one. [http://www.gossamer-threads.com/lists/mythtv/users/150545  Handle multiple DVB channels simultaneously from a single multiplex]
 
* Add Support to use Internet TV from the backend, so that it could be use like a normal Channel (Record, Skip Back, ...) --Anaerin ''Also known as [[IPTV]]''
 
* A better Plugin interface, so that Plugins are not only Extra Applications, they should also be able to interact directly with backend functions...
 
* [http://svn.mythtv.org/trac/ticket/637 Use Matroska (*.mkv) in mtd.]  Matroska is an envelope for which there can be many audio, video and subtitles streams, allowing the user to store a complete movie or CD in a single file.
 
* Provide some way for users with multiple available tv cards to switch channels, while keeping the ringbuffer for the previous channel until system runs out of tv cards. This would allow flipping between two shows and keeping the ringbuffer for both
 
* Provide a transcode to divx or xvid while recording option. Save a ringbuffer that is transcoded to divx and store in database as a TV Recording after processing to divx
 
* After an initial transcode from mpeg2 to mpeg4, I would like to be able to do a mega-sqeeze using nuvexport for archival purposes but still keep the file in mythtv records -- not in videos. Can .nuv be used as a container for xvid? I.E. initial PVR250 recording for an hour takes up 2gb. Transcode to mpeg4 brings this down to 1gb. Nuvexport "transcode" to xvid brings it down to ~400mb and keeps the recording and program info in mythtv.
 
* Have mythbackend back up the mythconverg database on a flexible schedule.
 
* support for secondary storage via NFS - when primary storage is full on a backend, go to secondary storage -- like a storage heirarchy
 
* provide arbitrary encapsulation of ANY UNIX application started fullscreen inside of a VNC session and assign to a Channel - I.E - start a vnc session with xterm in fullscreen, assign to channel 100, start xchat logging into #mythtv-users and assign to channel 101, etc.
 
* more tightly integrate mythfilldatabase into mythtv-setup...the setup tool should be able to know if you're the backend or not and know when you last ran mythfilldatabase...and it should let you run it from the gui.
 
* Allow manual setting of DVB video/audio PIDs rather than always using on-air information - this would allow watching BBC Parliament / News Multiscreen video in UK
 
* email notification when Recording conflict (might as well include the option for AIM/Jabber notifications )
 
* including support for SQLite (or PostgresSQL) might make configuration simpler for machines that are only running MySQL for MythTV anyways - MySQL configuration is a common source of problems for new users
 
  
=== Hardware support ===
+
* [[Feature Wishlist (New Plugins)|New Plugins]] -- New plugins are '''new things you want to do in mythtv while not using recordings'''.
  
* Per-card audio level controls, to compensate for potentially double-digit dB differences in capture levels across differing revisions, models, and even brands of capture cards.  (Extra credit while working there:  per-input and per-channel controls as well.)  Discussion and potential design can be found at [http://www.gossamer-threads.com/lists/mythtv/users/173374 Why is my 350's audio so much l-l-louder! than the 250's?] and [http://www.gossamer-threads.com/lists/mythtv/dev/174147 No per-individual line-level adjust: bug or missing feature?] and (inadvertently broken thread) [http://www.gossamer-threads.com/lists/mythtv/dev/174303 here].
+
=== Platforms ===
* [http://gossamer-threads.com/lists/mythtv/dev/349 ATI AIW support], this is a difficult one. (I don't expect this ever to work but who knows HenkPoley) ''Not going to happen the AIW card is a horrible capture card (from a driver standpoint).''
 
* A solution to allow MythTV to watch and record encrypted digital cable broadcasts that the user has licensed.  This is an EXTREME pipe dream as it would require 1) cooperation, or at least noninterference, from the cable companies; 2) digital receiver cards that can accept CAMs from the cable provider; 3) volunteers to code the drivers.
 
:Note that this isn't *quite* as far fetched as it sounds.  It *may* prove possible to receive unencrypted (non-pay) digital cable channels in the US with the pcHDTV3000 card.  The encrypted ones would require a card compatible with a CableCard decryption card -- which cable companies *are* required to provide if you ask for one... but we're unlikely to see such a card ship *before* the July 1 2004 advent of the broadcast flag.  So support EFF in getting it thrown out.  :-) -- BayLink
 
::That was old commentary, but CableCard-capable HDTV tuner cards are actually expected in 2006 or early 07; see the news page. --[[User:Baylink|Baylink]] 05:50, 1 February 2006 (UTC)
 
::: Arstechnica wrote about news from CES that says we [http://arstechnica.com/news.ars/post/20060131-6081.html shouldn't get our hopes up].
 
* Support HD hardware decoder card(s).  The Sigma Designs HD decoder can do MPEG2 and MPEG4 decoding, making the CPU requirements on the frontend extremely low.  There is a project to reverse engineer Linux drivers for the MyHD line of cards, based on the Teralogic Janus design, which includes an HD MPEG2 decoder.  Theoretically, it would behave just like a PVR-350, but with full HD support.
 
  
=== Initial setup ===
+
* MythTV Frontend running as a [http://en.wikipedia.org/wiki/Wii_Channels Wii Channel] (There is a [http://www.fossfactory.org/project.php?p=p102 small bounty] for this on FOSS Factory.  You can contribute to the bounty if you want.)
 +
* MythTV Frontend (TV client only) running natively on GlobalScale Linux D2 Plug ARM Marvell PXA510 – 800MHz see http://www.globalscaletechnologies.com/c-8-d2plug.aspx - ** UPDATE June '12 ** New D2 Plug availability occurred in October 2011.  We have received product and are now implementing the platform.  Some delays due to other work.  We are having good and bad results. We can compile code on the D2 plug, we are having problems with decoder (OpenMAX is not supported on ARM cpu) we are looking at the options. We still think that it is doable. Send suggestions to mythtv@quickcycle.com 
 +
* MythTV Frontend running on AppleTV (doable: see [[Installing MythTV on an AppleTV]] and a thread on the [http://www.gossamer-threads.com/lists/mythtv/dev/288558 developer] mailing list)
 +
* MythTV Frontend (TV plug-in only) running natively on AppleTV i.e. using Apple's FrontRow for menus.  See [http://wiki.awkwardtv.org/wiki/BackRow_Developers%27_Kit AwkwardTV Wiki] and [http://alanquatermain.net/brdevkit/ BackRow Developers' Kit].  This would create a single, modeless AppleTV front end / user interface.
 +
* MythTV Frontend on Windows Mobile. Since a frontend is working on Windows, a Windows Mobile version could be promising, One challenge might be a touch interface.
 +
* MythTV Backend ported to ARM SoC i.e. NVIDIA's [http://blogs.nvidia.com/2011/02/tegra-roadmap-revealed-next-chip-worlds-first-quadcore-mobile-processor/ Ka-el and/or Denver projects].  While it is unknown if graphics accelerated drivers (VDPAU) will be made available to run a frontend the raw horsepower should be sufficient for a backend with storage, comm flag, and USB based tuners.  Imagine your 35W TDP Core2 Duo (T7200) CPU replaced by a 1W TDP CPU/GPU that has vastly less performance...
  
* Channel icons when using DataDirect for new users (See [http://mythtv.org/docs/mythtv-HOWTO.html#toc5.4 Official Docs] - WikiMyth)
+
Platforms are the '''hardware and operating system''' setups that actually run the Myth applications.  This section should track the request to support platforms other than the default x86 PC environment. This would include console ports like X-Box and PS3.
* Provide an option under setup that will gather system/mythtv config and info and allow a user to send an email to mythtv-users mail lists after careful prompting to ensure that new users can file useful bug reports or ask for help while including as much required information to provide a solution (Something similar to [http://freshmeat.net/projects/bug-buddy/ bug-buddy] )
 
* Add default MythTV setup options for ALSA : default for alsa devices and mixer. Provide documentation on how to have all ALSA output go though mixer (so that two sounds can play at the same time)
 
* suggestion that would require some v4l support... autodetect / enumerate all cards (and then of course allow deletion of individual sources via mythtv-setup).
 
* When no channels are found during the channel scan it would be less confusing to have a message indicating this.
 
  
=== Parental controls / User permissions ===
+
=== Will Not Implement ===
 
+
These are suggestions which for one reason or another will not be implemented in MythTV.
* [http://gossamer-threads.com/lists/mythtv/dev/5680 Channel lock],or just 'lock'. ''Users can receive a warning when attempting to change the channel while not caught up to real time, so the original purpose behind this is moot.''. Might (still) be handy for parents with little kids.
+
* [http://gossamer-threads.com/lists/mythtv/dev/2899 Non-time shifting mode for watching regular TV], would be a bit difficult since the frontend/backend split, but might be possible when both are on the same machine. You could still draw the OSD if you would want.
* Add ability for mythtv to log all shows watched (live or recorded) during a day and store in a unique log file per day to store tv watching history. Add ability to put parental controls on mythtv to only allow a given number of hours of tv watching during the day, only allow certain channels during certain times on certain days of the week.
+
:: MythTV is designed as a PVR, which by definition necessitates that all TV be recorded and buffered. As mentioned, the frontend/backend split was designed with this requirement in mind, and MythTV would require a significant rework of the livetv code in order to reduce this buffer.
* How about a feature that would allow you to 'markup' DVD's to skip unwanted scenes for parental control or even look at the subtitles and mute when there are bad words? ''DVD subtitles are images, so that last part would require significant OCR'ing...''
+
:: '''fast channel changing''' is also an unachievable goal due to hardware constraints. Tuners and cable boxes take time to lock, mpeg encoders need to fill video buffers, digital tuners need to wait for stream information and then the first I-frame. All of this adds up to MythTV's internal lag becoming a less significant portion of the problem.
* The ability to lock out specific frontends from specific channels (still tuneable, just not watchable. 4-digit PIN code to override). Maybe you have one frontend in the living room, one in the bedroom and one in the kids' room. It would be nice to be able to only send Cartoon Network, etc. into the kids' room while sending Playboy TV, etc. only to the bedroom... I imagine setting up a "standard package" and then registering the frontends somehow and customizing their channels. I guess this sounds awfully broadcasterish, which is not the original intention, but apparently a positive sideeffect ;-)
 
 
 
=== Intelligent recording / Commercial detection ===
 
 
 
* [http://gossamer-threads.com/lists/mythtv/dev/1850 Recording suggestions], [http://www.gossamer-threads.com/lists/mythtv/users/25779 2], [http://gossamer-threads.com/lists/mythtv/dev/gforum.cgi?do=post_view_flat;post=7175;list=mythtv#7178 3]}, á la TiVo
 
* Configurable "max_commercial_length", override recordedmarkup and skip max_commercial_length where appropriate. (sometimes I hit skip and jump 13 minutes, etc).
 
* More precise time offset for guide listings (My clock is spot on using NTP, but my provider's clock seems fast by 30-60 seconds). Or, allow "End Late" to be a negative value, could be used in combination with "Start Early" to accomplish same goal. This could also be used to compensate for any scheduler "lag".
 
* Speculatively record shows that the user *might* want to watch, even though the user hasn't manually asked for them. (But, of course, never let these take priority over shows the user says he definitely *does* want to be recorded). See http://www.templetons.com/brad/myth/tvwish.html
 
* Use Bayesian prediction (just like SpamAssassin) to get better at predicting which shows the user *might* want to watch. See http://www.whynot.net/view_idea?id=1236
 
* Have mythfilldatabase grab the additional "cast" data and insert it into the database, allowing searches for favorite actors or directors
 
* Allow selection on additional fields, e.g. only record a movie if it's being broadcast in widescreen.
 
* Conflict resolution: if two shows overlap a few minutes, don't NOT record one of them, but cut the minutes from the first or second show.
 
* Record/don't record on certain channels. Add the ability to have a channel include/exclude list that lets the scheduler consider certain channels or bars it from considering certain channels. This will allow me to record Lost on any FOX affiliate, but keep MythTV from mistaking the Lost reality show on FOX Reality for the drama series.
 
:Under ''mythtv-setup'' you can assign priorities for channels and out-right remove them. For example, I have two ABC affiliates and I prefer to record form WABC vs. the local, so I have WABC higher priority.
 
* Allow backend to change tuner selection for recording on the fly if a user is watching live TV. (I have three tuner cards, and while I'm watching live TV, the backend often takes over the tuner I'm using, despite two other tuners being available.) <This is available "Utilities/Setup -> Setup -> General -> Avoid conflicts between live TV and scheduled shows">
 
* Commercial flag sharing:  mythcommflag is replicating the same work on many devices.  If I'm scanning "Lost" for commercials, it would be nice if others could benefit from that and greatly decrease the work needed to be done on other systems recording the same show.
 
* Commercial flagging profiles:  A US broadcast TV show often uses the same basic commercial layout for all expisodes.  Knowing that the show will have 5 commercial breaks, of durations "3min,3min,5min,3min,3min" with gaps of no less than 6 minutes between them, could be used to optimize flagging.
 
 
 
== Frontend Addons ==
 
 
 
=== General ===
 
* [http://gossamer-threads.com/lists/mythtv/users/59418 make screenshot]
 
* [http://gossamer-threads.com/lists/mythtv/dev/19084 Key to switch between windowed and full screen mode]
 
* MythTheme plugin for downloading Themes and install it from an directory of all themes
 
* On screen help. Press F1 and it tells you what keys do what at that point in time. Also tells you more about each function. ?How does this work with Remotes? --I'm planning on tackling this as my first bit of mythdev :) --DavidGreaves ''Try pressing "1" on your remote''
 
* [http://gossamer-threads.com/lists/mythtv/users/22689#22689 Screensaver for widescreen plasma/rear-projection TVs], to avoid burn-in when displaying 4:3 content --Anaerin ''[http://www.jwz.org/xscreensaver/ XScreensaver] support is in Myth, all you need do is install it in your box''
 
* Implement a frontend gui that is based on xosd for text display and display on top of xscreensaver modules running on root window - this would allow for cool 3d backgrounds in the mythtv frontend
 
:there is a new GUI based on OpenGL in CVS ...
 
* Add default ifconfig output to the System Status area of the Information Center
 
 
 
=== Menu Mode ===
 
* [http://gossamer-threads.com/lists/mythtv/dev/19084 A clock in the menu system] (Maybe available with 0.20 when the new UI is used which allow animations...)
 
* [http://gossamer-threads.com/lists/mythtv/users/29249 X10 Home Automation], or you could read this as a request to add a basic menu editing GUI, to add program start buttons for example
 
* [http://www.gossamer-threads.com/lists/mythtv/users/68793 Draw a line to seperate days in recording menus]
 
* [http://www.gossamer-threads.com/lists/mythtv/users/68793 Some new hotkeys in recording menus]
 
* add "smooth scroll" option to OSD Program Guide for horizontal and vertical scroll
 
* Include the free [http://ftp.gnome.org/pub/GNOME/sources/ttf-bitstream-vera/1.10/ Vera fonts] in MythTV
 
* Display channel number/name under preview window when in menu mode. Currently, the live channel being displayed and the highlighted square in the menu have no relation to each other, so you have to pretty much guess what channel you're seeing. (This is more important with the option to go to menu mode when entering live TV set.)
 
* breadcrumbs on menu display so end users don't get lost in menu system  eg Main Menu->Manage recordings...
 
* Add BACK and MAIN MENU buttons for touchscreen access.
 
* allow some capability to go directly to some menus via Remote control eg Watch Live TV or Guide etc..
 
* a summary of HDD free  (approx hh:mm or size/GB or %free) on main menu or top of every menu.
 
* Sounds in the menus when you move around or select somthing. (pings and pongs)
 
 
 
=== LiveTV / View Recording ===
 
* [http://svn.mythtv.org/trac/ticket/488 Videotext/Teletext with analog TV-Cards]
 
* Make OSD Scrollable, so that longer Descriptions are also visible (Maybe autoscroll or with a key)
 
* options to adjust video hue, contrast, color, brightness via OSD [http://www.semester.dk/ChrisTV/images/osd_panel.jpg example screen from ChrisTV]
 
* [http://gossamer-threads.com/lists/mythtv/dev/4506#4505 Automatically turn on CC / subtitles when LiveTV is muted], sometimes called QuickCaps apparently.
 
* [http://gossamer-threads.com/lists/mythtv/users/31556 LiveTV should also have a 'recording' priority], so you can queue shows that won't record when you are watching something else on LiveTV
 
* implement opengl photo transition effects as effects to be selected for channel change in LiveTV
 
* alarm clock feature - start playing liveTV from a given channel for a set period of time on given days of the week (i.e. weekdays, weekends)
 
* LiveTV multichannel preview mode - show a snapshot of each channel on a 3x3 or 4x4 matrix. Allow arrow keys and ff/rw to scroll through channels and enter to select channel
 
* change behavior going to livetv or attempting to change channels when all tuners are in use to provide a menu allowing the user to cancel a currently-running recording job and delete the recording.
 
* Provide a setting for maximum time on LiveTV or "Watch Recordings" screen with active mini preview video without any user event (i.e. no remote signal, no keypress, no channel change). When time reached, kick MythTV back out to main screen. This will prevent unnecesasry ringbuffer disk I/O after set time. A reasonable default time for this may be 6 hours.
 
* Automatic fine tuning, using signal strength it will scan a few kHz in each direction until it locks on the strongest signal then updates the database for that channel.
 
* Fine tuning with preview or while watching LiveTV, many channels are out of tune on my system and a small adjustment or two make a huge difference.
 
* Implement an automatic volume leveling algorithm that is common in many TVs, such as Magnavox's "Smart Sound."  This attempts to eliminate drastic volume spikes that commonly occur in commercials.
 
* Implement a way to stream shows over the internet or other low-bandwidth connections - similar to the [http://www.slingmedia.com/ Slingbox].  This would allow the ability to watch on a Linux laptop if you're at work.  Or, even the possiblity of a truly remote mythfrontend - like one hooked up at a friend's apartment, which uses the storage and tuner of a backend elsewhere.
 
* Ability to take a snapshot of the current frame, maybe to press R whilst paused to take a snapshot of the current frame.
 
* Enable browsing channels across tuners.
 
* Display the recording and/or original air date in the OSD when viewing a recording.
 
* Make editing out of commercials easier.  In addition to buttons for forward, backward, shorter jump, longer jump, etc., have a button for "this frame is part of the program" and one for "this frame is a commercial."  The editor would automatically do a kind of binary search, using the key presses to decide whether to move foreward or backward, and where to place the cut points.  The basic algorithm:  the editor shows the first frame of the recording. If the user says it's commercial, place a start cut point and keep moving forward by the (configurable) minimum commercial break length until the user says it's not a commercial.  At that point, move backward by half the minimum commercial break length.  If that frame is also a commercial, move forward by a quarter of the break length; otherwise move that distance backward, and so on.  When the distance to move gets to a single frame, mark the end point of the cut and move forward by the (configurable) minimum time between commercials plus the minimum commercial break length.  As long as the user indicates it is a program frame, keep moving forward by the minimum break length, until a commercial frame is found, and then use a similar binary search to find the start of the commercial.  Repeat util finished.  Comm flagging could be used as a hint for where to start looking for the cut points.
 
 
 
== Plugin Addons (to existing Plugins) ==
 
=== MythBrowser ===
 
=== MythDVD ===
 
 
 
* Implement support in mtd and MythDVD to support CD+G format using [http://sourceforge.net/projects/cdg123 libcdg123]
 
 
 
* Option to eject the DVD after it's been ripped
 
 
 
=== MythGallery ===
 
 
 
* Add EXIF display option for photos in myth's photo gallery. Also, create thumbnails of very large jpgs to speed up display.
 
* make myth's photo display more flexible to allow display of variable number of photos per screen (like iPhoto or picasa)
 
* take transition effects from xscreenaver and implement them for myth photo module
 
* Add ability to define extension types to activate specific command line for a given extension. Like MythVideo.
 
* Aspect Ratio key to zoom and stretch the picture to fit widescreen TV's
 
* Select audio track to play during slideshow
 
* Add Ken Burns Pan and Zoom Effect to slideshow
 
 
 
=== MythGame ===
 
 
 
* Support for an option to search for a rom!
 
* Add support to MythGame for [http://www.epsxe.com/download.php epsxe] (Can be used with the new MythGame!) - Also add support for mtd to detect Playstation 1 cds (This not!)
 
* Add simple games that can be played via the remote control (i.e. arrow keys and enter) - like some type of simple minesweeper or sokoban
 
* Add The Ability To Quit A Emulator With The Remote (not all people have keyboards plugged in)
 
* Add a "Game Display Order" option for grouping roms by the First Letter of the Game Title.  Example:  Airwolf & Arkanoid show up in the "A" category, BurgerTime & BubbleBobble in the "B" category etc...
 
 
 
=== MythMusic ===
 
 
 
* Don't group A-G, H-K, etc.... It makes no sense to not group 1,2,3,4 and then group by alpha characters, especially when you have thousands of MP3s...
 
* For Audiobook-lovers like me this two things would enhance the mythmusic experience by far:
 
** Add Resume to the Mythmusic. It would be great, if MythMusic would start with the last played Song not with the first in the Playlist.
 
** Add Sleep-Timer to Mythmusic.
 
 
 
* Add an option to import playlists for and streaming URL's for internetradio to MythMusic
 
** [http://gossamer-threads.com/lists/mythtv/dev/345 FM- / internet radio support], [http://gossamer-threads.com/lists/mythtv/dev/2199 2], [http://gossamer-threads.com/lists/mythtv/dev/3107?search_string=feature;#3107 3], [http://gossamer-threads.com/lists/mythtv/dev/14617?search_string=mythmusic%20stream;#14617 a starting point?]
 
 
 
* [http://libvisual.sourceforge.net/v2/index.php?page=development Implement libvisual into MythMusic] for additional effects
 
* Provide ability for MythMusic user to select music by Genre - this would be an easy way to deal with large music colletions and playlists
 
* [http://gossamer-threads.com/lists/mythtv/dev/1332 Store CDDB ID for ripped CDs], [http://gossamer-threads.com/lists/mythtv/dev/1430 2] for easy fetching of updates from CDDB. ''(Is this already in? Or even handy?)''
 
* Lyrics it would be great to see what those songs really said... I guess you'd have to put some simple timebased scrolling... or go the manual scroll
 
* a complete overhaul of the playlist editor is urgently required.
 
* Add a Flickr stream as the visualizer, and for extra points, match the music & image emotion!
 
 
 
=== MythNews ===
 
=== MythNotify ===
 
 
 
* [http://gossamer-threads.com/lists/mythtv/dev/1408 Lots of nice little ideas for MythNotify] [http://gossamer-threads.com/lists/mythtv/users/45200#45200 2], [http://gossamer-threads.com/lists/mythtv/dev/2039?search_string=feature;#2039 3]}, most of them pretty 'one of a kind' cases though.
 
* [http://gossamer-threads.com/lists/mythtv/dev/4727#4740 Broadcast notifications to all frontends], would be a MythNotify feature
 
* Provide an onscreen IM client (based on MythNotify ?) Ideally it should integrate with GAIM and allow an IM chat in transparent text while watching TV with variable font size - possibly using [http://gaimnosd.sourceforge.net GAIMnOSD]
 
* [http://gossamer-threads.com/lists/mythtv/users/37404 Run a command when no input is detected], for example to switch on a decoder box or send a "Help!" mail or something.
 
* [http://gossamer-threads.com/lists/mythtv/dev/3322 MythTV watchdog], which would store crash reports to be sent together with bugreports.
 
* [http://gossamer-threads.com/lists/mythtv/dev/4520 Sending logs via email], probably good for an howto to do that with existing programs (logrotate or something?)
 
 
 
=== MythPhone ===
 
  
* Add [http://www.skype.com/products/skype/linux/ Skype] support to MythPhone
+
* Peer-to-peer sharing of shows with friends who also use MythTV
* Add [http://asterisk.org/ Asterisk] integration and configuration details to MythPhone and docs
+
:: MythTV is designed for use with commercial TV. Fair use precedence allows you to record this for your own personal use, but does not authorized you to share or redistribute in any fashion. MythTV will never implement a feature whose sole purpose is to facilitate this, or any feature which would primarily be used for this.
* Add [http://www.gizmoproject.com Gizmo Project]/[http://talk.google.com Google Talk] integration
 
* Add [http://www.openzoep.org/ Open Zoep] integration
 
  
=== MythVideo ===
+
* [http://gossamer-threads.com/lists/mythtv/dev/3547 Auto update, or update notification] {[http://gossamer-threads.com/lists/mythtv/dev/5683 2]}
 +
:: For those using package managers, your distro should provide this service automatically.
  
* Search feature.
+
* Migrate to use VLC, or gstreamer, or some other codec library.
* Browse by genre (e.g. Select a movie by Action->Adventure->Terminator or Adventure->Action->Terminator etc. Like the tree view but genres instead of directories. Would be very fast to find a movie you want to see.
+
:: MythTV was written from the start to be based off of ffmpeg. Any move away from that would require vast changes throughout MythTV, and is not likely to ever happen.
* [http://www.evil-zone.com/mythtv/series.htm Series browser] '''Broken Link''' A small idea to make series browsing easy in MythVideo.
 
* DVD Chapter names, and Matroska Chapter names.  It seems other media players connect to a web service to retrieve chapter names based on the DVD.  These would be a nice addition to the current "Title 18 of 23" text.
 
** Not only for Mythvideo... for MythDVD too please :)
 
* Make Matroska-support of the Internal Player perfect. (Make seeking and subtitles work)
 
* Tree browse by genre. Maybe even multiple genres.
 
* Allow browsing of multiple directories (possibly on multiple harddrives)  (<-- a quick workaround is to use links)
 
* Solve the following scaleability problem, on a system with a large number of movies (and tv episodes) you get "L'embaras du choix", from observing users watching habits it was found that long-term users of the system watched a disproportionate number of movies that start with A, B and C or sometime complaining about a lack of choice or "new" because on a system with a vast selection going through the list that's a lot of time even on fast systems (because of technical and practical reasons this can be improved a lot, but not enough to solve this problem, you can't browse faster than you can read) another fundamental reason why this happens is because users aren't compelled to watch unknown movies, often just reading the title isn't enough to motivate the user, in this way mythvideo helps by displaying a poster picture but it doesn't quite cut it at this point more is needed to "sell" the movies in the list, this can be done by adding new browsing modes and other ideas might be found by looking at how movies and rentals are advertised to the consuming public, movies trailers are probably one of the most effective and implementable way to do this, since they are free for download on the internet
 
* there are many suggested possible improvements
 
* make browsing faster on big systems (with a thousand movies it rarely takes less than 500 milliseconds to display a new line, there is no technical reason why this should take more than 10 milliseconds and can be done by simple optimization (some fail-safe are too easily triggered causing a huge hit in performance))
 
* a "skip to random" function, the user press a key and the interface jumps to a random movie
 
* a randomnize function, in this mode the movies are sorted randomnly instead of by alphabetic order
 
* a watch movie trailers function, ideally this plays a previously downloaded movie trailer, ideally while watching a trailer pressing a certain key would start the movie associated with the trailer (this makes using mplayer "bare" difficult, maybe mythvideo could start mplayer embedded and trap certain keys) another key could skip to the next trailer, rewind or pause the trailer and finally return to mythvideo (maybe with the associated movie selected) additionnally the title could be displayed on OSD while the trailer is being played maybe along with other information such as IMDB rating, and randomly selected IMDB comments
 
* along with the preview function , there could be an option to play a pre-determined number of trailers when a movie is selected (just like in a cinema where you see the trailers of upcoming movies before the main feature)
 
* scrolling pages, this mode could be just like "browse view" except that the movie being reviewed changes after a certain amount of time, and not just "jump" but scroll horizontally or vertically at a slow pace, it would be interesting to have this mode randomnly select the next movie to display, the advantage of this is that no user intervention is needed so the user doesn't have to actively "reject" a movie also the scrolling sets a pace for browsing so that the user doesn't get bored too quickly
 
* continuing on the topic of minimizing user interaction there could be a button to "just play a random movie" removing the burden of decision making from the user , this way the user doesn't actively choose a movie, it is assumed that the user will stop the movie if he doesn't like it later on, what is great about this is that it will increase exposure of movies the user does not think he will like based only on the promotion material (title,poster,trailer and "word of mouth"), watching movies is a passive activity, it is only natural that the process of choosing a movie be as little involving as possible ~~ mythvideo-at-domn-dot-net ~~
 
  
=== MythWeather ===
+
* I demand MythWeb be rewritten in Python.  Because that's just the way open source works.
* some Generic pluggin system to get local more detailed or up-to-date local weather info.
+
:: This was actually emailed to a developerIt's a prime example of when to go back and try it again. Demanding things will never endear you and your cause to someone whom you expect to do your work for free.
* add ability to scroll through different favorite localesI commonly want to see weather in 2-3 select places and don't really want to change my home location.
 
  
=== MythWeb ===
+
* MythTV Frontend and backend runnning on a Casio fx7000G (1985) pocket calculator
* Add ability to transcode a recorded program
+
:: This platform is too limited to support a frontend or backend.
* Add photo album support to MythWeb (something like JAlbum or gallery)
 
* update mythweb to graph TV usage/watching over time. Include time tv is on, most watched channels, most watched programs, most recorded programs, link to logs of mythtv usage per day
 
* Add option to MythWeb "backend status" to bump encoders out of LiveTV into "local" (i.e. - you left the TV in livetv mode, and nobody's watching)
 
* Add option in MythWeb to send a line of text to MythNotify - like a one-way page (probably most useful to add under backend status - where you can see that TV is on, and someone is likely to be in front of TV)
 
* Add search by title, actor, keyword, and new shows options to MythWeb. When searching for terms from mythweb, I would like to have them stored as search terms in myth GUI for future reference.
 
* How about rendering a mythtv page or set of trees based on a [http://www.sgtwilko.f9.co.uk/bluelava/ bluelava] webpage or config and using a lynx/elinks like navigation? That would suit me fine and would provide a great solution for integration without reinventing heyu, br, and bluelava.
 
* Template Engine for Mythweb, for a easier way to create skins.
 
* Compatability with non-apache server daemons (such as [http://lighttpd.net lighttpd])
 
* Recognize program categories (in program listing) independantly of interface language (ie 'Doku' should not only show up as documentary when interface is German, ...)
 
* Add podcast support - could use the [[http://magpierss.sourceforge.net/ MagepieRSS]] library.
 
* Use Mythweb to control a front end by web interface, for those with wireless Tablet PCs..
 
* Ability to change the job queue (remove a job from the queue, stop a job, etc.)
 
  
=== MythFlix ===
+
* MythTV Frontend running on the [[:Category:PS3|Playstation 3]].
* Add ability to add movies to Netflix queue.
+
:: While running a backend on Playstation 3 is doable, the hardware is too limited to run the standard frontend satisfactorily. It is possible to use MythTV's UPnP support to play back most MPEG-2 recordings on the PS3.
 
 
== New Plugins ==
 
 
 
* [http://www.gossamer-threads.com/lists/mythtv/users/24235 MythAlarm]
 
* MythCommander. It would be great to have an Filemanager like Midnight Commander. And it would be nice if you could not only move and rename files but also unrar/zip/tar them.
 
* [http://gossamer-threads.com/lists/mythtv/dev/6383?search_string=feature;#6383 Burn DVDs/(S)VCDs from within MythTV]
 
* Add an ebay module to watch and update active bids
 
* Integrate [http://mysettopbox.tv/phpBB2/viewtopic.php?t=2132 MythBurn] into main MythTV packages
 
* support for blog entries from inside of myth - provide hotkey that will open a quick form to add an entry to blogger or other common blog. Included in the posting would be the information about the show being watched at the moment - would be ideal to have a transparent overlay window for text entry so blog entry could be posted while still wathcing TV - useful to blog about a debate or talk show
 
* A convenient way to comment on movies in IMDB after watching them. I.E. At the end of watching a MOVIE, add an option to the delete menu to jump to IMDB "post a review" for this movie (or a link to tvtome to comment on an episode of a series?)
 
* Add local movie showtimes module
 
* Add a Test Screen to help adjust TV colors correctly to view MythTV at the very best -- also add test sound effects for stereo, 5+1 sounds, etc sound debugging. This would be a nice addition to setup in myth. -- possibly [http://sourceforge.net/mailarchive/forum.php?thread_id=1491979&amp;forum_id=1912  lprof-1.09 tools]
 
* Add an "Export Recordings" mode under "Manage Recordings" that interfaces with mkmovie, nuvexport and nuv2avi in some integrated fashion so that TV recordings could easily be exported from MythTV without dropping to the commandline to do so.
 
* IM (AIM, MSN and Yahoo)
 
* Music Play Daemon (mpd) Support.
 
* X10 Support
 
* Integrate [http://www.myth2ipod.com/ myth2iPod], [http://www.gossamer-threads.com/lists/mythtv/users/188239#188239 2] into mythtv plugins package
 
* Mythbuster - A plugin similiar to Mythflix that integrates into Blockbuster On-line instead of Netflix.  May be limited to Blockbuster's technology and lack of RSS.
 
 
 
== Ideas with response ==
 
* [http://gossamer-threads.com/lists/mythtv/dev/2899 Non-time shifting mode for watching regular TV], would be a bit difficult since the frontend/backend split, but might be possible when both are on the same machine. You could still draw the OSD if you would want.
 
:''this defeats the purpose of a PVR, add a menu item to launch a non-buffering tv program in place of Myths "watch tv" item'' - This is better stated as a request for "fast channel changing" or "no 2 second delay". Current workaround is to switch channel changing behavior to "browse mode", but actually having "fast channel changing" would really help new user acceptance of mythtv.
 
* [http://gossamer-threads.com/lists/mythtv/users/30199 Peer-to-peer sharing of shows with friends who also use MythTV] {[http://gossamer-threads.com/lists/mythtv/dev/7175 2] = [http://gossamer-threads.com/lists/mythtv/dev/3324 3]}
 
:uhm... can you spell l-a-w-s-u-i-t?) ''NEVER going to happen with core Myth''
 
* [http://gossamer-threads.com/lists/mythtv/dev/3547 Auto update, or update notification] {[http://gossamer-threads.com/lists/mythtv/dev/5683 2]} (update notification should be feasable, IMHO - HenkPoley)
 
:''Very distro dependant, apt-get solves 99% of the problem for most folks (those who are *using* packages, maybe... --BayLink)''
 
* [http://gossamer-threads.com/lists/mythtv/dev/6465 Action sound], a short confirmation 'blip' to say that a keypress was received and is 'being processed'
 
:This is difficult to achieve without impelemting and requring all audio devices to be routed through an ALSA mixer (which has it's own issues at the moment)  --- As a work around, look on the backend setup screen. There is a config option for "Execute command when key pressed" (or something like thing) that you can configure to play a sound
 
  
== Already implemented ==
+
* MythTV as a replacement for DVR/PVR interfaces, such as the Philips DVDR3455H/37.  The Rockbox.org is a UI replacement project for music players, and MythTV could do the same for DVRs.
* playlist queue - ability to manage a queue of recorded programs or videos for sequential playback
+
:: The hardware on commercial DVR's is too limited to run MythTV. While these are getting more powerful every few years there is a second problem in that many of these devices use hardware without Linux drivers or run only signed binaries.
* Ajax Based Mythweb for Speed up and more interactivity
 
* Ability to mask Media Library entries based on entering PIN to identify user. e.g. Kids can not see anything in a specific program group.
 
  
== Unsorted ==
+
* Have MythTV setup and define network interface
 +
:: The network interface is outside of MythTV's purview. Most Linux distro's and other platforms MythTV runs on provide decent tools for doing simple network configs automatically or through a GUI and provide command line tools for more complex setups (ifconfig/ipconfig).
  
=== With reference to website / mailing list ===
+
* mythbackend (Ubuntu x86_64 v0.20.20070821-1) appears to catch signals (all, most?) and will exit with return code 0 even when core dumping.  I suggest to reserve exit code 0 for a deliberate, graceful shutdown, and instead using a non-zero exit code for other, non-graceful shutdowns and crashes.  This allows the user, or any process monitoring mythbackend (in my case I'm [[Using_pcsk_to_Supervise_mythbackend]]) to distinguish between the two situations.
 +
:: Please make sure you are checking the 8th bit of the exit code, Linux normally sets that to one and puts the signal in the low order bits. MythTV does not catch the segfault signal so the operating system is setting the return value.
  
* [http://gossamer-threads.com/lists/mythtv/users/57568 Type number and jump to channel in EPG], when you have hundreds of channels
+
* Optionally disable the sync loop on the backend; comments say it's for NFS.. on a combined front end + back end this short-periodic sync can wreak havoc with file allocation, and cause excess fragmentation.
* [http://gossamer-threads.com/lists/mythtv/users/50770 View count], especially useful if stored per user, to see if everyone has already seen the recording - would be nice to have an addition to options menu for "mark as seen by:" with submenu for defined viewers. This would really help in determining when shows can be deleted. Also see [http://www.gossamer-threads.com/lists/mythtv/users/169459#169459 this suggestion] for some further refinements.  If programs are flagged with who wants to see them, if you tell myth who is in the room, myth can present a list of programs ''those'' people want to see, ordered by the number of people present who want to see it.
+
:: The comments are out of date, this is required on Linux with the CFQ and AS elevator algorithms. Since CFQ is the default on most Linux distro's the sync will stay for the time being. The need to disable it is too low to justify another setting. Commenting it out is fairly simple to do if your one of the few mythtv users changing elevator algorithms for greater backend performance. NFS does not require the sync on any modern Linux kernel.
* [http://gossamer-threads.com/lists/mythtv/dev/21773 a 'digest' button that will bring up a scene index], possibly automated by grabbing a frame every X minutes, or by a framedump tool similar to the commercial cutter.
 
* [http://gossamer-threads.com/lists/mythtv/users/51825 Show what recording profile were used to record a show], record profiles can change over time, so maybe this should fall back to displaying just the settings used. ''This exists to some extent you can see what profile was used but not what the settings are.  Select "edit recording schedule" from the menu in the view recordings screen''
 
* [http://gossamer-threads.com/lists/mythtv/dev/938 Jump to quote from closed captioning], so you can for example have a search for 'weather' and jump to the weather forecast in today's news broadcast.
 
* [http://gossamer-threads.com/lists/mythtv/dev/2164 BabyCam / security cam via PiP], put a webcam in the baby's room and have MythTV display it via PiP. Might also be usefull together with the mentioned [http://motion.technolust.cx/ Motion] software to see if someone at your doorbell. ''MythPhone maybe?''
 
* [http://gossamer-threads.com/lists/mythtv/dev/2622#2622 Automatic record/playback tweaking]
 
* [http://gossamer-threads.com/lists/mythtv/dev/6813#6813 Use RendezVous to let frontend and backend autodiscover each other]
 
* Have MythTV emulate a standard uPnP "Media Server" to take advantage of "media center extender" hardware- [http://www.gossamer-threads.com/lists/mythtv/users/90754 See thread] - one example: [http://www.cybergarage.org/net/cmgate/cc/overview/ CyberMedia Gate]
 
  
=== Without reference to website / mailing list ===
+
* Support for USB-UIRT - IR blaster
 +
:: This is a job for LIRC.
  
* Ability to automaticly change Xine/MPlayer (etc.) keybindings file when you change MythTV hotkeys (seems difficult to me - HenkPoley). Or just a webpage with Xine/MPlayer configs that conform to MythTV default keybindings.
 
  
* Add option to limit the time length or filesize of recordings.  Long length MythTV recordings would automatically span multiple files similar to film rolls.  Allows TV marathons, sporting events, etc to be broken up into manageable pieces.
+
[[Category:Wishlist]]

Revision as of 21:49, 10 July 2012

Important.png Note: Before making any feature requests to the MythTV developers, one first needs to understand the most basic truth about MythTV: "MythTV is a project by developers, for developers." If you look at things in that light, comments that get made by developers to users who submit feature requests ("Sounds good; I look forward to your patch") make a whole lot more sense.

The developers of MythTV work for free (obviously), in their spare time. Most/all of them write software for a living, where they work all day long on things that other people want them to work on. When they work on Myth they focus on what's important to them. A feature gets implemented because a developer wants it bad enough to spend his spare time writing it and testing it, and believes in it strongly enough to defend it from the other developers (which helps to avoid the feature creep common in some projects). Bugs, especially crash bugs, get worked on by all of the devs as they encounter them as those impact everyone.

That's not to say that the users don't matter, or that the developers never implement something that comes from a user. It's just that unless a developer says either "why didn't I think of that" or "I could knock that out in a couple hours" it will be a much lower priority.


MythTV logo square.png Join us making your favorite media center even better than it already is today.

Requests from people who have contributed back to the project in some way carry a LOT more weight. Developers by and large tend to be rather blunt. People often mistake being terse and to the point for being insulting. Then they start a flame war on the mailing list (which is pretty much certain death for a feature request) all because a developer either a) didn't take 3 paragraphs to tell them "I'm not going to work on this" or b) they think that the developer should drop whatever they're doing because *they* want it done. A lot of the devs are a bit defensive when it comes to requests, largely due to previous bad experiences.

And, finally, remember this: if there's something you want badly enough, you can always offer to pay someone to do it.

Editor's note: Even moreso than on most pages, if you add a note here that a wishlist item is now available or in process, please note which version that information applies to ('added in 0.19', for example). Remember: wiki pages live forever. --Baylink 17:00, 12 February 2006 (UTC)

How to make a suggestion

If you've got an idea for a feature that you'd like to see implemented here's some guidelines for submitting it:

  • Before anything else, check the Current Version release notes to make sure it's not already in there (yes, this happens).
  • Clearly indicate that it's a request, not a demand.
  • Understand that code speaks louder than words. If you can, write a patch and submit it to TRAC
  • Be very clear with how you envision your idea working. The more details you have in your request the better chance you have hitting that magical "knock it out in a couple of hours" mark.
  • Make sure you're not repeating a previous request. (Search the wiki and mailing list archives)
  • Do NOT be offended if a developer responds with "sounds good; I look forward to your patch".
  • Requests from people who have contributed back to the project in some way carry a LOT more weight.

When you're ready to submit your suggestion, add it to the end of the relevant page and section listed in "The Wishlists" section below.


The Wishlists

  • Setup and Configuration -- Anything for the setup process including hardware support. These are things you want mythtv to do prior to actually running mythtv.
  • Backend Addons -- Backend additions are things you want mythtv to do when you're not around.
  • Frontend Addons -- Frontend additions are things you want to do in mythtv while using recordings.
  • Plugin Addons -- Plugin additions are things you want to do in mythtv while not using recordings.
  • New Plugins -- New plugins are new things you want to do in mythtv while not using recordings.

Platforms

  • MythTV Frontend running as a Wii Channel (There is a small bounty for this on FOSS Factory. You can contribute to the bounty if you want.)
  • MythTV Frontend (TV client only) running natively on GlobalScale Linux D2 Plug ARM Marvell PXA510 – 800MHz see http://www.globalscaletechnologies.com/c-8-d2plug.aspx - ** UPDATE June '12 ** New D2 Plug availability occurred in October 2011. We have received product and are now implementing the platform. Some delays due to other work. We are having good and bad results. We can compile code on the D2 plug, we are having problems with decoder (OpenMAX is not supported on ARM cpu) we are looking at the options. We still think that it is doable. Send suggestions to mythtv@quickcycle.com
  • MythTV Frontend running on AppleTV (doable: see Installing MythTV on an AppleTV and a thread on the developer mailing list)
  • MythTV Frontend (TV plug-in only) running natively on AppleTV i.e. using Apple's FrontRow for menus. See AwkwardTV Wiki and BackRow Developers' Kit. This would create a single, modeless AppleTV front end / user interface.
  • MythTV Frontend on Windows Mobile. Since a frontend is working on Windows, a Windows Mobile version could be promising, One challenge might be a touch interface.
  • MythTV Backend ported to ARM SoC i.e. NVIDIA's Ka-el and/or Denver projects. While it is unknown if graphics accelerated drivers (VDPAU) will be made available to run a frontend the raw horsepower should be sufficient for a backend with storage, comm flag, and USB based tuners. Imagine your 35W TDP Core2 Duo (T7200) CPU replaced by a 1W TDP CPU/GPU that has vastly less performance...

Platforms are the hardware and operating system setups that actually run the Myth applications. This section should track the request to support platforms other than the default x86 PC environment. This would include console ports like X-Box and PS3.

Will Not Implement

These are suggestions which for one reason or another will not be implemented in MythTV.

MythTV is designed as a PVR, which by definition necessitates that all TV be recorded and buffered. As mentioned, the frontend/backend split was designed with this requirement in mind, and MythTV would require a significant rework of the livetv code in order to reduce this buffer.
fast channel changing is also an unachievable goal due to hardware constraints. Tuners and cable boxes take time to lock, mpeg encoders need to fill video buffers, digital tuners need to wait for stream information and then the first I-frame. All of this adds up to MythTV's internal lag becoming a less significant portion of the problem.
  • Peer-to-peer sharing of shows with friends who also use MythTV
MythTV is designed for use with commercial TV. Fair use precedence allows you to record this for your own personal use, but does not authorized you to share or redistribute in any fashion. MythTV will never implement a feature whose sole purpose is to facilitate this, or any feature which would primarily be used for this.
For those using package managers, your distro should provide this service automatically.
  • Migrate to use VLC, or gstreamer, or some other codec library.
MythTV was written from the start to be based off of ffmpeg. Any move away from that would require vast changes throughout MythTV, and is not likely to ever happen.
  • I demand MythWeb be rewritten in Python. Because that's just the way open source works.
This was actually emailed to a developer. It's a prime example of when to go back and try it again. Demanding things will never endear you and your cause to someone whom you expect to do your work for free.
  • MythTV Frontend and backend runnning on a Casio fx7000G (1985) pocket calculator
This platform is too limited to support a frontend or backend.
While running a backend on Playstation 3 is doable, the hardware is too limited to run the standard frontend satisfactorily. It is possible to use MythTV's UPnP support to play back most MPEG-2 recordings on the PS3.
  • MythTV as a replacement for DVR/PVR interfaces, such as the Philips DVDR3455H/37. The Rockbox.org is a UI replacement project for music players, and MythTV could do the same for DVRs.
The hardware on commercial DVR's is too limited to run MythTV. While these are getting more powerful every few years there is a second problem in that many of these devices use hardware without Linux drivers or run only signed binaries.
  • Have MythTV setup and define network interface
The network interface is outside of MythTV's purview. Most Linux distro's and other platforms MythTV runs on provide decent tools for doing simple network configs automatically or through a GUI and provide command line tools for more complex setups (ifconfig/ipconfig).
  • mythbackend (Ubuntu x86_64 v0.20.20070821-1) appears to catch signals (all, most?) and will exit with return code 0 even when core dumping. I suggest to reserve exit code 0 for a deliberate, graceful shutdown, and instead using a non-zero exit code for other, non-graceful shutdowns and crashes. This allows the user, or any process monitoring mythbackend (in my case I'm Using_pcsk_to_Supervise_mythbackend) to distinguish between the two situations.
Please make sure you are checking the 8th bit of the exit code, Linux normally sets that to one and puts the signal in the low order bits. MythTV does not catch the segfault signal so the operating system is setting the return value.
  • Optionally disable the sync loop on the backend; comments say it's for NFS.. on a combined front end + back end this short-periodic sync can wreak havoc with file allocation, and cause excess fragmentation.
The comments are out of date, this is required on Linux with the CFQ and AS elevator algorithms. Since CFQ is the default on most Linux distro's the sync will stay for the time being. The need to disable it is too low to justify another setting. Commenting it out is fairly simple to do if your one of the few mythtv users changing elevator algorithms for greater backend performance. NFS does not require the sync on any modern Linux kernel.
  • Support for USB-UIRT - IR blaster
This is a job for LIRC.