NEWS 10.9 KB
Newer Older
1

2 3
Version 3.2.1:
--------------
4
- Add API to VLCLibrary to log debug information to a file or a custom target
5

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
- 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
30 31 32 33 34
Version 3.1.5:
--------------
- Fixed a crash when updateProgressCallback was called
- Fixed an issue with authentification for certain HTTP streams

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

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

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

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

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

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

86
New APIs:
87 88 89 90 91 92
- VLCAudio
  - setMuted:

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

93 94 95
- VLCLibrary
  - added properties: debugLogging, debugLoggingLevel

96 97 98 99 100 101 102
- VLCMediaDiscoverer
  - added selector: availableMediaDiscovererForCategoryType:
  - added enum: VLCMediaDiscovererCategoryType

- VLCMediaListPlayer
  - added selectors: initWithDrawable:
                     initWithOptions:andDrawable:
103
                     playItemAtNumber:
104

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

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

144 145 146 147
- VLCMediaList
  - changed behavior: lists of media objects added through arrays or on init
      are no longer added in reverse order

148 149 150 151
- VLCTime
  - added selectors: isEqual:
                     hash

152 153 154
- VLCAudio
  - added property: passthrough

155 156 157 158 159 160 161 162 163 164
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:

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

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

193 194 195 196 197 198 199
Version 2.2.2:
--------------
New APIs:
- VLCMediaPlayer
  - added properties: numberOfVideoTracks, numberOfSubtitlesTracks
    numberOfAudioTracks

200 201
Version 2.2.0:
--------------
202

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

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

219 220 221
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
222
- Updated samples projects illustrating playback, file conversation, ...
223

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

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

244 245 246
Deprecated APIs:
- VLCMedia:
  - media:metaValueChangedFrom:forKey:
247

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

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

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

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