scaletempo: improve the docs

Fix the syntax, add more explanation and xref the properties.
This commit is contained in:
Stefan Kost 2011-07-07 10:52:50 -07:00
parent 3b6cd3d35c
commit 266a57d77b

View file

@ -21,41 +21,39 @@
/** /**
* SECTION:element-scaletempo * SECTION:element-scaletempo
* *
* <refsect2>
* <para>
* Scale tempo while maintaining pitch * Scale tempo while maintaining pitch
* (WSOLA-like technique with cross correlation) * (WSOLA-like technique with cross correlation)
* Inspired by SoundTouch library by Olli Parviainen * Inspired by SoundTouch library by Olli Parviainen
* </para> *
* <para>
* Use Sceletempo to apply playback rates without the chipmunk effect. * Use Sceletempo to apply playback rates without the chipmunk effect.
* </para> *
* <refsect2>
* <title>Example pipelines</title> * <title>Example pipelines</title>
* <para> * <para>
* <programlisting> * |[
* filesrc location=media.ext ! decodebin name=d \ * filesrc location=media.ext ! decodebin name=d \
* d. ! queue ! audioconvert ! audioresample ! scaletempo ! audioconvert ! audioresample ! autoaudiosink \ * d. ! queue ! audioconvert ! audioresample ! scaletempo ! audioconvert ! audioresample ! autoaudiosink \
* d. ! queue ! ffmpegcolorspace ! autovideosink * d. ! queue ! ffmpegcolorspace ! autovideosink
* </programlisting> * ]|
* OR * OR
* <programlisting> * |[
* playbin uri=... audio_sink="scaletempo ! audioconvert ! audioresample ! autoaudiosink" * playbin uri=... audio_sink="scaletempo ! audioconvert ! audioresample ! autoaudiosink"
* </programlisting> * ]|
* When an application sends a seek event with rate != 1.0, Scaletempo applies * When an application sends a seek event with rate != 1.0, Scaletempo applies
* the rate change by scaling the tempo without scaling the pitch. * the rate change by scaling the tempo without scaling the pitch.
* </para> *
* <para> * Scaletempo works by producing audio in constant sized chunks
* Scaletempo works by producing audio in constant sized chunks (a "stride") but * (#GstScaletempo:stride) but consuming chunks proportional to the playback
* consuming chunks proportional to the playback rate. * rate.
* </para> *
* <para>
* Scaletempo then smooths the output by blending the end of one stride with * Scaletempo then smooths the output by blending the end of one stride with
* the next ("overlap"). * the next (#GstScaletempo:overlap).
* </para> *
* <para>
* Scaletempo smooths the overlap further by searching within the input buffer * Scaletempo smooths the overlap further by searching within the input buffer
* for the best overlap position. Scaletempo uses a statistical cross correlation * for the best overlap position. Scaletempo uses a statistical cross
* (roughly a dot-product). Scaletempo consumes most of its CPU cycles here. * correlation (roughly a dot-product). Scaletempo consumes most of its CPU
* cycles here. One can use the #GstScaletempo:search propery to tune how far
* the algoritm looks.
* </para> * </para>
* </refsect2> * </refsect2>
*/ */