]> www.infradead.org Git - pidgin-chime.git/commitdiff
Not working with filesink
authorDavid Woodhouse <dwmw@amazon.co.uk>
Fri, 3 Nov 2017 08:30:52 +0000 (08:30 +0000)
committerDavid Woodhouse <dwmw@amazon.co.uk>
Sat, 4 Nov 2017 08:55:51 +0000 (08:55 +0000)
The fsappbin1 bin never entes the PLAYING state, for some reason. Hopefully
I can get a coherent response to
https://lists.freedesktop.org/archives/farstream-devel/2017-November/000079.html

chat.c
fs-app-stream-transmitter.c
fs-app-transmitter.c

diff --git a/chat.c b/chat.c
index 8b62298e53ef50bb9e8316ac36a23bcdcf9ddc07..6a0b6d0d28ebe67218527212065f6bbffd08661b 100644 (file)
--- a/chat.c
+++ b/chat.c
@@ -314,7 +314,7 @@ static void audio_joined(GObject *source, GAsyncResult *result, gpointer _chat)
        if (!chat->audio)
                return;
 
-#if 1 /* FIXME make this work... */
+#if 0 /* FIXME make this work... */
        const gchar *name = chime_call_get_alert_body(chat->call);
        chat->media = purple_media_manager_create_media(purple_media_manager_get(),
                                                               chat->conv->account,
@@ -326,7 +326,6 @@ static void audio_joined(GObject *source, GAsyncResult *result, gpointer _chat)
                gboolean r = purple_media_add_stream(chat->media, "chime", name,
                                                     PURPLE_MEDIA_AUDIO, TRUE,
                                                     "app", 0, NULL);
-               purple_media_stream_info(chat->media, PURPLE_MEDIA_INFO_ACCEPT, "chime", name, FALSE);
                printf("Add stream %s\n", r ? "succeeded" : "failed");
                GList *cands = g_list_append (NULL,
                                              purple_media_candidate_new(NULL, 1,
@@ -334,10 +333,10 @@ static void audio_joined(GObject *source, GAsyncResult *result, gpointer _chat)
 
                GList *codecs = g_list_append(NULL,
                                               purple_media_codec_new(1, "audio/x-raw, format=(string)S16LE, layout=(string)interleaved, rate=(int)44100, channels=(int)1", PURPLE_MEDIA_AUDIO, 0));
-               //              purple_media_set_send_codec(chat->media, "chime", codecs->data);
-
                purple_media_add_remote_candidates(chat->media, "chime", name, cands);
+               purple_media_set_send_codec(chat->media, "chime", codecs->data);
                purple_media_set_remote_codecs(chat->media, "chime", name, codecs);
+               purple_media_stream_info(chat->media, PURPLE_MEDIA_INFO_ACCEPT, "chime", name, FALSE);
        }
 #endif
 }
index edb6f613207a67ad168e3e861313a5175943b203..d174f80c0ebebcd52cc47f22e7ddcbf319dbe4d2 100644 (file)
@@ -385,7 +385,7 @@ static void
 connected_cb (guint component, gint id, gpointer data)
 {
   FsAppStreamTransmitter *self = data;
-
+  printf("emit state-changed for %p:%u\n", self, component);
   g_signal_emit_by_name (self, "state-changed", component,
       FS_STREAM_STATE_READY);
 }
@@ -419,7 +419,7 @@ fs_app_stream_transmitter_add_sink (FsAppStreamTransmitter *self,
   if (candidate->component_id == 1) {
     fs_app_transmitter_sink_set_sending (self->priv->transmitter,
         self->priv->app_sink[candidate->component_id], self->priv->sending);
-    //    connected_cb(1, 0, self);
+    connected_cb(1, 0, self);
   }
   return TRUE;
 }
@@ -578,7 +578,7 @@ fs_app_stream_transmitter_gather_local_candidates (
       if (c == 1) {
         fs_app_transmitter_sink_set_sending (self->priv->transmitter,
             self->priv->app_sink[c], self->priv->sending);
-       //      connected_cb(1, 0, self);
+       connected_cb(1, 0, self);
       }
     }
 
index d8d068c6988525d5f2c2e8bcf6a8f84e227c8b98..a51e44558a909f7e589312872ef1c50ad3c5bf8e 100644 (file)
@@ -778,7 +778,7 @@ fs_app_transmitter_get_app_sink (FsAppTransmitter *self,
 
   /* First add the sink */
 
-  elem = gst_element_factory_make ("appsink", NULL);
+  elem = gst_element_factory_make ("filesink", NULL);
   if (!elem)
   {
     g_set_error (error, FS_ERROR, FS_ERROR_CONSTRUCTION,