summaryrefslogtreecommitdiff
path: root/plugins/ffmpeg/ffmpeg.c
diff options
context:
space:
mode:
authorGravatar Alexey Yakovenko <wakeroid@gmail.com>2010-08-08 10:54:58 +0200
committerGravatar Alexey Yakovenko <wakeroid@gmail.com>2010-08-08 10:54:58 +0200
commit96b76b7287f95107b1a3ceac49c3085550c7a93f (patch)
treeffae3c72176ba1cea8e0ef98f91c7f63fa3620b5 /plugins/ffmpeg/ffmpeg.c
parent410cf74c516678f6dbb0147e75bbf5e964e3e210 (diff)
fixed ffmpeg alac support; removed ffmpeg aac and mpc support
Diffstat (limited to 'plugins/ffmpeg/ffmpeg.c')
-rw-r--r--plugins/ffmpeg/ffmpeg.c23
1 files changed, 9 insertions, 14 deletions
diff --git a/plugins/ffmpeg/ffmpeg.c b/plugins/ffmpeg/ffmpeg.c
index 1494992a..8d3a6303 100644
--- a/plugins/ffmpeg/ffmpeg.c
+++ b/plugins/ffmpeg/ffmpeg.c
@@ -55,11 +55,10 @@
static DB_decoder_t plugin;
static DB_functions_t *deadbeef;
-static const char * exts[] = { "m4a", "mp+", "mpp", "wma", "aa3", "oma", "ac3", "vqf", NULL };
+static const char * exts[] = { "m4a", "wma", "aa3", "oma", "ac3", "vqf", NULL };
enum {
-// FT_AAC = 0,
- FT_M4A = 0,
+ FT_ALAC = 0,
FT_WMA = 1,
FT_ATRAC3 = 2,
FT_VQF = 3,
@@ -67,7 +66,7 @@ enum {
FT_UNKNOWN = 5
};
-static const char *filetypes[] = { "M4A", "WMA", "atrac3", "VQF", "TTA", "FFMPEG (unknown)", NULL };
+static const char *filetypes[] = { "ALAC", "WMA", "atrac3", "VQF", "TTA", "FFMPEG (unknown)", NULL };
#define FF_PROTOCOL_NAME "deadbeef"
@@ -440,6 +439,7 @@ ffmpeg_read_metadata_internal (DB_playItem_t *it, AVFormatContext *fctx) {
static DB_playItem_t *
ffmpeg_insert (DB_playItem_t *after, const char *fname) {
+ trace ("ffmpeg_insert %s\n", fname);
// read information from the track
// load/process cuesheet if exists
// insert track into playlist
@@ -474,8 +474,9 @@ ffmpeg_insert (DB_playItem_t *after, const char *fname) {
if (ctx->codec_type == CODEC_TYPE_AUDIO)
{
codec = avcodec_find_decoder(ctx->codec_id);
- if (codec != NULL)
+ if (codec != NULL && !strcasecmp (codec->name, "alac")) { // only open alac streams
break;
+ }
}
}
// AVStream *stream = fctx->streams[i];
@@ -516,14 +517,8 @@ ffmpeg_insert (DB_playItem_t *after, const char *fname) {
}
if (!strcasecmp (ext, "m4a")) {
- filetype = filetypes[FT_M4A];
- }
-// if (!strcasecmp (ext, "aac")) {
-// filetype = filetypes[FT_AAC];
-// }
-// else if (!strcasecmp (ext, "mp4")) {
-// filetype = filetypes[FT_M4A];
-// }
+ filetype = filetypes[FT_ALAC];
+ }
else if (!strcasecmp (ext, "wma")) {
filetype = filetypes[FT_WMA];
}
@@ -703,7 +698,7 @@ ffmpeg_read_metadata (DB_playItem_t *it) {
}
if (codec == NULL)
{
- trace ("ffmpeg can't decode %s\n", fname);
+ trace ("ffmpeg can't decode %s\n", it->fname);
av_close_input_file(fctx);
return -1;
}