Skip to content
Tags give the ability to mark specific points in history as being important
  • 3.3.14
    VLCKit 3.3.14
    
    - VLCKit binaries are now compiled using Xcode 12
        - This fixes linking for the iOS and tvOS simulator using Xcode 12
        - This adds a hardware requirement to use Xcode 12 for linking VLCKit due to bitcode
            - You need to compile TVVLCKit yourself if you want to continue to use Xcode 11.x
    
    - VideoToolbox decoder
        - enforce 8bit video output due to limited OpenGL rendering capabilities
        - this fixes hardware decoding of AVC and HEVC 10 / 12bit on iOS/tvOS 14
    
    - Chromecast
        - Stability improvements
    
    - demux:
        - expose m3u playlist title
  • 3.3.13
    VLCKit 3.3.13
    
    - browsing:
        - Enable UPnP discovery based on libupnp
    
    - demux:
        - Fix MKV module loading by resolving underlying optimization problem
        - Fix OPUS playback when using the avcodec demuxer
        - Fix HLS playback regression
    
    - packetizer:
        - Fix buffer overflow in H26X packetizer (CVE-2020-13428)
  • 3.3.12
    VLCKit 3.3.12
    
    - coreaudio: fix invalid delay after a unpause
    
    - mp4: no sync table means all sync
    
    - demux:
        - hls:
            - remove double update need check
            - set more accurate update time
            - do proper schedule on update
            - handle timescale rounding when matching segment
        - adaptive:
            - rely on live offset for edge control
            - use current segment number when available
            - fixup AnyURI
            - set current segment start time on init
            - fix invalid offset on start
    
    - contrib:
        - bump faad to 2.9.2
        - bump libarchive to 3.4.2
        - bump dav1d to 0.7.0
  • 3.3.11
    VLCKit 3.3.11
    
    - Fix missing modulemap for iOS and tvOS releases
    
    - demux:
    	- fix some WebVTT styling tags being not applied
    	- fix MP4 interlacing handling
    	- fix MP4 regression with twos/sowt PCM audio
    	- fix some MP4 raw quicktime and ms-PCM audio
    	- Enabled Live seeking for HLS
    	- fix seeking in some cases for HLS
    	- fix multiple adaptive stack (DASH/HLS/Smooth) issues
    	- fix adaptive regression on TS format change (mostly HLS)
    	- fix adaptive unwanted end of stream in some cases
    	- Faster adaptive start and new buffering control options
    	- Improved Live playback for Smooth and DASH
    
    - contrib:
    	- ffmpeg: backport VP9 profile 10-bit support
     	- update dca to 0.0.7
    	- update libdsm to 0.3.2
    	- update faad to 2.9.1
    	- update libebml to 1.3.10
    	- update libmatroska to 1.5.2
    	- update fontconfig to 2.13.1
    	- update freetype to 2.10.1
    	- update fribidi to 1.0.9
  • 3.3.10
    1447ac94 · NEWS: Update for 3.3.10 ·
    VLCKit 3.3.10
    
    - Allow http bearer tokens
    
    - Publish statistics on iOS and tvOS
    
    - Minor libvlc improvements
  • 3.3.9
    VLCKit 3.3.9
    
    - Bump dav1d to 0.5.1
    - Fix debug logging level
    - Fix iOS 9 no audio during playback
  • 3.3.8
    VLCKit 3.3.8
    
    Minor update to address a compatibility problem with iOS/tvOS 13
  • 3.3.7
    VLCKit 3.3.7
    
    - VLCMedia:
        - Add helper method to easily add option
        - Add method to stop parsing
    
    - codec:
        - avcodec: really drain video
        - webvtt: fix node reparenting on closing tags
    
    - demux:
        - ttml: recreate entities
    
        - mp4:
            - fix non packetized ms55
            - fix quicktime sample size regression for twos/stwo
    
        - h26x:
            - fix frame duration
            - use fmtout rate as date rate
    
        - adaptive:
            - store timeline directly
            - inherit template defaults
            - missing flags propagation using MimeDemuxer
    
    - packetizer:
        - flac:
            - check next header
            - return a block even with invalid pts
    
        - hevc:
            - add secondary drain
            - set fmtout rate when unknown
    
        - h264:
            - handle secondary drain
            - do not override fmtin frame rate
            - only use date_t for length computation
    
        - mpegvideo: perform secondary drain
    
    - audiounit_ios: add support for > 48kHz sample rate
    
    - coreaudio:
        - start deferred
        - update the play date until the first rendering
        - use the dev latency for the deferred calculation
    
    - vaapi: add YUVJ420P pixfmt
    - mp4: meta: fix format-truncation warning
    
    - access: add smb2 module
    
    - smb2/dsm: avoid to request the dialog two times
    - dsm:
        - query credentials only when needed
        - add smb-force-v1 option
        - specify the v1 protocol in the dialog credential title
    
    contrib: add libsmb2
  • 3.3.6
    VLCKit 3.3.6
    
    - Fix abort from dealloc when VLCMedia init failed
    - Fix SMB 2 not storing credentials
  • 3.3.5
    VLCKit 3.3.5
    
    - access: fix smb2/dsm conflicts
    - directsound: fix uninitialized var usage on error path
    - lib: media: fix media not being preparsed after a failure
    - packetizer: flac: don't increment invalid date
    - videotoolbox: don't reset the vout when closing
  • 3.3.4
    VLCKit 3.3.4
    
    - Fix SMB 2 possible null-deref when stopping a session
    
    - vout: fix low framerate stuttering
    - transcode: video: patch missing chroma in decoder format ouput
    - access: dvdread: fix null dereference on vts failure
    
    - demux:
        - mp4: fix potential endless loop
        - avi: simplify strf handling
        - mkv: remove elements from vector when we delete them
        - mkv: fix vector erase in destructor
        - mkv: do not use the file if there's no usable stream/segment
    
    - faad: Fix read buffer overflow
    - ogg: Fix potential integer overflow
    - chromecast: transcode audio to MP3 320 kbps instead of 96 kbps
    
    - Bump libelml requirement to 1.3.6
    - Bump dav1d to 0.4.0
    - Bump libmodplug to 0.8.9.0
  • 3.3.3
    VLCKit 3.3.3 - Fix airplay AV sync
    - Fix bluetooth audio drop
    - SMB2: Add support for NTLM anonymous login and port specification
    - Add MediaListPlayerDelegate callbacks:
    - (void)mediaListPlayerFinishedPlayback:(VLCMediaListPlayer *)player;
    - (void)mediaListPlayer:(VLCMediaListPlayer *)player;
    - (void)mediaListPlayerStopped:(VLCMediaListPlayer *)player;
  • 3.0.1
    VLCKit 3.0.1 - Crash fix while enumerating a medialist
  • 3.3.2
    VLCKit 3.3.2: - Internal percent encoding handling of URLs within VLCMedia was removed. This fixes a bug where URLs ended up double encoded. This change might require changes to client Apps to ensure that their URLs are correctly percent encoded when initialising VLCMedia - access:  rdp: Fix URI parsing, vnc: Fix URI parsing, live555: Fix crash parsing H264 - demux:  hls: Disable webvtt, mp4: Add sample overread check for non seekable case, Probe fragments on missing duration, Ignore indirect index references for seek -Pack sidx items: ts: Fix broken var reading - mux: mp4: Fix tkdh visible values, Set visible dimensions in stsd instead of buffer - contribs: Bump dav1d to 0.3.0
  • 3.3.1
    Version 3.3.1
    
    - Lower SMB 2 priority
    - transcode: Fix transcode with passthrough video
    - asf: Fix memory leak
    - demux:
        - dash: Handle infinite repeat in timeline
        - mkv: Fix playback of files created with lavf 58.12
    - sftp: Fix version for ECDSA known hosts
    - contribs:
        - Bump dav1d to 0.2.1
  • 3.3.0
    3f50bac1 · NEWS: Update for 3.3.0 ·
    VLCKit 3.3.0
    
     - Add SMB 2 support
     - VLCMediaList: Fix removeMediaAtIndex NSRangeException crash
     - mp4: Improve muxing & demuxing
     - ogg: Improve demuxing
     - mkv: Fix GotoAndPlay command uid conversion
     - avcodec: Fix missing FourCC in libav
     - microdns: Fix memory leak
    
    API Changes:
      VLCMediaList:
       - indexOfMedia Returns NSUInteger instead of NSInteger
       - removeMediaAtIndex Returns BOOL instead of void
  • 3.2.1
    VLCKit 3.2.1 - Added a new default AV1 decoder - dav1d
    - Fixed issues with decoding certain HEVC streams
    - Added API to VLCLibrary to log debug information to a file or a custom target
    - Fixed crash and leaks in our OpenGL based video output
    - Fixed chromecast not displaying Videos for certain devices
    - Fixed crash in Chromecast device discovery
  • 3.2.0
    32c20a41 · update News for 3.2 ·
    VLCKit 3.2.0 - Enabled libmux module
    - Fixed a bug where debuglogging logged less than what the loglevel indicated
    - Fixed a bug where subtitles where not displayed by default on iOS
    - Fixed a crash when playing back mkv on iOS 12
    
    - API Changes:
        - updateProgressWithReference:message:postion: to updateProgressWithReference:message:position:
    
    - new recording Api
    VLCMediaPlayerDelegate:
    	- (void)mediaPlayerStartedRecording:(VLCMediaPlayer *)player;
    	- (void)mediaPlayer:(VLCMediaPlayer *)player recordingStoppedAtPath:(NSString *)path;
    VLCMediaPlayer:
    	- (BOOL)startRecordingAtPath:(NSString *)path;
    	- (BOOL)stopRecording;
    
    - new Transcoder Class and API
    VLCTranscoderDelegate:
    	- (void)transcode:(VLCTranscoder *)transcoder finishedSucessfully:(BOOL)success;
    VLCTranscoder:
    	- (BOOL)reencodeAndMuxSRTFile:(NSString *)srtPath toMP4File:(NSString *)mp4Path outputPath:(NSString *)outPath
  • 3.2.0-rc1
    releace cabdidate for VLCKit 3.2.0 - Enabled libmux module
    - new recording Api
    VLCMediaPlayerDelegate:
    	- (void)mediaPlayerStartedRecording:(VLCMediaPlayer *)player;
    	- (void)mediaPlayer:(VLCMediaPlayer *)player recordingStoppedAtPath:(NSString *)path;
    VLCMediaPlayer:
    	- (BOOL)startRecordingAtPath:(NSString *)path;
    	- (BOOL)stopRecording;
  • 3.1.5
    5b3b1db6 · updated News for 3.1.5 ·
    VLCKit 3.1.5 - Fixed a crash when updateProgressCallback was called
    - Fixed an issue with authentification for certain HTTP streams