summaryrefslogtreecommitdiff
path: root/encoder.c
diff options
context:
space:
mode:
Diffstat (limited to 'encoder.c')
-rw-r--r--encoder.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/encoder.c b/encoder.c
index 72bca9d..4e0ffb8 100644
--- a/encoder.c
+++ b/encoder.c
@@ -13,3 +13,19 @@ gssize encoder_encode(struct encoder *encoder, const guchar *inbuf, gsize inbuf_
void encoder_close(struct encoder *encoder) {
encoder->encoder->close(encoder->data);
}
+
+extern const struct encoder_plugin encoder_lame_encoder;
+
+static const struct encoder_plugin *encoder_plugins[] = {
+ &encoder_lame_encoder,
+ NULL,
+};
+
+const struct encoder_plugin *encoder_get(const gchar *name) {
+ for(int i = 0; encoder_plugins[i]; i++) {
+ if(g_strcmp0(encoder_plugins[i]->name, name) == 0) {
+ return encoder_plugins[i];
+ }
+ }
+ return NULL;
+}