History

lavfi: add key_frame and pict_type to AVFilterBufferRefVideo.

Roger Pau Monné committed 15 years ago

Commit 10d39401 parent 7a11c824 files · +12 −1Browse files

Unified · Split

4 files
  1. cmdutils.c +2 −0
  2. doc/APIchanges +3 −0
  3. libavfilter/avfilter.h +3 −1
  4. libavfilter/vsrc_buffer.c +4 −0
cmdutils.c+2−0
@@ -922,6 +922,8 @@ int get_filtered_video_frame(AVFilterContext *ctx, AVFrame *frame, · 921 unmodified lines
922922 memcpy(frame->linesize, picref->linesize, sizeof(frame->linesize));
923923 frame->interlaced_frame = picref->video->interlaced;
924924 frame->top_field_first = picref->video->top_field_first;
925+ frame->key_frame = picref->video->key_frame;
926+ frame->pict_type = picref->video->pict_type;
925927
926928 return 1;
927929 }
doc/APIchanges+3−0
@@ -13,6 +13,9 @@ libavutil: 2011-04-18 · 12 unmodified lines
1313
1414 API changes, most recent first:
1515
16+2011-04-xx - xxxxxx - lavfi 2.3.0 - avfilter.h
17+ Add pict_type and key_frame fields to AVFilterBufferRefVideo.
18+
1619 2011-04-xx - xxxxxx - lavfi 2.2.0 - vsrc_buffer
1720 Add sample_aspect_ratio fields to vsrc_buffer arguments
1821
libavfilter/avfilter.h+3−1
@@ -26,7 +26,7 @@ · 25 unmodified lines
2626 #include "libavutil/samplefmt.h"
2727
2828 #define LIBAVFILTER_VERSION_MAJOR 2
29−#define LIBAVFILTER_VERSION_MINOR 2
29+#define LIBAVFILTER_VERSION_MINOR 3
3030 #define LIBAVFILTER_VERSION_MICRO 0
3131
3232 #define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \
@@ -115,6 +115,8 @@ typedef struct AVFilterBufferRefVideoProps { · 82 unmodified lines
115115 AVRational pixel_aspect; ///< pixel aspect ratio
116116 int interlaced; ///< is frame interlaced
117117 int top_field_first; ///< field order
118+ int pict_type; ///< Picture type of the frame
119+ int key_frame; ///< 1 -> keyframe, 0-> not
118120 } AVFilterBufferRefVideoProps;
119121
120122 /**
libavfilter/vsrc_buffer.c+4−0
@@ -54,6 +54,8 @@ int av_vsrc_buffer_add_frame(AVFilterContext *buffer_filter, AVFrame *frame, · 53 unmodified lines
5454 memcpy(c->frame.linesize, frame->linesize, sizeof(frame->linesize));
5555 c->frame.interlaced_frame= frame->interlaced_frame;
5656 c->frame.top_field_first = frame->top_field_first;
57+ c->frame.key_frame = frame->key_frame;
58+ c->frame.pict_type = frame->pict_type;
5759 c->pts = pts;
5860 c->pixel_aspect = pixel_aspect;
5961 c->has_frame = 1;
@@ -133,6 +135,8 @@ static int request_frame(AVFilterLink *link) · 73 unmodified lines
133135 picref->video->pixel_aspect = c->pixel_aspect;
134136 picref->video->interlaced = c->frame.interlaced_frame;
135137 picref->video->top_field_first = c->frame.top_field_first;
138+ picref->video->key_frame = c->frame.key_frame;
139+ picref->video->pict_type = c->frame.pict_type;
136140 avfilter_start_frame(link, avfilter_ref_buffer(picref, ~0));
137141 avfilter_draw_slice(link, 0, link->h, 1);
138142 avfilter_end_frame(link);

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t