mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-17 03:35:21 +00:00
Simplified the FOURCC API to the caps, add a GST_MAKE_FOURCC macro to create a fourcc.
Original commit message from CVS: Simplified the FOURCC API to the caps, add a GST_MAKE_FOURCC macro to create a fourcc. Adjusted the plugins to use the new FOURCC API
This commit is contained in:
parent
54347a618b
commit
04813b163b
3 changed files with 15 additions and 4 deletions
|
@ -13,7 +13,7 @@ void eos(GstElement *element)
|
|||
|
||||
int main(int argc,char *argv[])
|
||||
{
|
||||
GstElement *bin, *disksrc, *parse, *decoder, *osssink;
|
||||
GstElement *bin, *disksrc, *parse, *decoder, *downmix, *osssink;
|
||||
|
||||
gst_init(&argc,&argv);
|
||||
|
||||
|
@ -34,6 +34,7 @@ int main(int argc,char *argv[])
|
|||
/* now it's time to get the parser */
|
||||
parse = gst_elementfactory_make("mp3parse","parse");
|
||||
decoder = gst_elementfactory_make("mpg123","decoder");
|
||||
downmix = gst_elementfactory_make("stereo2mono","stereo2mono");
|
||||
/* and an audio sink */
|
||||
osssink = gst_elementfactory_make("osssink", "play_audio");
|
||||
|
||||
|
@ -41,6 +42,7 @@ int main(int argc,char *argv[])
|
|||
gst_bin_add(GST_BIN(bin), disksrc);
|
||||
gst_bin_add(GST_BIN(bin), parse);
|
||||
gst_bin_add(GST_BIN(bin), decoder);
|
||||
gst_bin_add(GST_BIN(bin), downmix);
|
||||
gst_bin_add(GST_BIN(bin), osssink);
|
||||
|
||||
/* connect src to sink */
|
||||
|
@ -49,6 +51,8 @@ int main(int argc,char *argv[])
|
|||
gst_pad_connect(gst_element_get_pad(parse,"src"),
|
||||
gst_element_get_pad(decoder,"sink"));
|
||||
gst_pad_connect(gst_element_get_pad(decoder,"src"),
|
||||
gst_element_get_pad(downmix,"sink"));
|
||||
gst_pad_connect(gst_element_get_pad(downmix,"src"),
|
||||
gst_element_get_pad(osssink,"sink"));
|
||||
|
||||
/* start playing */
|
||||
|
@ -66,6 +70,7 @@ int main(int argc,char *argv[])
|
|||
gst_object_destroy(GST_OBJECT(osssink));
|
||||
gst_object_destroy(GST_OBJECT(parse));
|
||||
gst_object_destroy(GST_OBJECT(decoder));
|
||||
gst_object_destroy(GST_OBJECT(downmix));
|
||||
gst_object_destroy(GST_OBJECT(disksrc));
|
||||
gst_object_destroy(GST_OBJECT(bin));
|
||||
|
||||
|
|
|
@ -60,11 +60,12 @@ typedef enum {
|
|||
#define GST_PROPS_STRING_ID GINT_TO_POINTER(GST_PROPS_STRING_ID_NUM)
|
||||
#define GST_PROPS_LAST_ID GINT_TO_POINTER(GST_PROPS_LAST_ID_NUM)
|
||||
|
||||
#define GST_MAKE_FOURCC(a,b,c,d) ((a)|(b)<<8|(c)<<16|(d)<<24)
|
||||
|
||||
#define GST_PROPS_LIST(a...) GST_PROPS_LIST_ID,##a,NULL
|
||||
#define GST_PROPS_INT(a) GST_PROPS_INT_ID,(GINT_TO_POINTER(a))
|
||||
#define GST_PROPS_INT_RANGE(a,b) GST_PROPS_INT_RANGE_ID,(GINT_TO_POINTER(a)),(GINT_TO_POINTER(b))
|
||||
#define GST_PROPS_FOURCC(a,b,c,d) GST_PROPS_FOURCC_ID,(GINT_TO_POINTER((a)|(b)<<8|(c)<<16|(d)<<24))
|
||||
#define GST_PROPS_FOURCC_INT(a) GST_PROPS_FOURCC_ID,(GINT_TO_POINTER(a))
|
||||
#define GST_PROPS_FOURCC(a) GST_PROPS_FOURCC_ID,(GINT_TO_POINTER(a))
|
||||
#define GST_PROPS_BOOLEAN(a) GST_PROPS_BOOL_ID,(GINT_TO_POINTER(a))
|
||||
#define GST_PROPS_STRING(a) GST_PROPS_STRING_ID,(a)
|
||||
|
||||
|
|
|
@ -13,7 +13,7 @@ void eos(GstElement *element)
|
|||
|
||||
int main(int argc,char *argv[])
|
||||
{
|
||||
GstElement *bin, *disksrc, *parse, *decoder, *osssink;
|
||||
GstElement *bin, *disksrc, *parse, *decoder, *downmix, *osssink;
|
||||
|
||||
gst_init(&argc,&argv);
|
||||
|
||||
|
@ -34,6 +34,7 @@ int main(int argc,char *argv[])
|
|||
/* now it's time to get the parser */
|
||||
parse = gst_elementfactory_make("mp3parse","parse");
|
||||
decoder = gst_elementfactory_make("mpg123","decoder");
|
||||
downmix = gst_elementfactory_make("stereo2mono","stereo2mono");
|
||||
/* and an audio sink */
|
||||
osssink = gst_elementfactory_make("osssink", "play_audio");
|
||||
|
||||
|
@ -41,6 +42,7 @@ int main(int argc,char *argv[])
|
|||
gst_bin_add(GST_BIN(bin), disksrc);
|
||||
gst_bin_add(GST_BIN(bin), parse);
|
||||
gst_bin_add(GST_BIN(bin), decoder);
|
||||
gst_bin_add(GST_BIN(bin), downmix);
|
||||
gst_bin_add(GST_BIN(bin), osssink);
|
||||
|
||||
/* connect src to sink */
|
||||
|
@ -49,6 +51,8 @@ int main(int argc,char *argv[])
|
|||
gst_pad_connect(gst_element_get_pad(parse,"src"),
|
||||
gst_element_get_pad(decoder,"sink"));
|
||||
gst_pad_connect(gst_element_get_pad(decoder,"src"),
|
||||
gst_element_get_pad(downmix,"sink"));
|
||||
gst_pad_connect(gst_element_get_pad(downmix,"src"),
|
||||
gst_element_get_pad(osssink,"sink"));
|
||||
|
||||
/* start playing */
|
||||
|
@ -66,6 +70,7 @@ int main(int argc,char *argv[])
|
|||
gst_object_destroy(GST_OBJECT(osssink));
|
||||
gst_object_destroy(GST_OBJECT(parse));
|
||||
gst_object_destroy(GST_OBJECT(decoder));
|
||||
gst_object_destroy(GST_OBJECT(downmix));
|
||||
gst_object_destroy(GST_OBJECT(disksrc));
|
||||
gst_object_destroy(GST_OBJECT(bin));
|
||||
|
||||
|
|
Loading…
Reference in a new issue