I have an unique project where I need to modify a current encoder/decoder to force all of the P-Frames to reference only the I-Frame and not other P-Frames. I have been trying to do this myself but I'm not very fluent in C. Is it even possible to do this? I'm open to using any encoder. If this is possible, could you point me in the right direction? i.e. where in the code base would I make such a modification? I haven't been able to pinpoint any specific location for P-frames in any of the code that I've looked at.
I have a few other requirements but nothing matters if I can't control how the P-frame works.
+ Reply to Thread
Results 1 to 2 of 2
You are trying to enforce rules that don't exist.
The whole point of delta frames (and their bitrate savings) is to interpolate/extrapolate from successive former frames.
If the only former frames that you would consider valid are intra-frames (aka complete, whole frames), the proper way to do this is by minimizing the cadence such that you end up with "I-P-I-P-I-P-I-P...", because (with possible the exception of h265) you cannot reference more than 1 complete frame from P frames. If you wanted to add Bs in there, you could, but the cadence would still have to be low, otherwise you would be referencing Ps from other Ps.