diff --git a/ChangeLog b/ChangeLog index a16542e4a4..06dd16681f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2007-06-19 Stefan Kost + + * ext/ffmpeg/gstffmpeg.c: (gst_ffmpeg_log_callback): + Cut off double \n. + + * ext/ffmpeg/gstffmpegcodecmap.c: + (gst_ffmpeg_formatid_get_codecids): + Enable more codecs in containers. + 2007-06-15 Jan Schmidt * win32/vs6/gst_ffmpeg.dsw: diff --git a/ext/ffmpeg/gstffmpeg.c b/ext/ffmpeg/gstffmpeg.c index 3430847851..426c7682c3 100644 --- a/ext/ffmpeg/gstffmpeg.c +++ b/ext/ffmpeg/gstffmpeg.c @@ -24,6 +24,8 @@ #ifdef HAVE_CONFIG_H #include "config.h" #endif +#include +#include #include #ifdef HAVE_FFMPEG_UNINSTALLED #include @@ -79,6 +81,8 @@ static void gst_ffmpeg_log_callback (void * ptr, int level, const char * fmt, va_list vl) { GstDebugLevel gst_level; + gint len = strlen (fmt); + gchar *fmt2 = NULL; if (_shut_up_I_am_probing) return; @@ -101,7 +105,15 @@ gst_ffmpeg_log_callback (void * ptr, int level, const char * fmt, va_list vl) break; } - gst_debug_log_valist (ffmpeg_debug, gst_level, "", "", 0, NULL, fmt, vl); + /* remove trailing newline as it gets already appended by the logger */ + if (fmt[len-1] == '\n') { + fmt2 = g_strdup (fmt); + fmt2[len-1] = '\0'; + } + + gst_debug_log_valist (ffmpeg_debug, gst_level, "", "", 0, NULL, fmt2?fmt2:fmt, vl); + + g_free(fmt2); } #endif diff --git a/ext/ffmpeg/gstffmpegcodecmap.c b/ext/ffmpeg/gstffmpegcodecmap.c index 1cf3d652d1..9e7bf33740 100644 --- a/ext/ffmpeg/gstffmpegcodecmap.c +++ b/ext/ffmpeg/gstffmpegcodecmap.c @@ -1766,7 +1766,7 @@ gst_ffmpeg_formatid_get_codecids (const gchar * format_name, if (!strcmp (format_name, "mp4")) { static enum CodecID mp4_video_list[] = { - CODEC_ID_MPEG4, CODEC_ID_H264, CODEC_ID_NONE + CODEC_ID_MPEG4, CODEC_ID_H263, CODEC_ID_H264, CODEC_ID_NONE }; static enum CodecID mp4_audio_list[] = { CODEC_ID_AAC, CODEC_ID_MP3, CODEC_ID_AMR_NB, CODEC_ID_AMR_WB, @@ -1852,12 +1852,12 @@ gst_ffmpeg_formatid_get_codecids (const gchar * format_name, *audio_codec_list = mov_audio_list; } else if ((!strcmp (format_name, "3gp") || !strcmp (format_name, "3g2"))) { static enum CodecID tgp_video_list[] = { - CODEC_ID_H263, + CODEC_ID_MPEG4, CODEC_ID_H263, CODEC_ID_H264, CODEC_ID_NONE }; static enum CodecID tgp_audio_list[] = { - CODEC_ID_AMR_NB, - CODEC_ID_AMR_WB, + CODEC_ID_AMR_NB, CODEC_ID_AMR_WB, + CODEC_ID_AAC, CODEC_ID_NONE };