mpv/DOCS/tech/wishlist

182 lines
4.2 KiB
Plaintext
Raw Normal View History

If wishes were fishes, we'd all cast nets ...
Documentation:
* continue MEncoder tutorial
* review manual page again
* split manual page
* update and rewrite the XML documentation
* check documentation for completeness
* write documentation HOWTO/rules document
* write -lavdopts documentation
* continue ipod/embedded device encoding guide
* document channels.conf syntax
* ability for multiple languages/locales in one binary
Small improvements:
* vo_mga should completely blank the screen like fbdev and tdfxfb
(maybe there should be an option - some people seem to like it the
way it is, but then fbdev should also behave like this..)
* Debian package creates mplayer.conf.1 .2 ...
* Make the output windows remember their positions when resizing to
double size.
* Ability to resize to full size/double size/triple (or half) size
upon key presses.
* real mute support, not just setting volume to 0
* add help suboption to -lavcopts vcodec=/acodec=, -lavfopts format=,
-subcp, and anything else that needs it.
* ability to cycle switch_aspect
* ability to rename vo_jpeg,vo_gif,vo_png output filename
Cleanup:
* integrate dvdnav into mplayer structure
* integrate libmpdvdkit2 into mplayer structure (message system and
command line options)
* remove all obsolete code, options, files etc
* Restructure configure and fix CPU flags supported but not shown.
* Port libmpdemux demuxers to libavformat or write your own from scratch.
libmpdemux is considered deprecated and should eventually be removed.
As of 2008-01-28, the following demuxers are missing from libavformat:
- TiVo (ty streams, not TiVo To Go)
- VIVO
- VQF
- XMMS
- libnemesi
- SL support for MPEG-TS
Filters:
* get filters to work in more colorspaces
* eq filter should support RGB in addition to YUV
* move filters into ffmpeg
* autocrop filter
* insert af volnorm during playback
* allow frame insertion & removal in video filters (with timestamps)
* xinerama video filter that splits movie to 2 screens (like zr)
* mixing of multiple videos (picture in picture, review shmem patch)
* video watermark/logo filter (apply vf_overlay patch?)
* fade to black filter
* crossfade filter (audio and video)
Enhancements:
* support for VirtualDub and Winamp plugins (apply af_wadspa patch!)
* implement xawtv config file parser (for channels, etc)
* G400 2nd head through mga_vid ;)
* do more things automagically
* guess correct DVD title
* SYUV and paletted RGB support in swscaler
* implement Plextor compatible SCSI VCD reading
* DXVA / DXVA2 -vo for Windows
* GDI -vo for older windows versions
* hardware MPEG encoding support (Ati cards)
* make -ass-use-margins work on widescreen video only! (not 4/3 video)
(automagically put subtitles in black bars)
* nsc playlist support
* implement Jack Transport API
* Stream quality selection, possibly based on available bandwidth.
Currently only available for MMS-over-HTTP (libmpdemux/asf_streaming.c).
* MOD playback (via libmodplug?) - bug #434
* allow multiple -dump* options at the same time - bug #70
* scale osd when video window changes size
* get -ass working in mencoder
* rotate/position osd
* support all image formats in mf:// (psd, jpeg2000)
* make -noborder work with all video outputs
Difficult stuff:
* RE all closed source codecs (Voxware, VIVO, MVI2, MSS1/MSS2, ...)
* support for Bink codec
* write something like mptv to replace xawtv
* write/adapt a C implementation of live555 RTSP
* unify live555 and Real RTSP
* real mmsu:// support
* top notch DVD navigation like a hardware player
* write mpdump application to handle all -dump* options
* modular MEncoder with audio encoding API
* multiple audio stream output in Mencoder
* support for pausing/resuming of encoding in MEncoder
* DRM support (divx.com, Real.com, iTunes)
* variable-fps output support for MEncoder
* smooth stream switching / multiple file caching to avoid the small skip
between files when playing multiple files
* reverse playback
* more directshow filter/muxer support
* encode and display video at the same time
* write mpimage for displaying pictures