rygel r765 - trunk/src/rygel
- From: zeeshanak svn gnome org
- To: svn-commits-list gnome org
- Subject: rygel r765 - trunk/src/rygel
- Date: Sat, 28 Mar 2009 00:46:07 +0000 (UTC)
Author: zeeshanak
Date: Sat Mar 28 00:46:06 2009
New Revision: 765
URL: http://svn.gnome.org/viewvc/rygel?rev=765&view=rev
Log:
MP3Transcoder (re-)uses L16Transcoder's encoder.
Modified:
trunk/src/rygel/rygel-mp3-transcoder.vala
Modified: trunk/src/rygel/rygel-mp3-transcoder.vala
==============================================================================
--- trunk/src/rygel/rygel-mp3-transcoder.vala (original)
+++ trunk/src/rygel/rygel-mp3-transcoder.vala Sat Mar 28 00:46:06 2009
@@ -24,10 +24,10 @@
using Gst;
internal class Rygel.MP3Transcoder : Rygel.Transcoder {
- private const string AUDIO_CONVERT = "audioconvert";
private const string[] AUDIO_ENCODER = {null, "twolame", "lame"};
private const string AUDIO_PARSER = "mp3parse";
- private const string AUDIO_RESAMPLE = "audioresample";
+
+ private const string CONVERT_SINK_PAD = "convert-sink-pad";
private MP3Layer layer;
@@ -44,10 +44,10 @@
public Element create_encoder (string? src_pad_name,
string? sink_pad_name)
throws Error {
- dynamic Element convert = GstUtils.create_element (AUDIO_CONVERT,
- AUDIO_CONVERT);
- dynamic Element resample = GstUtils.create_element (AUDIO_RESAMPLE,
- AUDIO_RESAMPLE);
+ var l16_transcoder = new L16Transcoder (Endianness.LITTLE);
+ dynamic Element convert = l16_transcoder.create_encoder (
+ null,
+ CONVERT_SINK_PAD);
dynamic Element encoder = GstUtils.create_element (
AUDIO_ENCODER[this.layer],
AUDIO_ENCODER[this.layer]);
@@ -61,14 +61,12 @@
encoder.bitrate = 256;
- var bin = new Bin ("audio-encoder-bin");
- bin.add_many (convert, resample, encoder, parser);
+ var bin = new Bin ("mp3-encoder-bin");
+ bin.add_many (convert, encoder, parser);
- var filter = Caps.from_string ("audio/x-raw-int");
- convert.link_filtered (encoder, filter);
- encoder.link (parser);
+ convert.link_many (encoder, parser);
- var pad = convert.get_static_pad ("sink");
+ var pad = convert.get_static_pad (CONVERT_SINK_PAD);
var ghost = new GhostPad (sink_pad_name, pad);
bin.add_pad (ghost);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]