summaryrefslogtreecommitdiff
path: root/src/advtime.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/advtime.c')
-rw-r--r--src/advtime.c32
1 files changed, 28 insertions, 4 deletions
diff --git a/src/advtime.c b/src/advtime.c
index 265d18c..4c329da 100644
--- a/src/advtime.c
+++ b/src/advtime.c
@@ -4,6 +4,8 @@
#include <stdint.h>
#include <unistd.h>
+#include <libavutil/rational.h>
+
#include "video_decode.h"
#include "util.h"
@@ -97,20 +99,42 @@ main(int argc, char **argv)
if (ret < 0)
return -ret;
+ printf("fps: %d\n", vd->fmt_ctx->fps_probe_size);
+ printf("streams: %d\n", vd->fmt_ctx->nb_streams);
+ printf("filename: %s\n", vd->fmt_ctx->filename);
+ printf("streams: %d\n", vd->fmt_ctx->streams[0]->duration);
+ printf("duration: %d\n", vd->fmt_ctx->streams[1]->duration);
+ printf("nb_frames: %d\n", vd->fmt_ctx->streams[0]->nb_frames);
+ printf("avg frame rate: %f\n",
+ av_q2d(vd->fmt_ctx->streams[0]->avg_frame_rate));
+ printf("real frame rate: %f\n",
+ av_q2d(vd->fmt_ctx->streams[0]->r_frame_rate));
+ printf("first: %ji\n", vd->fmt_ctx->streams[0]->first_dts);
+ printf("cur: %ji\n", vd->fmt_ctx->streams[0]->cur_dts);
+ printf("reference: %ji\n", vd->fmt_ctx->streams[0]->reference_dts);
+
for (int i = 0; video_decode_get_frame(vd, &frame_b) > 0; ++i) {
- printf("%d\t", i);
+// printf("first: %ji\t", vd->fmt_ctx->streams[0]->first_dts);
+// printf("cur: %ji\t", vd->fmt_ctx->streams[0]->cur_dts);
+// printf("reference: %ji\n", vd->fmt_ctx->streams[0]->reference_dts);
+
+
+// printf("%d\t", i);
if (average_flag == 1)
printf("%f", frame_average(frame_a));
if (average_flag == 1 && diff_flag == 1)
printf("\t");
- if (diff_flag == 1)
- printf("%f", diff = frame_diff(frame_a, frame_b));
+ if (diff_flag == 1) {
+ diff = frame_diff(frame_a, frame_b);
+// printf("%f", diff);
+ }
if (diff > 40.0) {
+ printf("cut: %d\n", i);
snprintf(filename, BUFSIZ, "img/%04i.pgm", i);
frame_mix(frame_a, frame_b);
if (pgm_save(frame_a->data, frame_a->stride,
@@ -119,7 +143,7 @@ main(int argc, char **argv)
exit(EXIT_FAILURE);
}
- printf("\n");
+// printf("\n");
video_decode_free_frame(&frame_a);
frame_a = frame_b;
}