mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-26 02:00:33 +00:00
Merge remote-tracking branch 'origin/master' into 0.11
This commit is contained in:
commit
ac6c07a955
7 changed files with 16 additions and 31 deletions
2
common
2
common
|
@ -1 +1 @@
|
||||||
Subproject commit 69b981f10caa234ad0ff639179d0fda8505bd94b
|
Subproject commit 605cd9a65ed61505f24b840d3fe8e252be72b151
|
|
@ -287,3 +287,8 @@ though (e.g. we would not be able to detect the profile in all cases then
|
||||||
before plugging a decoder, which would make it hard to just play the audio
|
before plugging a decoder, which would make it hard to just play the audio
|
||||||
part of a stream and not the video if a suitable decoder was missing, for
|
part of a stream and not the video if a suitable decoder was missing, for
|
||||||
example).
|
example).
|
||||||
|
|
||||||
|
Additional considerations: the same problem exists with sinks that support
|
||||||
|
non-raw formats. Consider, for example, an audio sink that accepts DTS audio,
|
||||||
|
but only the 14-bit variant, not the 16-bit variant (or only native endiannes).
|
||||||
|
Ideally dcaparse would convert into the required stream format here.
|
||||||
|
|
|
@ -27,11 +27,11 @@ G_BEGIN_DECLS
|
||||||
#define GST_TYPE_STREAM_VOLUME \
|
#define GST_TYPE_STREAM_VOLUME \
|
||||||
(gst_stream_volume_get_type ())
|
(gst_stream_volume_get_type ())
|
||||||
#define GST_STREAM_VOLUME(obj) \
|
#define GST_STREAM_VOLUME(obj) \
|
||||||
(GST_IMPLEMENTS_INTERFACE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_STREAM_VOLUME, GstStreamVolume))
|
(G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_STREAM_VOLUME, GstStreamVolume))
|
||||||
#define GST_STREAM_VOLUME_INTERFACE(iface) \
|
#define GST_STREAM_VOLUME_INTERFACE(iface) \
|
||||||
(G_TYPE_CHECK_INTERFACE_CAST ((iface), GST_TYPE_STREAM_VOLUME, GstStreamVolumeInterface))
|
(G_TYPE_CHECK_INTERFACE_CAST ((iface), GST_TYPE_STREAM_VOLUME, GstStreamVolumeInterface))
|
||||||
#define GST_IS_STREAM_VOLUME(obj) \
|
#define GST_IS_STREAM_VOLUME(obj) \
|
||||||
(GST_IMPLEMENTS_INTERFACE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_STREAM_VOLUME))
|
(G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_STREAM_VOLUME))
|
||||||
#define GST_IS_STREAM_VOLUME_INTERFACE(iface) \
|
#define GST_IS_STREAM_VOLUME_INTERFACE(iface) \
|
||||||
(G_TYPE_CHECK_INTERFACE_TYPE ((iface), GST_TYPE_STREAM_VOLUME))
|
(G_TYPE_CHECK_INTERFACE_TYPE ((iface), GST_TYPE_STREAM_VOLUME))
|
||||||
#define GST_STREAM_VOLUME_GET_INTERFACE(inst) \
|
#define GST_STREAM_VOLUME_GET_INTERFACE(inst) \
|
||||||
|
|
|
@ -643,10 +643,14 @@ parse_encoding_profile (GKeyFile * in, gchar * parentprofilename,
|
||||||
*) sprof, variableframerate);
|
*) sprof, variableframerate);
|
||||||
gst_encoding_video_profile_set_pass ((GstEncodingVideoProfile *) sprof,
|
gst_encoding_video_profile_set_pass ((GstEncodingVideoProfile *) sprof,
|
||||||
pass);
|
pass);
|
||||||
|
gst_encoding_profile_set_name (sprof, pname);
|
||||||
|
gst_encoding_profile_set_description (sprof, description);
|
||||||
} else if (!g_strcmp0 (proftype, "audio")) {
|
} else if (!g_strcmp0 (proftype, "audio")) {
|
||||||
sprof =
|
sprof =
|
||||||
(GstEncodingProfile *) gst_encoding_audio_profile_new (formatcaps,
|
(GstEncodingProfile *) gst_encoding_audio_profile_new (formatcaps,
|
||||||
preset, restrictioncaps, presence);
|
preset, restrictioncaps, presence);
|
||||||
|
gst_encoding_profile_set_name (sprof, pname);
|
||||||
|
gst_encoding_profile_set_description (sprof, description);
|
||||||
} else
|
} else
|
||||||
GST_ERROR ("Unknown profile format '%s'", proftype);
|
GST_ERROR ("Unknown profile format '%s'", proftype);
|
||||||
|
|
||||||
|
|
|
@ -34,9 +34,9 @@ G_BEGIN_DECLS
|
||||||
#define GST_TYPE_RTSP_EXTENSION \
|
#define GST_TYPE_RTSP_EXTENSION \
|
||||||
(gst_rtsp_extension_get_type ())
|
(gst_rtsp_extension_get_type ())
|
||||||
#define GST_RTSP_EXTENSION(obj) \
|
#define GST_RTSP_EXTENSION(obj) \
|
||||||
(GST_IMPLEMENTS_INTERFACE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_RTSP_EXTENSION, GstRTSPExtension))
|
(G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_RTSP_EXTENSION, GstRTSPExtension))
|
||||||
#define GST_IS_RTSP_EXTENSION(obj) \
|
#define GST_IS_RTSP_EXTENSION(obj) \
|
||||||
(GST_IMPLEMENTS_INTERFACE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_RTSP_EXTENSION))
|
(G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_RTSP_EXTENSION))
|
||||||
#define GST_RTSP_EXTENSION_GET_IFACE(inst) \
|
#define GST_RTSP_EXTENSION_GET_IFACE(inst) \
|
||||||
(G_TYPE_INSTANCE_GET_INTERFACE ((inst), GST_TYPE_RTSP_EXTENSION, GstRTSPExtensionInterface))
|
(G_TYPE_INSTANCE_GET_INTERFACE ((inst), GST_TYPE_RTSP_EXTENSION, GstRTSPExtensionInterface))
|
||||||
|
|
||||||
|
|
|
@ -27,11 +27,11 @@ G_BEGIN_DECLS
|
||||||
#define GST_TYPE_TAG_XMP_WRITER \
|
#define GST_TYPE_TAG_XMP_WRITER \
|
||||||
(gst_tag_xmp_writer_get_type ())
|
(gst_tag_xmp_writer_get_type ())
|
||||||
#define GST_TAG_XMP_WRITER(obj) \
|
#define GST_TAG_XMP_WRITER(obj) \
|
||||||
(GST_IMPLEMENTS_INTERFACE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_TAG_XMP_WRITER, GstTagXmpWriter))
|
(G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_TAG_XMP_WRITER, GstTagXmpWriter))
|
||||||
#define GST_TAG_XMP_WRITER_INTERFACE(iface) \
|
#define GST_TAG_XMP_WRITER_INTERFACE(iface) \
|
||||||
(G_TYPE_CHECK_INTERFACE_CAST ((iface), GST_TYPE_TAG_XMP_WRITER, GstTagXmpWriterInterface))
|
(G_TYPE_CHECK_INTERFACE_CAST ((iface), GST_TYPE_TAG_XMP_WRITER, GstTagXmpWriterInterface))
|
||||||
#define GST_IS_TAG_XMP_WRITER(obj) \
|
#define GST_IS_TAG_XMP_WRITER(obj) \
|
||||||
(GST_IMPLEMENTS_INTERFACE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_TAG_XMP_WRITER))
|
(G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_TAG_XMP_WRITER))
|
||||||
#define GST_IS_TAG_XMP_WRITER_INTERFACE(iface) \
|
#define GST_IS_TAG_XMP_WRITER_INTERFACE(iface) \
|
||||||
(G_TYPE_CHECK_INTERFACE_TYPE ((iface), GST_TYPE_TAG_XMP_WRITER))
|
(G_TYPE_CHECK_INTERFACE_TYPE ((iface), GST_TYPE_TAG_XMP_WRITER))
|
||||||
#define GST_TAG_XMP_WRITER_GET_INTERFACE(inst) \
|
#define GST_TAG_XMP_WRITER_GET_INTERFACE(inst) \
|
||||||
|
|
|
@ -54,7 +54,6 @@ struct TestElementClass
|
||||||
GType test_element_get_type (void);
|
GType test_element_get_type (void);
|
||||||
|
|
||||||
static void init_interface (GType type);
|
static void init_interface (GType type);
|
||||||
static void gst_implements_interface_init (GstImplementsInterfaceClass * klass);
|
|
||||||
static void nav_send_event (GstNavigation * navigation,
|
static void nav_send_event (GstNavigation * navigation,
|
||||||
GstStructure * structure);
|
GstStructure * structure);
|
||||||
|
|
||||||
|
@ -75,14 +74,7 @@ init_interface (GType type)
|
||||||
NULL,
|
NULL,
|
||||||
NULL,
|
NULL,
|
||||||
};
|
};
|
||||||
static const GInterfaceInfo implements_iface_info = {
|
|
||||||
(GInterfaceInitFunc) gst_implements_interface_init,
|
|
||||||
NULL,
|
|
||||||
NULL,
|
|
||||||
};
|
|
||||||
|
|
||||||
g_type_add_interface_static (type, GST_TYPE_IMPLEMENTS_INTERFACE,
|
|
||||||
&implements_iface_info);
|
|
||||||
g_type_add_interface_static (type, GST_TYPE_NAVIGATION,
|
g_type_add_interface_static (type, GST_TYPE_NAVIGATION,
|
||||||
&navigation_iface_info);
|
&navigation_iface_info);
|
||||||
}
|
}
|
||||||
|
@ -92,22 +84,6 @@ test_element_class_init (TestElementClass * klass)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
static gboolean
|
|
||||||
test_element_interface_supported (GstImplementsInterface * ifacE,
|
|
||||||
GType interface_type)
|
|
||||||
{
|
|
||||||
if (interface_type == GST_TYPE_NAVIGATION)
|
|
||||||
return TRUE;
|
|
||||||
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
gst_implements_interface_init (GstImplementsInterfaceClass * klass)
|
|
||||||
{
|
|
||||||
klass->supported = test_element_interface_supported;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
test_element_init (TestElement * this)
|
test_element_init (TestElement * this)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue