TODO » History » Version 1
Andreas Smas, 2009-06-01 20:20
| 1 | 1 | Andreas Smas | = TODO list = |
|---|---|---|---|
| 2 | |||
| 3 | === Add -l option (easy) === |
||
| 4 | |||
| 5 | Starting Tvheadend with the '-l' option should always allow access from localhost without any questions asked. |
||
| 6 | Useful for mediacenters. |
||
| 7 | |||
| 8 | === Add AVAHI support (medium) === |
||
| 9 | |||
| 10 | Autodiscovery of Tvheadend would be nice. This should obviously be implemented using [http://avahi.org Avahi]. |
||
| 11 | This should just announce Tvheadend as some kind of service. |
||
| 12 | |||
| 13 | |||
| 14 | === Rewrite the internal streaming pipeline (hard) === |
||
| 15 | |||
| 16 | The internal pipeline is a bit too inflexible at the moment. The rewrite needs to address these problems: |
||
| 17 | |||
| 18 | * Add a time-shifter. |
||
| 19 | |||
| 20 | * Remove cumbersome locking between nodes in the pipe. |
||
| 21 | |||
| 22 | * Prepare for adding live transcoders |
||
| 23 | |||
| 24 | This is how we want it to be: |
||
| 25 | |||
| 26 | {{{ |
||
| 27 | [Input source]-[Arbitration] -+-> [Transcoder X] -> [Timeshifter] -> ... |
||
| 28 | | |
||
| 29 | +-> [Transcoder Y] -> .... |
||
| 30 | | |
||
| 31 | +-------------------> [Timeshifter] -+-- Multiple |
||
| 32 | +-- subscribers |
||
| 33 | +-- (HTSP, RTSP, DVR, etc) |
||
| 34 | }}} |
||
| 35 | |||
| 36 | === Switch UI to ExtJS 3.0 (hard) === |
||
| 37 | |||
| 38 | Upgrade the user-interface to [http://extjs.com/blog/2009/05/04/ext-js-30-rc11-released/ ExtJS 3.0]. |
||
| 39 | Features of particular interest would be: |
||
| 40 | |||
| 41 | * The [http://extjs.com/deploy/ext-3.0-rc1.1/examples/grid/row-editor.html Row editor] as a replacement for how the grids are edited today. I really like this one (/andoma) |
||
| 42 | |||
| 43 | * The Adobe Flash based [http://extjs.com/deploy/ext-3.0-rc1.1/examples/chart/charts.html Charting] for display real-time updates of stream bitrates, DVB adapter errors, etc. |
||
| 44 | |||
| 45 | * Ext.Direct for the Comet implementation. Probably more robust than the current code. |
||
| 46 | |||
| 47 | === Add wizards for some common tasks (hard) === |
||
| 48 | |||
| 49 | Initially we want to add some kind of setup-wizard for the DVB subsystem. It's a bit too complicated to use at the moment. |
||
| 50 | |||
| 51 | === Re-implement the RTSP interface (hard) === |
||
| 52 | |||
| 53 | RTSP was thrown out of the code when Tvheadend was rewritten to be fully multi-threaded. It would be nice to get this back. |
||
| 54 | |||
| 55 | === Realtime transcoding (hard) === |
||
| 56 | |||
| 57 | Adding realtime transcoding of video/audio to produce low bitrate output. |
||
| 58 | |||
| 59 | === Realtime video display in WebUI (hard/medium) === |
||
| 60 | |||
| 61 | Multiple options exist here. |
||
| 62 | |||
| 63 | a) Application embedding (of VLC or similar) that just connects to the RTSP server. |
||
| 64 | |||
| 65 | b) Flash Video playback. Requires transcoding to h264 and AAC and a flash streaming server. |
||
| 66 | |||
| 67 | c) Use the HTMLv5 <video> tag. Requires transcoding to theora and vorbis. Does this use OGG as multiplex? |