diff options
author | Lori Anderson <lori@rkymtnhi.com> | 2013-11-05 14:32:48 -0700 |
---|---|---|
committer | Lori Anderson <lori@rkymtnhi.com> | 2013-11-05 14:32:48 -0700 |
commit | d83bf18bf966455419be1fc6fad59685a1355f84 (patch) | |
tree | 546fabe58d651576e06c845e7e6caf2bb64a18f0 | |
parent | 5c9dd326e7cc3ddaea8fe6c75cf54be4016c3d80 (diff) | |
parent | c77f186b643d8036795f8f6a3d2135b3eb488961 (diff) |
Merge branch 'master' into dlnasrc-36-cpp-comments
Conflicts:
src/gstdlnasrc.c
-rw-r--r-- | src/gstdlnasrc.c | 29 | ||||
-rw-r--r-- | src/gstdlnasrc.h | 1 |
2 files changed, 26 insertions, 4 deletions
diff --git a/src/gstdlnasrc.c b/src/gstdlnasrc.c index 5187e34..4c6f071 100644 --- a/src/gstdlnasrc.c +++ b/src/gstdlnasrc.c @@ -1599,7 +1599,7 @@ dlna_src_setup_bin (GstDlnaSrc * dlna_src) } else GST_INFO_OBJECT (dlna_src, "Not setting URI of souphttpsrc"); - /* Setup dtcp element if content is encrypted */ + /* Setup dtcp element if necessary */ if (dlna_src->is_encrypted) { GST_INFO_OBJECT (dlna_src, "Setting up dtcp"); if (!dlna_src_setup_dtcp (dlna_src)) { @@ -1688,9 +1688,32 @@ dlna_src_setup_dtcp (GstDlnaSrc * dlna_src) (dlna_src->http_src, dlna_src->dtcp_decrypter, NULL)) { GST_ERROR_OBJECT (dlna_src, "Problems linking elements in src. Exiting."); return FALSE; - } else - GST_INFO_OBJECT (dlna_src, "Linked http src and dtcp decrypter"); + } + + GST_INFO_OBJECT (dlna_src, "Getting dtcpip decrypter src pad"); + GstPad *pad = gst_element_get_static_pad (dlna_src->dtcp_decrypter, "src"); + if (!pad) { + GST_ERROR_OBJECT (dlna_src, + "Could not get pad for dtcp decrypter. Exiting."); + return FALSE; + } + + GST_INFO_OBJECT (dlna_src, + "Creating src pad for dlnasrc bin using decyrpter src pad"); + dlna_src->src_pad = gst_ghost_pad_new ("src", pad); + gst_pad_set_active (dlna_src->src_pad, TRUE); + gst_element_add_pad (GST_ELEMENT (&dlna_src->bin), dlna_src->src_pad); + gst_object_unref (pad); + + // Configure event function on sink pad before adding pad to element + gst_pad_set_event_function (dlna_src->src_pad, + (GstPadEventFunction) gst_dlna_src_event); + + // Configure event function on sink pad before adding pad to element + gst_pad_set_query_function (dlna_src->src_pad, + (GstPadQueryFunction) gst_dlna_src_query); + // Setup the block size for dtcp g_object_set (dlna_src->http_src, "blocksize", dlna_src->dtcp_blocksize, NULL); diff --git a/src/gstdlnasrc.h b/src/gstdlnasrc.h index f584c3e..5322d54 100644 --- a/src/gstdlnasrc.h +++ b/src/gstdlnasrc.h @@ -81,7 +81,6 @@ struct _GstDlnaSrc /* Current playback rate */ gfloat rate; - gfloat requested_rate; GstFormat requested_format; guint64 requested_start; |