mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-09-08 13:18:52 +00:00
Original commit message from CVS: * examples/dynparams/filter.c: (ui_control_create): * examples/gstplay/player.c: (print_tag): * ext/alsa/gstalsa.c: (gst_alsa_request_new_pad): * ext/gdk_pixbuf/gstgdkanimation.c: (gst_gdk_animation_iter_may_advance): * ext/jack/gstjack.c: (gst_jack_request_new_pad): * ext/mad/gstid3tag.c: (gst_mad_id3_to_tag_list), (tag_list_to_id3_tag_foreach), (gst_id3_tag_handle_event): * ext/vorbis/oggvorbisenc.c: (gst_oggvorbisenc_get_tag_value): * ext/vorbis/vorbisenc.c: (gst_vorbisenc_get_tag_value): * ext/xine/xineaudiodec.c: (gst_xine_audio_dec_chain): * gst-libs/gst/media-info/media-info-test.c: (print_tag): * gst/sine/demo-dparams.c: (main): * gst/tags/gstvorbistag.c: (gst_tag_to_vorbis_comments): * testsuite/alsa/formats.c: (create_pipeline): * testsuite/alsa/sinesrc.c: (sinesrc_force_caps), (sinesrc_get): fixes for G_DISABLE_ASSERT and friends * gst/typefind/gsttypefindfunctions.c: (aac_type_find), (mp3_type_frame_length_from_header), (mp3_type_find), (plugin_init): require mp3 typefinding to have at least MIN_HEADERS valid headers add typefinding for AAC adts files |
||
---|---|---|
.. | ||
.gitignore | ||
Makefile.am | ||
media-info-priv.c | ||
media-info-priv.h | ||
media-info-test.c | ||
media-info.c | ||
media-info.h | ||
media-info.vcproj | ||
README |
* media-info is a library to collect metadata and streaminfo from media files * the current implementation is idler-based. * you create a new media_info object * you set the string name of a source element to use using g_object_set or gst_media_info_set_source * you declare you'll read a given file by using gst_media_info_read_with_idler * you loop gst_media_info_read_idler (info, &stream) as long as it returns TRUE and as long as stream is still NULL * INTERNALS: - instance_init sets up the media info reader, its elements, and connects the deep_notify callback - read_with_idler resets the media info reader object, and sets location and flags - read_idler runs through a state machine: NULL - TYPEFIND - STREAM - METADATA - STREAMINFO - FORMAT - NULL: just returns find_type_pre, which moves state to TYPEFIND - TYPEFIND: - iterates as long as it can until it has priv->type - find_type_post - call gmi_set_mime which creates a pipeline to decode stuff - move to STREAM - STREAM