Releases: HaishinKit/HaishinKit.swift
1.9.3
Related Issues
What's Changed
- Fixed a bug where the application crashes when the area is large. by @shogo4405 in #1519
- Bump fastlane from 2.221.1 to 2.222.0 by @dependabot in #1523
- implementation deleteStream. by @shogo4405 in #1524
- Update README.md SRTHaishinKit with CocoaPods by @shogo4405 in #1531
- Bump danger from 9.4.3 to 9.5.0 by @dependabot in #1532
- ChromaKey filter feature. by @shogo4405 in #1534
- Make AVCaptureSession calls thread safe by @levs42 in #1526
Known Issues
Full Changelog: 1.9.2...1.9.3
2.0.0-alpha
HaishinKit celebrated its 9th anniversary in July 2024. The continuation of individual development has been possible thanks to our sponsors and contributors. Thank you very much for your support.
Now, with the release of the latest version of Xcode and the upcoming Swift 6.0 in September 2024, developers will need to adapt to the changes. HaishinKit will follow this trend by fully rewriting the code to support Swift Concurrency and refining the API. As a result, the next version after 1.9.x will be 2.0.0.
Due to the significant breaking changes, we are releasing it as a technical preview. While we will continue to maintain the 1.9.x series for some time, any new features involving breaking changes will be added to version 2.0.0. If you have any questions, please post them at https://github.com/shogo4405/HaishinKit.swift/discussions.
Notes
What's Changed
- Support Strict Concurrency and Swift 6.0 beta 1 by @shogo4405 in #1525
Full Changelog: 1.9.2...2.0.0-alpha
1.9.2
Related Issues
What's Changed
- Fix buffer rotation creation in Screencast example by @levs42 in #1501
- Update audio track delegate on output format change by @levs42 in #1500
- Thread safety audioMixerSettings. by @shogo4405 in #1510
- fixed #1515 Every FLV frame has key type by @shogo4405 in #1516
Known Issues
Full Changelog: 1.9.1...1.9.2
1.9.1
Related Issues
What's Changed
- Remove shouldMix from multitrack mixer by @levs42 in #1479
- Update libsrt.framework and SRTHaishinKit by @shogo4405 in #1484
- Make open ScreenObject. by @shogo4405 in #1490
- Fixed After fist live audio does not have a program SRTHaishinKit by @shogo4405 in #1492
- nonisolated(unsafe) property ASTypedObject.decoders and RTMPSharedObject.remoteSharedObjects by @shogo4405 in #1493
- Bump fastlane from 2.220.0 to 2.221.1 by @dependabot in #1494
- Allow mid stream audio video format change by @levs42 in #1497
Full Changelog: 1.9.0...1.9.1
1.8.3
Fixed the issue where it could not be compiled with the latest Xcode beta. The content remains the same as version 1.8.2.
Full Changelog: 1.8.2...1.8.3
1.9.0
I have redesigned the API to allow for the free layout of live streaming videos. It is now possible to integrate pre-recorded videos and images. You can check the details in this PR (#1449).
Currently, I'm developing version 2.0 to support Swift 6.0 and Swift Concurrency. Due to the significant breaking changes, it might be better to wait for version 2.0. Please try it out as a technical preview.
Note
Related Issues
What's Changed
- Advanced Video Editing feature. by @shogo4405 in #1449
- Update GitHub Action to use Xcode15.4 by @shogo4405 in #1466
- Bump jazzy from 0.15.0 to 0.15.1 by @dependabot in #1468
- libsrt.xcframework for visionOS, tvOS. by @shogo4405 in #1467
- async SRTConnection.open/close. by @shogo4405 in #1469
- Remove FeatureUtil for Swift 6.0. by @shogo4405 in #1474
Full Changelog: 1.8.2...1.9.0
1.8.2
Related Issues
What's Changed
- #1454 fix playerNode dead lock. by @shogo4405 in #1460
- Implement orientation change handling for ReplayKit by @levs42 in #1452
- Change how track volume is applied by @levs42 in #1465
- Support HEVC with SRTHaishinKit. by @shogo4405 in #1464
Full Changelog: 1.8.1...1.8.2
1.8.1
Related Issues
What's Changed
- Supports AAC codec multi-channels. by @shogo4405 in #1432
- Extending NetConnection connect Command(fourCcList) by @shogo4405 in #1433
- Bump jazzy from 0.14.4 to 0.15.0 by @dependabot in #1434
- Fix don't call delegate methods incoming buffers. by @shogo4405 in #1439
- fixed memory leak IOAudioMixer classes. by @shogo4405 in #1442
- Bump rexml from 3.2.6 to 3.2.8 by @dependabot in #1443
- onMetaData must be ECMAArray. by @shogo4405 in #1445
- [TBA] refs #1410 add metadata to duration. by @shogo4405 in #1446
- Since isVideoMirrored is now working on macOS, discontinue the workaround. by @shogo4405 in #1448
- Fixed #1444 by @shogo4405 in #1450
Full Changelog: 1.8.0...1.8.1
1.8.0
We've added a mixing feature to enable the use of different audio sources. Since it's still in beta, please provide feedback. It can be utilized by following these steps.
FeatureUtil.setEnabled(for: .multiTrackAudioMixing, isEnabled: true)
stream.append(sampleBufferA, track: 0)
stream.append(sampleBufferB, track: 1)
Internally, I am now handling data with more than 3 channels. If you encounter issues with IOStreamRecorder, it is recommended to set it back to a maximum of 2 channels when saving locally.
let channels = max(stream.audioInputFormats[0].channels ?? 1, 2)
stream.audioMixerSettings = .init(sampleRate: 0, channels: channels)
Also made the following changes:
- Updated the minimum supported OS version.
- Reviewed the API design to handle audio data from different sources.
- Improved compatibility with RTMP.
- Enhanced performance of SRT.
Note
Related Issues
What's Changed
- Add multichannel audio mixer by @levs42 in #1386
- Deprecated methods and classes have been removed. by @shogo4405 in #1402
- Supported OS version. by @shogo4405 in #1405
- Remove RTMPSocket.swift by @shogo4405 in #1406
- Removed the ScreenCapture-related APIs. by @shogo4405 in #1407
- Bump fastlane from 2.219.0 to 2.220.0 by @dependabot in #1408
- Add IOStreamObserver and confirmed IOStreamRecorder. by @shogo4405 in #1409
- Fixed typo and removed duplicated audio format flag by @yury in #1411
- fix initialization of PSI in TSWriter by @ThibaultBee in #1413
- Improving compatibility with FMLE's FCPublish behavior. by @shogo4405 in #1414
- Improve handling of RTMP timestamps. by @shogo4405 in #1415
- Bump up Logboard to 2.5.0 by @shogo4405 in #1417
- Rename property channel to track. by @shogo4405 in #1418
- Add an ON/OFF switch for the multi-track audio mixing feature. by @shogo4405 in #1420
- Added multi-capture functionality as microphone. by @shogo4405 in #1422
- Refactor AudioCodecSettings/IOAudioMixerSettings. by @shogo4405 in #1425
- Change IOStream's inputFormat to inputFormats. by @shogo4405 in #1427
- Refactoring for muted functionalities. by @shogo4405 in #1428
- Allow dynamic changes of format description. by @shogo4405 in #1429
- Add volume control feature by track. by @shogo4405 in #1430
New Contributors
- @yury made their first contribution in #1411
- @ThibaultBee made their first contribution in #1413
Full Changelog: 1.7.6...1.8.0
1.7.6
Related Issues
What's Changed
- Update review workflow. by @shogo4405 in #1396
- CocoaPods visionOS supports by @shogo4405 in #1371
- Support attachVideo() for visionOS. by @shogo4405 in #1395
- Fixed issue with audio playback in SRT. by @shogo4405 in #1401
Full Changelog: 1.7.5...1.7.6