// Output to stderr if it is available or to log otherwise (e.g. if running as daemon/service) int printerrorf(const char *const fmt, ...) { int error = errno; va_list arglist; va_start(arglist, fmt); # ifdef IS_LIBRARY size_t len = strlen(ErrorMessage); vlmcsd_vsnprintf(ErrorMessage + len, MESSAGE_BUFFER_SIZE - len - 1, fmt, arglist); # else // !IS_LIBRARY # ifndef NO_LOG # ifdef _NTSERVICE if (InetdMode || IsNTService) # else // !_NTSERVICE if (InetdMode) # endif // NTSERVIICE vlogger(fmt, arglist); else # endif //NO_LOG # endif // IS_LIBRARY { vfprintf(stderr, fmt, arglist); fflush(stderr); } va_end(arglist); errno = error; return 0; }
void logger_alsa(const char *file, int line, const char *function, int err, const char *fmt, ...) { va_list ap; va_start(ap, fmt); vlogger(E_LOG, L_LAUDIO, fmt, ap); va_end(ap); }
void DPRINTF(int severity, int domain, const char *fmt, ...) { va_list ap; va_start(ap, fmt); vlogger(severity, domain, fmt, ap); va_end(ap); }
// Always sends to log output int logger(const char *const fmt, ...) { va_list args; va_start(args, fmt); vlogger(fmt, args); va_end(args); return 0; }
void DPRINTF(int severity, int domain, const char *fmt, ...) { va_list ap; va_start(ap, fmt); if (!logger_sq) vlogger_early(severity, domain, fmt, ap); else vlogger(severity, domain, fmt, ap); va_end(ap); }
void logger_ffmpeg(void *ptr, int level, const char *fmt, va_list ap) { int severity; if (level <= AV_LOG_FATAL) severity = E_LOG; else if (level <= AV_LOG_WARNING) severity = E_WARN; else if (level <= AV_LOG_VERBOSE) severity = E_INFO; else if (level <= AV_LOG_DEBUG) severity = E_DBG; else severity = E_SPAM; vlogger(severity, L_FFMPEG, fmt, ap); }
void logger_ffmpeg(void *ptr, int level, const char *fmt, va_list ap) { int severity; /* Can't use a switch() because some definitions have the same value */ if ((level == AV_LOG_FATAL) || (level == AV_LOG_ERROR)) severity = E_LOG; else if ((level == AV_LOG_WARNING) || (level == AV_LOG_INFO) || (level == AV_LOG_VERBOSE)) severity = E_WARN; else if (level == AV_LOG_DEBUG) severity = E_DBG; else if (level == AV_LOG_QUIET) severity = E_SPAM; else severity = E_LOG; vlogger(severity, L_FFMPEG, fmt, ap); }