Facebook Live Video API, ¿puedo compartir una secuencia de video amigo mediante progtwigción?

Quiero compartir un video en vivo de Facebook en mi propio muro mediante progtwigción. Quiero hacerlo dentro de mi aplicación después de un inicio de session de Facebook realizado con el facebook sdk , algo así como un intercambio de enlaces normal:

  NSMutableDictionary* params = [[NSMutableDictionary alloc] init]; [params setObject:link forKey:@"picture"]; [params setObject:LinkStringa forKey:@"link"]; [params setObject:ShareTextView.text forKey:@"message"]; [params setObject:[[FBSDKAccessToken currentAccessToken] tokenString] forKey:@"access_token"]; FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc] initWithGraphPath:@"/me/feed" parameters:params HTTPMethod:@"POST"]; [request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) { // Handle the result if (!error) { } else{ NSLog(@"error %@",error.description); } }]; 

No puedo encontrar menciones sobre compartir videos en vivo en la documentation de Facebook, solo cómo crear y publicar videos en vivo. ¿Cómo puedo compartir un video en vivo?

Puede usar este método para eso:

 - (void)enableFacebookLiveStreamingWithCompletionHandler:(void(^)(NSString* facebookStreamURL, NSString* facebookStreamKey, NSError* error))completionHandler; { dispatch_async(dispatch_get_main_queue(), ^{ if ([[FBSDKAccessToken currentAccessToken] hasGranted:permissionPublishActions]) { NSString* liveVideosRequestPath = [NSString stringWithFormat:@"/%@/live_videos",[FBSDKAccessToken currentAccessToken].userID]; FBSDKGraphRequest* request = [[FBSDKGraphRequest alloc] initWithGraphPath:liveVideosRequestPath parameters:nil HTTPMethod:@"POST"]; [request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) { NSLog(@"%@",[FBSDKAccessToken currentAccessToken].permissions); if (error) { if (completionHandler) completionHandler(@"",@"",error); } else { if (completionHandler) completionHandler(@"rtmp://rtmp-api.facebook.com:80/rtmp/",[[result objectForKey:@"stream_url"] lastPathComponent],nil); } }]; } }); } 

Para la transmisión a través de RTMP, use esta biblioteca de código abierto: https://github.com/jgh-/VideoCore

Por ejemplo, hay un código:

 self.vcSession = [[VCSimpleSession alloc] initWithVideoSize:CGSizeMake(854, 480) frameRate:30 bitrate:1000000 useInterfaceOrientation:NO]; [self.view addSubview:self.vcSession.previewView]; self.vcSession.previewView.frame = CGRectMake(40, 40, 320, 240);//self.view.bounds; self.vcSession.delegate = self; [self.vcSession startRtmpSessionWithURL:@"your rtmp:URL "andStreamKey:@"your stream key"]; 

Swift 3

puedes revisar este repository

https://github.com/hansemannn/facebook-live-ios

Cómo utilizar

 var liveVideo: FBSDKLiveVideo! override func viewDidLoad() { super.viewDidLoad() // Create the live video service liveVideo = FBSDKLiveVideo( delegate: self, previewSize: self.view.bounds, videoSize: CGSize(width: 1280, height: 720) ) // Optional: Configure the live-video (see the source for all options) liveVideo.privacy = .me // or .friends, .friendsOfFriends, .custom liveVideo.audience = "me" // or your user-id, page-id, event-id, group-id, ... // Optional: Add the preview view of the stream to your container view. myView.addSubView(liveVideo.preview) } 

introduzca la descripción de la imagen aquí

Encontré este enlace https://developers.facebook.com/docs/videos/live-video-api que dice:

"Transmitir un video en vivo

Una vez que se crea un object live_video, se devolverá una ruta_url y la key en la respuesta. La URL del server será http://rtmp-api.facebook.com/rtmp/ y la key de transmisión será todo después de ella. Use ambos para insert cuadros de video a través de su software de transmisión ".

Déjame saber cómo resulta, ya que también estoy comenzando una aplicación con esta funcionalidad.