X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=gst%2Fgstprotection.h;h=f77a7bf97ce5519e8132b054a55734a9804d7e19;hb=dac5966da6a0f53d0443dfa1ac239289028c415d;hp=9a4b86a01b963501d3c66e88203f409636c8d74f;hpb=abdafb0d641448e4693bd98740f7c26f1860fa15;p=platform%2Fupstream%2Fgstreamer.git diff --git a/gst/gstprotection.h b/gst/gstprotection.h index 9a4b86a..f77a7bf 100644 --- a/gst/gstprotection.h +++ b/gst/gstprotection.h @@ -24,10 +24,33 @@ G_BEGIN_DECLS -/* @PROTECTION_SYSTEM_ID_CAPS_FIELD: The field name in a GstCaps that is - * used to signal the UUID of the protection system +/** + * GST_PROTECTION_SYSTEM_ID_CAPS_FIELD: + * + * The field name in a GstCaps that is used to signal the UUID of the protection + * system. + * + * Since: 1.6 */ -#define PROTECTION_SYSTEM_ID_CAPS_FIELD "protection-system" +#define GST_PROTECTION_SYSTEM_ID_CAPS_FIELD "protection-system" + +/** + * GST_PROTECTION_UNSPECIFIED_SYSTEM_ID: + * + * The protection system value of the unspecified UUID. + * In some cases the system protection ID is not present in the contents or in their + * metadata, as encrypted WebM. + * This define is used to set the value of the "system_id" field in GstProtectionEvent, + * with this value, the application will use an external information to choose which + * protection system to use. + * + * Example: The matroskademux uses this value in the case of encrypted WebM, + * the application will choose the appropriate protection system based on the information + * received through EME API. + * + * Since: 1.16 + */ +#define GST_PROTECTION_UNSPECIFIED_SYSTEM_ID "unspecified-system-id" typedef struct _GstProtectionMeta GstProtectionMeta; /** @@ -37,6 +60,8 @@ typedef struct _GstProtectionMeta GstProtectionMeta; * * Metadata type that holds information about a sample from a protection-protected * track, including the information needed to decrypt it (if it is encrypted). + * + * Since: 1.6 */ struct _GstProtectionMeta { @@ -45,7 +70,9 @@ struct _GstProtectionMeta GstStructure *info; }; +GST_API GType gst_protection_meta_api_get_type (void); + #define GST_PROTECTION_META_API_TYPE (gst_protection_meta_api_get_type()) #define gst_buffer_get_protection_meta(b) \ @@ -53,12 +80,18 @@ GType gst_protection_meta_api_get_type (void); #define GST_PROTECTION_META_INFO (gst_protection_meta_get_info()) -const GstMetaInfo *gst_protection_meta_get_info (void); +GST_API +const GstMetaInfo * gst_protection_meta_get_info (void); -GstProtectionMeta *gst_buffer_add_protection_meta (GstBuffer * buffer, - GstStructure * info); +GST_API +GstProtectionMeta * gst_buffer_add_protection_meta (GstBuffer * buffer, + GstStructure * info); +GST_API +const gchar * gst_protection_select_system (const gchar ** system_identifiers); -const gchar *gst_protection_select_system (const gchar ** system_identifiers); +GST_API +gchar ** gst_protection_filter_systems_by_available_decryptors ( + const gchar ** system_identifiers); G_END_DECLS #endif /* __GST_PROTECTION_META_H__ */