react-native-audio-api 0.13.2 → 0.13.4
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.
- package/RNAudioAPI.podspec +53 -16
- package/android/src/main/java/com/swmansion/audioapi/system/AudioEvent.kt +1 -0
- package/common/cpp/audioapi/HostObjects/sources/AudioFileSourceNodeHostObject.cpp +8 -2
- package/common/cpp/audioapi/HostObjects/sources/AudioFileSourceNodeHostObject.h +1 -0
- package/common/cpp/audioapi/HostObjects/utils/JsEnumParser.cpp +2 -0
- package/common/cpp/audioapi/core/sources/AudioFileSourceNode.cpp +15 -1
- package/common/cpp/audioapi/core/sources/AudioFileSourceNode.h +19 -0
- package/common/cpp/audioapi/core/sources/RecorderAdapterNode.cpp +12 -1
- package/common/cpp/audioapi/core/sources/RecorderAdapterNode.h +7 -0
- package/common/cpp/audioapi/core/utils/param/ParamQueueBase.hpp +1 -1
- package/common/cpp/audioapi/core/utils/param/ParamRenderQueue.cpp +35 -12
- package/common/cpp/audioapi/core/utils/param/ParamRenderQueue.h +9 -0
- package/common/cpp/audioapi/core/utils/worklets/SafeIncludes.h +3 -3
- package/common/cpp/audioapi/core/utils/worklets/WorkletsRunner.cpp +2 -2
- package/common/cpp/audioapi/events/AudioEvent.h +1 -0
- package/common/cpp/audioapi/events/AudioEventPayload.h +11 -0
- package/common/cpp/audioapi/events/AudioEventPayloadMapping.h +1 -0
- package/common/cpp/audioapi/utils/events/BufferingStateDispatcher.cpp +49 -0
- package/common/cpp/audioapi/utils/events/BufferingStateDispatcher.h +42 -0
- package/ios/audioapi/ios/core/IOSAudioRecorder.h +12 -1
- package/ios/audioapi/ios/core/IOSAudioRecorder.mm +179 -63
- package/ios/audioapi/ios/core/NativeAudioRecorder.h +2 -0
- package/ios/audioapi/ios/core/NativeAudioRecorder.m +37 -12
- package/ios/audioapi/ios/core/utils/IOSFileWriter.h +3 -0
- package/ios/audioapi/ios/core/utils/IOSFileWriter.mm +17 -0
- package/ios/audioapi/ios/core/utils/IOSRotatingFileWriter.h +3 -0
- package/ios/audioapi/ios/core/utils/IOSRotatingFileWriter.mm +21 -0
- package/ios/audioapi/ios/system/AudioEngine.h +2 -1
- package/ios/audioapi/ios/system/AudioEngine.mm +49 -23
- package/ios/audioapi/ios/system/SystemNotificationManager.mm +10 -0
- package/lib/commonjs/Audio/Audio.js +30 -3
- package/lib/commonjs/Audio/Audio.js.map +1 -1
- package/lib/commonjs/Audio/Audio.web.js +21 -3
- package/lib/commonjs/Audio/Audio.web.js.map +1 -1
- package/lib/commonjs/Audio/AudioFileSourceNode.js +20 -0
- package/lib/commonjs/Audio/AudioFileSourceNode.js.map +1 -1
- package/lib/commonjs/Audio/controls/AudioControls.js +90 -94
- package/lib/commonjs/Audio/controls/AudioControls.js.map +1 -1
- package/lib/commonjs/Audio/controls/audioControlUtils.js +48 -18
- package/lib/commonjs/Audio/controls/audioControlUtils.js.map +1 -1
- package/lib/commonjs/Audio/index.js +7 -0
- package/lib/commonjs/Audio/index.js.map +1 -1
- package/lib/commonjs/Audio/utils.js +16 -5
- package/lib/commonjs/Audio/utils.js.map +1 -1
- package/lib/commonjs/AudioAPIModule/AudioAPIModule.js +1 -1
- package/lib/commonjs/core/AudioDecoder.js +4 -1
- package/lib/commonjs/core/AudioDecoder.js.map +1 -1
- package/lib/commonjs/core/AudioParam.js +1 -0
- package/lib/commonjs/core/AudioParam.js.map +1 -1
- package/lib/module/Audio/Audio.js +30 -3
- package/lib/module/Audio/Audio.js.map +1 -1
- package/lib/module/Audio/Audio.web.js +21 -3
- package/lib/module/Audio/Audio.web.js.map +1 -1
- package/lib/module/Audio/AudioFileSourceNode.js +20 -0
- package/lib/module/Audio/AudioFileSourceNode.js.map +1 -1
- package/lib/module/Audio/controls/AudioControls.js +92 -96
- package/lib/module/Audio/controls/AudioControls.js.map +1 -1
- package/lib/module/Audio/controls/audioControlUtils.js +48 -19
- package/lib/module/Audio/controls/audioControlUtils.js.map +1 -1
- package/lib/module/Audio/index.js +1 -0
- package/lib/module/Audio/index.js.map +1 -1
- package/lib/module/Audio/utils.js +15 -5
- package/lib/module/Audio/utils.js.map +1 -1
- package/lib/module/AudioAPIModule/AudioAPIModule.js +1 -1
- package/lib/module/core/AudioDecoder.js +4 -1
- package/lib/module/core/AudioDecoder.js.map +1 -1
- package/lib/module/core/AudioParam.js +1 -0
- package/lib/module/core/AudioParam.js.map +1 -1
- package/lib/typescript/Audio/Audio.d.ts.map +1 -1
- package/lib/typescript/Audio/Audio.web.d.ts.map +1 -1
- package/lib/typescript/Audio/AudioFileSourceNode.d.ts +2 -0
- package/lib/typescript/Audio/AudioFileSourceNode.d.ts.map +1 -1
- package/lib/typescript/Audio/controls/AudioControls.d.ts.map +1 -1
- package/lib/typescript/Audio/controls/audioControlUtils.d.ts +11 -4
- package/lib/typescript/Audio/controls/audioControlUtils.d.ts.map +1 -1
- package/lib/typescript/Audio/index.d.ts +1 -0
- package/lib/typescript/Audio/index.d.ts.map +1 -1
- package/lib/typescript/Audio/types.d.ts +15 -1
- package/lib/typescript/Audio/types.d.ts.map +1 -1
- package/lib/typescript/Audio/utils.d.ts +2 -1
- package/lib/typescript/Audio/utils.d.ts.map +1 -1
- package/lib/typescript/core/AudioDecoder.d.ts.map +1 -1
- package/lib/typescript/core/AudioParam.d.ts.map +1 -1
- package/lib/typescript/events/types.d.ts +5 -0
- package/lib/typescript/events/types.d.ts.map +1 -1
- package/lib/typescript/jsi-interfaces.d.ts +1 -0
- package/lib/typescript/jsi-interfaces.d.ts.map +1 -1
- package/package.json +8 -8
- package/scripts/download-prebuilt-binaries.sh +94 -6
- package/scripts/validate-worklets-version.js +1 -1
- package/src/Audio/Audio.tsx +38 -2
- package/src/Audio/Audio.web.tsx +26 -2
- package/src/Audio/AudioFileSourceNode.ts +28 -0
- package/src/Audio/controls/AudioControls.tsx +117 -116
- package/src/Audio/controls/audioControlUtils.ts +63 -31
- package/src/Audio/index.ts +1 -0
- package/src/Audio/types.ts +15 -1
- package/src/Audio/utils.ts +20 -2
- package/src/AudioAPIModule/AudioAPIModule.ts +1 -1
- package/src/core/AudioDecoder.ts +5 -3
- package/src/core/AudioParam.ts +1 -0
- package/src/events/types.ts +6 -0
- package/src/jsi-interfaces.ts +1 -0
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import React, { useCallback, useMemo, useRef, useState } from 'react';
|
|
4
|
-
import { ActivityIndicator, Image, Platform, Pressable, StyleSheet, Text, View } from 'react-native';
|
|
5
|
-
import { Gesture, GestureDetector } from 'react-native-gesture-handler';
|
|
6
|
-
import Animated, { useAnimatedRef, useSharedValue } from 'react-native-reanimated';
|
|
4
|
+
import { ActivityIndicator, Animated, Image, PanResponder, Platform, Pressable, StyleSheet, Text, View } from 'react-native';
|
|
7
5
|
import { useAudioTagContext } from "../AudioTagContext.js";
|
|
8
|
-
import {
|
|
6
|
+
import { isPlaybackActive } from "../utils.js";
|
|
7
|
+
import { formatTime, timeFromLocationX, useBufferingSweep, useExpandableTrackHeight } from "./audioControlUtils.js";
|
|
9
8
|
import PlayIcon from './icons/play.png';
|
|
10
9
|
import PauseIcon from './icons/pause.png';
|
|
11
10
|
import VolumeIcon from './icons/speaker.png';
|
|
@@ -14,7 +13,9 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
14
13
|
const TRACK_BAR_HEIGHT = 12;
|
|
15
14
|
const TRACK_BAR_HEIGHT_PRESSED = 18;
|
|
16
15
|
const TRACK_BAR_ANIM_MS = 150;
|
|
17
|
-
const
|
|
16
|
+
const BUFFERING_SWEEP_MS = 1100;
|
|
17
|
+
const BUFFERING_SWEEP_WIDTH_RATIO = 0.35;
|
|
18
|
+
const BUFFERING_SWEEP_SLICE_OPACITIES = [0.04, 0.18, 0.45, 0.6, 0.45, 0.18, 0.04];
|
|
18
19
|
const AudioControls = () => {
|
|
19
20
|
const {
|
|
20
21
|
ready,
|
|
@@ -29,72 +30,60 @@ const AudioControls = () => {
|
|
|
29
30
|
} = useAudioTagContext();
|
|
30
31
|
const progressTrackAnim = useExpandableTrackHeight(TRACK_BAR_HEIGHT, TRACK_BAR_HEIGHT_PRESSED, TRACK_BAR_ANIM_MS);
|
|
31
32
|
const [scrubTime, setScrubTime] = useState(null);
|
|
32
|
-
const
|
|
33
|
-
const
|
|
34
|
-
const
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
}).onEnd(e => {
|
|
73
|
-
onEnd(e.x);
|
|
74
|
-
}).onFinalize((_e, success) => {
|
|
75
|
-
if (!success) {
|
|
76
|
-
onCancel();
|
|
77
|
-
}
|
|
78
|
-
});
|
|
79
|
-
const tapGesture = Gesture.Tap().runOnJS(true).maxDistance(14).onEnd((e, success) => {
|
|
80
|
-
if (success) {
|
|
81
|
-
onTapSeek(e.x);
|
|
82
|
-
}
|
|
83
|
-
});
|
|
84
|
-
return Gesture.Race(panGesture, tapGesture);
|
|
85
|
-
}, [onStart, onUpdate, onEnd, onCancel, onTapSeek]);
|
|
33
|
+
const [trackWidth, setTrackWidth] = useState(0);
|
|
34
|
+
const isBuffering = playbackState === 'buffering';
|
|
35
|
+
const bufferingSweepStyle = useBufferingSweep(isBuffering, trackWidth, BUFFERING_SWEEP_WIDTH_RATIO, BUFFERING_SWEEP_MS);
|
|
36
|
+
const scrub = useRef({
|
|
37
|
+
startX: 0,
|
|
38
|
+
trackWidth: 0,
|
|
39
|
+
duration,
|
|
40
|
+
seekToTime,
|
|
41
|
+
expand: progressTrackAnim.expand,
|
|
42
|
+
collapse: progressTrackAnim.collapse
|
|
43
|
+
});
|
|
44
|
+
scrub.current.duration = duration;
|
|
45
|
+
scrub.current.seekToTime = seekToTime;
|
|
46
|
+
scrub.current.expand = progressTrackAnim.expand;
|
|
47
|
+
scrub.current.collapse = progressTrackAnim.collapse;
|
|
48
|
+
const panResponder = useMemo(() => PanResponder.create({
|
|
49
|
+
onStartShouldSetPanResponder: () => true,
|
|
50
|
+
onMoveShouldSetPanResponder: () => true,
|
|
51
|
+
onPanResponderTerminationRequest: () => false,
|
|
52
|
+
onPanResponderGrant: event => {
|
|
53
|
+
const s = scrub.current;
|
|
54
|
+
s.startX = event.nativeEvent.locationX;
|
|
55
|
+
s.expand();
|
|
56
|
+
setScrubTime(timeFromLocationX(s.startX, s.trackWidth, s.duration));
|
|
57
|
+
},
|
|
58
|
+
onPanResponderMove: (_event, gestureState) => {
|
|
59
|
+
const s = scrub.current;
|
|
60
|
+
setScrubTime(timeFromLocationX(s.startX + gestureState.dx, s.trackWidth, s.duration));
|
|
61
|
+
},
|
|
62
|
+
onPanResponderRelease: (_event, gestureState) => {
|
|
63
|
+
const s = scrub.current;
|
|
64
|
+
s.seekToTime(timeFromLocationX(s.startX + gestureState.dx, s.trackWidth, s.duration));
|
|
65
|
+
s.collapse();
|
|
66
|
+
setScrubTime(null);
|
|
67
|
+
},
|
|
68
|
+
onPanResponderTerminate: () => {
|
|
69
|
+
scrub.current.collapse();
|
|
70
|
+
setScrubTime(null);
|
|
71
|
+
}
|
|
72
|
+
}), []);
|
|
86
73
|
const onPlayPausePress = useCallback(() => {
|
|
87
|
-
if (playbackState
|
|
74
|
+
if (isPlaybackActive(playbackState)) {
|
|
88
75
|
pause();
|
|
89
76
|
} else {
|
|
90
77
|
play();
|
|
91
78
|
}
|
|
92
79
|
}, [playbackState, pause, play]);
|
|
93
|
-
const onProgressTrackLayout = useCallback(
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
}
|
|
97
|
-
|
|
80
|
+
const onProgressTrackLayout = useCallback(event => {
|
|
81
|
+
const {
|
|
82
|
+
width
|
|
83
|
+
} = event.nativeEvent.layout;
|
|
84
|
+
scrub.current.trackWidth = width;
|
|
85
|
+
setTrackWidth(width);
|
|
86
|
+
}, []);
|
|
98
87
|
if (!ready) {
|
|
99
88
|
return /*#__PURE__*/_jsx(View, {
|
|
100
89
|
style: styles.container,
|
|
@@ -113,53 +102,45 @@ const AudioControls = () => {
|
|
|
113
102
|
children: [/*#__PURE__*/_jsx(Pressable, {
|
|
114
103
|
style: styles.playPause,
|
|
115
104
|
onPress: onPlayPausePress,
|
|
116
|
-
children: playbackState
|
|
105
|
+
children: isPlaybackActive(playbackState) ? /*#__PURE__*/_jsx(Image, {
|
|
117
106
|
source: PauseIcon,
|
|
118
|
-
style:
|
|
119
|
-
width: 24,
|
|
120
|
-
height: 24
|
|
121
|
-
}
|
|
107
|
+
style: styles.icon
|
|
122
108
|
}) : /*#__PURE__*/_jsx(Image, {
|
|
123
109
|
source: PlayIcon,
|
|
124
|
-
style:
|
|
125
|
-
width: 24,
|
|
126
|
-
height: 24
|
|
127
|
-
}
|
|
110
|
+
style: styles.icon
|
|
128
111
|
})
|
|
129
112
|
}), /*#__PURE__*/_jsxs(Text, {
|
|
130
113
|
style: styles.timeText,
|
|
131
114
|
children: [formatTime(displayTime), " / ", formatTime(duration)]
|
|
132
|
-
}), /*#__PURE__*/_jsx(
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
style: styles.
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
115
|
+
}), /*#__PURE__*/_jsx(View, {
|
|
116
|
+
onLayout: onProgressTrackLayout,
|
|
117
|
+
style: styles.progressTrack,
|
|
118
|
+
...panResponder.panHandlers,
|
|
119
|
+
children: /*#__PURE__*/_jsxs(Animated.View, {
|
|
120
|
+
style: [styles.trackInner, progressTrackAnim.animatedStyle],
|
|
121
|
+
children: [/*#__PURE__*/_jsx(View, {
|
|
122
|
+
style: [styles.trackFill, {
|
|
123
|
+
width: `${progress * 100}%`
|
|
124
|
+
}]
|
|
125
|
+
}), isBuffering && /*#__PURE__*/_jsx(Animated.View, {
|
|
126
|
+
pointerEvents: "none",
|
|
127
|
+
style: [styles.bufferingSweep, bufferingSweepStyle],
|
|
128
|
+
children: BUFFERING_SWEEP_SLICE_OPACITIES.map((opacity, index) => /*#__PURE__*/_jsx(View, {
|
|
129
|
+
style: [styles.bufferingSweepSlice, {
|
|
130
|
+
opacity
|
|
144
131
|
}]
|
|
145
|
-
})
|
|
146
|
-
})
|
|
132
|
+
}, index))
|
|
133
|
+
})]
|
|
147
134
|
})
|
|
148
135
|
}), /*#__PURE__*/_jsx(Pressable, {
|
|
149
136
|
style: styles.volumeIcon,
|
|
150
137
|
onPress: () => setMuted(!muted),
|
|
151
138
|
children: muted ? /*#__PURE__*/_jsx(Image, {
|
|
152
139
|
source: MuteIcon,
|
|
153
|
-
style:
|
|
154
|
-
width: 24,
|
|
155
|
-
height: 24
|
|
156
|
-
}
|
|
140
|
+
style: styles.icon
|
|
157
141
|
}) : /*#__PURE__*/_jsx(Image, {
|
|
158
142
|
source: VolumeIcon,
|
|
159
|
-
style:
|
|
160
|
-
width: 24,
|
|
161
|
-
height: 24
|
|
162
|
-
}
|
|
143
|
+
style: styles.icon
|
|
163
144
|
})
|
|
164
145
|
})]
|
|
165
146
|
})
|
|
@@ -195,6 +176,10 @@ const styles = StyleSheet.create({
|
|
|
195
176
|
flexDirection: 'row',
|
|
196
177
|
alignItems: 'center'
|
|
197
178
|
},
|
|
179
|
+
icon: {
|
|
180
|
+
width: 24,
|
|
181
|
+
height: 24
|
|
182
|
+
},
|
|
198
183
|
playPause: {
|
|
199
184
|
padding: 4,
|
|
200
185
|
marginRight: 12
|
|
@@ -220,6 +205,17 @@ const styles = StyleSheet.create({
|
|
|
220
205
|
height: '100%',
|
|
221
206
|
backgroundColor: '#000'
|
|
222
207
|
},
|
|
208
|
+
bufferingSweep: {
|
|
209
|
+
position: 'absolute',
|
|
210
|
+
top: 0,
|
|
211
|
+
bottom: 0,
|
|
212
|
+
left: 0,
|
|
213
|
+
flexDirection: 'row'
|
|
214
|
+
},
|
|
215
|
+
bufferingSweepSlice: {
|
|
216
|
+
flex: 1,
|
|
217
|
+
backgroundColor: '#000'
|
|
218
|
+
},
|
|
223
219
|
volumeIcon: {
|
|
224
220
|
padding: 4,
|
|
225
221
|
marginRight: 12
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useCallback","useMemo","useRef","useState","ActivityIndicator","Image","Platform","Pressable","StyleSheet","Text","View","
|
|
1
|
+
{"version":3,"names":["React","useCallback","useMemo","useRef","useState","ActivityIndicator","Animated","Image","PanResponder","Platform","Pressable","StyleSheet","Text","View","useAudioTagContext","isPlaybackActive","formatTime","timeFromLocationX","useBufferingSweep","useExpandableTrackHeight","PlayIcon","PauseIcon","VolumeIcon","MuteIcon","jsx","_jsx","jsxs","_jsxs","TRACK_BAR_HEIGHT","TRACK_BAR_HEIGHT_PRESSED","TRACK_BAR_ANIM_MS","BUFFERING_SWEEP_MS","BUFFERING_SWEEP_WIDTH_RATIO","BUFFERING_SWEEP_SLICE_OPACITIES","AudioControls","ready","play","pause","seekToTime","playbackState","muted","setMuted","currentTime","duration","progressTrackAnim","scrubTime","setScrubTime","trackWidth","setTrackWidth","isBuffering","bufferingSweepStyle","scrub","startX","expand","collapse","current","panResponder","create","onStartShouldSetPanResponder","onMoveShouldSetPanResponder","onPanResponderTerminationRequest","onPanResponderGrant","event","s","nativeEvent","locationX","onPanResponderMove","_event","gestureState","dx","onPanResponderRelease","onPanResponderTerminate","onPlayPausePress","onProgressTrackLayout","width","layout","style","styles","container","children","color","size","displayTime","progress","topRow","playPause","onPress","source","icon","timeText","onLayout","progressTrack","panHandlers","trackInner","animatedStyle","trackFill","pointerEvents","bufferingSweep","map","opacity","index","bufferingSweepSlice","volumeIcon","flexDirection","alignSelf","minWidth","paddingVertical","paddingHorizontal","backgroundColor","borderRadius","borderWidth","borderColor","select","ios","shadowColor","shadowOffset","height","shadowOpacity","shadowRadius","android","elevation","alignItems","padding","marginRight","fontSize","flex","justifyContent","overflow","position","top","bottom","left","loadingRow","loadingText"],"sourceRoot":"../../../../src","sources":["Audio/controls/AudioControls.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { useMemo } from 'react';
|
|
4
|
-
import {
|
|
3
|
+
import { useEffect, useMemo, useRef } from 'react';
|
|
4
|
+
import { Animated, Easing } from 'react-native';
|
|
5
5
|
export function formatTime(seconds) {
|
|
6
6
|
if (!Number.isFinite(seconds) || seconds < 0) {
|
|
7
7
|
return '0:00';
|
|
@@ -23,23 +23,52 @@ export function timeFromLocationX(locationX, trackWidth, durationSeconds) {
|
|
|
23
23
|
return pct * durationSeconds;
|
|
24
24
|
}
|
|
25
25
|
export function useExpandableTrackHeight(trackBarHeight, trackBarHeightPressed, trackBarAnimMs) {
|
|
26
|
-
const height =
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
26
|
+
const height = useRef(new Animated.Value(trackBarHeight)).current;
|
|
27
|
+
return useMemo(() => {
|
|
28
|
+
const animateTo = toValue => {
|
|
29
|
+
Animated.timing(height, {
|
|
30
|
+
toValue,
|
|
31
|
+
duration: trackBarAnimMs,
|
|
32
|
+
useNativeDriver: false
|
|
33
|
+
}).start();
|
|
34
|
+
};
|
|
35
|
+
return {
|
|
36
|
+
animatedStyle: {
|
|
37
|
+
height,
|
|
38
|
+
borderRadius: Animated.divide(height, 2)
|
|
39
|
+
},
|
|
40
|
+
expand: () => animateTo(trackBarHeightPressed),
|
|
41
|
+
collapse: () => animateTo(trackBarHeight)
|
|
42
|
+
};
|
|
43
|
+
}, [height, trackBarHeight, trackBarHeightPressed, trackBarAnimMs]);
|
|
44
|
+
}
|
|
45
|
+
export function useBufferingSweep(isBuffering, trackWidth, sweepWidthRatio, sweepDurationMs) {
|
|
46
|
+
const sweepProgress = useRef(new Animated.Value(0)).current;
|
|
47
|
+
useEffect(() => {
|
|
48
|
+
if (!isBuffering) {
|
|
49
|
+
return;
|
|
42
50
|
}
|
|
43
|
-
|
|
51
|
+
const sweep = Animated.loop(Animated.timing(sweepProgress, {
|
|
52
|
+
toValue: 1,
|
|
53
|
+
duration: sweepDurationMs,
|
|
54
|
+
easing: Easing.inOut(t => Easing.quad(t)),
|
|
55
|
+
useNativeDriver: true
|
|
56
|
+
}));
|
|
57
|
+
sweep.start();
|
|
58
|
+
return () => {
|
|
59
|
+
sweep.stop();
|
|
60
|
+
sweepProgress.setValue(0);
|
|
61
|
+
};
|
|
62
|
+
}, [isBuffering, sweepDurationMs, sweepProgress]);
|
|
63
|
+
const sweepWidth = trackWidth * sweepWidthRatio;
|
|
64
|
+
return {
|
|
65
|
+
width: sweepWidth,
|
|
66
|
+
transform: [{
|
|
67
|
+
translateX: sweepProgress.interpolate({
|
|
68
|
+
inputRange: [0, 1],
|
|
69
|
+
outputRange: [-sweepWidth, trackWidth]
|
|
70
|
+
})
|
|
71
|
+
}]
|
|
72
|
+
};
|
|
44
73
|
}
|
|
45
74
|
//# sourceMappingURL=audioControlUtils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useMemo","
|
|
1
|
+
{"version":3,"names":["useEffect","useMemo","useRef","Animated","Easing","formatTime","seconds","Number","isFinite","h","Math","floor","m","s","toString","padStart","timeFromLocationX","locationX","trackWidth","durationSeconds","pct","max","min","useExpandableTrackHeight","trackBarHeight","trackBarHeightPressed","trackBarAnimMs","height","Value","current","animateTo","toValue","timing","duration","useNativeDriver","start","animatedStyle","borderRadius","divide","expand","collapse","useBufferingSweep","isBuffering","sweepWidthRatio","sweepDurationMs","sweepProgress","sweep","loop","easing","inOut","t","quad","stop","setValue","sweepWidth","width","transform","translateX","interpolate","inputRange","outputRange"],"sourceRoot":"../../../../src","sources":["Audio/controls/audioControlUtils.ts"],"mappings":";;AAAA,SAASA,SAAS,EAAEC,OAAO,EAAEC,MAAM,QAAQ,OAAO;AAClD,SAASC,QAAQ,EAAEC,MAAM,QAAQ,cAAc;AAE/C,OAAO,SAASC,UAAUA,CAACC,OAAe,EAAU;EAClD,IAAI,CAACC,MAAM,CAACC,QAAQ,CAACF,OAAO,CAAC,IAAIA,OAAO,GAAG,CAAC,EAAE;IAC5C,OAAO,MAAM;EACf;EACA,MAAMG,CAAC,GAAGC,IAAI,CAACC,KAAK,CAACL,OAAO,GAAG,IAAI,CAAC;EACpC,MAAMM,CAAC,GAAGF,IAAI,CAACC,KAAK,CAAEL,OAAO,GAAG,IAAI,GAAI,EAAE,CAAC;EAC3C,MAAMO,CAAC,GAAGH,IAAI,CAACC,KAAK,CAACL,OAAO,GAAG,EAAE,CAAC;EAClC,IAAIG,CAAC,GAAG,CAAC,EAAE;IACT,OAAO,GAAGA,CAAC,IAAIG,CAAC,CAACE,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAIF,CAAC,CAACC,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;EACjF,CAAC,MAAM;IACL,OAAO,GAAGH,CAAC,IAAIC,CAAC,CAACC,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;EAChD;AACF;AAEA,OAAO,SAASC,iBAAiBA,CAC/BC,SAAiB,EACjBC,UAAkB,EAClBC,eAAuB,EACf;EACR,IAAID,UAAU,IAAI,CAAC,IAAIC,eAAe,IAAI,CAAC,EAAE;IAC3C,OAAO,CAAC;EACV;EACA,MAAMC,GAAG,GAAGV,IAAI,CAACW,GAAG,CAAC,CAAC,EAAEX,IAAI,CAACY,GAAG,CAAC,CAAC,EAAEL,SAAS,GAAGC,UAAU,CAAC,CAAC;EAC5D,OAAOE,GAAG,GAAGD,eAAe;AAC9B;AAEA,OAAO,SAASI,wBAAwBA,CACtCC,cAAsB,EACtBC,qBAA6B,EAC7BC,cAAsB,EACtB;EACA,MAAMC,MAAM,GAAGzB,MAAM,CAAC,IAAIC,QAAQ,CAACyB,KAAK,CAACJ,cAAc,CAAC,CAAC,CAACK,OAAO;EAEjE,OAAO5B,OAAO,CAAC,MAAM;IACnB,MAAM6B,SAAS,GAAIC,OAAe,IAAK;MACrC5B,QAAQ,CAAC6B,MAAM,CAACL,MAAM,EAAE;QACtBI,OAAO;QACPE,QAAQ,EAAEP,cAAc;QACxBQ,eAAe,EAAE;MACnB,CAAC,CAAC,CAACC,KAAK,CAAC,CAAC;IACZ,CAAC;IAED,OAAO;MACLC,aAAa,EAAE;QACbT,MAAM;QACNU,YAAY,EAAElC,QAAQ,CAACmC,MAAM,CAACX,MAAM,EAAE,CAAC;MACzC,CAAC;MACDY,MAAM,EAAEA,CAAA,KAAMT,SAAS,CAACL,qBAAqB,CAAC;MAC9Ce,QAAQ,EAAEA,CAAA,KAAMV,SAAS,CAACN,cAAc;IAC1C,CAAC;EACH,CAAC,EAAE,CAACG,MAAM,EAAEH,cAAc,EAAEC,qBAAqB,EAAEC,cAAc,CAAC,CAAC;AACrE;AAEA,OAAO,SAASe,iBAAiBA,CAC/BC,WAAoB,EACpBxB,UAAkB,EAClByB,eAAuB,EACvBC,eAAuB,EACvB;EACA,MAAMC,aAAa,GAAG3C,MAAM,CAAC,IAAIC,QAAQ,CAACyB,KAAK,CAAC,CAAC,CAAC,CAAC,CAACC,OAAO;EAE3D7B,SAAS,CAAC,MAAM;IACd,IAAI,CAAC0C,WAAW,EAAE;MAChB;IACF;IAEA,MAAMI,KAAK,GAAG3C,QAAQ,CAAC4C,IAAI,CACzB5C,QAAQ,CAAC6B,MAAM,CAACa,aAAa,EAAE;MAC7Bd,OAAO,EAAE,CAAC;MACVE,QAAQ,EAAEW,eAAe;MACzBI,MAAM,EAAE5C,MAAM,CAAC6C,KAAK,CAAEC,CAAC,IAAK9C,MAAM,CAAC+C,IAAI,CAACD,CAAC,CAAC,CAAC;MAC3ChB,eAAe,EAAE;IACnB,CAAC,CACH,CAAC;IACDY,KAAK,CAACX,KAAK,CAAC,CAAC;IAEb,OAAO,MAAM;MACXW,KAAK,CAACM,IAAI,CAAC,CAAC;MACZP,aAAa,CAACQ,QAAQ,CAAC,CAAC,CAAC;IAC3B,CAAC;EACH,CAAC,EAAE,CAACX,WAAW,EAAEE,eAAe,EAAEC,aAAa,CAAC,CAAC;EAEjD,MAAMS,UAAU,GAAGpC,UAAU,GAAGyB,eAAe;EAE/C,OAAO;IACLY,KAAK,EAAED,UAAU;IACjBE,SAAS,EAAE,CACT;MACEC,UAAU,EAAEZ,aAAa,CAACa,WAAW,CAAC;QACpCC,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAClBC,WAAW,EAAE,CAAC,CAACN,UAAU,EAAEpC,UAAU;MACvC,CAAC;IACH,CAAC;EAEL,CAAC;AACH","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["default","useAudioTagContext"],"sourceRoot":"../../../src","sources":["Audio/index.ts"],"mappings":";;AAAA,SAASA,OAAO,QAAQ,SAAS;AACjC,SAASC,kBAAkB,QAAQ,sBAAmB","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["default","useAudioTagContext","isPlaybackActive"],"sourceRoot":"../../../src","sources":["Audio/index.ts"],"mappings":";;AAAA,SAASA,OAAO,QAAQ,SAAS;AACjC,SAASC,kBAAkB,QAAQ,sBAAmB;AACtD,SAASC,gBAAgB,QAAQ,YAAS","ignoreList":[]}
|
|
@@ -3,6 +3,9 @@
|
|
|
3
3
|
import { useMemo } from 'react';
|
|
4
4
|
import { Image, Platform } from 'react-native';
|
|
5
5
|
import AudioContext from "../core/AudioContext.js";
|
|
6
|
+
export function isPlaybackActive(state) {
|
|
7
|
+
return state === 'playing' || state === 'buffering';
|
|
8
|
+
}
|
|
6
9
|
const noop = () => {};
|
|
7
10
|
const noopError = _error => {};
|
|
8
11
|
const noopNumber = _number => {};
|
|
@@ -33,7 +36,9 @@ export function withPropsDefaults(props, resolvedContext) {
|
|
|
33
36
|
onEnded: props.onEnded ?? noop,
|
|
34
37
|
onPlay: props.onPlay ?? noop,
|
|
35
38
|
onPause: props.onPause ?? noop,
|
|
36
|
-
onVolumeChange: props.onVolumeChange ?? noopNumber
|
|
39
|
+
onVolumeChange: props.onVolumeChange ?? noopNumber,
|
|
40
|
+
onWaiting: props.onWaiting ?? noop,
|
|
41
|
+
onPlaying: props.onPlaying ?? noop
|
|
37
42
|
};
|
|
38
43
|
}
|
|
39
44
|
export function useStableAudioProps(props) {
|
|
@@ -64,7 +69,9 @@ export function useStableAudioProps(props) {
|
|
|
64
69
|
onEnded,
|
|
65
70
|
onPlay,
|
|
66
71
|
onPause,
|
|
67
|
-
onVolumeChange
|
|
72
|
+
onVolumeChange,
|
|
73
|
+
onWaiting,
|
|
74
|
+
onPlaying
|
|
68
75
|
} = withPropsDefaults(props, resolvedContext);
|
|
69
76
|
return useMemo(() => ({
|
|
70
77
|
// Control Props
|
|
@@ -87,15 +94,18 @@ export function useStableAudioProps(props) {
|
|
|
87
94
|
onEnded,
|
|
88
95
|
onPlay,
|
|
89
96
|
onPause,
|
|
90
|
-
onVolumeChange
|
|
91
|
-
|
|
97
|
+
onVolumeChange,
|
|
98
|
+
onWaiting,
|
|
99
|
+
onPlaying
|
|
100
|
+
}), [autoPlay, controls, loop, muted, preload, forceDownload, source, playbackRate, preservesPitch, volume, context, onLoadStart, onLoad, onError, onPositionChange, onEnded, onPlay, onPause, onVolumeChange, onWaiting, onPlaying]);
|
|
92
101
|
}
|
|
93
102
|
export function resolveSourcePath(source) {
|
|
94
103
|
if (typeof source === 'string') {
|
|
95
104
|
return source;
|
|
96
105
|
}
|
|
97
106
|
if (typeof source === 'number') {
|
|
98
|
-
|
|
107
|
+
const uri = Image.resolveAssetSource(source)?.uri;
|
|
108
|
+
return uri ?? '';
|
|
99
109
|
}
|
|
100
110
|
return source.uri ?? '';
|
|
101
111
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useMemo","Image","Platform","AudioContext","noop","noopError","_error","noopNumber","_number","withPropsDefaults","props","resolvedContext","autoPlay","controls","loop","muted","preload","forceDownload","source","playbackRate","preservesPitch","volume","context","onLoadStart","onLoad","onError","onPositionChange","onEnded","onPlay","onPause","onVolumeChange","useStableAudioProps","OS","undefined","resolveSourcePath","
|
|
1
|
+
{"version":3,"names":["useMemo","Image","Platform","AudioContext","isPlaybackActive","state","noop","noopError","_error","noopNumber","_number","withPropsDefaults","props","resolvedContext","autoPlay","controls","loop","muted","preload","forceDownload","source","playbackRate","preservesPitch","volume","context","onLoadStart","onLoad","onError","onPositionChange","onEnded","onPlay","onPause","onVolumeChange","onWaiting","onPlaying","useStableAudioProps","OS","undefined","resolveSourcePath","uri","resolveAssetSource","getSourceHeaders","headers"],"sourceRoot":"../../../src","sources":["Audio/utils.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -8,7 +8,7 @@ class AudioAPIModule {
|
|
|
8
8
|
#canUseWorklets_ = false;
|
|
9
9
|
#workletsVersion = 'unknown';
|
|
10
10
|
#workletsAvailable_ = false;
|
|
11
|
-
static MIN_WORKLETS_VERSION = '0.
|
|
11
|
+
static MIN_WORKLETS_VERSION = '0.7.0';
|
|
12
12
|
constructor() {
|
|
13
13
|
// Important! Verify and import worklets first
|
|
14
14
|
// otherwise the native module installation might crash
|
|
@@ -30,7 +30,10 @@ class AudioDecoder {
|
|
|
30
30
|
return new AudioBuffer(buffer);
|
|
31
31
|
}
|
|
32
32
|
resolveStringSource(input) {
|
|
33
|
-
|
|
33
|
+
if (typeof input !== 'number') {
|
|
34
|
+
return input;
|
|
35
|
+
}
|
|
36
|
+
return Image.resolveAssetSource(input)?.uri ?? '';
|
|
34
37
|
}
|
|
35
38
|
assertSupportedStringSource(source) {
|
|
36
39
|
if (typeof source !== 'string') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Image","Platform","NativeAudioAPIModule","AudioApiError","isBase64Source","isDataBlobString","isRemoteSource","resolveLocalFilePath","base64ToArrayBuffer","AudioBuffer","AudioDecoder","instance","constructor","decoder","globalThis","createAudioDecoder","decodeAudioDataImplementation","input","sampleRate","fetchOptions","rate","ArrayBuffer","decodeFromArrayBuffer","stringSource","resolveStringSource","assertSupportedStringSource","decodeFromRemoteUrl","decodeFromLocalFile","arrayBuffer","buffer","decodeWithMemoryBlock","Uint8Array","resolveAssetSource","uri","source","TypeError","url","fetch","then","res","useAndroidBundledAssetReader","OS","startsWith","__DEV__","base64Payload","readAndroidReleaseAssetBytesAsBase64","filePath","decodeWithFilePath","getInstance","decodeAudioDataInstance","audioBuffer","decodePCMInBase64Instance","base64String","inputSampleRate","inputChannelCount","interleaved","decodeWithPCMInBase64","decodeAudioData","decodePCMInBase64","isInterleaved"],"sourceRoot":"../../../src","sources":["core/AudioDecoder.ts"],"mappings":";;AAAA,SAASA,KAAK,EAAEC,QAAQ,QAAQ,cAAc;AAC9C,SAASC,oBAAoB,QAAQ,mBAAU;AAE/C,SAASC,aAAa,QAAQ,oBAAW;AAGzC,SACEC,cAAc,EACdC,gBAAgB,EAChBC,cAAc,EACdC,oBAAoB,QACf,mBAAgB;AACvB,SAASC,mBAAmB,QAAQ,mBAAU;AAC9C,OAAOC,WAAW,MAAM,kBAAe;AAEvC,MAAMC,YAAY,CAAC;EACjB,OAAeC,QAAQ,GAAwB,IAAI;EAG3CC,WAAWA,CAAA,EAAG;IACpB,IAAI,CAACC,OAAO,GAAGC,UAAU,CAACC,kBAAkB,CAAC,CAAC;EAChD;EAEA,MAAcC,6BAA6BA,CACzCC,KAAsB,EACtBC,UAAmB,EACnBC,YAA0B,EACe;IACzC,MAAMC,IAAI,GAAGF,UAAU,IAAI,CAAC;IAE5B,IAAID,KAAK,YAAYI,WAAW,EAAE;MAChC,OAAO,IAAI,CAACC,qBAAqB,CAACL,KAAK,EAAEG,IAAI,CAAC;IAChD;IAEA,MAAMG,YAAY,GAAG,IAAI,CAACC,mBAAmB,CAACP,KAAK,CAAC;IACpD,IAAI,CAACQ,2BAA2B,CAACF,YAAY,CAAC;IAE9C,IAAIjB,cAAc,CAACiB,YAAY,CAAC,EAAE;MAChC,OAAO,IAAI,CAACG,mBAAmB,CAACH,YAAY,EAAEH,IAAI,EAAED,YAAY,CAAC;IACnE;IAEA,OAAO,IAAI,CAACQ,mBAAmB,CAACJ,YAAY,EAAEH,IAAI,CAAC;EACrD;EAEA,MAAcE,qBAAqBA,CACjCM,WAAwB,EACxBV,UAAkB,EACI;IACtB,MAAMW,MAAM,GAAG,MAAM,IAAI,CAAChB,OAAO,CAACiB,qBAAqB;IACrD;IACA,IAAIC,UAAU,CAACH,WAAW,CAAC,EAC3BV,UACF,CAAC;IACD,OAAO,IAAIT,WAAW,CAACoB,MAAM,CAAC;EAChC;EAEQL,mBAAmBA,CAACP,KAAsB,EAAmB;IACnE,
|
|
1
|
+
{"version":3,"names":["Image","Platform","NativeAudioAPIModule","AudioApiError","isBase64Source","isDataBlobString","isRemoteSource","resolveLocalFilePath","base64ToArrayBuffer","AudioBuffer","AudioDecoder","instance","constructor","decoder","globalThis","createAudioDecoder","decodeAudioDataImplementation","input","sampleRate","fetchOptions","rate","ArrayBuffer","decodeFromArrayBuffer","stringSource","resolveStringSource","assertSupportedStringSource","decodeFromRemoteUrl","decodeFromLocalFile","arrayBuffer","buffer","decodeWithMemoryBlock","Uint8Array","resolveAssetSource","uri","source","TypeError","url","fetch","then","res","useAndroidBundledAssetReader","OS","startsWith","__DEV__","base64Payload","readAndroidReleaseAssetBytesAsBase64","filePath","decodeWithFilePath","getInstance","decodeAudioDataInstance","audioBuffer","decodePCMInBase64Instance","base64String","inputSampleRate","inputChannelCount","interleaved","decodeWithPCMInBase64","decodeAudioData","decodePCMInBase64","isInterleaved"],"sourceRoot":"../../../src","sources":["core/AudioDecoder.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AutomationEventType","InvalidStateError","NotSupportedError","RangeError","AudioParam","constructor","audioParam","context","value","defaultValue","minValue","maxValue","setValueAtTime","startTime","checkCurveExclusion","type","SET_VALUE","automationTime","clampedTime","Math","max","
|
|
1
|
+
{"version":3,"names":["AutomationEventType","InvalidStateError","NotSupportedError","RangeError","AudioParam","constructor","audioParam","context","value","defaultValue","minValue","maxValue","setValueAtTime","currentTime","startTime","checkCurveExclusion","type","SET_VALUE","automationTime","clampedTime","Math","max","linearRampToValueAtTime","endTime","LINEAR_RAMP","exponentialRampToValueAtTime","EXPONENTIAL_RAMP","setTargetAtTime","target","timeConstant","SET_TARGET","setValueCurveAtTime","values","duration","length","SET_VALUE_CURVE","cancelScheduledValues","cancelTime","cancelAndHoldAtTime","eventData","checkExclusionResult","status","message"],"sourceRoot":"../../../src","sources":["core/AudioParam.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Audio.d.ts","sourceRoot":"","sources":["../../../src/Audio/Audio.tsx"],"names":[],"mappings":"AAAA,OAAO,KAON,MAAM,OAAO,CAAC;AAGf,OAAO,KAAK,EACV,cAAc,EAGf,MAAM,SAAS,CAAC;AAOjB,QAAA,MAAM,KAAK;;
|
|
1
|
+
{"version":3,"file":"Audio.d.ts","sourceRoot":"","sources":["../../../src/Audio/Audio.tsx"],"names":[],"mappings":"AAAA,OAAO,KAON,MAAM,OAAO,CAAC;AAGf,OAAO,KAAK,EACV,cAAc,EAGf,MAAM,SAAS,CAAC;AAOjB,QAAA,MAAM,KAAK;;wCA6SV,CAAC;AAEF,eAAe,KAAK,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Audio.web.d.ts","sourceRoot":"","sources":["../../../src/Audio/Audio.web.tsx"],"names":[],"mappings":"AAAA,OAAO,KAON,MAAM,OAAO,CAAC;AAGf,OAAO,KAAK,EACV,cAAc,EAGf,MAAM,SAAS,CAAC;AAIjB,QAAA,MAAM,KAAK;;
|
|
1
|
+
{"version":3,"file":"Audio.web.d.ts","sourceRoot":"","sources":["../../../src/Audio/Audio.web.tsx"],"names":[],"mappings":"AAAA,OAAO,KAON,MAAM,OAAO,CAAC;AAGf,OAAO,KAAK,EACV,cAAc,EAGf,MAAM,SAAS,CAAC;AAIjB,QAAA,MAAM,KAAK;;wCAiSV,CAAC;AAEF,eAAe,KAAK,CAAC"}
|
|
@@ -22,6 +22,8 @@ export declare class AudioFileSourceNode extends AudioScheduledSourceNode {
|
|
|
22
22
|
getCurrentTime(): number;
|
|
23
23
|
startPositionTracking(onTime: (seconds: number) => void): void;
|
|
24
24
|
stopPositionTracking(): void;
|
|
25
|
+
startBufferingTracking(onBufferingChange: (buffering: boolean) => void): void;
|
|
26
|
+
stopBufferingTracking(): void;
|
|
25
27
|
private resetNodeAndSubscriptions;
|
|
26
28
|
}
|
|
27
29
|
export {};
|