IntroductionWhile we all have some idea of what Entertainer should do, it is sometimes hard to keep track of the many possibilities of this project. This is an attempt to gather together all ideas, let us examine and judge them as well as decide what gets implemented first - and what gets implemented later. Project members: Describe your ideas in the right category below or make a new category if necessary. Write a title for the idea using Heading3 and write at least a line or two to describe it. DetailsTVTV support
Entertainer wishes to implement a TV-viewer interface. This should be designed in much the same style layout-wise as the rest of Entertainer, and should have an intuitive method of control that does not require more buttons than already used. For more information on keymapping, see http://code.google.com/p/entertainer-media-center/wiki/Key_bindings . Video recording and scheduling recording not a requirement, but is definately on the roadmap for future releases. If possible, for recording, code so external input of recording schedule is easy - meant for the proposed WebConfig.
TV-guide support (EPG or XMLTV)
Speaks for itself. An intuitive interface for browsing through TV-guides. Perhaps a configuration utility to filter out only the channels you own for a custom TV-Guide? If coordinated with TV Support, then perhaps you could try to code it so expanding with an "Autorecord" feature will not require full rewrite.
VideoMusicMp3 player support
A user should be able to use Entertainer to move music to and from their mp3 player. One idea is that once the mp3 player is connected its contents should be indexed and merged with the current music collection in Entertainer. Icons next to each song will then indicate what songs are on the mp3 player and what songs are on the PC. Moving songs to and from mp3 player should be done by browsing to a song and pressing a designated button on the remote.
Dependency: Libraries that support iPod, MTP and MSC based players.
Podcast Support
The Music section should be able to handle RSS aggregated Podcasts.
Playlist support
Entertainer currently has no support for playlists, yet this is a much-needed feature. Adding a selected file to the playlist without having to leave the menu you are in would be preferable. If one simply pressed and held an already mapped button for a slight amount of time, and a pop-up style box was implemented, no more buttons would need to be added to "theoretical remotes". Removing entries from playlists, saving playlists, etc all needed.
PhotographsImport from Camera
The user should be able to plug in his/her digital camera into his/her HTPS and have Entertainer import photographs to the photo folder.
Dependency: Some camera library such as libgphoto2 or similar
Upload to web service
Once the user has imported photos he/she will probably want to upload them to a web album such as flickr.com, picasa.com, photobucket etc. This is preferably done through plugins that the user chooses to activate . This way Entertainer can keep its footprint down.
Dependency: Various API's, A Plugin-layer in Entertainer.
News readerOnline feed database
An online database of user submitted feeds organized by categories and language. Users submit feeds through a web interface and Entertainer imports them via some database API The Entertainer user can then browse the database through a simple UI in Entertainer and add or remove the feeds of his/her choice.
Dependency: An online standalone feed database will have to be run as its own project and have an API available for Entertainer to use.
WeatherSettings / ConfigurationWeb interface for configuration
Aimed for the keyboard/mouse-free user, this plugin (disabled as standard? -- requires more dependencies possibly?) allows the user to go to the IP of the internet-connected Entertainer system and edit all settings in a nicely styled setup. If TV Recording gets done first, try to coordinate with that dev on making a WebUI for adding recording schedules. This is not a first-release requriement.
PluginsIntegration with pidgin (chat while watching TV in fullscreen)
This addition is to be more of a standard-issued plugin, but not enabled by default. Allowing a user with a keyboard attached to chat with his contacts over Pidgin Instant Messenger (see www.pidgin.im) whilst watching videos, TV, listening to music, etc would be a highly regarded feature. Since this plugin requires a keyboard attached, it is suggested that this be a plugin to use new keymap buttons to activate. When activated a semi-transparrent shade is suggested, and view change from "Contacts" "Chat Window" and "Shade" options could be implemented in much the same fashion as the Music and Video player works. However, when choosing "Shade" it is to disappear until once again opened. Little blob pop ups with notifications of "online/offline status" and "message recieved" also wanted. Settings editor for pop-ups, opacity settings and so on required.
Dependency: libpurple or similar.
Game console emulation
An additional plugin for game emulators could be a good media center addition so that users could play roms for games that they already own.
GeneralDVD support
Any Media Center needs a DVD player. Entertainer needs a great one! Conform with the style of all current Entertainer aspects. Semi-transparency and nice gliding animations for menus are always nice, and an option to enable/disable these are even nicer - not all users will have top-notch hardware to be running all this on. Subtitle support, chapter skipping, slowed playback, fast playback, all the standard features of a DVD player required. Simple UI yet with all the advanced features. To be merged with "Play CD" to "Play Disc". Ability to download DVD information from internet highly wished, yet not a requirement for first release.
UPnP
Create a upnp media server plugin for Entertainer so that 3rd party devices that support upnp (like the PS3, Xbox 360) can access Entertainer
Comic Book Reader
Browse comic book images from comic book zip files (.cbz)
Bluetooth Remote Control Support
Not all remotes use infrared, so it would useful to support bluetooth remotes in addition to infrared remotes.
GUIKeymap Help
with the ever expanding features of Entertainer, it can soon become confusing for the newbie. Thus little box added to each page showing which button does what is proposed. This should have the option of being disabled in the entertainer-preferences.py file.
Needs knowledge of python and clutter
On Screen Keyboard
Since Entertainer will primarily be used on TV-screens with a remote as input device, text input will always be a bit of a problem. There are several places where small amounts of quick text input will save the user from having to scroll through endless lists. But if the user only has a regular MCE style remote any text input will have to be done on an On Screen Keyboard
Needs knowledge of python and clutter
|
This one goes for stored video on harddisk, streaming video over internet and for live TV (I know it will come later).
Seems like there are big problems getting audio and video to play correctly in sync. And yet, no player I have seen have the possibility to do anything about it. Would be nice to be able to nudge audio in either direction while playing until you get it in sync with the video.
I have not seen any player or media center that is able to do this today. I think this could be a feature that can win a lot of fans.
This HAS to be something that can be done while the video is playing. I am not sure how big the buffer should be. It should be enough with 2 sec. In PAL (25 pictures pr. sec) each frame is 40 milliseconds. So if you want to delay audio 1 frame, you delay it 40 milliseconds. But as this also need to work for streaming video that can play back in a variety of framerates, you might have to stop thinking about frames altogether and just delay it in steps of 10 milliseconds at the time...
Here is one that is for the upcoming TV module.
I want a button on the remote to quickly take down the soundlevel a predefined amount. The default should be about 6 db.
We have all been watching a movie late at night and gotten used to the soundlevel of the movie. And then comes commercials. We dive for the remote and desperately try to lower the soundlevel before the kids wake up!
All commercials use compressors on their audio. This makes the perceived level of audio higher even if the technical level is below the required level. Also, they sometimes try to add a little so that it get even higher. And if the broadcaster/tv station does not notice this it will go on air higher than the others...
The rule of thumb in TV today is that they are allowed to have audio up to 6 db above 0 VU. And usually they say that if the sound is compressed it should not get above 3 db above 0 VU. And if the compression is heavy, they should reduce peak levels to 0 db VU. All of them compress heavy today. And all of them leave it a 6 db above 0 VU.
So being able to push a button and knock the soundlevel down 6 db would be perfect. And then hit it again when commercials are over. The amount could be a setting that you can change if you do not like the default.
More on the video side:
It should be able to handle RSS feeds with torrents so you can subscribe to vidcasts. I like the way Miro handles this. You download the vidcast, it stays until you have seen it and then 5 days after it is automatically deleted if you did not specifically save it.
Audio - it needs to handle webradio well. There are several possibilities, a good one would be to be able to tie into the www.radiotime.com website. Their list of radios is very good. But you should be able to add your own channels to it as well.
A comment regarding MP3 players.
This is a function I have never found on any podcast receivers at all.
As Entertainer will handle podcasts and you are thinking about making it possible to handle MP3 players, I think you should make it possible to identify the players when they get connected. In the Entertainer, there should be a setting for each player that getes connected so you can "subscribe" to a selection of the podcasts (and vidcasts) that you like. Entertainer should then check what episodes are already on the player. If any newer exists, these should be transferred. And the older ones on the player should be deleted. There has to be a setting that say how many episodes you want to keep on the MP3 player at any time. This will keep the player from getting filled up by just adding the latest episode until it is full.
By connecting a USB hub to Entertainer, a family can then just connect all their MP3 players in the evening and have them ready with fresh content in the morning, ready for going to work, school, exercise, relaxing or any other activity people prefer to use the MP3 player with.
Photo: I use Lightroom to import, catalog, colorcorrect and add info to my pictures. I am not so sure that Entertainer is the right tool to handle import from cards etc. But it could be handy being able to play pictures directly from memory cards.
One thing though that would be really nice is to enable Entertainer to read the correct IPTC fields and add the title of the picture and caption if it exist.
You might also want to think about a screensaver. If a video is finished and Entertainer go back to some menu, it would be nice to have it go to a screen saver after a number of minutes.
Both normal TV sets and LCD screens get burn-ins. Yes - I have personally seen it in a lot of LCD screens. So your big screen flat tv will get a burn-in from the menues of Entertainer. So please design everyhting with this in mind.
Timer for turning the system off or on.
We use the timer for the TV all the time and will continue to use it. But it might be an idea to put a timer function on Entertainer and let it turn off the TV first and then itself. Turning off the TV can be done through the use of an IR transmitter. If you buy a Microsoft remote (really cheap and it works well) you get an IR receiver with two ir transmitters. So you can attach these to two different devices and control them. One for the TV and one for your set-top box.
A timer for turning Entertainer on can be just as good. It could then wake up and start recording something. Or simply turn the webradio on at a given time, starting at low volume and getting a litte higher as time passes. So you can use it to wake you up. Or otherwise call attention :-)
A way to make a standalone entertainer setup, maybe based on ubuntu or another lightweight distro, so that one can install it on the apple tv :P
Video - Movie info downloaded from imdb or other site automatically (from file name)
Video - Trailer downloaded (youtube?)
Music video (last.fm + youtube mashup) - Why not integrate something like this? (http://tv.timbormans.com/) or http://www.musicmesh.net/index.php
Music - last.fm radio support (with tag cloud?)