[FFmpeg-cvslog] ffmpeg.c: remove all remaining coded_frame uses
Michael Niedermayer
git at videolan.org
Tue Jul 28 19:55:24 CEST 2015
ffmpeg | branch: master | Michael Niedermayer <michael at niedermayer.cc> | Tue Jul 28 19:42:00 2015 +0200| [8c2f00d5909dae94138bdd10625acaf159b23679] | committer: Michael Niedermayer
ffmpeg.c: remove all remaining coded_frame uses
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=8c2f00d5909dae94138bdd10625acaf159b23679
---
ffmpeg.c | 5 +++--
ffmpeg.h | 3 +++
2 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/ffmpeg.c b/ffmpeg.c
index 8107b3c..5575e2f 100644
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -673,6 +673,7 @@ static void write_frame(AVFormatContext *s, AVPacket *pkt, OutputStream *ost)
uint8_t *sd = av_packet_get_side_data(pkt, AV_PKT_DATA_QUALITY_STATS,
NULL);
ost->quality = sd ? AV_RL32(sd) : -1;
+ ost->pict_type = sd ? sd[4] : AV_PICTURE_TYPE_NONE;
for (i = 0; i<FF_ARRAY_ELEMS(ost->error); i++) {
if (sd && i < sd[5])
@@ -1287,7 +1288,7 @@ static void do_video_stats(OutputStream *ost, int frame_size)
avg_bitrate = (double)(ost->data_size * 8) / ti1 / 1000.0;
fprintf(vstats_file, "s_size= %8.0fkB time= %0.3f br= %7.1fkbits/s avg_br= %7.1fkbits/s ",
(double)ost->data_size / 1024, ti1, bitrate, avg_bitrate);
- fprintf(vstats_file, "type= %c\n", enc->coded_frame ? av_get_picture_type_char(enc->coded_frame->pict_type) : 'I');
+ fprintf(vstats_file, "type= %c\n", av_get_picture_type_char(ost->pict_type));
}
}
@@ -1594,7 +1595,7 @@ static void print_report(int is_last_report, int64_t timer_start, int64_t cur_ti
snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf), "%X", (int)lrintf(log2(qp_histogram[j] + 1)));
}
- if ((enc->flags & AV_CODEC_FLAG_PSNR) && (enc->coded_frame || is_last_report)) {
+ if ((enc->flags & AV_CODEC_FLAG_PSNR) && (ost->pict_type != AV_PICTURE_TYPE_NONE || is_last_report)) {
int j;
double error, error_sum = 0;
double scale, scale_sum = 0;
diff --git a/ffmpeg.h b/ffmpeg.h
index 6e2267a..a7e5e51 100644
--- a/ffmpeg.h
+++ b/ffmpeg.h
@@ -460,6 +460,9 @@ typedef struct OutputStream {
/* packet quality factor */
int quality;
+ /* packet picture type */
+ int pict_type;
+
/* frame encode sum of squared error values */
int64_t error[4];
} OutputStream;
More information about the ffmpeg-cvslog
mailing list