mirror of
https://github.com/advplyr/audiobookshelf-app.git
synced 2025-08-28 05:53:59 +02:00
Fix:iOS fallback to transcoding #553
This commit is contained in:
parent
28989f536a
commit
8d4c322bce
3 changed files with 9 additions and 5 deletions
|
@ -238,6 +238,7 @@ public class AbsAudioPlayer: CAPPlugin {
|
|||
@objc func onPlaybackFailed() {
|
||||
if (PlayerHandler.getPlayMethod() == PlayMethod.directplay.rawValue) {
|
||||
let session = PlayerHandler.getPlaybackSession()
|
||||
let playWhenReady = PlayerHandler.getPlayWhenReady()
|
||||
let libraryItemId = session?.libraryItemId ?? ""
|
||||
let episodeId = session?.episodeId ?? nil
|
||||
logger.log("Forcing Transcode")
|
||||
|
@ -247,7 +248,7 @@ public class AbsAudioPlayer: CAPPlugin {
|
|||
do {
|
||||
guard let self = self else { return }
|
||||
try session.save()
|
||||
PlayerHandler.startPlayback(sessionId: session.id, playWhenReady: self.initialPlayWhenReady, playbackRate: PlayerSettings.main().playbackRate)
|
||||
PlayerHandler.startPlayback(sessionId: session.id, playWhenReady: playWhenReady, playbackRate: PlayerSettings.main().playbackRate)
|
||||
self.sendPlaybackSession(session: try session.asDictionary())
|
||||
self.sendMetadata()
|
||||
} catch(let exception) {
|
||||
|
|
|
@ -30,7 +30,7 @@ class AudioPlayer: NSObject {
|
|||
private var playerContext = 0
|
||||
private var playerItemContext = 0
|
||||
|
||||
private var playWhenReady: Bool
|
||||
internal var playWhenReady: Bool
|
||||
private var initialPlaybackRate: Float
|
||||
|
||||
internal var audioPlayer: AVQueuePlayer
|
||||
|
|
|
@ -54,6 +54,10 @@ class PlayerHandler {
|
|||
self.player?.getCurrentTime()
|
||||
}
|
||||
|
||||
public static func getPlayWhenReady() -> Bool {
|
||||
self.player?.playWhenReady ?? false
|
||||
}
|
||||
|
||||
public static func setPlaybackSpeed(speed: Float) {
|
||||
self.player?.setPlaybackRate(speed)
|
||||
}
|
||||
|
@ -88,9 +92,8 @@ class PlayerHandler {
|
|||
|
||||
public static func getPlaybackSession() -> PlaybackSession? {
|
||||
guard let player = player else { return nil }
|
||||
guard player.isInitialized() else { return nil }
|
||||
|
||||
return Database.shared.getPlaybackSession(id: player.getPlaybackSessionId())
|
||||
return player.getPlaybackSession()
|
||||
}
|
||||
|
||||
public static func seekForward(amount: Double) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue