bitmovin-player-react-native 0.42.0 → 0.43.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -20,7 +20,7 @@ Pod::Spec.new do |s|
20
20
 
21
21
  s.swift_version = "5.10"
22
22
  s.dependency "React-Core"
23
- s.dependency "BitmovinPlayer", "3.90.0"
23
+ s.dependency "BitmovinPlayer", "3.92.0"
24
24
  s.ios.dependency "GoogleAds-IMA-iOS-SDK", "3.23.0"
25
25
  s.tvos.dependency "GoogleAds-IMA-tvOS-SDK", "4.13.0"
26
26
  end
@@ -105,6 +105,6 @@ dependencies {
105
105
  // Bitmovin
106
106
  implementation 'com.google.ads.interactivemedia.v3:interactivemedia:3.35.1'
107
107
  implementation 'com.google.android.gms:play-services-ads-identifier:18.0.1'
108
- implementation 'com.bitmovin.player:player:3.112.0+jason'
109
- implementation 'com.bitmovin.player:player-media-session:3.112.0+jason'
108
+ implementation 'com.bitmovin.player:player:3.115.0+jason'
109
+ implementation 'com.bitmovin.player:player-media-session:3.115.0+jason'
110
110
  }
@@ -1,4 +1,5 @@
1
1
  android.useAndroidX=true
2
+ # Also update example/android/gradle.properties and integration_test/android/gradle.properties when updating kotlin version.
2
3
  BitmovinPlayerReactNative_kotlinVersion=1.9.21
3
4
  BitmovinPlayerReactNative_minSdkVersion=21
4
5
  BitmovinPlayerReactNative_targetSdkVersion=35
@@ -37,6 +37,7 @@ import com.bitmovin.player.api.media.AdaptationConfig
37
37
  import com.bitmovin.player.api.media.MediaTrackRole
38
38
  import com.bitmovin.player.api.media.MediaType
39
39
  import com.bitmovin.player.api.media.audio.AudioTrack
40
+ import com.bitmovin.player.api.media.audio.quality.AudioQuality
40
41
  import com.bitmovin.player.api.media.subtitle.SubtitleTrack
41
42
  import com.bitmovin.player.api.media.thumbnail.Thumbnail
42
43
  import com.bitmovin.player.api.media.thumbnail.ThumbnailTrack
@@ -561,6 +562,19 @@ fun AudioTrack.toJson(): WritableMap = Arguments.createMap().apply {
561
562
  putString("identifier", id)
562
563
  putString("language", language)
563
564
  putArray("roles", roles.mapToReactArray { it.toJson() })
565
+ putArray("qualities", qualities.mapToReactArray { it.toJson() })
566
+ }
567
+
568
+ /**
569
+ * Converts any `AudioQuality` into its json representation.
570
+ */
571
+ fun AudioQuality.toJson(): WritableMap = Arguments.createMap().apply {
572
+ putString("id", id)
573
+ putString("label", label)
574
+ putInt("bitrate", bitrate)
575
+ putInt("averageBitrate", averageBitrate)
576
+ putInt("peakBitrate", peakBitrate)
577
+ putString("codec", codec)
564
578
  }
565
579
 
566
580
  /**
package/lib/index.d.mts CHANGED
@@ -585,6 +585,57 @@ interface VideoQuality {
585
585
  */
586
586
  width?: number;
587
587
  }
588
+ /**
589
+ * Quality definition of an audio representation.
590
+ *
591
+ * @platform Android
592
+ */
593
+ interface AudioQuality {
594
+ /**
595
+ * The id of the media quality.
596
+ */
597
+ id: string;
598
+ /**
599
+ * The label of the media quality that should be exposed to the user.
600
+ */
601
+ label?: string;
602
+ /**
603
+ * The bitrate in bits per second. This is the peak bitrate if known, or else the average bitrate
604
+ * if known, or else -1.
605
+ */
606
+ bitrate?: number;
607
+ /**
608
+ * The average bitrate in bits per second, or -1 if unknown or not applicable. The
609
+ * way in which this field is populated depends on the type of media to which the format
610
+ * corresponds:
611
+ *
612
+ * - DASH representations: Always -1.
613
+ * - HLS variants: The `AVERAGE-BANDWIDTH` attribute defined on the corresponding
614
+ * `EXT-X-STREAM-INF` tag in the multivariant playlist, or -1 if not present.
615
+ * - SmoothStreaming track elements: The `Bitrate` attribute defined on the
616
+ * corresponding `TrackElement` in the manifest, or -1 if not present.
617
+ * - Progressive container formats: Often -1, but may be populated with
618
+ * the average bitrate of the container if known.
619
+ */
620
+ averageBitrate?: number;
621
+ /**
622
+ * The peak bitrate in bits per second, or -1 if unknown or not applicable. The way
623
+ * in which this field is populated depends on the type of media to which the format corresponds:
624
+ *
625
+ * - DASH representations: The `@bandwidth` attribute of the corresponding
626
+ * `Representation` element in the manifest.
627
+ * - HLS variants: The `BANDWIDTH` attribute defined on the corresponding
628
+ * `EXT-X-STREAM-INF` tag.
629
+ * - SmoothStreaming track elements: Always -1.
630
+ * - Progressive container formats: Often -1, but may be populated with
631
+ * the peak bitrate of the container if known.
632
+ */
633
+ peakBitrate?: number;
634
+ /**
635
+ * The codec of the media quality.
636
+ */
637
+ codec?: string;
638
+ }
588
639
 
589
640
  /**
590
641
  * Represents an audio track for a video.
@@ -615,6 +666,12 @@ interface AudioTrack {
615
666
  * This property provides a unified way to understand track purposes (e.g., for accessibility) across platforms.
616
667
  */
617
668
  roles?: MediaTrackRole[];
669
+ /**
670
+ * A list of AudioQuality associated with this AudioTrack.
671
+ *
672
+ * @platform Android
673
+ */
674
+ qualities?: AudioQuality[];
618
675
  }
619
676
 
620
677
  interface NativeInstanceConfig {
@@ -4250,4 +4307,4 @@ declare class DebugConfig {
4250
4307
  static setDebugLoggingEnabled(value: boolean): Promise<void>;
4251
4308
  }
4252
4309
 
4253
- export { Ad, AdBreak, AdBreakFinishedEvent, AdBreakStartedEvent, AdClickedEvent, AdConfig, AdData, AdErrorEvent, AdFinishedEvent, AdItem, AdManifestLoadEvent, AdManifestLoadedEvent, AdQuartile, AdQuartileEvent, AdScheduledEvent, AdSkippedEvent, AdSource, AdSourceType, AdStartedEvent, AdaptationConfig, AdvertisingConfig, AnalyticsApi, AnalyticsConfig, AudioAddedEvent, AudioChangedEvent, AudioRemovedEvent, AudioSession, AudioSessionCategory, AudioTrack, BasePlayerViewProps, BitmovinCastManager, BitmovinCastManagerOptions, BitmovinNativeOfflineEventData, BufferApi, BufferConfig, BufferLevel, BufferLevels, BufferMediaTypeConfig, BufferType, CastAvailableEvent, CastPausedEvent, CastPayload, CastPlaybackFinishedEvent, CastPlayingEvent, CastStartEvent, CastStartedEvent, CastStoppedEvent, CastTimeUpdatedEvent, CastWaitingForDeviceEvent, CueEnterEvent, CueExitEvent, CustomDataConfig, CustomMessageHandler, CustomMessageHandlerProps, CustomUi, DebugConfig, DecoderConfig, DecoderContext, DecoderContextMediaType, DecoderPriorityProvider, DefaultMetadata, DestroyEvent, DownloadFinishedEvent, Drm, DrmConfig, ErrorEvent, Event, EventSource, FairplayConfig, ForceReuseVideoCodecReason, FullscreenDisabledEvent, FullscreenEnabledEvent, FullscreenEnterEvent, FullscreenExitEvent, FullscreenHandler, HttpRequest, HttpRequestType, HttpResponse, LiveConfig, LoadingState, MediaCodecInfo, MediaControlConfig, MediaTrackRole, MediaType, MutedEvent, Network, NetworkConfig, OfflineContentConfig, OfflineContentManager, OfflineContentManagerListener, OfflineContentOptionEntry, OfflineContentOptions, OfflineDownloadRequest, OfflineEvent, OfflineEventType, OfflineSourceOptions, OfflineState, OnCanceledEvent, OnCompletedEvent, OnDrmLicenseExpiredEvent, OnDrmLicenseUpdatedEvent, OnErrorEvent, OnOptionsAvailableEvent, OnProgressEvent, OnResumedEvent, OnSuspendedEvent, PausedEvent, PictureInPictureAvailabilityChangedEvent, PictureInPictureConfig, PictureInPictureEnterEvent, PictureInPictureEnteredEvent, PictureInPictureExitEvent, PictureInPictureExitedEvent, PlayEvent, PlaybackConfig, PlaybackFinishedEvent, PlaybackSpeedChangedEvent, Player, PlayerActiveEvent, PlayerConfig, PlayerErrorEvent, PlayerView, PlayerViewConfig, PlayerViewProps, PlayerWarningEvent, PlayingEvent, ReadyEvent, RemoteControlConfig, ScalingMode, SeekEvent, SeekPosition, SeekedEvent, SideLoadedSubtitleTrack, SmallScreenUi, Source, SourceConfig, SourceErrorEvent, SourceLoadEvent, SourceLoadedEvent, SourceMetadata, SourceOptions, SourceRemoteControlConfig, SourceType, SourceUnloadedEvent, SourceWarningEvent, StallEndedEvent, StallStartedEvent, StyleConfig, SubtitleAddedEvent, SubtitleChangedEvent, SubtitleFormat, SubtitleRemovedEvent, SubtitleTrack, SurfaceType, Thumbnail, TimeChangedEvent, TimeShiftEvent, TimeShiftedEvent, TimelineReferencePoint, TvUi, TweaksConfig, UiConfig, UnmutedEvent, UserInterfaceType, Variant, VideoDownloadQualityChangedEvent, VideoPlaybackQualityChangedEvent, VideoQuality, WebUiConfig, WidevineConfig, usePlayer };
4310
+ export { Ad, AdBreak, AdBreakFinishedEvent, AdBreakStartedEvent, AdClickedEvent, AdConfig, AdData, AdErrorEvent, AdFinishedEvent, AdItem, AdManifestLoadEvent, AdManifestLoadedEvent, AdQuartile, AdQuartileEvent, AdScheduledEvent, AdSkippedEvent, AdSource, AdSourceType, AdStartedEvent, AdaptationConfig, AdvertisingConfig, AnalyticsApi, AnalyticsConfig, AudioAddedEvent, AudioChangedEvent, AudioQuality, AudioRemovedEvent, AudioSession, AudioSessionCategory, AudioTrack, BasePlayerViewProps, BitmovinCastManager, BitmovinCastManagerOptions, BitmovinNativeOfflineEventData, BufferApi, BufferConfig, BufferLevel, BufferLevels, BufferMediaTypeConfig, BufferType, CastAvailableEvent, CastPausedEvent, CastPayload, CastPlaybackFinishedEvent, CastPlayingEvent, CastStartEvent, CastStartedEvent, CastStoppedEvent, CastTimeUpdatedEvent, CastWaitingForDeviceEvent, CueEnterEvent, CueExitEvent, CustomDataConfig, CustomMessageHandler, CustomMessageHandlerProps, CustomUi, DebugConfig, DecoderConfig, DecoderContext, DecoderContextMediaType, DecoderPriorityProvider, DefaultMetadata, DestroyEvent, DownloadFinishedEvent, Drm, DrmConfig, ErrorEvent, Event, EventSource, FairplayConfig, ForceReuseVideoCodecReason, FullscreenDisabledEvent, FullscreenEnabledEvent, FullscreenEnterEvent, FullscreenExitEvent, FullscreenHandler, HttpRequest, HttpRequestType, HttpResponse, LiveConfig, LoadingState, MediaCodecInfo, MediaControlConfig, MediaTrackRole, MediaType, MutedEvent, Network, NetworkConfig, OfflineContentConfig, OfflineContentManager, OfflineContentManagerListener, OfflineContentOptionEntry, OfflineContentOptions, OfflineDownloadRequest, OfflineEvent, OfflineEventType, OfflineSourceOptions, OfflineState, OnCanceledEvent, OnCompletedEvent, OnDrmLicenseExpiredEvent, OnDrmLicenseUpdatedEvent, OnErrorEvent, OnOptionsAvailableEvent, OnProgressEvent, OnResumedEvent, OnSuspendedEvent, PausedEvent, PictureInPictureAvailabilityChangedEvent, PictureInPictureConfig, PictureInPictureEnterEvent, PictureInPictureEnteredEvent, PictureInPictureExitEvent, PictureInPictureExitedEvent, PlayEvent, PlaybackConfig, PlaybackFinishedEvent, PlaybackSpeedChangedEvent, Player, PlayerActiveEvent, PlayerConfig, PlayerErrorEvent, PlayerView, PlayerViewConfig, PlayerViewProps, PlayerWarningEvent, PlayingEvent, ReadyEvent, RemoteControlConfig, ScalingMode, SeekEvent, SeekPosition, SeekedEvent, SideLoadedSubtitleTrack, SmallScreenUi, Source, SourceConfig, SourceErrorEvent, SourceLoadEvent, SourceLoadedEvent, SourceMetadata, SourceOptions, SourceRemoteControlConfig, SourceType, SourceUnloadedEvent, SourceWarningEvent, StallEndedEvent, StallStartedEvent, StyleConfig, SubtitleAddedEvent, SubtitleChangedEvent, SubtitleFormat, SubtitleRemovedEvent, SubtitleTrack, SurfaceType, Thumbnail, TimeChangedEvent, TimeShiftEvent, TimeShiftedEvent, TimelineReferencePoint, TvUi, TweaksConfig, UiConfig, UnmutedEvent, UserInterfaceType, Variant, VideoDownloadQualityChangedEvent, VideoPlaybackQualityChangedEvent, VideoQuality, WebUiConfig, WidevineConfig, usePlayer };
package/lib/index.d.ts CHANGED
@@ -585,6 +585,57 @@ interface VideoQuality {
585
585
  */
586
586
  width?: number;
587
587
  }
588
+ /**
589
+ * Quality definition of an audio representation.
590
+ *
591
+ * @platform Android
592
+ */
593
+ interface AudioQuality {
594
+ /**
595
+ * The id of the media quality.
596
+ */
597
+ id: string;
598
+ /**
599
+ * The label of the media quality that should be exposed to the user.
600
+ */
601
+ label?: string;
602
+ /**
603
+ * The bitrate in bits per second. This is the peak bitrate if known, or else the average bitrate
604
+ * if known, or else -1.
605
+ */
606
+ bitrate?: number;
607
+ /**
608
+ * The average bitrate in bits per second, or -1 if unknown or not applicable. The
609
+ * way in which this field is populated depends on the type of media to which the format
610
+ * corresponds:
611
+ *
612
+ * - DASH representations: Always -1.
613
+ * - HLS variants: The `AVERAGE-BANDWIDTH` attribute defined on the corresponding
614
+ * `EXT-X-STREAM-INF` tag in the multivariant playlist, or -1 if not present.
615
+ * - SmoothStreaming track elements: The `Bitrate` attribute defined on the
616
+ * corresponding `TrackElement` in the manifest, or -1 if not present.
617
+ * - Progressive container formats: Often -1, but may be populated with
618
+ * the average bitrate of the container if known.
619
+ */
620
+ averageBitrate?: number;
621
+ /**
622
+ * The peak bitrate in bits per second, or -1 if unknown or not applicable. The way
623
+ * in which this field is populated depends on the type of media to which the format corresponds:
624
+ *
625
+ * - DASH representations: The `@bandwidth` attribute of the corresponding
626
+ * `Representation` element in the manifest.
627
+ * - HLS variants: The `BANDWIDTH` attribute defined on the corresponding
628
+ * `EXT-X-STREAM-INF` tag.
629
+ * - SmoothStreaming track elements: Always -1.
630
+ * - Progressive container formats: Often -1, but may be populated with
631
+ * the peak bitrate of the container if known.
632
+ */
633
+ peakBitrate?: number;
634
+ /**
635
+ * The codec of the media quality.
636
+ */
637
+ codec?: string;
638
+ }
588
639
 
589
640
  /**
590
641
  * Represents an audio track for a video.
@@ -615,6 +666,12 @@ interface AudioTrack {
615
666
  * This property provides a unified way to understand track purposes (e.g., for accessibility) across platforms.
616
667
  */
617
668
  roles?: MediaTrackRole[];
669
+ /**
670
+ * A list of AudioQuality associated with this AudioTrack.
671
+ *
672
+ * @platform Android
673
+ */
674
+ qualities?: AudioQuality[];
618
675
  }
619
676
 
620
677
  interface NativeInstanceConfig {
@@ -4250,4 +4307,4 @@ declare class DebugConfig {
4250
4307
  static setDebugLoggingEnabled(value: boolean): Promise<void>;
4251
4308
  }
4252
4309
 
4253
- export { Ad, AdBreak, AdBreakFinishedEvent, AdBreakStartedEvent, AdClickedEvent, AdConfig, AdData, AdErrorEvent, AdFinishedEvent, AdItem, AdManifestLoadEvent, AdManifestLoadedEvent, AdQuartile, AdQuartileEvent, AdScheduledEvent, AdSkippedEvent, AdSource, AdSourceType, AdStartedEvent, AdaptationConfig, AdvertisingConfig, AnalyticsApi, AnalyticsConfig, AudioAddedEvent, AudioChangedEvent, AudioRemovedEvent, AudioSession, AudioSessionCategory, AudioTrack, BasePlayerViewProps, BitmovinCastManager, BitmovinCastManagerOptions, BitmovinNativeOfflineEventData, BufferApi, BufferConfig, BufferLevel, BufferLevels, BufferMediaTypeConfig, BufferType, CastAvailableEvent, CastPausedEvent, CastPayload, CastPlaybackFinishedEvent, CastPlayingEvent, CastStartEvent, CastStartedEvent, CastStoppedEvent, CastTimeUpdatedEvent, CastWaitingForDeviceEvent, CueEnterEvent, CueExitEvent, CustomDataConfig, CustomMessageHandler, CustomMessageHandlerProps, CustomUi, DebugConfig, DecoderConfig, DecoderContext, DecoderContextMediaType, DecoderPriorityProvider, DefaultMetadata, DestroyEvent, DownloadFinishedEvent, Drm, DrmConfig, ErrorEvent, Event, EventSource, FairplayConfig, ForceReuseVideoCodecReason, FullscreenDisabledEvent, FullscreenEnabledEvent, FullscreenEnterEvent, FullscreenExitEvent, FullscreenHandler, HttpRequest, HttpRequestType, HttpResponse, LiveConfig, LoadingState, MediaCodecInfo, MediaControlConfig, MediaTrackRole, MediaType, MutedEvent, Network, NetworkConfig, OfflineContentConfig, OfflineContentManager, OfflineContentManagerListener, OfflineContentOptionEntry, OfflineContentOptions, OfflineDownloadRequest, OfflineEvent, OfflineEventType, OfflineSourceOptions, OfflineState, OnCanceledEvent, OnCompletedEvent, OnDrmLicenseExpiredEvent, OnDrmLicenseUpdatedEvent, OnErrorEvent, OnOptionsAvailableEvent, OnProgressEvent, OnResumedEvent, OnSuspendedEvent, PausedEvent, PictureInPictureAvailabilityChangedEvent, PictureInPictureConfig, PictureInPictureEnterEvent, PictureInPictureEnteredEvent, PictureInPictureExitEvent, PictureInPictureExitedEvent, PlayEvent, PlaybackConfig, PlaybackFinishedEvent, PlaybackSpeedChangedEvent, Player, PlayerActiveEvent, PlayerConfig, PlayerErrorEvent, PlayerView, PlayerViewConfig, PlayerViewProps, PlayerWarningEvent, PlayingEvent, ReadyEvent, RemoteControlConfig, ScalingMode, SeekEvent, SeekPosition, SeekedEvent, SideLoadedSubtitleTrack, SmallScreenUi, Source, SourceConfig, SourceErrorEvent, SourceLoadEvent, SourceLoadedEvent, SourceMetadata, SourceOptions, SourceRemoteControlConfig, SourceType, SourceUnloadedEvent, SourceWarningEvent, StallEndedEvent, StallStartedEvent, StyleConfig, SubtitleAddedEvent, SubtitleChangedEvent, SubtitleFormat, SubtitleRemovedEvent, SubtitleTrack, SurfaceType, Thumbnail, TimeChangedEvent, TimeShiftEvent, TimeShiftedEvent, TimelineReferencePoint, TvUi, TweaksConfig, UiConfig, UnmutedEvent, UserInterfaceType, Variant, VideoDownloadQualityChangedEvent, VideoPlaybackQualityChangedEvent, VideoQuality, WebUiConfig, WidevineConfig, usePlayer };
4310
+ export { Ad, AdBreak, AdBreakFinishedEvent, AdBreakStartedEvent, AdClickedEvent, AdConfig, AdData, AdErrorEvent, AdFinishedEvent, AdItem, AdManifestLoadEvent, AdManifestLoadedEvent, AdQuartile, AdQuartileEvent, AdScheduledEvent, AdSkippedEvent, AdSource, AdSourceType, AdStartedEvent, AdaptationConfig, AdvertisingConfig, AnalyticsApi, AnalyticsConfig, AudioAddedEvent, AudioChangedEvent, AudioQuality, AudioRemovedEvent, AudioSession, AudioSessionCategory, AudioTrack, BasePlayerViewProps, BitmovinCastManager, BitmovinCastManagerOptions, BitmovinNativeOfflineEventData, BufferApi, BufferConfig, BufferLevel, BufferLevels, BufferMediaTypeConfig, BufferType, CastAvailableEvent, CastPausedEvent, CastPayload, CastPlaybackFinishedEvent, CastPlayingEvent, CastStartEvent, CastStartedEvent, CastStoppedEvent, CastTimeUpdatedEvent, CastWaitingForDeviceEvent, CueEnterEvent, CueExitEvent, CustomDataConfig, CustomMessageHandler, CustomMessageHandlerProps, CustomUi, DebugConfig, DecoderConfig, DecoderContext, DecoderContextMediaType, DecoderPriorityProvider, DefaultMetadata, DestroyEvent, DownloadFinishedEvent, Drm, DrmConfig, ErrorEvent, Event, EventSource, FairplayConfig, ForceReuseVideoCodecReason, FullscreenDisabledEvent, FullscreenEnabledEvent, FullscreenEnterEvent, FullscreenExitEvent, FullscreenHandler, HttpRequest, HttpRequestType, HttpResponse, LiveConfig, LoadingState, MediaCodecInfo, MediaControlConfig, MediaTrackRole, MediaType, MutedEvent, Network, NetworkConfig, OfflineContentConfig, OfflineContentManager, OfflineContentManagerListener, OfflineContentOptionEntry, OfflineContentOptions, OfflineDownloadRequest, OfflineEvent, OfflineEventType, OfflineSourceOptions, OfflineState, OnCanceledEvent, OnCompletedEvent, OnDrmLicenseExpiredEvent, OnDrmLicenseUpdatedEvent, OnErrorEvent, OnOptionsAvailableEvent, OnProgressEvent, OnResumedEvent, OnSuspendedEvent, PausedEvent, PictureInPictureAvailabilityChangedEvent, PictureInPictureConfig, PictureInPictureEnterEvent, PictureInPictureEnteredEvent, PictureInPictureExitEvent, PictureInPictureExitedEvent, PlayEvent, PlaybackConfig, PlaybackFinishedEvent, PlaybackSpeedChangedEvent, Player, PlayerActiveEvent, PlayerConfig, PlayerErrorEvent, PlayerView, PlayerViewConfig, PlayerViewProps, PlayerWarningEvent, PlayingEvent, ReadyEvent, RemoteControlConfig, ScalingMode, SeekEvent, SeekPosition, SeekedEvent, SideLoadedSubtitleTrack, SmallScreenUi, Source, SourceConfig, SourceErrorEvent, SourceLoadEvent, SourceLoadedEvent, SourceMetadata, SourceOptions, SourceRemoteControlConfig, SourceType, SourceUnloadedEvent, SourceWarningEvent, StallEndedEvent, StallStartedEvent, StyleConfig, SubtitleAddedEvent, SubtitleChangedEvent, SubtitleFormat, SubtitleRemovedEvent, SubtitleTrack, SurfaceType, Thumbnail, TimeChangedEvent, TimeShiftEvent, TimeShiftedEvent, TimelineReferencePoint, TvUi, TweaksConfig, UiConfig, UnmutedEvent, UserInterfaceType, Variant, VideoDownloadQualityChangedEvent, VideoPlaybackQualityChangedEvent, VideoQuality, WebUiConfig, WidevineConfig, usePlayer };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bitmovin-player-react-native",
3
- "version": "0.42.0",
3
+ "version": "0.43.0",
4
4
  "description": "Official React Native bindings for Bitmovin's mobile Player SDKs.",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib/index.mjs",
package/src/audioTrack.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import { MediaTrackRole } from './mediaTrackRole';
2
+ import { AudioQuality } from './media';
2
3
 
3
4
  /**
4
5
  * Represents an audio track for a video.
@@ -29,4 +30,10 @@ export interface AudioTrack {
29
30
  * This property provides a unified way to understand track purposes (e.g., for accessibility) across platforms.
30
31
  */
31
32
  roles?: MediaTrackRole[];
33
+ /**
34
+ * A list of AudioQuality associated with this AudioTrack.
35
+ *
36
+ * @platform Android
37
+ */
38
+ qualities?: AudioQuality[];
32
39
  }
package/src/media.ts CHANGED
@@ -31,3 +31,55 @@ export interface VideoQuality {
31
31
  */
32
32
  width?: number;
33
33
  }
34
+
35
+ /**
36
+ * Quality definition of an audio representation.
37
+ *
38
+ * @platform Android
39
+ */
40
+ export interface AudioQuality {
41
+ /**
42
+ * The id of the media quality.
43
+ */
44
+ id: string;
45
+ /**
46
+ * The label of the media quality that should be exposed to the user.
47
+ */
48
+ label?: string;
49
+ /**
50
+ * The bitrate in bits per second. This is the peak bitrate if known, or else the average bitrate
51
+ * if known, or else -1.
52
+ */
53
+ bitrate?: number;
54
+ /**
55
+ * The average bitrate in bits per second, or -1 if unknown or not applicable. The
56
+ * way in which this field is populated depends on the type of media to which the format
57
+ * corresponds:
58
+ *
59
+ * - DASH representations: Always -1.
60
+ * - HLS variants: The `AVERAGE-BANDWIDTH` attribute defined on the corresponding
61
+ * `EXT-X-STREAM-INF` tag in the multivariant playlist, or -1 if not present.
62
+ * - SmoothStreaming track elements: The `Bitrate` attribute defined on the
63
+ * corresponding `TrackElement` in the manifest, or -1 if not present.
64
+ * - Progressive container formats: Often -1, but may be populated with
65
+ * the average bitrate of the container if known.
66
+ */
67
+ averageBitrate?: number;
68
+ /**
69
+ * The peak bitrate in bits per second, or -1 if unknown or not applicable. The way
70
+ * in which this field is populated depends on the type of media to which the format corresponds:
71
+ *
72
+ * - DASH representations: The `@bandwidth` attribute of the corresponding
73
+ * `Representation` element in the manifest.
74
+ * - HLS variants: The `BANDWIDTH` attribute defined on the corresponding
75
+ * `EXT-X-STREAM-INF` tag.
76
+ * - SmoothStreaming track elements: Always -1.
77
+ * - Progressive container formats: Often -1, but may be populated with
78
+ * the peak bitrate of the container if known.
79
+ */
80
+ peakBitrate?: number;
81
+ /**
82
+ * The codec of the media quality.
83
+ */
84
+ codec?: string;
85
+ }