• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<html>
3<head>
4<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5<title>lamemp3enc: GStreamer Good Plugins 1.0 Plugins Reference Manual</title>
6<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
7<link rel="home" href="index.html" title="GStreamer Good Plugins 1.0 Plugins Reference Manual">
8<link rel="up" href="ch01.html" title="gst-plugins-good Elements">
9<link rel="prev" href="gst-plugins-good-plugins-jpegenc.html" title="jpegenc">
10<link rel="next" href="gst-plugins-good-plugins-level.html" title="level">
11<meta name="generator" content="GTK-Doc V1.28 (XML mode)">
12<link rel="stylesheet" href="style.css" type="text/css">
13</head>
14<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
15<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
16<td width="100%" align="left" class="shortcuts">
17<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span18                  <a href="#gst-plugins-good-plugins-lamemp3enc.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span19                  <a href="#gst-plugins-good-plugins-lamemp3enc.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_interfaces">  <span class="dim">|</span20                  <a href="#gst-plugins-good-plugins-lamemp3enc.implemented-interfaces" class="shortcut">Implemented Interfaces</a></span><span id="nav_properties">  <span class="dim">|</span21                  <a href="#gst-plugins-good-plugins-lamemp3enc.properties" class="shortcut">Properties</a></span>
22</td>
23<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
24<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
25<td><a accesskey="p" href="gst-plugins-good-plugins-jpegenc.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
26<td><a accesskey="n" href="gst-plugins-good-plugins-level.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
27</tr></table>
28<div class="refentry">
29<a name="gst-plugins-good-plugins-lamemp3enc"></a><div class="titlepage"></div>
30<div class="refnamediv"><table width="100%"><tr>
31<td valign="top">
32<h2><span class="refentrytitle"><a name="gst-plugins-good-plugins-lamemp3enc.top_of_page"></a>lamemp3enc</span></h2>
33<p>lamemp3enc</p>
34</td>
35<td class="gallery_image" valign="top" align="right"></td>
36</tr></table></div>
37<div class="refsect1">
38<a name="gst-plugins-good-plugins-lamemp3enc.properties"></a><h2>Properties</h2>
39<div class="informaltable"><table class="informaltable" border="0">
40<colgroup>
41<col width="150px" class="properties_type">
42<col width="300px" class="properties_name">
43<col width="200px" class="properties_flags">
44</colgroup>
45<tbody>
46<tr>
47<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
48<td class="property_name"><a class="link" href="gst-plugins-good-plugins-lamemp3enc.html#GstLameMP3Enc--bitrate" title="The “bitrate” property">bitrate</a></td>
49<td class="property_flags">Read / Write / Construct</td>
50</tr>
51<tr>
52<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
53<td class="property_name"><a class="link" href="gst-plugins-good-plugins-lamemp3enc.html#GstLameMP3Enc--cbr" title="The “cbr” property">cbr</a></td>
54<td class="property_flags">Read / Write / Construct</td>
55</tr>
56<tr>
57<td class="property_type"><span class="type">GstLameMP3EncEncodingEngineQuality</span></td>
58<td class="property_name"><a class="link" href="gst-plugins-good-plugins-lamemp3enc.html#GstLameMP3Enc--encoding-engine-quality" title="The “encoding-engine-quality” property">encoding-engine-quality</a></td>
59<td class="property_flags">Read / Write / Construct</td>
60</tr>
61<tr>
62<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
63<td class="property_name"><a class="link" href="gst-plugins-good-plugins-lamemp3enc.html#GstLameMP3Enc--mono" title="The “mono” property">mono</a></td>
64<td class="property_flags">Read / Write / Construct</td>
65</tr>
66<tr>
67<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a></td>
68<td class="property_name"><a class="link" href="gst-plugins-good-plugins-lamemp3enc.html#GstLameMP3Enc--quality" title="The “quality” property">quality</a></td>
69<td class="property_flags">Read / Write / Construct</td>
70</tr>
71<tr>
72<td class="property_type"><span class="type">GstLameMP3EncTarget</span></td>
73<td class="property_name"><a class="link" href="gst-plugins-good-plugins-lamemp3enc.html#GstLameMP3Enc--target" title="The “target” property">target</a></td>
74<td class="property_flags">Read / Write / Construct</td>
75</tr>
76</tbody>
77</table></div>
78</div>
79<a name="GstLameMP3Enc"></a><div class="refsect1">
80<a name="gst-plugins-good-plugins-lamemp3enc.other"></a><h2>Types and Values</h2>
81<div class="informaltable"><table class="informaltable" width="100%" border="0">
82<colgroup>
83<col width="150px" class="name">
84<col class="description">
85</colgroup>
86<tbody><tr>
87<td class="datatype_keyword">struct</td>
88<td class="function_name"><a class="link" href="gst-plugins-good-plugins-lamemp3enc.html#GstLameMP3Enc-struct" title="struct GstLameMP3Enc">GstLameMP3Enc</a></td>
89</tr></tbody>
90</table></div>
91</div>
92<div class="refsect1">
93<a name="gst-plugins-good-plugins-lamemp3enc.object-hierarchy"></a><h2>Object Hierarchy</h2>
94<pre class="screen">    <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject-struct">GObject</a>
95    <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
96        <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstObject.html#GstObject-struct">GstObject</a>
97            <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct">GstElement</a>
98                <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gst-plugins-base-libs-1.0/GstAudioEncoder.html#GstAudioEncoder-struct">GstAudioEncoder</a>
99                    <span class="lineart">╰──</span> GstLameMP3Enc
100</pre>
101</div>
102<div class="refsect1">
103<a name="gst-plugins-good-plugins-lamemp3enc.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
104<p>
105GstLameMP3Enc implements
106 <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstPreset.html#GstPreset-struct">GstPreset</a>.</p>
107</div>
108<div class="refsect1">
109<a name="gst-plugins-good-plugins-lamemp3enc.description"></a><h2>Description</h2>
110<p>This element encodes raw integer audio into an MPEG-1 layer 3 (MP3) stream.
111Note that <a class="ulink" href="http://en.wikipedia.org/wiki/MP3" target="_top">MP3</a> is not
112a free format, there are licensing and patent issues to take into
113consideration. See <a class="ulink" href="http://www.vorbis.com/" target="_top">Ogg/Vorbis</a>
114for a royalty free (and often higher quality) alternative.</p>
115<div class="refsect2">
116<a name="id-1.2.85.8.3"></a><h3>Output sample rate</h3>
117If no fixed output sample rate is negotiated on the element's src pad,
118the element will choose an optimal sample rate to resample to internally.
119For example, a 16-bit 44.1 KHz mono audio stream encoded at 48 kbit will
120get resampled to 32 KHz.  Use filter caps on the src pad to force a
121particular sample rate.
122</div>
123<hr>
124<div class="refsect2">
125<a name="id-1.2.85.8.4"></a><h3>Example pipelines</h3>
126<div class="informalexample">
127  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
128    <tbody>
129      <tr>
130        <td class="listing_lines" align="right"><pre>1</pre></td>
131        <td class="listing_code"><pre class="programlisting">gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span class="number">1.0</span> <span class="gtkdoc opt">-</span>v audiotestsrc wave<span class="gtkdoc opt">=</span>sine num<span class="gtkdoc opt">-</span>buffers<span class="gtkdoc opt">=</span><span class="number">100</span> <span class="gtkdoc opt">!</span> audioconvert <span class="gtkdoc opt">!</span> lamemp3enc <span class="gtkdoc opt">!</span> filesink location<span class="gtkdoc opt">=</span>sine<span class="gtkdoc opt">.</span>mp3</pre></td>
132      </tr>
133    </tbody>
134  </table>
135</div>
136 Encode a test sine signal to MP3.
137<div class="informalexample">
138  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
139    <tbody>
140      <tr>
141        <td class="listing_lines" align="right"><pre>1</pre></td>
142        <td class="listing_code"><pre class="programlisting">gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span class="number">1.0</span> <span class="gtkdoc opt">-</span>v autoaudiosrc <span class="gtkdoc opt">!</span> audioconvert <span class="gtkdoc opt">!</span> lamemp3enc target<span class="gtkdoc opt">=</span>bitrate bitrate<span class="gtkdoc opt">=</span><span class="number">192</span> <span class="gtkdoc opt">!</span> filesink location<span class="gtkdoc opt">=</span>alsasrc<span class="gtkdoc opt">.</span>mp3</pre></td>
143      </tr>
144    </tbody>
145  </table>
146</div>
147 Record from a sound card using ALSA and encode to MP3 with an average bitrate of 192kbps
148<div class="informalexample">
149  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
150    <tbody>
151      <tr>
152        <td class="listing_lines" align="right"><pre>1</pre></td>
153        <td class="listing_code"><pre class="programlisting">gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span class="number">1.0</span> <span class="gtkdoc opt">-</span>v filesrc location<span class="gtkdoc opt">=</span>music<span class="gtkdoc opt">.</span>wav <span class="gtkdoc opt">!</span> decodebin <span class="gtkdoc opt">!</span> audioconvert <span class="gtkdoc opt">!</span> audioresample <span class="gtkdoc opt">!</span> lamemp3enc target<span class="gtkdoc opt">=</span>quality quality<span class="gtkdoc opt">=</span><span class="number">0</span> <span class="gtkdoc opt">!</span> id3v2mux <span class="gtkdoc opt">!</span> filesink location<span class="gtkdoc opt">=</span>music<span class="gtkdoc opt">.</span>mp3</pre></td>
154      </tr>
155    </tbody>
156  </table>
157</div>
158 Transcode from a .wav file to MP3 (the id3v2mux element is optional) with best VBR quality
159<div class="informalexample">
160  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
161    <tbody>
162      <tr>
163        <td class="listing_lines" align="right"><pre>1</pre></td>
164        <td class="listing_code"><pre class="programlisting">gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span class="number">1.0</span> <span class="gtkdoc opt">-</span>v cdda<span class="gtkdoc opt">:</span><span class="gtkdoc slc">//5 ! audioconvert ! lamemp3enc target=bitrate cbr=true bitrate=192 ! filesink location=track5.mp3</span></pre></td>
165      </tr>
166    </tbody>
167  </table>
168</div>
169 Encode Audio CD track 5 to MP3 with a constant bitrate of 192kbps
170<div class="informalexample">
171  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
172    <tbody>
173      <tr>
174        <td class="listing_lines" align="right"><pre>1</pre></td>
175        <td class="listing_code"><pre class="programlisting">gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span class="number">1.0</span> <span class="gtkdoc opt">-</span>v audiotestsrc num<span class="gtkdoc opt">-</span>buffers<span class="gtkdoc opt">=</span><span class="number">10</span> <span class="gtkdoc opt">!</span> audio<span class="gtkdoc opt">/</span>x<span class="gtkdoc opt">-</span>raw<span class="gtkdoc opt">,</span>rate<span class="gtkdoc opt">=</span><span class="number">44100</span><span class="gtkdoc opt">,</span>channels<span class="gtkdoc opt">=</span><span class="number">1</span> <span class="gtkdoc opt">!</span> lamemp3enc target<span class="gtkdoc opt">=</span>bitrate cbr<span class="gtkdoc opt">=</span><span class="keyword">true</span> bitrate<span class="gtkdoc opt">=</span><span class="number">48</span> <span class="gtkdoc opt">!</span> filesink location<span class="gtkdoc opt">=</span>test<span class="gtkdoc opt">.</span>mp3</pre></td>
176      </tr>
177    </tbody>
178  </table>
179</div>
180 Encode to a fixed sample rate
181</div>
182<div class="refsynopsisdiv">
183<h2>Synopsis</h2>
184<div class="refsect2">
185<a name="id-1.2.85.8.5.1"></a><h3>Element Information</h3>
186<div class="variablelist"><table border="0" class="variablelist">
187<colgroup>
188<col align="left" valign="top">
189<col>
190</colgroup>
191<tbody>
192<tr>
193<td><p><span class="term">plugin</span></p></td>
194<td>
195            <a class="link" href="gst-plugins-good-plugins-plugin-lame.html#plugin-lame">lame</a>
196          </td>
197</tr>
198<tr>
199<td><p><span class="term">author</span></p></td>
200<td>Sebastian Dröge &lt;sebastian.droege@collabora.co.uk&gt;</td>
201</tr>
202<tr>
203<td><p><span class="term">class</span></p></td>
204<td>Codec/Encoder/Audio</td>
205</tr>
206</tbody>
207</table></div>
208</div>
209<hr>
210<div class="refsect2">
211<a name="id-1.2.85.8.5.2"></a><h3>Element Pads</h3>
212<div class="variablelist"><table border="0" class="variablelist">
213<colgroup>
214<col align="left" valign="top">
215<col>
216</colgroup>
217<tbody>
218<tr>
219<td><p><span class="term">name</span></p></td>
220<td>sink</td>
221</tr>
222<tr>
223<td><p><span class="term">direction</span></p></td>
224<td>sink</td>
225</tr>
226<tr>
227<td><p><span class="term">presence</span></p></td>
228<td>always</td>
229</tr>
230<tr>
231<td><p><span class="term">details</span></p></td>
232<td>audio/x-raw, format=(string)S16LE, layout=(string)interleaved, rate=(int){ 8000, 11025, 12000, 16000, 22050, 24000, 32000, 44100, 48000 }, channels=(int)1</td>
233</tr>
234<tr>
235<td><p><span class="term"></span></p></td>
236<td> audio/x-raw, format=(string)S16LE, layout=(string)interleaved, rate=(int){ 8000, 11025, 12000, 16000, 22050, 24000, 32000, 44100, 48000 }, channels=(int)2, channel-mask=(bitmask)0x0000000000000003</td>
237</tr>
238</tbody>
239</table></div>
240<div class="variablelist"><table border="0" class="variablelist">
241<colgroup>
242<col align="left" valign="top">
243<col>
244</colgroup>
245<tbody>
246<tr>
247<td><p><span class="term">name</span></p></td>
248<td>src</td>
249</tr>
250<tr>
251<td><p><span class="term">direction</span></p></td>
252<td>source</td>
253</tr>
254<tr>
255<td><p><span class="term">presence</span></p></td>
256<td>always</td>
257</tr>
258<tr>
259<td><p><span class="term">details</span></p></td>
260<td>audio/mpeg, mpegversion=(int)1, layer=(int)3, rate=(int){ 8000, 11025, 12000, 16000, 22050, 24000, 32000, 44100, 48000 }, channels=(int)[ 1, 2 ]</td>
261</tr>
262</tbody>
263</table></div>
264</div>
265</div>
266</div>
267<div class="refsect1">
268<a name="gst-plugins-good-plugins-lamemp3enc.functions_details"></a><h2>Functions</h2>
269<p></p>
270</div>
271<div class="refsect1">
272<a name="gst-plugins-good-plugins-lamemp3enc.other_details"></a><h2>Types and Values</h2>
273<div class="refsect2">
274<a name="GstLameMP3Enc-struct"></a><h3>struct GstLameMP3Enc</h3>
275<pre class="programlisting">struct GstLameMP3Enc;</pre>
276<p>Opaque data structure.</p>
277</div>
278</div>
279<div class="refsect1">
280<a name="gst-plugins-good-plugins-lamemp3enc.property-details"></a><h2>Property Details</h2>
281<div class="refsect2">
282<a name="GstLameMP3Enc--bitrate"></a><h3>The <code class="literal">“bitrate”</code> property</h3>
283<pre class="programlisting">  “bitrate”                  <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
284<p>Bitrate in kbit/sec (Only valid if target is bitrate, for CBR one of 8, 16, 24, 32, 40, 48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 256 or 320).</p>
285<p>Flags: Read / Write / Construct</p>
286<p>Allowed values: [8,320]</p>
287<p>Default value: 128</p>
288</div>
289<hr>
290<div class="refsect2">
291<a name="GstLameMP3Enc--cbr"></a><h3>The <code class="literal">“cbr”</code> property</h3>
292<pre class="programlisting">  “cbr”                      <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
293<p>Enforce constant bitrate encoding (Only valid if target is bitrate).</p>
294<p>Flags: Read / Write / Construct</p>
295<p>Default value: FALSE</p>
296</div>
297<hr>
298<div class="refsect2">
299<a name="GstLameMP3Enc--encoding-engine-quality"></a><h3>The <code class="literal">“encoding-engine-quality”</code> property</h3>
300<pre class="programlisting">  “encoding-engine-quality”  <span class="type">GstLameMP3EncEncodingEngineQuality</span></pre>
301<p>Quality/speed of the encoding engine, this does not affect the bitrate!.</p>
302<p>Flags: Read / Write / Construct</p>
303<p>Default value: Standard</p>
304</div>
305<hr>
306<div class="refsect2">
307<a name="GstLameMP3Enc--mono"></a><h3>The <code class="literal">“mono”</code> property</h3>
308<pre class="programlisting">  “mono”                     <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
309<p>Enforce mono encoding.</p>
310<p>Flags: Read / Write / Construct</p>
311<p>Default value: FALSE</p>
312</div>
313<hr>
314<div class="refsect2">
315<a name="GstLameMP3Enc--quality"></a><h3>The <code class="literal">“quality”</code> property</h3>
316<pre class="programlisting">  “quality”                  <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a></pre>
317<p>VBR Quality from 0 to 10, 0 being the best (Only valid if target is quality).</p>
318<p>Flags: Read / Write / Construct</p>
319<p>Allowed values: [0,9.999]</p>
320<p>Default value: 4</p>
321</div>
322<hr>
323<div class="refsect2">
324<a name="GstLameMP3Enc--target"></a><h3>The <code class="literal">“target”</code> property</h3>
325<pre class="programlisting">  “target”                   <span class="type">GstLameMP3EncTarget</span></pre>
326<p>Optimize for quality or bitrate.</p>
327<p>Flags: Read / Write / Construct</p>
328<p>Default value: Quality</p>
329</div>
330</div>
331<div class="refsect1">
332<a name="gst-plugins-good-plugins-lamemp3enc.see-also"></a><h2>See Also</h2>
333<p>lame, mad, vorbisenc</p>
334</div>
335</div>
336<div class="footer">
337<hr>Generated by GTK-Doc V1.28</div>
338</body>
339</html>