Playing YouTubePlayer Sound in Background Swift
Asked Answered
A

1

1

I'm using the YouTubeSDK to play YouTube videos in my app found here: https://github.com/gilesvangruisen/Swift-YouTube-Player

However, when the user presses home I want the sound to keep playing in the background. https://github.com/youtube/youtube-ios-player-helper/issues/38

I'm currently trying this in the App Delegate (awful conversion) in the didFinishLaunchingWithOptions:

let sessionEror:NSError?
do {

    let playBG = try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback, withOptions: .DefaultToSpeaker)

} catch let error as NSError  {
    print("ERROR")
}

And this is in it's own function in the same file:

func playerView(YTPlayerView: YTPlayerState, didChangeToState: YTPlayerState) {

        switch {

        case YTPlayerState.Paused:
            YTPlayerState.Playing,
        break
        }


    }

Any idea how to keep playing the sound in the background using the YouTube SDK? Also, is it possible to just play the sound in the background and not the video?

Any and all help is appreciated.

Abiosis answered 1/12, 2015 at 20:2 Comment(0)
L
1

Separating out the video and audio of a Youtube video is against YouTube Terms of Service. Look under Prohibitions

  1. separate, isolate, or modify the audio or video components of any YouTube audiovisual content made available through the YouTube API;

  2. promote separately the audio or video components of any YouTube audiovisual content made available through the YouTube API;

That being said, the workaround still remains the same as explained here or here which both suggest that you need to have a service that delegates the video's playback. Directly, the Youtube API will not allow you to do so.

Lascivious answered 4/12, 2015 at 20:15 Comment(1)
Thanks a lot for this. It's unfortunate YouTube hasn't broken down their API for music/sound separate from the videos. I'll definitely check those links out. This helps a lot. Thanks once again!Abiosis

© 2022 - 2024 — McMap. All rights reserved.