NEWS 11 KB
Newer Older
1 2 3 4 5
Version 4.0.0:
--------------
- Rename buildMobileVLCKit to compileAndBuildVLCKit
- Use NSDateComponents API for VLCTime.verboseStringValue

6 7 8 9
Version 3.2.1:
--------------
- Add API to VLCLibrary to log debug information to a file

10 11 12
Version 3.2.0:
--------------
- Enabled libmux module
Carola Nitz's avatar
Carola Nitz committed
13 14 15
- 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
16

Soomin Lee's avatar
Soomin Lee committed
17 18 19
- API Changes:
    - updateProgressWithReference:message:postion: to updateProgressWithReference:message:position:

20 21 22 23 24 25 26 27
- new recording Api
VLCMediaPlayerDelegate:
	- (void)mediaPlayerStartedRecording:(VLCMediaPlayer *)player;
	- (void)mediaPlayer:(VLCMediaPlayer *)player recordingStoppedAtPath:(NSString *)path;
VLCMediaPlayer:
	- (BOOL)startRecordingAtPath:(NSString *)path;
	- (BOOL)stopRecording;

Carola Nitz's avatar
Carola Nitz committed
28 29 30 31 32 33
- new Transcoder Class and API
VLCTranscoderDelegate:
	- (void)transcode:(VLCTranscoder *)transcoder finishedSucessfully:(BOOL)success;
VLCTranscoder:
	- (BOOL)reencodeAndMuxSRTFile:(NSString *)srtPath toMP4File:(NSString *)mp4Path outputPath:(NSString *)outPath

Carola Nitz's avatar
Carola Nitz committed
34 35 36 37 38
Version 3.1.5:
--------------
- Fixed a crash when updateProgressCallback was called
- Fixed an issue with authentification for certain HTTP streams

39
Version 3.1.4:
40 41
--------------
- Added missing VLCMediaParseStatusTimeout to VLCMediaParsedStatus enum
42
- debugLoggingLevel of VLCLibrary defaults to 0 (just errors) when provided with an invalid level
43
- Added VLCMedia initWithStream:(NSInputStream *)stream to create a new VLCMedia object to use an input stream.
44
- Fixed VLCMediaThumbnailer dimensions not being updated after fetching a thumbnail
45
- Fixed crash when cancelDialog was called on VLCDialogProvider
46

47 48 49 50 51
Version 3.1.3:
--------------
- Fixed crashes with Chromecast when starting it in the middle of playing streams
- Fixed Audio not resuming after backgrounding

Carola Nitz's avatar
Carola Nitz committed
52 53 54
Version 3.1.2:
--------------
- Fix an issue that led to subtitles not being displayed for mkv files
55 56 57
- h264 low-latency improvements for VideoToolbox
- Improved display of subtitles
- Fix playback issues with certain AVI, MP4 and MKV files
Carola Nitz's avatar
Carola Nitz committed
58

Carola Nitz's avatar
Carola Nitz committed
59 60 61
Version 3.1.1:
--------------
- Drop support for platforms < iOS 8 & < tvOS 10.2
62
- Add transcoding for the Chromecast
Carola Nitz's avatar
Carola Nitz committed
63
- Fix an issue that led to green artifacts in H264 streams
64 65 66
- Fix AVAudioSession handling on tvOS and iOS when playing multiple streams
- Fix OpenGL multithreading issues on macOS
- Updated third party libraries, notably Harfbuzz for security improvements
Carola Nitz's avatar
Carola Nitz committed
67

Carola Nitz's avatar
Carola Nitz committed
68
Version 3.1.0:
69
--------------
Carola Nitz's avatar
Carola Nitz committed
70
- Add API to enable or disable deinterlace and specify a filter
71
- Expose the existing snapshot API of the VLCMediaPlayer class to macOS
Soomin Lee's avatar
Soomin Lee committed
72 73
- Expose yaw, pitch, roll and fov for viewpoint
- Include protobuf, sout, output_http and stream_out modules for Chromecast
74

75 76
Version 3.0.2:
--------------
Carola Nitz's avatar
Carola Nitz committed
77 78
- Automatic reconnections to HTTP(S) servers on unexpected drops on iOS and tvOS
- Fixed deadlock when sent to background
Carola Nitz's avatar
Carola Nitz committed
79 80 81
- Fixed some OpenGL and flv crashes
- Fixed HEVC playback that resulted in just a black screen
- Removal of private API usage by ffmpeg
82

83 84
Version 3.0.0:
--------------
85 86 87
Generic changes:
- Added support for tvOS
- Removed support for the 32bit OS X platform
88
- Added support for audio muting and software volume changes on iOS and tvOS
89

90
New APIs:
91 92 93 94 95 96
- VLCAudio
  - setMuted:

- VLCDialogProvider
  - new class to handle user interaction with VLC events

97 98 99
- VLCLibrary
  - added properties: debugLogging, debugLoggingLevel

100 101 102 103 104 105 106
- VLCMediaDiscoverer
  - added selector: availableMediaDiscovererForCategoryType:
  - added enum: VLCMediaDiscovererCategoryType

- VLCMediaListPlayer
  - added selectors: initWithDrawable:
                     initWithOptions:andDrawable:
107
                     playItemAtNumber:
108

109
- VLCMediaPlayer
Felix Paul Kühne's avatar
Felix Paul Kühne committed
110 111
  - added properties: titleDescriptions, indexOfLongestTitle, numberOfTitles,
                      snapshots, lastSnapshot
112 113
  - added selectors: chaptersForTitleIndex:
                     numberOfChaptersForTitle:
114
                     addPlaybackSlave:type:enforce:
Felix Paul Kühne's avatar
Felix Paul Kühne committed
115
                     updateViewpoint:pitch:roll:fov:absolute:
116
  - added notifications: VLCMediaPlayerTitleChanged, VLCMediaPlayerChapterChanged
117
  - added enum: VLCMediaPlaybackSlaveType
118 119 120
  - Note:
    - play's return type was changed from BOOL to void
    - hue is now a float instead of an integer
121 122 123 124 125 126 127 128
  - WARNING:
    - Return value of the following methods changed from INT_MAX to -1
      (int)currentVideoTrackIndex
      (int)currentVideoSubTitleIndex
      (int)currentChapterIndex
      (int)currentTitleIndex
      (int)currentAudioTrackIndex

129 130 131 132
- VLCMedia
  - added keys: VLCMetaInformationTrackTotal, VLCMetaInformationDirector,
                VLCMetaInformationSeason, VLCMetaInformationEpisode,
                VLCMetaInformationShowName, VLCMetaInformationActors,
Felix Paul Kühne's avatar
Felix Paul Kühne committed
133 134 135
                VLCMetaInformationAlbumArtist, VLCMetaInformationDiscNumber,
                VLCMediaTracksInformationVideoOrientation,
                VLCMediaTracksInformationVideoProjection
136 137
  - added selectors: codecNameForFourCC:trackType:
                     mediaType
138
                     parseWithOptions:
139 140
                     parseWithOptions:Timeout:
                     parsedStatus
141 142
                     storeCookie:forHost:path:
                     clearStoredCookies
Felix Paul Kühne's avatar
Felix Paul Kühne committed
143 144
  - added enums: VLCMediaType, VLCMediaParsingOptions, VLCMediaParsedStatus,
                 VLCMediaOrientation, VLCMediaProjection
145 146
  - changed behavior: media will no longer be parsed automatically if meta
      data is requested prior to concluded parsing
147

148 149 150 151
- VLCMediaList
  - changed behavior: lists of media objects added through arrays or on init
      are no longer added in reverse order

152 153 154 155
- VLCTime
  - added selectors: isEqual:
                     hash

156 157 158
- VLCAudio
  - added property: passthrough

159 160 161 162 163 164 165 166 167 168
Modified APIs:
- VLCMediaList
  - To match the KVC bindings, all NSInteger arguments were moved to NSUInteger as appropriate
      - mediaList:mediaAdded:atIndex:
      - mediaList:mediaRemovedAtIndex:
      - addMedia:
      - insertMedia:atIndex:
      - removeMediaAtIndex:
      - mediaAtIndex:

169
Deprecated APIs:
170 171
- VLCAudio
  - setMute:
172
- VLCMedia
173
  - parse, isParsed, synchronousParse
174
- VLCMediaDiscoverer
175
  - availableMediaDiscoverer, localizedName
176
- VLCMediaPlayer
177
  - titles, chaptersForTitleIndex:, countOfTitles, framesPerSecond, openVideoSubTitlesFromFile:
178 179
- VLCMediaListPlayer
  - playItemAtIndex
180 181 182
- VLCStreamSession
- VLCStreamOutput
- VLCMediaLibrary
183

184
Removed APIs:
185 186
- VLCExtension
- VLCExtensionsManager
187 188 189 190 191 192 193
- VLCMedia:
  - fps
  - media:metaValueChangedFrom:forKey:
- VLCMediaPlayer
  - audioTracks
  - videoTracks
  - videoSubTitles
194
- VLCServicesDiscoverer
195
- VLCPlaylistDataSource
196

197 198 199 200 201 202 203
Version 2.2.2:
--------------
New APIs:
- VLCMediaPlayer
  - added properties: numberOfVideoTracks, numberOfSubtitlesTracks
    numberOfAudioTracks

204 205
Version 2.2.0:
--------------
206

Felix Paul Kühne's avatar
Felix Paul Kühne committed
207 208 209
Cross-platform:
- Fixed deinterlacing if requested
- Fixed decoding and display of Teletext-based subtitles
210
- Improved thumbnailing reliability
Felix Paul Kühne's avatar
Felix Paul Kühne committed
211 212 213
- Added support for inclusion in swift projects
- Switched to Automatic Reference Counting
- Various stability improvements
Felix Paul Kühne's avatar
Felix Paul Kühne committed
214 215 216 217 218 219

MobileVLCKit:
- It is finally possible to compile the framework without relying on third
  party scripts
- Added 2 sample projects illustrating video playback
- Added support for https and hls playback
220
- VLCMediaListPlayer is available now
221
- Added support for https connectivity
Felix Paul Kühne's avatar
Felix Paul Kühne committed
222

223 224 225
VLCKit:
- VLCMediaThumbnailer is a public API on the Mac now matching the mobile
  counterpart
Felix Paul Kühne's avatar
Felix Paul Kühne committed
226
- Updated samples projects illustrating playback, file conversation, ...
227

Felix Paul Kühne's avatar
Felix Paul Kühne committed
228 229 230
New APIs:
- VLCMediaThumbnailer:
  - added property: snapshotPosition to overwrite the default
231 232
- VLCMediaListPlayer:
  - added initWithOptions selector matching VLCMediaPlayer's implementation
233
  - added pause selector
234
  - added previous, next and playItemAtIndex selectors
235 236
- VLCMedia:
  - added delegate method mediaMetaDataDidChange
237 238
- VLCMediaPlayer:
  - added equalizer
239
  - added countOfTitles
Felix Paul Kühne's avatar
Felix Paul Kühne committed
240

241 242
Modified API behavior:
- VLCMediaPlayer:
243 244
  - implementing mediaPlayerTimeChanged and mediaPlayerStateChanged within a
    delegate object is optional now
245 246
- VLCMedia:
  - nowPlaying meta information is correctly handled now
247

248 249 250
Deprecated APIs:
- VLCMedia:
  - media:metaValueChangedFrom:forKey:
251

252 253 254 255 256 257
Changes within VLCKit between 2.0.0 and 2.1.0:
----------------------------------------------
The entire framework was relicensed to LGPL 2.1 or later as well as its
underlying playback modules.
Support for transcoding and streaming as well as DVD playback was not affected
by this move and stays under GPL until further notice.
Felix Paul Kühne's avatar
Felix Paul Kühne committed
258 259
Please note that the Objective-C syntax was updated, so VLCKit may no longer
compile with outdated versions of Xcode / clang.
260 261 262 263 264 265 266 267

New APIs:
- VLCStreamOutput:
  - support for subtitle transcoding
- VLCMedia:
  - extended media track information for bitrate, language, description, source
    aspect ratio, source aspect denominator, frame rate, frame rate denominator,
    and text encoding
Felix Paul Kühne's avatar
Felix Paul Kühne committed
268 269
  - added setter and getter for individual meta data values as well as the
    ability to write changes to the media file
270 271 272
  - added (BOOL)isMediaSizeSuitableForDevice to let VLCKit determine whether the
    current media is considered to be suitable for the current device or
    playback is discouraged. Will always return true on OS X devices.
273 274 275
  - added individual getters for all statistic values, so client application can
    fetch single values instead of having to process a NSDictionary with all the
    available values. The old API is still available and will stay.
276 277 278 279 280 281 282
- VLCMediaPlayer:
  - added support to enable, switch and disable video tracks
  - added setter/getter for SPU and audio delays
  - added setter/getter for the video scale factor
  - added support for the "adjust" video filter to manipulate contrast,
    brightness, hue, saturation and gamma on the fly
  - new interfaces to fetch names and IDs of audio, subtitle and video tracks
283 284 285
  - added the ability to launch instances with custom libvlc options
- VLCLibrary:
  - added the ability to launch instances with custom libvlc options
Felix Paul Kühne's avatar
Felix Paul Kühne committed
286 287
  - added methods to set App ID and User-Agent
  - added readonly property to fetch compiler information
288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311

Deprecated APIs:
- VLCMediaPlayer:
  @property (readonly) NSUInteger fps;
    - use (float)fps instead.
  - (NSArray *)videoSubTitles;
    - use - (NSArray *)videoSubtitleNames; instead
  - (NSArray *)audioTracks;
    - use - (NSArray *)audioTrackNames; instead
  - (NSArray *)videoTracks;
    - use - (NSArray *)videoTrackNames; instead

Modified behavior:
- use of clang instead of llvm-gcc-4.2
- updated project file for Xcode 4.3 and later
- iOS Deployment target was raised to iOS 5.1
- dropped support for the PowerPC architecture
- Mac Deployment target was raised to OS X 10.7
- different logging behavior: to see any debug messages, the framework needs
  to be compiled in debug mode

MobileVLCKit features:
- added support for Opus
- slimmed binary by removing dysfunctional or irrelevant modules
Felix Paul Kühne's avatar
Felix Paul Kühne committed
312 313
- screen sleep is prevented during playback
- functionality is strictly limited for full LGPL compliance
314 315 316 317

Removed APIs:
- VLCMedia:
  - (void)setValue:(id)value forMeta:(NSString *)VLCMetaInformation;
Felix Paul Kühne's avatar
Felix Paul Kühne committed
318
    use setMetadata:(NSString *)data forKey:(NSString *)key instead