Added option "source" to force_key_frames
anatolschwarz authored on 2015/05/05 22:14:35... | ... |
@@ -1104,6 +1104,10 @@ static void do_video_out(AVFormatContext *s, |
1104 | 1104 |
} |
1105 | 1105 |
|
1106 | 1106 |
ost->forced_keyframes_expr_const_values[FKF_N] += 1; |
1107 |
+ } else if ( ost->forced_keyframes |
|
1108 |
+ && !strncmp(ost->forced_keyframes, "source", 6) |
|
1109 |
+ && in_picture->key_frame==1) { |
|
1110 |
+ forced_keyframe = 1; |
|
1107 | 1111 |
} |
1108 | 1112 |
|
1109 | 1113 |
if (forced_keyframe) { |
... | ... |
@@ -2942,7 +2946,10 @@ static int transcode_init(void) |
2942 | 2942 |
ost->forced_keyframes_expr_const_values[FKF_N_FORCED] = 0; |
2943 | 2943 |
ost->forced_keyframes_expr_const_values[FKF_PREV_FORCED_N] = NAN; |
2944 | 2944 |
ost->forced_keyframes_expr_const_values[FKF_PREV_FORCED_T] = NAN; |
2945 |
- } else { |
|
2945 |
+ |
|
2946 |
+ // Don't parse the 'forced_keyframes' in case of 'keep-source-keyframes', |
|
2947 |
+ // parse it only for static kf timings |
|
2948 |
+ } else if(strncmp(ost->forced_keyframes, "source", 6)) { |
|
2946 | 2949 |
parse_forced_key_frames(ost->forced_keyframes, ost, ost->enc_ctx); |
2947 | 2950 |
} |
2948 | 2951 |
} |