On Tue, Jul 2, 2024 at 5:21 PM Sachin Bhat <sachinbhat...@gmail.com> wrote:
> Hi, > > I have an input ts file that is at 30 fps, and a GOP of 10. I am trying to > display keyframes at a specific time interval by sending a keyframe plus > duplicates to a HW decoder until the next desired keyframe appears. .I am > using duplication because the HW decoder does not handle very low > framerates well, and I have been led to believe that the duplicate frames > are just copies of the keyframe, so they do not contribute greatly to > bandwidth usage after transcoding. As a result, I get the illusion of a > low framerate video while actually producing a 30fps stream. > > The command I am using to send a keyframe every 10 seconds (every 30th > keyframe): > ffmpeg -re -i test-src-30fps.ts -vf "select='eq(pict_type, I)', > select='not(mod(n,30))'" -vsync cfr -c:v libx264 -f mpegts > udp://{decoder_ip}:{decoder_port} > > You can combine 2 select filters into one. > However, when I run this command, the nth keyframe is only displayed once > the n+1 keyframe is reached. For example, the output log says: frame = 1 > fps=0.1 q=0.0 size=0kB time=00:00:00.00 bitrate=N/A for a certain amount of > time, then frame=301 fps=27 q=29.0 size=58kb time=00:00:07.33 bitrate = > 65.2 kb/s dup = 301 speed = 0.85x. As a result every keyframe ends up being > displayed at a large delay to when it appears in the actual input stream. > The delay increases if I increase the interval for my desired keyframes. On > the decoder side I can see that the output is 30fps. > > Can someone explain why this is happening, and if there is a way to have a > fixed delay regardless of how often I want to select a keyframe? > > Thanks, > Sachin > _______________________________________________ > ffmpeg-user mailing list > ffmpeg-user@ffmpeg.org > https://ffmpeg.org/mailman/listinfo/ffmpeg-user > > To unsubscribe, visit link above, or email > ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe". > _______________________________________________ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".