diff options
Diffstat (limited to 'src/codec')
| -rw-r--r-- | src/codec/codec.h | 19 | ||||
| -rw-r--r-- | src/codec/ffmpeg/common.c | 10 |
2 files changed, 17 insertions, 12 deletions
diff --git a/src/codec/codec.h b/src/codec/codec.h index 6ddcff9..fac3be8 100644 --- a/src/codec/codec.h +++ b/src/codec/codec.h @@ -255,20 +255,23 @@ static inline s32 camu_audio_format_bytes_per_sample(struct camu_audio_format *f #else switch (fmt->format) { case CAMU_SAMPLE_FORMAT_U8: - case CAMU_SAMPLE_FORMAT_U8P: return 1; + case CAMU_SAMPLE_FORMAT_U8P: + return 1; case CAMU_SAMPLE_FORMAT_S16: - case CAMU_SAMPLE_FORMAT_S16P: return 2; + case CAMU_SAMPLE_FORMAT_S16P: + return 2; case CAMU_SAMPLE_FORMAT_S32: case CAMU_SAMPLE_FORMAT_S32P: case CAMU_SAMPLE_FORMAT_FLT: - case CAMU_SAMPLE_FORMAT_FLTP: return 4; + case CAMU_SAMPLE_FORMAT_FLTP: + return 4; case CAMU_SAMPLE_FORMAT_S64: case CAMU_SAMPLE_FORMAT_S64P: case CAMU_SAMPLE_FORMAT_DBL: - case CAMU_SAMPLE_FORMAT_DBLP: return 8; + case CAMU_SAMPLE_FORMAT_DBLP: + return 8; default: - al_assert(false); - return -1; + al_assert_and_return(-1); } #endif } @@ -323,8 +326,8 @@ static const char *camu_pixel_format_name(s32 format) case CAMU_PIXEL_FORMAT_RGB: return "rgb"; case CAMU_PIXEL_FORMAT_GREYA: return "grey + alpha"; case CAMU_PIXEL_FORMAT_GREY: return "grey"; + default: return "(unknown)"; } - return "(unknown)"; } static inline s32 camu_pixel_format_from_channels(s32 channels) @@ -334,7 +337,7 @@ static inline s32 camu_pixel_format_from_channels(s32 channels) case 3: return CAMU_PIXEL_FORMAT_RGB; case 2: return CAMU_PIXEL_FORMAT_GREYA; case 1: return CAMU_PIXEL_FORMAT_GREY; - default: al_assert(false); return CAMU_PIXEL_FORMAT_GREY; + default: al_assert_and_return(CAMU_PIXEL_FORMAT_GREY); } } diff --git a/src/codec/ffmpeg/common.c b/src/codec/ffmpeg/common.c index b2e727d..95bf247 100644 --- a/src/codec/ffmpeg/common.c +++ b/src/codec/ffmpeg/common.c @@ -10,18 +10,20 @@ void camu_ff_set_log_callback(void (*callback)(void *, s32, const char *, va_lis } static char *buf = NULL; -static s32 pos = 0; +static size_t pos = 0; // If a line takes more than 2 steps to print, make sure we stay within AL_LOG_MESSAGE_SIZE. -#define CHUNK_SIZE (AL_LOG_MESSAGE_SIZE / 2) +#define CHUNK_SIZE (AL_LOG_MESSAGE_SIZE / 2u) static void av_log_callback(void *userdata, s32 level, const char *fmt, va_list args) { (void)userdata; al_assert(buf); if (level < AV_LOG_DEBUG) { - pos += al_vsnprintf(&buf[pos], CHUNK_SIZE, fmt, args); - if (buf[pos - 1] == '\n' || pos >= CHUNK_SIZE) { + s32 ret = al_vsnprintf(&buf[pos], CHUNK_SIZE, fmt, args); + al_assert(ret > 0); + pos += ret; + if ((pos > 0 && buf[pos - 1] == '\n') || pos >= CHUNK_SIZE) { if (level <= AV_LOG_INFO) { al_log_info("ff", buf); } else { |