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

Soomin Lee's avatar
Soomin Lee committed
13 14 15
- API Changes:
    - updateProgressWithReference:message:postion: to updateProgressWithReference:message:position:

16 17 18 19 20 21 22 23
- 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
24 25 26 27 28 29 30 31 32
- 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
33 34 35 36 37
Version 3.1.5:
--------------
- Fixed a crash when updateProgressCallback was called
- Fixed an issue with authentification for certain HTTP streams

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

46 47 48 49 50
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
51 52 53
Version 3.1.2:
--------------
- Fix an issue that led to subtitles not being displayed for mkv files
54 55 56
- 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
57

Carola Nitz's avatar
Carola Nitz committed
58 59 60
Version 3.1.1:
--------------
- Drop support for platforms < iOS 8 & < tvOS 10.2
61
- Add transcoding for the Chromecast
Carola Nitz's avatar
Carola Nitz committed
62
- Fix an issue that led to green artifacts in H264 streams
63 64 65
- 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
66

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

74 75
Version 3.0.2:
--------------
Carola Nitz's avatar
Carola Nitz committed
76 77
- 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
78 79 80
- Fixed some OpenGL and flv crashes
- Fixed HEVC playback that resulted in just a black screen
- Removal of private API usage by ffmpeg
81

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

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

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

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

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

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

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

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

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

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

155 156 157
- VLCAudio
  - added property: passthrough

158 159 160 161 162 163 164 165 166 167
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:

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

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

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

203 204
Version 2.2.0:
--------------
205

Felix Paul Kühne's avatar
Felix Paul Kühne committed
206 207 208
Cross-platform:
- Fixed deinterlacing if requested
- Fixed decoding and display of Teletext-based subtitles
209
- Improved thumbnailing reliability
Felix Paul Kühne's avatar
Felix Paul Kühne committed
210 211 212
- 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
213 214 215 216 217 218

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
219
- VLCMediaListPlayer is available now
220
- Added support for https connectivity
Felix Paul Kühne's avatar
Felix Paul Kühne committed
221

222 223 224
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
225
- Updated samples projects illustrating playback, file conversation, ...
226

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

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

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

251 252 253 254 255 256
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
257 258
Please note that the Objective-C syntax was updated, so VLCKit may no longer
compile with outdated versions of Xcode / clang.
259 260 261 262 263 264 265 266

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
267 268
  - added setter and getter for individual meta data values as well as the
    ability to write changes to the media file
269 270 271
  - 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.
272 273 274
  - 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.
275 276 277 278 279 280 281
- 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
282 283 284
  - 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
285 286
  - added methods to set App ID and User-Agent
  - added readonly property to fetch compiler information
287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310

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
311 312
- screen sleep is prevented during playback
- functionality is strictly limited for full LGPL compliance
313 314 315 316

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