NEWS 9.28 KB
Newer Older
Carola Nitz's avatar
Carola Nitz committed
1 2 3
Version 3.1.2:
--------------
- Fix an issue that led to subtitles not being displayed for mkv files
4 5 6
- 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
7

Carola Nitz's avatar
Carola Nitz committed
8 9 10
Version 3.1.1:
--------------
- Drop support for platforms < iOS 8 & < tvOS 10.2
11
- Add transcoding for the Chromecast
Carola Nitz's avatar
Carola Nitz committed
12
- Fix an issue that led to green artifacts in H264 streams
13 14 15
- 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
16

Carola Nitz's avatar
Carola Nitz committed
17
Version 3.1.0:
18
--------------
Carola Nitz's avatar
Carola Nitz committed
19
- Add API to enable or disable deinterlace and specify a filter
20
- Expose the existing snapshot API of the VLCMediaPlayer class to macOS
Soomin Lee's avatar
Soomin Lee committed
21 22
- Expose yaw, pitch, roll and fov for viewpoint
- Include protobuf, sout, output_http and stream_out modules for Chromecast
23
- Rename buildMobileVLCKit to compileAndBuildVLCKit
24
- Use NSDateComponents API for VLCTime.verboseStringValue
25

26 27
Version 3.0.2:
--------------
Carola Nitz's avatar
Carola Nitz committed
28 29
- 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
30 31 32
- Fixed some OpenGL and flv crashes
- Fixed HEVC playback that resulted in just a black screen
- Removal of private API usage by ffmpeg
33

34 35
Version 3.0.0:
--------------
36 37 38
Generic changes:
- Added support for tvOS
- Removed support for the 32bit OS X platform
39
- Added support for audio muting and software volume changes on iOS and tvOS
40

41
New APIs:
42 43 44 45 46 47
- VLCAudio
  - setMuted:

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

48 49 50
- VLCLibrary
  - added properties: debugLogging, debugLoggingLevel

51 52 53 54 55 56 57
- VLCMediaDiscoverer
  - added selector: availableMediaDiscovererForCategoryType:
  - added enum: VLCMediaDiscovererCategoryType

- VLCMediaListPlayer
  - added selectors: initWithDrawable:
                     initWithOptions:andDrawable:
58
                     playItemAtNumber:
59

60
- VLCMediaPlayer
Felix Paul Kühne's avatar
Felix Paul Kühne committed
61 62
  - added properties: titleDescriptions, indexOfLongestTitle, numberOfTitles,
                      snapshots, lastSnapshot
63 64
  - added selectors: chaptersForTitleIndex:
                     numberOfChaptersForTitle:
65
                     addPlaybackSlave:type:enforce:
Felix Paul Kühne's avatar
Felix Paul Kühne committed
66
                     updateViewpoint:pitch:roll:fov:absolute:
67
  - added notifications: VLCMediaPlayerTitleChanged, VLCMediaPlayerChapterChanged
68
  - added enum: VLCMediaPlaybackSlaveType
69 70 71
  - Note:
    - play's return type was changed from BOOL to void
    - hue is now a float instead of an integer
72 73 74 75 76 77 78 79
  - WARNING:
    - Return value of the following methods changed from INT_MAX to -1
      (int)currentVideoTrackIndex
      (int)currentVideoSubTitleIndex
      (int)currentChapterIndex
      (int)currentTitleIndex
      (int)currentAudioTrackIndex

80 81 82 83
- VLCMedia
  - added keys: VLCMetaInformationTrackTotal, VLCMetaInformationDirector,
                VLCMetaInformationSeason, VLCMetaInformationEpisode,
                VLCMetaInformationShowName, VLCMetaInformationActors,
Felix Paul Kühne's avatar
Felix Paul Kühne committed
84 85 86
                VLCMetaInformationAlbumArtist, VLCMetaInformationDiscNumber,
                VLCMediaTracksInformationVideoOrientation,
                VLCMediaTracksInformationVideoProjection
87 88
  - added selectors: codecNameForFourCC:trackType:
                     mediaType
89
                     parseWithOptions:
90 91
                     parseWithOptions:Timeout:
                     parsedStatus
92 93
                     storeCookie:forHost:path:
                     clearStoredCookies
Felix Paul Kühne's avatar
Felix Paul Kühne committed
94 95
  - added enums: VLCMediaType, VLCMediaParsingOptions, VLCMediaParsedStatus,
                 VLCMediaOrientation, VLCMediaProjection
96 97
  - changed behavior: media will no longer be parsed automatically if meta
      data is requested prior to concluded parsing
98

99 100 101 102
- VLCMediaList
  - changed behavior: lists of media objects added through arrays or on init
      are no longer added in reverse order

103 104 105 106
- VLCTime
  - added selectors: isEqual:
                     hash

107 108 109
- VLCAudio
  - added property: passthrough

110 111 112 113 114 115 116 117 118 119
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:

120
Deprecated APIs:
121 122
- VLCAudio
  - setMute:
123
- VLCMedia
124
  - parse, isParsed, synchronousParse
125
- VLCMediaDiscoverer
126
  - availableMediaDiscoverer, localizedName
127
- VLCMediaPlayer
128
  - titles, chaptersForTitleIndex:, countOfTitles, framesPerSecond, openVideoSubTitlesFromFile:
129 130
- VLCMediaListPlayer
  - playItemAtIndex
131 132 133
- VLCStreamSession
- VLCStreamOutput
- VLCMediaLibrary
134

135
Removed APIs:
136 137
- VLCExtension
- VLCExtensionsManager
138 139 140 141 142 143 144
- VLCMedia:
  - fps
  - media:metaValueChangedFrom:forKey:
- VLCMediaPlayer
  - audioTracks
  - videoTracks
  - videoSubTitles
145
- VLCServicesDiscoverer
146
- VLCPlaylistDataSource
147

148 149 150 151 152 153 154
Version 2.2.2:
--------------
New APIs:
- VLCMediaPlayer
  - added properties: numberOfVideoTracks, numberOfSubtitlesTracks
    numberOfAudioTracks

155 156
Version 2.2.0:
--------------
157

Felix Paul Kühne's avatar
Felix Paul Kühne committed
158 159 160
Cross-platform:
- Fixed deinterlacing if requested
- Fixed decoding and display of Teletext-based subtitles
161
- Improved thumbnailing reliability
Felix Paul Kühne's avatar
Felix Paul Kühne committed
162 163 164
- 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
165 166 167 168 169 170

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

174 175 176
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
177
- Updated samples projects illustrating playback, file conversation, ...
178

Felix Paul Kühne's avatar
Felix Paul Kühne committed
179 180 181
New APIs:
- VLCMediaThumbnailer:
  - added property: snapshotPosition to overwrite the default
182 183
- VLCMediaListPlayer:
  - added initWithOptions selector matching VLCMediaPlayer's implementation
184
  - added pause selector
185
  - added previous, next and playItemAtIndex selectors
186 187
- VLCMedia:
  - added delegate method mediaMetaDataDidChange
188 189
- VLCMediaPlayer:
  - added equalizer
190
  - added countOfTitles
Felix Paul Kühne's avatar
Felix Paul Kühne committed
191

192 193
Modified API behavior:
- VLCMediaPlayer:
194 195
  - implementing mediaPlayerTimeChanged and mediaPlayerStateChanged within a
    delegate object is optional now
196 197
- VLCMedia:
  - nowPlaying meta information is correctly handled now
198

199 200 201
Deprecated APIs:
- VLCMedia:
  - media:metaValueChangedFrom:forKey:
202

203 204 205 206 207 208
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
209 210
Please note that the Objective-C syntax was updated, so VLCKit may no longer
compile with outdated versions of Xcode / clang.
211 212 213 214 215 216 217 218

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
219 220
  - added setter and getter for individual meta data values as well as the
    ability to write changes to the media file
221 222 223
  - 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.
224 225 226
  - 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.
227 228 229 230 231 232 233
- 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
Felix Paul Kühne's avatar
Felix Paul Kühne committed
234 235 236
  - 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
237 238
  - added methods to set App ID and User-Agent
  - added readonly property to fetch compiler information
239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262

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
263 264
- screen sleep is prevented during playback
- functionality is strictly limited for full LGPL compliance
265 266 267 268

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