@capgo/native-audio 4.2.2 → 4.2.3

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.
@@ -9,31 +9,31 @@
9
9
  import AVFoundation
10
10
 
11
11
  public class AudioAsset: NSObject, AVAudioPlayerDelegate {
12
-
12
+
13
13
  var channels: NSMutableArray = NSMutableArray()
14
14
  var playIndex: Int = 0
15
15
  var assetId: String = ""
16
16
  var initialVolume: NSNumber = 1.0
17
17
  var fadeDelay: NSNumber = 1.0
18
18
  var owner: NativeAudio
19
-
19
+
20
20
  let FADE_STEP: Float = 0.05
21
21
  let FADE_DELAY: Float = 0.08
22
-
23
- init(owner:NativeAudio, withAssetId assetId:String, withPath path: String!, withChannels channels: NSNumber!, withVolume volume: NSNumber!, withFadeDelay delay: NSNumber!) {
22
+
23
+ init(owner: NativeAudio, withAssetId assetId: String, withPath path: String!, withChannels channels: NSNumber!, withVolume volume: NSNumber!, withFadeDelay delay: NSNumber!) {
24
24
 
25
25
  self.owner = owner
26
26
  self.assetId = assetId
27
27
  self.channels = NSMutableArray.init(capacity: channels as! Int)
28
-
28
+
29
29
  super.init()
30
-
30
+
31
31
  let pathUrl: NSURL! = NSURL.fileURL(withPath: path) as NSURL
32
-
32
+
33
33
  for _ in 0..<channels.intValue {
34
34
  do {
35
35
  let player: AVAudioPlayer! = try AVAudioPlayer(contentsOf: pathUrl as URL)
36
-
36
+
37
37
  if player != nil {
38
38
  player.volume = volume.floatValue
39
39
  player.prepareToPlay()
@@ -43,11 +43,11 @@ public class AudioAsset: NSObject, AVAudioPlayerDelegate {
43
43
  }
44
44
  }
45
45
  } catch {
46
-
46
+
47
47
  }
48
48
  }
49
49
  }
50
-
50
+
51
51
  func getCurrentTime() -> TimeInterval {
52
52
  if channels.count != 1 {
53
53
  return 0
@@ -57,7 +57,7 @@ public class AudioAsset: NSObject, AVAudioPlayerDelegate {
57
57
 
58
58
  return player.currentTime
59
59
  }
60
-
60
+
61
61
  func getDuration() -> TimeInterval {
62
62
  if channels.count != 1 {
63
63
  return 0
@@ -76,11 +76,11 @@ public class AudioAsset: NSObject, AVAudioPlayerDelegate {
76
76
  playIndex = Int(truncating: NSNumber(value: playIndex + 1))
77
77
  playIndex = Int(truncating: NSNumber(value: playIndex % channels.count))
78
78
  }
79
-
79
+
80
80
  func playWithFade(time: TimeInterval) {
81
81
  let player: AVAudioPlayer! = channels.object(at: playIndex) as? AVAudioPlayer
82
82
  player.currentTime = time
83
-
83
+
84
84
  if !player.isPlaying {
85
85
  player.numberOfLoops = 0
86
86
  player.volume = 0
@@ -92,7 +92,7 @@ public class AudioAsset: NSObject, AVAudioPlayerDelegate {
92
92
  player.volume = player.volume + self.FADE_STEP
93
93
  }
94
94
  }
95
-
95
+
96
96
  }
97
97
 
98
98
  func pause() {
@@ -106,17 +106,17 @@ public class AudioAsset: NSObject, AVAudioPlayerDelegate {
106
106
  let timeOffset = player.deviceCurrentTime + 0.01
107
107
  player.play(atTime: timeOffset)
108
108
  }
109
-
109
+
110
110
  func stop() {
111
111
  for i in 0..<channels.count {
112
112
  let player: AVAudioPlayer! = channels.object(at: i) as? AVAudioPlayer
113
113
  player.stop()
114
114
  }
115
115
  }
116
-
116
+
117
117
  func stopWithFade() {
118
118
  let player: AVAudioPlayer! = channels.object(at: playIndex) as? AVAudioPlayer
119
-
119
+
120
120
  if !player.isPlaying {
121
121
  player.currentTime = 0.0
122
122
  player.numberOfLoops = 0
@@ -125,51 +125,50 @@ public class AudioAsset: NSObject, AVAudioPlayerDelegate {
125
125
  playIndex = Int(truncating: NSNumber(value: playIndex + 1))
126
126
  playIndex = Int(truncating: NSNumber(value: playIndex % channels.count))
127
127
  } else {
128
- if player.volume < initialVolume.floatValue
129
- {
128
+ if player.volume < initialVolume.floatValue {
130
129
  player.volume = player.volume + self.FADE_STEP
131
130
  }
132
131
  }
133
132
  }
134
-
133
+
135
134
  func loop() {
136
135
  self.stop()
137
-
136
+
138
137
  let player: AVAudioPlayer! = channels.object(at: Int(playIndex)) as? AVAudioPlayer
139
138
  player.numberOfLoops = -1
140
139
  player.play()
141
140
  playIndex = Int(truncating: NSNumber(value: playIndex + 1))
142
141
  playIndex = Int(truncating: NSNumber(value: playIndex % channels.count))
143
142
  }
144
-
143
+
145
144
  func unload() {
146
145
  self.stop()
147
-
148
- // for i in 0..<channels.count {
149
- // var player: AVAudioPlayer! = channels.object(at: i) as? AVAudioPlayer
150
- //
151
- // player = nil
152
- // }
153
-
146
+
147
+ // for i in 0..<channels.count {
148
+ // var player: AVAudioPlayer! = channels.object(at: i) as? AVAudioPlayer
149
+ //
150
+ // player = nil
151
+ // }
152
+
154
153
  channels = NSMutableArray()
155
154
  }
156
-
155
+
157
156
  func setVolume(volume: NSNumber!) {
158
157
  for i in 0..<channels.count {
159
158
  let player: AVAudioPlayer! = channels.object(at: i) as? AVAudioPlayer
160
159
  player.volume = volume.floatValue
161
160
  }
162
161
  }
163
-
162
+
164
163
  public func audioPlayerDidFinishPlaying(_ player: AVAudioPlayer, successfully flag: Bool) {
165
164
  NSLog("playerDidFinish")
166
165
  self.owner.notifyListeners("complete", data: [
167
166
  "assetId": self.assetId
168
167
  ])
169
168
  }
170
-
169
+
171
170
  func playerDecodeError(player: AVAudioPlayer!, error: NSError!) {
172
-
171
+
173
172
  }
174
173
 
175
174
  func isPlaying() -> Bool {
@@ -14,11 +14,11 @@ enum MyError: Error {
14
14
  @objc(NativeAudio)
15
15
  public class NativeAudio: CAPPlugin {
16
16
 
17
- var audioList: [String : Any] = [:]
17
+ var audioList: [String: Any] = [:]
18
18
  var fadeMusic = false
19
19
  var session = AVAudioSession.sharedInstance()
20
20
 
21
- public override func load() {
21
+ override public func load() {
22
22
  super.load()
23
23
 
24
24
  self.fadeMusic = false
@@ -72,7 +72,7 @@ public class NativeAudio: CAPPlugin {
72
72
  audioAsset?.play(time: time)
73
73
  }
74
74
  call.resolve()
75
- } else if (asset is Int32) {
75
+ } else if asset is Int32 {
76
76
  let audioAsset = asset as? NSNumber ?? 0
77
77
  AudioServicesPlaySystemSound(SystemSoundID(audioAsset.intValue ))
78
78
  call.resolve()
@@ -101,7 +101,6 @@ public class NativeAudio: CAPPlugin {
101
101
  return nil
102
102
  }
103
103
 
104
-
105
104
  @objc func getDuration(_ call: CAPPluginCall) {
106
105
  guard let audioAsset: AudioAsset = self.getAudioAsset(call) else {
107
106
  return
@@ -165,7 +164,7 @@ public class NativeAudio: CAPPlugin {
165
164
  let asset = self.audioList[audioId]
166
165
  if asset != nil && asset is AudioAsset {
167
166
  let audioAsset = asset as! AudioAsset
168
- audioAsset.unload();
167
+ audioAsset.unload()
169
168
  self.audioList[audioId] = nil
170
169
  }
171
170
  }
@@ -182,7 +181,7 @@ public class NativeAudio: CAPPlugin {
182
181
  audioAsset.setVolume(volume: volume as NSNumber)
183
182
  call.resolve()
184
183
  }
185
-
184
+
186
185
  @objc func isPlaying(_ call: CAPPluginCall) {
187
186
  guard let audioAsset: AudioAsset = self.getAudioAsset(call) else {
188
187
  return
@@ -192,7 +191,7 @@ public class NativeAudio: CAPPlugin {
192
191
  "isPlaying": audioAsset.isPlaying()
193
192
  ])
194
193
  }
195
-
194
+
196
195
  private func preloadAsset(_ call: CAPPluginCall, isComplex complex: Bool) {
197
196
  let audioId = call.getString(Constant.AssetIdKey) ?? ""
198
197
  let channels: NSNumber?
@@ -203,7 +202,7 @@ public class NativeAudio: CAPPlugin {
203
202
  if audioId != "" {
204
203
  let assetPath: String = call.getString(Constant.AssetPathKey) ?? ""
205
204
 
206
- if (complex) {
205
+ if complex {
207
206
  volume = call.getFloat("volume") ?? 1.0
208
207
  channels = NSNumber(value: call.getInt("channels") ?? 1)
209
208
  delay = NSNumber(value: call.getInt("delay") ?? 1)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@capgo/native-audio",
3
- "version": "4.2.2",
3
+ "version": "4.2.3",
4
4
  "description": "A native plugin for native audio engine",
5
5
  "main": "dist/plugin.js",
6
6
  "module": "dist/esm/index.js",
@@ -26,13 +26,13 @@
26
26
  "verify:android": "cd android && ./gradlew clean build test && cd ..",
27
27
  "verify:web": "npm run build",
28
28
  "lint": "npm run eslint && npm run prettier -- --check && npm run swiftlint -- lint",
29
- "fmt": "npm run eslint -- --fix && npm run prettier -- --write && npm run swiftlint -- autocorrect --format",
29
+ "fmt": "npm run eslint -- --fix && npm run prettier -- --write && npm run swiftlint -- --autocorrect --format",
30
30
  "eslint": "eslint . --ext ts",
31
31
  "prettier": "prettier \"**/*.{css,html,ts,js,java}\"",
32
32
  "swiftlint": "node-swiftlint",
33
33
  "docgen": "docgen --api NativeAudio --output-readme README.md --output-json dist/docs.json",
34
34
  "build": "npm run clean && npm run docgen && tsc && rollup -c rollup.config.mjs",
35
- "clean": "rimraf ./dist",
35
+ "clean": "rimraf ./dist && cd android && ./gradlew clean && cd ..",
36
36
  "watch": "tsc --watch",
37
37
  "prepublishOnly": "npm run build",
38
38
  "prepare": "husky install"