NEWS 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377
  1. Version 4.0.0:
  2. --------------
  3. - Rename buildMobileVLCKit to compileAndBuildVLCKit
  4. - Use NSDateComponents API for VLCTime.verboseStringValue
  5. Version 3.3.2:
  6. --------------
  7. - Internal percent encoding handling of URLs within VLCMedia was removed. This fixes a bug where URLs ended up double encoded.
  8. /!\ This change might require changes to client Apps to ensure that their URLs are correctly percent encoded when initialising VLCMedia /!\
  9. - access:
  10. - rdp: Fix URI parsing
  11. - vnc: Fix URI parsing
  12. - live555: Fix crash parsing H264
  13. - demux:
  14. - hls: Disable webvtt
  15. - mp4: Add sample overread check for non seekable case
  16. Probe fragments on missing duration
  17. Ignore indirect index references for seek
  18. Pack sidx items
  19. - ts: Fix broken var reading
  20. - mux:
  21. - mp4: Fix tkdh visible values
  22. Set visible dimensions in stsd instead of buffer
  23. - contribs:
  24. - Bump dav1d to 0.3.0
  25. Version 3.3.1:
  26. --------------
  27. - Lower SMB 2 priority
  28. - transcode: Fix transcode with passthrough video
  29. - asf: Fix memory leak
  30. - demux:
  31. - dash: Handle infinite repeat in timeline
  32. - mkv: Fix playback of files created with lavf 58.12
  33. - sftp: Fix version for ECDSA known hosts
  34. - contribs:
  35. - Bump dav1d to 0.2.1
  36. Version 3.3.0:
  37. --------------
  38. - Add SMB 2 support
  39. - VLCMediaList: Fix removeMediaAtIndex NSRangeException crash
  40. - mp4: Improve muxing & demuxing
  41. - ogg: Improve demuxing
  42. - mkv: Fix GotoAndPlay command uid conversion
  43. - avcodec: Fix missing FourCC in libav
  44. - microdns: Fix memory leak
  45. API Changes:
  46. VLCMediaList:
  47. - indexOfMedia Returns NSUInteger instead of NSInteger
  48. - removeMediaAtIndex Returns BOOL instead of void
  49. Version 3.2.1:
  50. --------------
  51. - Added a new default AV1 decoder - dav1d
  52. - Fixed issues with decoding certain HEVC streams
  53. - Added API to VLCLibrary to log debug information to a file or a custom target
  54. - Fixed crash and leaks in our OpenGL based video output
  55. - Fixed chromecast not displaying Videos for certain devices
  56. Version 3.2.0:
  57. --------------
  58. - Enabled libmux module
  59. - Fixed a bug where debuglogging logged less than what the loglevel indicated
  60. - Fixed a bug where subtitles where not displayed by default on iOS
  61. - Fixed a crash when playing back mkv on iOS 12
  62. - API Changes:
  63. - updateProgressWithReference:message:postion: to updateProgressWithReference:message:position:
  64. - new recording Api
  65. VLCMediaPlayerDelegate:
  66. - (void)mediaPlayerStartedRecording:(VLCMediaPlayer *)player;
  67. - (void)mediaPlayer:(VLCMediaPlayer *)player recordingStoppedAtPath:(NSString *)path;
  68. VLCMediaPlayer:
  69. - (BOOL)startRecordingAtPath:(NSString *)path;
  70. - (BOOL)stopRecording;
  71. - new Transcoder Class and API
  72. VLCTranscoderDelegate:
  73. - (void)transcode:(VLCTranscoder *)transcoder finishedSucessfully:(BOOL)success;
  74. VLCTranscoder:
  75. - (BOOL)reencodeAndMuxSRTFile:(NSString *)srtPath toMP4File:(NSString *)mp4Path outputPath:(NSString *)outPath
  76. Version 3.1.5:
  77. --------------
  78. - Fixed a crash when updateProgressCallback was called
  79. - Fixed an issue with authentification for certain HTTP streams
  80. Version 3.1.4:
  81. --------------
  82. - Added missing VLCMediaParseStatusTimeout to VLCMediaParsedStatus enum
  83. - debugLoggingLevel of VLCLibrary defaults to 0 (just errors) when provided with an invalid level
  84. - Added VLCMedia initWithStream:(NSInputStream *)stream to create a new VLCMedia object to use an input stream.
  85. - Fixed VLCMediaThumbnailer dimensions not being updated after fetching a thumbnail
  86. - Fixed crash when cancelDialog was called on VLCDialogProvider
  87. Version 3.1.3:
  88. --------------
  89. - Fixed crashes with Chromecast when starting it in the middle of playing streams
  90. - Fixed Audio not resuming after backgrounding
  91. Version 3.1.2:
  92. --------------
  93. - Fix an issue that led to subtitles not being displayed for mkv files
  94. - h264 low-latency improvements for VideoToolbox
  95. - Improved display of subtitles
  96. - Fix playback issues with certain AVI, MP4 and MKV files
  97. Version 3.1.1:
  98. --------------
  99. - Drop support for platforms < iOS 8 & < tvOS 10.2
  100. - Add transcoding for the Chromecast
  101. - Fix an issue that led to green artifacts in H264 streams
  102. - Fix AVAudioSession handling on tvOS and iOS when playing multiple streams
  103. - Fix OpenGL multithreading issues on macOS
  104. - Updated third party libraries, notably Harfbuzz for security improvements
  105. Version 3.1.0:
  106. --------------
  107. - Add API to enable or disable deinterlace and specify a filter
  108. - Expose the existing snapshot API of the VLCMediaPlayer class to macOS
  109. - Expose yaw, pitch, roll and fov for viewpoint
  110. - Include protobuf, sout, output_http and stream_out modules for Chromecast
  111. Version 3.0.2:
  112. --------------
  113. - Automatic reconnections to HTTP(S) servers on unexpected drops on iOS and tvOS
  114. - Fixed deadlock when sent to background
  115. - Fixed some OpenGL and flv crashes
  116. - Fixed HEVC playback that resulted in just a black screen
  117. - Removal of private API usage by ffmpeg
  118. Version 3.0.0:
  119. --------------
  120. Generic changes:
  121. - Added support for tvOS
  122. - Removed support for the 32bit OS X platform
  123. - Added support for audio muting and software volume changes on iOS and tvOS
  124. New APIs:
  125. - VLCAudio
  126. - setMuted:
  127. - VLCDialogProvider
  128. - new class to handle user interaction with VLC events
  129. - VLCLibrary
  130. - added properties: debugLogging, debugLoggingLevel
  131. - VLCMediaDiscoverer
  132. - added selector: availableMediaDiscovererForCategoryType:
  133. - added enum: VLCMediaDiscovererCategoryType
  134. - VLCMediaListPlayer
  135. - added selectors: initWithDrawable:
  136. initWithOptions:andDrawable:
  137. playItemAtNumber:
  138. - VLCMediaPlayer
  139. - added properties: titleDescriptions, indexOfLongestTitle, numberOfTitles,
  140. snapshots, lastSnapshot
  141. - added selectors: chaptersForTitleIndex:
  142. numberOfChaptersForTitle:
  143. addPlaybackSlave:type:enforce:
  144. updateViewpoint:pitch:roll:fov:absolute:
  145. - added notifications: VLCMediaPlayerTitleChanged, VLCMediaPlayerChapterChanged
  146. - added enum: VLCMediaPlaybackSlaveType
  147. - Note:
  148. - play's return type was changed from BOOL to void
  149. - hue is now a float instead of an integer
  150. - WARNING:
  151. - Return value of the following methods changed from INT_MAX to -1
  152. (int)currentVideoTrackIndex
  153. (int)currentVideoSubTitleIndex
  154. (int)currentChapterIndex
  155. (int)currentTitleIndex
  156. (int)currentAudioTrackIndex
  157. - VLCMedia
  158. - added keys: VLCMetaInformationTrackTotal, VLCMetaInformationDirector,
  159. VLCMetaInformationSeason, VLCMetaInformationEpisode,
  160. VLCMetaInformationShowName, VLCMetaInformationActors,
  161. VLCMetaInformationAlbumArtist, VLCMetaInformationDiscNumber,
  162. VLCMediaTracksInformationVideoOrientation,
  163. VLCMediaTracksInformationVideoProjection
  164. - added selectors: codecNameForFourCC:trackType:
  165. mediaType
  166. parseWithOptions:
  167. parseWithOptions:Timeout:
  168. parsedStatus
  169. storeCookie:forHost:path:
  170. clearStoredCookies
  171. - added enums: VLCMediaType, VLCMediaParsingOptions, VLCMediaParsedStatus,
  172. VLCMediaOrientation, VLCMediaProjection
  173. - changed behavior: media will no longer be parsed automatically if meta
  174. data is requested prior to concluded parsing
  175. - VLCMediaList
  176. - changed behavior: lists of media objects added through arrays or on init
  177. are no longer added in reverse order
  178. - VLCTime
  179. - added selectors: isEqual:
  180. hash
  181. - VLCAudio
  182. - added property: passthrough
  183. Modified APIs:
  184. - VLCMediaList
  185. - To match the KVC bindings, all NSInteger arguments were moved to NSUInteger as appropriate
  186. - mediaList:mediaAdded:atIndex:
  187. - mediaList:mediaRemovedAtIndex:
  188. - addMedia:
  189. - insertMedia:atIndex:
  190. - removeMediaAtIndex:
  191. - mediaAtIndex:
  192. Deprecated APIs:
  193. - VLCAudio
  194. - setMute:
  195. - VLCMedia
  196. - parse, isParsed, synchronousParse
  197. - VLCMediaDiscoverer
  198. - availableMediaDiscoverer, localizedName
  199. - VLCMediaPlayer
  200. - titles, chaptersForTitleIndex:, countOfTitles, framesPerSecond, openVideoSubTitlesFromFile:
  201. - VLCMediaListPlayer
  202. - playItemAtIndex
  203. - VLCStreamSession
  204. - VLCStreamOutput
  205. - VLCMediaLibrary
  206. Removed APIs:
  207. - VLCExtension
  208. - VLCExtensionsManager
  209. - VLCMedia:
  210. - fps
  211. - media:metaValueChangedFrom:forKey:
  212. - VLCMediaPlayer
  213. - audioTracks
  214. - videoTracks
  215. - videoSubTitles
  216. - VLCServicesDiscoverer
  217. - VLCPlaylistDataSource
  218. Version 2.2.2:
  219. --------------
  220. New APIs:
  221. - VLCMediaPlayer
  222. - added properties: numberOfVideoTracks, numberOfSubtitlesTracks
  223. numberOfAudioTracks
  224. Version 2.2.0:
  225. --------------
  226. Cross-platform:
  227. - Fixed deinterlacing if requested
  228. - Fixed decoding and display of Teletext-based subtitles
  229. - Improved thumbnailing reliability
  230. - Added support for inclusion in swift projects
  231. - Switched to Automatic Reference Counting
  232. - Various stability improvements
  233. MobileVLCKit:
  234. - It is finally possible to compile the framework without relying on third
  235. party scripts
  236. - Added 2 sample projects illustrating video playback
  237. - Added support for https and hls playback
  238. - VLCMediaListPlayer is available now
  239. - Added support for https connectivity
  240. VLCKit:
  241. - VLCMediaThumbnailer is a public API on the Mac now matching the mobile
  242. counterpart
  243. - Updated samples projects illustrating playback, file conversation, ...
  244. New APIs:
  245. - VLCMediaThumbnailer:
  246. - added property: snapshotPosition to overwrite the default
  247. - VLCMediaListPlayer:
  248. - added initWithOptions selector matching VLCMediaPlayer's implementation
  249. - added pause selector
  250. - added previous, next and playItemAtIndex selectors
  251. - VLCMedia:
  252. - added delegate method mediaMetaDataDidChange
  253. - VLCMediaPlayer:
  254. - added equalizer
  255. - added countOfTitles
  256. Modified API behavior:
  257. - VLCMediaPlayer:
  258. - implementing mediaPlayerTimeChanged and mediaPlayerStateChanged within a
  259. delegate object is optional now
  260. - VLCMedia:
  261. - nowPlaying meta information is correctly handled now
  262. Deprecated APIs:
  263. - VLCMedia:
  264. - media:metaValueChangedFrom:forKey:
  265. Changes within VLCKit between 2.0.0 and 2.1.0:
  266. ----------------------------------------------
  267. The entire framework was relicensed to LGPL 2.1 or later as well as its
  268. underlying playback modules.
  269. Support for transcoding and streaming as well as DVD playback was not affected
  270. by this move and stays under GPL until further notice.
  271. Please note that the Objective-C syntax was updated, so VLCKit may no longer
  272. compile with outdated versions of Xcode / clang.
  273. New APIs:
  274. - VLCStreamOutput:
  275. - support for subtitle transcoding
  276. - VLCMedia:
  277. - extended media track information for bitrate, language, description, source
  278. aspect ratio, source aspect denominator, frame rate, frame rate denominator,
  279. and text encoding
  280. - added setter and getter for individual meta data values as well as the
  281. ability to write changes to the media file
  282. - added (BOOL)isMediaSizeSuitableForDevice to let VLCKit determine whether the
  283. current media is considered to be suitable for the current device or
  284. playback is discouraged. Will always return true on OS X devices.
  285. - added individual getters for all statistic values, so client application can
  286. fetch single values instead of having to process a NSDictionary with all the
  287. available values. The old API is still available and will stay.
  288. - VLCMediaPlayer:
  289. - added support to enable, switch and disable video tracks
  290. - added setter/getter for SPU and audio delays
  291. - added setter/getter for the video scale factor
  292. - added support for the "adjust" video filter to manipulate contrast,
  293. brightness, hue, saturation and gamma on the fly
  294. - new interfaces to fetch names and IDs of audio, subtitle and video tracks
  295. - added the ability to launch instances with custom libvlc options
  296. - VLCLibrary:
  297. - added the ability to launch instances with custom libvlc options
  298. - added methods to set App ID and User-Agent
  299. - added readonly property to fetch compiler information
  300. Deprecated APIs:
  301. - VLCMediaPlayer:
  302. @property (readonly) NSUInteger fps;
  303. - use (float)fps instead.
  304. - (NSArray *)videoSubTitles;
  305. - use - (NSArray *)videoSubtitleNames; instead
  306. - (NSArray *)audioTracks;
  307. - use - (NSArray *)audioTrackNames; instead
  308. - (NSArray *)videoTracks;
  309. - use - (NSArray *)videoTrackNames; instead
  310. Modified behavior:
  311. - use of clang instead of llvm-gcc-4.2
  312. - updated project file for Xcode 4.3 and later
  313. - iOS Deployment target was raised to iOS 5.1
  314. - dropped support for the PowerPC architecture
  315. - Mac Deployment target was raised to OS X 10.7
  316. - different logging behavior: to see any debug messages, the framework needs
  317. to be compiled in debug mode
  318. MobileVLCKit features:
  319. - added support for Opus
  320. - slimmed binary by removing dysfunctional or irrelevant modules
  321. - screen sleep is prevented during playback
  322. - functionality is strictly limited for full LGPL compliance
  323. Removed APIs:
  324. - VLCMedia:
  325. - (void)setValue:(id)value forMeta:(NSString *)VLCMetaInformation;
  326. use setMetadata:(NSString *)data forKey:(NSString *)key instead