mirror of
https://github.com/oonyeje/Get-Hip.git
synced 2025-12-25 03:37:40 +00:00
Streaming music is working now just configuring the streaming system in the currently playing screen
This commit is contained in:
parent
8c4ae2e7e7
commit
fd913dca95
@ -69,7 +69,7 @@ extension JoiningPartyViewController: PartyServiceManagerDelegate {
|
|||||||
|
|
||||||
func connectedWithPeer(peerID: MCPeerID) {
|
func connectedWithPeer(peerID: MCPeerID) {
|
||||||
println("mark 2")
|
println("mark 2")
|
||||||
var dictionary: [String: String] = ["sender": self.party.myPeerID.displayName, "instruction": "joined_party"]
|
var dictionary: Dictionary<String,String> = ["sender": self.party.myPeerID.displayName, "instruction": "joined_party"]
|
||||||
self.party.sendInstruction(dictionary, toPeer: peerID)
|
self.party.sendInstruction(dictionary, toPeer: peerID)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -130,6 +130,10 @@ class LoadingPartyViewController: UIViewController, UICollectionViewDataSource,
|
|||||||
}else{
|
}else{
|
||||||
var dictionary: [String: String] = ["sender": self.party.myPeerID.displayName, "instruction": "start_party"]
|
var dictionary: [String: String] = ["sender": self.party.myPeerID.displayName, "instruction": "start_party"]
|
||||||
self.party.sendInstruction(dictionary, toPeer: joinedPeer! )
|
self.party.sendInstruction(dictionary, toPeer: joinedPeer! )
|
||||||
|
|
||||||
|
//start streaming to connected peers
|
||||||
|
self.party.outputStreamers[joinedPeer!.displayName]!.start()
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -204,7 +208,12 @@ extension LoadingPartyViewController: PartyServiceManagerDelegate {
|
|||||||
|
|
||||||
//open stream with peer
|
//open stream with peer
|
||||||
let stream = self.party.outputStreamForPeer(fromPeer)
|
let stream = self.party.outputStreamForPeer(fromPeer)
|
||||||
self.party.outputStreamer = TDAudioOutputStreamer(outputStream: stream)
|
self.party.outputStreamers[fromPeer.displayName] = TDAudioOutputStreamer(outputStream: stream)
|
||||||
|
self.party.outputStreamers[fromPeer.displayName]!.streamAudioFromURL((self.party.currentSong.valueForProperty(MPMediaItemPropertyAssetURL) as! NSURL))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|||||||
@ -1056,6 +1056,7 @@
|
|||||||
</subviews>
|
</subviews>
|
||||||
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
|
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
|
||||||
</view>
|
</view>
|
||||||
|
<nil key="simulatedTopBarMetrics"/>
|
||||||
<simulatedScreenMetrics key="simulatedDestinationMetrics" type="retina4"/>
|
<simulatedScreenMetrics key="simulatedDestinationMetrics" type="retina4"/>
|
||||||
<connections>
|
<connections>
|
||||||
<outlet property="invitedFriends" destination="fnx-cI-MJO" id="9Ec-6U-lHi"/>
|
<outlet property="invitedFriends" destination="fnx-cI-MJO" id="9Ec-6U-lHi"/>
|
||||||
@ -1452,9 +1453,7 @@
|
|||||||
<connections>
|
<connections>
|
||||||
<outlet property="searchDisplayController" destination="Le1-SR-p7g" id="B5Z-qo-0DN"/>
|
<outlet property="searchDisplayController" destination="Le1-SR-p7g" id="B5Z-qo-0DN"/>
|
||||||
<outlet property="table" destination="iAI-5U-c8e" id="hcz-UQ-Mmg"/>
|
<outlet property="table" destination="iAI-5U-c8e" id="hcz-UQ-Mmg"/>
|
||||||
<segue destination="C6s-vA-8F4" kind="popoverPresentation" identifier="LoadingPartySegue" popoverAnchorView="iAI-5U-c8e" id="zDR-tX-KYY">
|
<segue destination="C6s-vA-8F4" kind="presentation" identifier="LoadingPartySegue" id="zDR-tX-KYY"/>
|
||||||
<popoverArrowDirection key="popoverArrowDirection" up="YES" down="YES" left="YES" right="YES"/>
|
|
||||||
</segue>
|
|
||||||
</connections>
|
</connections>
|
||||||
</viewController>
|
</viewController>
|
||||||
<placeholder placeholderIdentifier="IBFirstResponder" id="f9E-Q6-Co1" userLabel="First Responder" sceneMemberID="firstResponder"/>
|
<placeholder placeholderIdentifier="IBFirstResponder" id="f9E-Q6-Co1" userLabel="First Responder" sceneMemberID="firstResponder"/>
|
||||||
@ -1650,6 +1649,6 @@
|
|||||||
<segue reference="5pn-ck-WiI"/>
|
<segue reference="5pn-ck-WiI"/>
|
||||||
<segue reference="hDN-yC-fGj"/>
|
<segue reference="hDN-yC-fGj"/>
|
||||||
<segue reference="41S-h6-flP"/>
|
<segue reference="41S-h6-flP"/>
|
||||||
<segue reference="OpG-wQ-NAH"/>
|
<segue reference="8uU-Fo-Lw5"/>
|
||||||
</inferredMetricsTieBreakers>
|
</inferredMetricsTieBreakers>
|
||||||
</document>
|
</document>
|
||||||
|
|||||||
@ -59,13 +59,12 @@ class PartyServiceManager: NSObject {
|
|||||||
|
|
||||||
//party-creator variables
|
//party-creator variables
|
||||||
var currentSong: MPMediaItem! = nil
|
var currentSong: MPMediaItem! = nil
|
||||||
var outputStreamer: TDAudioOutputStreamer!
|
var outputStreamers: Dictionary<String, TDAudioOutputStreamer> = Dictionary<String, TDAudioOutputStreamer>()
|
||||||
|
|
||||||
//party-guest variables
|
//party-guest variables
|
||||||
var currentSongTitle: String!
|
var currentSongTitle: String!
|
||||||
var currentSongArtistAlbum: String!
|
var currentSongArtistAlbum: String!
|
||||||
var currentSongIMG: UIImage!
|
var currentSongIMG: UIImage!
|
||||||
var songStream: NSInputStream!
|
|
||||||
var inputStreamer: TDAudioInputStreamer!
|
var inputStreamer: TDAudioInputStreamer!
|
||||||
|
|
||||||
|
|
||||||
@ -329,11 +328,9 @@ extension PartyServiceManager: MCSessionDelegate{
|
|||||||
NSLog("%@", "didRecieveStream: \(streamName) from peer: \(peerID)")
|
NSLog("%@", "didRecieveStream: \(streamName) from peer: \(peerID)")
|
||||||
|
|
||||||
if streamName == "music" {
|
if streamName == "music" {
|
||||||
self.songStream = stream
|
|
||||||
self.inputStreamer = TDAudioInputStreamer(inputStream: stream)
|
self.inputStreamer = TDAudioInputStreamer(inputStream: stream)
|
||||||
self.songStream.delegate = self
|
// self.songStream.scheduleInRunLoop(NSRunLoop.currentRunLoop(), forMode: NSDefaultRunLoopMode)
|
||||||
self.songStream.scheduleInRunLoop(NSRunLoop.currentRunLoop(), forMode: NSDefaultRunLoopMode)
|
self.inputStreamer.start()
|
||||||
//self.songStream.open()
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -350,17 +347,7 @@ extension PartyServiceManager: MCSessionDelegate{
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
extension PartyServiceManager: NSStreamDelegate {
|
|
||||||
func stream(aStream: NSStream, handleEvent eventCode: NSStreamEvent) {
|
|
||||||
if(eventCode == NSStreamEvent.HasBytesAvailable){
|
|
||||||
println("data available in stream")
|
|
||||||
}else if(eventCode == NSStreamEvent.EndEncountered) {
|
|
||||||
println("stream ended")
|
|
||||||
}else if(eventCode == NSStreamEvent.ErrorOccurred) {
|
|
||||||
println("stream error occured")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//state extensions
|
//state extensions
|
||||||
|
|
||||||
|
|||||||
@ -279,7 +279,7 @@ class SongSelectionViewController: UIViewController, UITableViewDelegate, UITabl
|
|||||||
for i_peer in self.party.invitedFriends{
|
for i_peer in self.party.invitedFriends{
|
||||||
for peer in self.party.foundPeers {
|
for peer in self.party.foundPeers {
|
||||||
if (peer.displayName == i_peer.displayName){
|
if (peer.displayName == i_peer.displayName){
|
||||||
self.party.serviceBrowser.invitePeer(peer, toSession: self.party.session, withContext: nil, timeout: 1000.0)
|
self.party.serviceBrowser.invitePeer(peer, toSession: self.party.session, withContext: nil, timeout: 70.0)
|
||||||
|
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
|
|||||||
@ -183,14 +183,24 @@ class TestInviteFriendsController: UIViewController, UITableViewDelegate, UITabl
|
|||||||
|
|
||||||
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
|
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
|
||||||
let cell = table.cellForRowAtIndexPath(indexPath) as? TestInviteFriendsCell
|
let cell = table.cellForRowAtIndexPath(indexPath) as? TestInviteFriendsCell
|
||||||
|
//println(cell?.friendName.text)
|
||||||
|
//println(indexPath.row)
|
||||||
|
var index = 0
|
||||||
|
|
||||||
if self.isFriendSelected[indexPath.row] == false{
|
for(var i = 0; i < self.frnds.count; i++){
|
||||||
|
if(self.frnds[i].displayName == cell?.friendName.text){
|
||||||
|
index = i
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if self.isFriendSelected[index] == false{
|
||||||
cell!.rdioButton.setBackgroundImage(UIImage(named: "Blue Check.png"), forState: UIControlState.Normal)
|
cell!.rdioButton.setBackgroundImage(UIImage(named: "Blue Check.png"), forState: UIControlState.Normal)
|
||||||
self.isFriendSelected[indexPath.row] = true
|
self.isFriendSelected[index] = true
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
cell!.rdioButton.setBackgroundImage(UIImage(named: "Tap Circle.png"), forState: UIControlState.Normal)
|
cell!.rdioButton.setBackgroundImage(UIImage(named: "Tap Circle.png"), forState: UIControlState.Normal)
|
||||||
self.isFriendSelected[indexPath.row] = false
|
self.isFriendSelected[index] = false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user