play, pause, and general streaming working in currently playing. will work on choosing next host and repeating

This commit is contained in:
Okechi 2016-03-04 12:36:03 -05:00
parent fd913dca95
commit 100615e25f
3 changed files with 42 additions and 20 deletions

View File

@ -18,7 +18,7 @@ class CurrentlyPlayingViewController: UIViewController, PartyServiceManagerDeleg
var frnds: [FriendData] = [] var frnds: [FriendData] = []
var requestData: [FriendData] = [] var requestData: [FriendData] = []
var audioPlayer: AVPlayer! var audioPlayer: AVPlayer!
var playing = false var playing = true
var timer = NSTimer() var timer = NSTimer()
//controller data //controller data
@ -37,17 +37,28 @@ class CurrentlyPlayingViewController: UIViewController, PartyServiceManagerDeleg
self.audioPlayer.volume = sender.value self.audioPlayer.volume = sender.value
} }
@IBAction func playPauseFav(sender: UIButton){ @IBAction func playPauseFav(sender: UIButton){
if(playing == true){ if (self.party.role == PeerType.Host_Creator){
self.audioPlayer.pause() if(playing == true){
self.playing = false self.audioPlayer.pause()
self.ppfButton.setBackgroundImage(UIImage(named: "Play-52.png"), forState: UIControlState.Normal) for peer in self.party.session.connectedPeers {
var dictionary: [String: String] = ["sender": self.party.myPeerID.displayName, "instruction": "pause_stream"]
self.party.sendInstruction(dictionary, toPeer: peer as! MCPeerID)
}
self.playing = false
self.ppfButton.setBackgroundImage(UIImage(named: "Play-52.png"), forState: UIControlState.Normal)
}else{ }else{
self.audioPlayer.play() self.audioPlayer.play()
self.playing = true self.playing = true
self.ppfButton.setBackgroundImage(UIImage(named: "Pause-52.png"), forState: UIControlState.Normal) self.ppfButton.setBackgroundImage(UIImage(named: "Pause-52.png"), forState: UIControlState.Normal)
for peer in self.party.session.connectedPeers {
var dictionary: [String: String] = ["sender": self.party.myPeerID.displayName, "instruction": "resume_stream"]
self.party.sendInstruction(dictionary, toPeer: peer as! MCPeerID)
}
}
} }
} }
@ -72,8 +83,11 @@ class CurrentlyPlayingViewController: UIViewController, PartyServiceManagerDeleg
self.audioPlayer.volume = self.volCtrl.value self.audioPlayer.volume = self.volCtrl.value
self.maxLabel.text = String(stringInterpolationSegment: self.audioPlayer.currentItem.duration.value) self.maxLabel.text = String(stringInterpolationSegment: self.audioPlayer.currentItem.duration.value)
self.party.delegate = self self.party.delegate = self
//self.audioPlayer.play() for peer in self.party.session.connectedPeers {
//self.timer = NSTimer.scheduledTimerWithTimeInterval(1, target: self, selector: Selector("updateLabels"), userInfo: nil, repeats: true) self.party.outputStreamers[peer.displayName]?.start()
}
self.audioPlayer.play()
self.timer = NSTimer.scheduledTimerWithTimeInterval(1, target: self, selector: Selector("updateLabels"), userInfo: nil, repeats: true)
}else if (self.party.role == PeerType.Guest_Invited){ }else if (self.party.role == PeerType.Guest_Invited){
self.songImg.image = self.party.currentSongIMG self.songImg.image = self.party.currentSongIMG
@ -82,6 +96,7 @@ class CurrentlyPlayingViewController: UIViewController, PartyServiceManagerDeleg
println(self.titleLabel.text) println(self.titleLabel.text)
self.artistAndAlbumLabel.text = (self.party.currentSongArtistAlbum) self.artistAndAlbumLabel.text = (self.party.currentSongArtistAlbum)
self.party.delegate = self self.party.delegate = self
self.ppfButton.hidden = true
@ -169,7 +184,11 @@ extension CurrentlyPlayingViewController: PartyServiceManagerDelegate {
var dictionary: [String: String] = ["sender": self.party.myPeerID.displayName, "instruction": "disconnect"] var dictionary: [String: String] = ["sender": self.party.myPeerID.displayName, "instruction": "disconnect"]
self.party.sendInstruction(dictionary, toPeer: fromPeer) self.party.sendInstruction(dictionary, toPeer: fromPeer)
}else{ }else{
if(instruction == "pause_stream"){
self.party.inputStreamer.pause()
}else if(instruction == "resume_stream"){
self.party.inputStreamer.resume()
}
} }

View File

@ -128,11 +128,14 @@ class LoadingPartyViewController: UIViewController, UICollectionViewDataSource,
} }
} }
}else{ }else{
var dictionary: [String: String] = ["sender": self.party.myPeerID.displayName, "instruction": "start_party"]
self.party.sendInstruction(dictionary, toPeer: joinedPeer! )
//start streaming to connected peers var dictionary: [String: String] = ["sender": self.party.myPeerID.displayName, "instruction": "start_party"]
self.party.outputStreamers[joinedPeer!.displayName]!.start() self.party.sendInstruction(dictionary, toPeer: joinedPeer! )
//start streaming to connected peers
//self.party.outputStreamers[joinedPeer!.displayName]!.start()
} }

View File

@ -1307,7 +1307,7 @@
</button> </button>
<button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="sFb-YR-QlX"> <button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="sFb-YR-QlX">
<rect key="frame" x="138" y="505" width="44" height="43"/> <rect key="frame" x="138" y="505" width="44" height="43"/>
<state key="normal" backgroundImage="Play-52.png"> <state key="normal" backgroundImage="Pause-52.png">
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/> <color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
</state> </state>
<connections> <connections>
@ -1634,7 +1634,7 @@
<image name="Lower.png" width="7" height="10"/> <image name="Lower.png" width="7" height="10"/>
<image name="No Friend Requests i5.png" width="320" height="568"/> <image name="No Friend Requests i5.png" width="320" height="568"/>
<image name="Party.png" width="81" height="41"/> <image name="Party.png" width="81" height="41"/>
<image name="Play-52.png" width="52" height="52"/> <image name="Pause-52.png" width="52" height="52"/>
<image name="Raise.png" width="14" height="13"/> <image name="Raise.png" width="14" height="13"/>
<image name="Rectangle 10 + Change Photo + voice_presentation copy + voice_presentation copy 2 + voice_presentation + Music 2 + Music 2.png" width="203" height="153"/> <image name="Rectangle 10 + Change Photo + voice_presentation copy + voice_presentation copy 2 + voice_presentation + Music 2 + Music 2.png" width="203" height="153"/>
<image name="Send Invites Button.png" width="375" height="46"/> <image name="Send Invites Button.png" width="375" height="46"/>