Plug librtmp logging into av_log.
authorHoward Chu <hyc@highlandsun.com>
Tue, 13 Apr 2010 22:11:21 +0000 (22:11 +0000)
committerDiego Biurrun <diego@biurrun.de>
Tue, 13 Apr 2010 22:11:21 +0000 (22:11 +0000)
patch by Howard Chu, hyc highlandsun com

Originally committed as revision 22875 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavformat/librtmp.c

index b3d78f3..46aeaff 100644 (file)
 #include <librtmp/rtmp.h>
 #include <librtmp/log.h>
 
+static void rtmp_log(int level, const char *fmt, va_list args)
+{
+    switch (level) {
+    default:
+    case RTMP_LOGCRIT:    level = AV_LOG_FATAL;   break;
+    case RTMP_LOGERROR:   level = AV_LOG_ERROR;   break;
+    case RTMP_LOGWARNING: level = AV_LOG_WARNING; break;
+    case RTMP_LOGINFO:    level = AV_LOG_INFO;    break;
+    case RTMP_LOGDEBUG:   level = AV_LOG_VERBOSE; break;
+    case RTMP_LOGDEBUG2:  level = AV_LOG_DEBUG;   break;
+    }
+
+    av_vlog(NULL, level, fmt, args);
+    av_log(NULL, level, "\n");
+}
+
 static int rtmp_close(URLContext *s)
 {
     RTMP *r = s->priv_data;
@@ -69,6 +85,7 @@ static int rtmp_open(URLContext *s, const char *uri, int flags)
     case AV_LOG_DEBUG:   rc = RTMP_LOGDEBUG2;  break;
     }
     RTMP_LogSetLevel(rc);
+    RTMP_LogSetCallback(rtmp_log);
 
     RTMP_Init(r);
     if (!RTMP_SetupURL(r, s->filename)) {