* SECTION:gstaudiocdsrc
* @short_description: Base class for Audio CD sources
*
- * <refsect2>
* <para>
* Provides a base class for CD digital audio (CDDA) sources, which handles
* things like seeking, querying, discid calculation, tags, and buffer
* timestamping.
* </para>
+ * <refsect2>
* <title>Using GstAudioCdSrc-based elements in applications</title>
* <para>
* GstAudioCdSrc registers two #GstFormat<!-- -->s of its own, namely
* setting a new cdda://n+1 URI on playbin (as setting a new URI on playbin
* involves closing and re-opening the CD device, which is much much slower).
* </para>
+ * <refsect2>
+ * </refsect2>
* <title>Tags and meta-information</title>
* <para>
* CDDA sources will automatically emit a number of tags, details about which
* among others.
* </para>
* </refsect2>
+ * <refsect2>
+ * <title>Tracks and Table of Contents (TOC)</title>
+ * <para>
+ * Applications will be informed of the available tracks via a TOC message
+ * on the pipeline's #GstBus. The #GstToc will contain a #GstTocEntry for
+ * each track, with information about each track. The duration for each
+ * track can be retrieved via the #GST_TAG_DURATION tag from each entry's
+ * tag list, or calculated via gst_toc_entry_get_start_stop_times().
+ * The track entries in the TOC will be sorted by track number.
+ * </para>
+ * </refsect2>
*/
#ifdef HAVE_CONFIG_H
* @tags: Track-specific tags (e.g. from cd-text information), or NULL
*
* CD track abstraction to communicate TOC entries to the base class.
+ *
+ * This structure is only for use by sub-classed in connection with
+ * gst_audio_cd_src_add_track().
+ *
+ * Applications will be informed of the available tracks via a TOC message
+ * on the pipeline's #GstBus instead.
*/
+/* FIXME 2.0: remove this struct and pass values directly to _add_track() */
struct _GstAudioCdSrcTrack {
gboolean is_audio; /* TRUE if this is an audio track */
guint num; /* real track number (usually starts from 1) */
gboolean gst_audio_cd_src_add_track (GstAudioCdSrc * src,
GstAudioCdSrcTrack * track);
-#if 0
-/*
- * GST_TAG_CDDA_TRACK_TAGS:
- *
- * Tag details for all available tracks
- * FiXME: find out which type we want for this!
- */
-#define GST_TAG_CDDA_TRACK_TAGS "track-tags"
-#endif
-
G_END_DECLS
#endif /* __GST_AUDIO_CD_SRC_H__ */
-