Releases: videokit-ai/videokit
Releases · videokit-ai/videokit
VideoKit 0.0.22
- Improved native error propagation into C# code allowing you to
try..catch
more errors. - Improved recording performance when using
VideoMode.CameraDevice
with theVideoKitRecorder
component. - Unsealed the
MediaRecorder
class, allowing for custom derived classes to override recording behaviour. - Added
VideoKitCameraManager.StartRunningAsync
method which returns aTask
for async completion and error handling. - Added
VideoKitAudioManager.StartRunningAsync
method which returns aTask
for async completion and error handling. - Added
VideoKitRecorder.StartRecordingAsync
method which returns aTask
for async completion and error handling. - Added
VideoKitRecorder.StopRecordingAsync
method which returns aTask
for async completion and error handling. - Fixed
CameraDevice.StopRunning
method causing app hanging when camera device is unsupported (#126). - Fixed
MediaAsset.FromCameraRoll
method causing app crash when the user does not pick an asset on Android (#146). - Fixed
MediaAsset.FromCameraRoll
task never completing when user does not pick an asset on iOS (#146). - Fixed camera preview not resuming after app is suspended for more than a few seconds on Android (#56).
- Refactored
MediaAsset.Caption<T>
method toMediaAsset.Parse<T>
for structured parsing. - Refactored
MediaAsset.Caption
method toMediaAsset.Transcribe
for performing speech-to-text. - Refactored
MediaAsset.FromSpeechPrompt
method toMediaAsset.FromGeneratedSpeech
for performing text-to-speech. - Removed
PixelBuffer.Region
method. - Removed
PixelBuffer.ToImage
method. - Removed video recording in the free tier. Subscribe to a VideoKit plan to use video recording.
- VideoKit now requires Unity 6 when building for WebGL (#150).
- VideoKit now requires iOS 14+.
- VideoKit now requires macOS 12+.
VideoKit 0.0.21
- Fixed
WebException: The request was aborted: The request was canceled
when building for Android.
VideoKit 0.0.20
- Added support for streaming from USB UVC cameras on iOS and iPadOS (#135).
- Added
VideoKitRecorder.CaptureScreenshot
method for capturing a screenshot image to aJPEG
media asset (#132). - Fixed unrecoverable error when recording
webm
videos on WebGL. - Fixed sporadic crash when stopping recording from camera device on iOS (#131).
- Fixed Unity Editor freezing when recording video with audio (#128).
- Refactored
MediaType
enum toMediaAsset.MediaType
. - Refactored
MediaAsset.Narrate
instance method toMediaAsset.FromSpeechPrompt
static method. - Removed
PixelBuffer.CopyTo(PixelBuffer, PixelBuffer)
method overload for alpha blending images.
VideoKit 0.0.17
- Fixed C# compiler error on iOS.
VideoKit 0.0.16
- Added 32-bit
x86
architecture support on Android (#75). - Fixed
NullReferenceException
on startup when running on Windows (#78). - Fixed crash when calling
MediaAsset.SaveToCameraRoll
on macOS (#85). - Changed
VideoKitAudioManager.OnAudioBuffer
event type fromUnityEvent
to a plainevent
(#69). - Removed
MediaDeviceFilters
class. - Reduced minimum requirement to macOS 10.15 (#84).
VideoKit 0.0.15
- Added
MediaAsset.ToValue
method for creating Function prediction values from media assets. - Added
VideoKitAudioManager.OnAudioBuffer
event for receiving audio buffers from audio devices. - Added
VideoKitCameraManager.OnCameraImage
event for receiving camera images directly from the streaming camera device. - Added
VideoKitCameraManager.texture
property for accessing the camera preview texture. - Added
VideoKitCameraManager.pixelBuffer
property for accessing the camera preview pixel buffer. - Added
VideoKitCameraManager.humanTexture
property for accessing the camera human texture. - Added
VideoKitCameraManager.imageFeature
property for accessing the camera preview as an ML feature. - Added
VideoKitRecordButton.OnStartRecording
event. - Added
VideoKitRecordButton.OnStopRecording
event. - Fixed
MediaAsset.path
property containing invalid characters on Windows. - Fixed
MediaAsset.Share
task never completing when exception is raised on Android. - Fixed
MediaAsset.Share
failing for apps that use Vuforia on Android. - Fixed
MediaAsset.SaveToCameraRoll
method failing because of missing write permissions on older versions of Android. - Fixed
MediaAsset.FromFile
method failing on WebGL due to URL mishandling. - Fixed
CameraDevice.WhiteBalanceModeSupported
always returning false forWhiteBalanceMode.Continuous
on Android. - Fixed
CameraDevice.videoStabilizationMode
getter property causing hard crash on some Android devices. - Fixed
DllNotFoundException
when importing VideoKit in Linux editor. - Fixed rare crash due to frame rate setting when
CameraDevice.Discover
is invoked. - Fixed rare crash when recording is started when rendering with OpenGL ES3 on Android.
- Fixed rare crash when entering play mode in the Unity Editor because the app domain is reloaded.
- Removed
IMediaOutput
interface. - Removed
SampleBuffer
struct. UseAudioBuffer
struct instead. - Removed
VideoKitAudioManager.OnSampleBuffer
event. UseOnAudioBuffer
event instead. - Removed
CameraImage
parameter fromVideoKitCameraManager.OnCameraFrame
event.
VideoKit 0.0.14
- Added audio captioning using AI with the
AudioAsset.Caption
method. - Added ability to parse an arbitrary
struct
from text using AI with theTextAsset.To
method. - Added ability to pick images and videos from the camera roll with the
MediaAsset.FromCameraRoll<T>
method. - Added
MediaAsset
class for loading, inspecting, and sharing media. - Added
TextAsset
class for loading, inspecting, and extracting models from text. - Added
ImageAsset
class for loading, modifying, and sharing images. - Added
VideoAsset
class for loading, inspecting, and sharing videos. - Added
AudioAsset
class for loading, inspecting, and sharing audio. - Added
MediaRecorder
class to consolidate working with recorders. - Added
MediaFormat
enumeration for identifying and working with media formats. - Added
AudioDevice.Discover
static method for discovering available microphones. - Added
CameraDevice.Discover
static method for discovering available cameras. - Added
CameraDevice.exposureDuration
property to get the current camera exposure duration in seconds. - Added
CameraDevice.ISO
property to get the current camera exposure sensitivity. - Added
VideoKitProjectSettings
class for managing VideoKit settings in the current Unity project. - Added
VideoKitRecorder.frameRate
property for setting the frame rate of recorded GIF images. - Added
VideoKitRecordButton.recorder
property for getting and setting the recorder on which the button acts. - Added automatic camera pausing and resuming when app is suspended and resumed in
VideoKitCameraManager
. - Added native sharing support on macOS.
- Added native sharing support on WebGL for browsers that are WebShare compliant.
- Fixed
VideoKitRecorder.Resolution._240xAuto
,_720xAuto
, and_1080xAuto
constants resulting in incorrect resolutions. - Fixed visible artifacts when recording camera that only clears depth or doesn't clear at all (#32).
- Fixed camera permissions not being requested when calling
CameraDevice.CheckPermissions
on fresh Android app install. - Fixed
CameraDevice
preview stream being frozen in the Safari browser on macOS. - Fixed
CameraDevice
focus being lost when settingFocusMode.Locked
on Android. - Fixed
mimeType not supported
exception when creating aWEBMRecorder
in the Safari browser. - Fixed
std::bad_function_call
exception whenAudioDevice.StopRunning
is called on WebGL. - Fixed
CommitFrame
exception when recording audio to aWAV
file withVideoKitRecorder
class. - Fixed media preview in native share UI not showing when sharing an image or video on Android.
- Updated
VideoKitCameraManager.StartRunning
method to return aTask
that can be awaited. - Updated
VideoKitAudioManager.StartRunning
method to return aTask
that can be awaited. - Updated
VideoKitRecorder.StartRecording
method to return aTask
that can be awaited. - Updated
JPEGRecorder.FinishWriting
to return path to all recorded image files separated byPath.PathSeparator
character. - Refactored
IMediaDevice
interface toMediaDevice
class. - Refactored
MediaDeviceCriteria
class toMediaDeviceFilters
. - Refactored
DeviceLocation
enumeration toMediaDevice.Location
. - Refactored
PermissionStatus
enumeration toMediaDevice.PermissionStatus
. - Refactored
VideoKitCameraManager.Capabilities.MachineLearning
enumeration member toCapabilities.AI
. - Removed
IMediaRecorder
interface. UseMediaRecorder
class instead. - Removed
MP4Recorder
class. UseMediaRecorder.Create
withMediaFormat.MP4
instead. - Removed
HEVCRecorder
class. UseMediaRecorder.Create
withMediaFormat.HEVC
instead. - Removed
GIFRecorder
class. UseMediaRecorder.Create
withMediaFormat.GIF
instead. - Removed
WAVRecorder
class. UseMediaRecorder.Create
withMediaFormat.WAV
instead. - Removed
WEBMRecorder
class. UseMediaRecorder.Create
withMediaFormat.WEBM
instead. - Removed
JPEGRecorder
class. UseMediaRecorder.Create
withMediaFormat.JPEG
instead. - Removed
MediaDeviceQuery
class. UseAudioDevice.Discover
andCameraDevice.Discover
methods. - Removed
SharePayload
class. UseMediaAsset.Share
method instead. - Removed
SavePayload
class. UseMediaAsset.SaveToCameraRoll
method instead. - Removed
AudioSpectrumOutput
class. - Removed
IEquatable
interface inheritance fromMediaDevice
class. - Removed
AudioDevice.Equals
method as audio devices no longer define a custom equality method. - Removed
CameraDevice.Equals
method as camera devices no longer define a custom equality method. - Removed
VideoKitRecorder.frameDuration
property. UseVideoKitRecorder.frameRate
property instead. - Removed
VideoKitRecorder.Format
enumeration. UseMediaFormat
enumeration instead. - Removed
VideoKitRecordButton.OnTouchDown
event. - Removed
VideoKitRecordButton.OnTouchUp
event. - Updated top-level namespace from
NatML.VideoKit
toVideoKit
. - VideoKit now requires iOS 13+.
- VideoKit now requires macOS 11+.
VideoKit 0.0.13
VideoKit 0.0.12
VideoKit 0.0.11
- Added GPU acceleration for background removal capability in
VideoKitCameraManager
on Android. - Added
VideoKitCameraManager.frameRate
property for setting the camera preview frame rate. - Added
VideoKitRecordButton
UI prefab for building recording UIs similar to Instagram. - Added
VideoKitRecorder.Destination.Playback
enumeration member for immediately playing back recorded media. - Added help URLs to VideoKit components in the Unity inspector.
- Fixed
VideoKitCameraManager.device
property ignoring new values when the manager is not running. - Fixed sporadic crash when using
HumanTexture
capability withVideoKitCameraManager
. - Fixed crash when creating a
WEBMRecorder
with audio on WebGL. - Removed
VideoKitRecorder.OrientationMode
enumeration. - Removed
VideoKitRecorder.AspectMode
enumeration.