aboutsummaryrefslogtreecommitdiffstats
path: root/ffmpeg.c
diff options
context:
space:
mode:
authorStefano Sabatini <stefasab@gmail.com>2012-12-23 00:19:11 +0100
committerStefano Sabatini <stefasab@gmail.com>2012-12-27 15:47:15 +0100
commit750382d5c88339d2bde17851455403bdc75e9a60 (patch)
treee73a13f0f843b8297bdf7b01b74ed4ca6ea15afc /ffmpeg.c
parentb3f3fe3c28fb23a2f91eb9124a0628e0b7a071a4 (diff)
downloadffmpeg-750382d5c88339d2bde17851455403bdc75e9a60.tar.gz
ffmpeg: remove annoying logs and improve reporting in case of unavailable bitrate
Diffstat (limited to 'ffmpeg.c')
-rw-r--r--ffmpeg.c24
1 files changed, 11 insertions, 13 deletions
diff --git a/ffmpeg.c b/ffmpeg.c
index 73b5dff59c..977218f62a 100644
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -1108,13 +1108,6 @@ static void print_report(int is_last_report, int64_t timer_start, int64_t cur_ti
total_size = avio_size(oc->pb);
if (total_size <= 0) // FIXME improve avio_size() so it works with non seekable output too
total_size = avio_tell(oc->pb);
- if (total_size < 0) {
- char errbuf[128];
- av_strerror(total_size, errbuf, sizeof(errbuf));
- av_log(NULL, AV_LOG_VERBOSE, "Bitrate not available, "
- "avio_tell() failed: %s\n", errbuf);
- total_size = 0;
- }
buf[0] = '\0';
vid = 0;
@@ -1195,16 +1188,21 @@ static void print_report(int is_last_report, int64_t timer_start, int64_t cur_ti
hours = mins / 60;
mins %= 60;
- bitrate = pts ? total_size * 8 / (pts / 1000.0) : 0;
+ bitrate = pts && total_size >= 0 ? total_size * 8 / (pts / 1000.0) : -1;
- snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf),
- "size=%8.0fkB time=", total_size / 1024.0);
+ if (total_size < 0) snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf),
+ "size=N/A time=");
+ else snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf),
+ "size=%8.0fkB time=", total_size / 1024.0);
snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf),
"%02d:%02d:%02d.%02d ", hours, mins, secs,
(100 * us) / AV_TIME_BASE);
- snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf),
- "bitrate=%6.1fkbits/s", bitrate);
- av_bprintf(&buf_script, "total_size=%"PRId64"\n", total_size);
+ if (bitrate < 0) snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf),
+ "bitrate=N/A");
+ else snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf),
+ "bitrate=%6.1fkbits/s", bitrate);
+ if (total_size < 0) av_bprintf(&buf_script, "total_size=N/A\n");
+ else av_bprintf(&buf_script, "total_size=%"PRId64"\n", total_size);
av_bprintf(&buf_script, "out_time_ms=%"PRId64"\n", pts);
av_bprintf(&buf_script, "out_time=%02d:%02d:%02d.%06d\n",
hours, mins, secs, us);