· The licenses of libVLC and libVLCcore have changed from GPLv2+ to LGPLv2.1+
· Start/end titles/chapters are now specified with # rather than @ to fix conflicts with some URLs and file names. For instance, this plays a DVD from the 2nd chapter of the 1st title up to the 4th chapter of the 3rd title: vlc dvd://#1:2-3:4
· The 40+ --*-caching options were simplified and dumbed down to 4 options. All values are expressed in milliseconds as in previous versions.
· HTTP server IP address, port, and TLS configuration is now centralized: - The --http-host option sets the address, e.g. "--http-host=2001:db8::1". By default, both :: and 0.0.0.0 are used. - The --http-port and --https-port options set the port numbers. By default, 8080 is used for HTTP, and 8443 for HTTPS. - The TLS credentials are configured with --http-cert (public certificate), --http-key (private key), --http-ca (optional CA) and --http-crl (optional CRL).
· RTSP server IP address and port are updated similarly. Use --rtsp-host and --rtsp-port respectively.
· The --miface-addr option does not exist anymore. To select the multicast output interface, use --miface instead, e.g. --miface=eth0.
· The Windows version will only work with Windows XP SP2 or later. Windows 2000 SP4, Windows XP < SP2, Windows 2003 SP0 are now unsupported.
Important changes for packagers:
· The default builds now assume that the operating system uses UTF-8 for its file systems and files content (except the Windows port). If this is not acceptable, pass --enable-non-utf8 to the configure script. Non-UTF-8 file systems support will be removed in future versions.
· The VLC plugins path can be overridden with the VLC_PLUGIN_PATH environment variable. The --plugin-path command line option was removed.
· The default tarballs are now compressed with XZ/LZMA: .tar.xz
· The webplugins has moved to git://git.videolan.org/npapi-vlc.git
Core:
· Major Video Core and Outputs rework and rewrite: Subtitles, subpictures and OSD can now be sized and blent inside video outputs x11 (Unix), OpenGL (Unix) and Direct3D (Windows) are such video outputs.
· Almost every video filter can now be transcoded
· Playback rate doesn't get resetted to 1 between items anymore
· Option --sub-filter was renamed --sub-source
· Port to Android, iOS, OS/2 and Win64
Access:
· Multiple files are now supported inside RAR files
· BDA: experimental support for ClearQam devices
· DVB-S scanning support on Unix
· DVB-C scanning on Unix scans correct modulation/symbolrate if needed
· DShow: support for freq and video standard selection
· Support for VDR recordings (
http://www.tvdr.de/) folders
· Blu-Ray Discs integration using libbluray
· HTTP Live Streaming (IETF draft) playback support
· PulseAudio audio input support
· RTP: support for dynamic payload types by specifying the payload format in an option (no autodetection): only Theora supported for now
· Basic HTCPCP implementation for Coffee Pot control
· QTCapture: added support for all QTKit-compatible video input devices
· QTSound: added support for all QTKit-compatible audio input devices
· X11 Screen: support for capturing partially hidden windows
· MPEG DASH (Dynamic Adaptive Streaming over HTTP) support
Codecs:
· You can now use ffmpeg-mt in conjunction with vlc
· Important fixes for RealVideo 3.0 and 4.0 playback, notably in MKV
· Experimental Hardware decoding using Broadcom CrystalHD cards
· New module for decoding EBU subtitles (.stl)
· Support for 9bits and 10bits H.264/AVC decoding
· Support for 20-bits PCM and DAT-12 (digital magnetic tapes) from RTP
· New module for Dirac encoding, using the faster libschroedinger The Schroedinger module should be prefered to the Dirac one
· Support for WMV Images, aka WMVP and WVP2, as used by Photo Story
· Support for Lagarith Lossless video codec
· Support for ProRes 422 video codec in 10bits
· EIA-608 closed captions improvements
· Support for JPEG 2000 and Motion JPEG 2000 in the Windows and Mac binaries
· Experimental support of IOMX for OpenMAX IL codecs on Android
· One can use "mp2 " fourcc to encode in mpeg1/2 layer 2
Demuxers:
· New images demuxer supporting jpeg, png, targa, xcf, git, tiff, bmp, pcx, lbm
· C64 SID file playback support of using sidplay2
· Support for images/cover art in wma/wmv/asf files
· Improvements in .ape files metadata reading and writing
· New demuxer module for EBU subtitles (.stl)
· Support for caf, mtv, awb, f4v, amr, vro (DVD-VR) files
· Ogg, flv, mxf, amr seeking improvements
· Major improvements in Matroska (mkv) chapters/segments handling and seeking
· Support for duration and better seeking in Mpeg-TS files (.ts, .m2ts, .mts)
· Mov improvements, notably for aspect-ratio handling and Audio DV tracks
· Improved support of *цензура**цензура**цензура**цензура**цензура**цензура**цензура* files
Interfaces:
· Qt: effects dialogs rework
· Qt: new CoverFlow-like view of the playlist
· Qt: small look improvements
· Skins2 / Qt: misc improvements and usability fixes
· Skins2: fullscreen controller support, relative placement support and important cleanups and optimisations
· The rc and telnet lua interfaces were merged into a new "cli" interface
· lua: the recommended way to run custom interface scripts is now to pass -I luaintf --lua-intf myscript
· ncurses: heavy refactor of the complete interface
· dbus: Rewrite of the main loop to use a more efficient poll-based model
· dbus: Upgrade to an mpris2 compliant interface, see
http://www.mpris.org
· webUI/http: Rewrite of the web interface, using jQuery
· webUI/http: some requests are now supported in JSON in addition to XML
· webUI/http: path values for input and output are deprecated in favour of uri
· Qt/Win32: the update system now downloads the updates in the temp folder
· Qt: preferences are now searchable
Video Output:
· New video output based on Direct2D for Windows 7 and Vista (with Platform Update)
· New video output for iOS platform
· Experimental work in progress on a video output using EGL
· Adaptation of the OpenGL layer for OpenGL ES 1.1
· Various vmem improvements
· OpenGL video output now accepts YUV as input and uses fragment programs for chroma conversion
· New video output for Android platform, based on Surface
· Support for 9/10bits output in the OpenGL output
· Updated OpenGL video output for Mac, requires a Quartz Extreme capable machine
· New video output based on kva API for OS/2
Audio Output and Filters:
· New audio output based on AudioQueue API for iOS
· New audio output in memory (amem)
· Important simplification and improvements in the core audio output
· New audio output based on OpenSL ES API for Android
· New audio resampler using Speex (DSP)
· New audio resampler using the Secret Rabbit Code (a.k.a. libsamplerate)
· New Compressor filter, a dynamic range compressor
· New simplistic Karaoke filter
· New audio output based on kai API for OS/2
· Automatic handover from S/PDIF to PCM with PulseAudio 1.0
Video Filter:
· New gradfun filter for debanding videos using dithering
· Rewrite of the grain filter, faster and with better quality
· New posterize filter for lowering the number of colors
· Atmo ambilight: improve Fnordlicht up to 254 channels
· New sepia filter for creating sepia effect in videos
· New deinterlacer mode Phosphor, a framerate doubling CRT TV simulator
· New deinterlacer mode IVTC, to do live inverse telecine for NTSC films
· New subsdelay filter to change subtitles delay
· New anti-flickering filter
· New OpenMAX DL IPCS filter for color space conversion and resizing
· New video filter for denoising, based on the famous hqdn3d filter
· Major improvements in the freetype text-rendering module, notably supporting blackbox and customizable shadow. NB: The freetype module is now used by default on the Mac OS X instead of the quartztext module, which can still be enabled manually. The Win32 font selection was improved too.
Stream output:
· New livehttp-module for HTTP Live Streaming (IETF draft) output example: vlc inputfile :sout="#transcode{vcodec=h264,acodec=mp3, venc=x264{profile=baseline},width=320,vb=256,ab=96}:std{ access=livehttp{index=public_html/iphonestream.m3u8, index-url=http://url-to-iphonestreamfile-###.ts},mux=ts{use-key-frames}, dst=public_html/iphonestreamfile-###.ts}"
· RTP: support for Vorbis and Theora
· Major rework of VoD support
· New delay module, to introduce delays of one ES, when streaming: #delay{id=12,delay=500}:standard...
· New setlang, setid modules to change lang or id of one ES, when streaming: #setid{id=12,new-id=42}:std...
· New langfromtelx module, to change lang of one ES, when streaming, based on a telextex page: #langfromtelx{id=12,magazine=7,page=0x99,row=1}:std...
· New select module, to replace an existing ES with another ES in the same track #duplicate{dst=bridge-out{id=1},select=video,dst=bridge-out{id=0xa3},select=audio} #transcode{...}:bridge-in{id-offset=0}:select{disable=0}:setid{id=0,newid=0xa3}:autodel:std{...}
· New libavformat/avio access_output module for network streaming
Services Discovery:
· Search API to be able to query distant search APIs from the interfaces
· Upnp module was ported to Win32
libVLC:
New capabilities for libVLC:
· libvlc_media_player_navigate for DVD navigation
· libvlc_audio_filter_list_get, libvlc_video_filter_list_get to get the list of available audio and video filters
· libvlc_audio_set_format, libvlc_audio_set_format_callbacks, libvlc_audio_set_callbacks allow grabbing audio data from a chosen memory location in real-time.
Removed modules:
· asademux: use libass only
· subsass: use libass
· fake, invmem: use the new image demuxers
· hal, v4l, gapi, omapfb, hd1000a, hd1000v: obsolete unmaintained modules
· id3tag: use taglib
· upnp: use upnp_intel
· removal of old telnet interface in favor of the new lua CLI
· removal of http interface in favor of luahttp
· removal of the noise filter
· removal of the SDL audio output, use the native outputs
· growl_udp: use Growl for local notifications on the Mac. UDP support will be removed in Growl's next release, too.
· removal of the OSSO screensave module, use the MCE one