Je suis en train de changer l'intervalle des images clés d'une vidéo à 1 suivant this link et en utilisant la commandene peut pas changer intervalle vidéo d'images clés à 1 en utilisant ffmpeg
ffmpeg -i myvideo.mp4 -vcodec libx264 -x264-params keyint=30:no-scenecut -acodec copy out.mp4
comme indiqué dans la première réponse. J'ai écrit keyint=30
comme fps
de ma vidéo est 30
, ainsi 1*30=30
. Cependant, seule la image clé de la première image est 1
, et tout le reste restent 0
(comme avant la commande ci-dessus), comme le montre la commande ffprobe -select_streams v:0 -show_frames out.mp4
:
...
[FRAME]
media_type=video
stream_index=0
key_frame=1
pkt_pts=0
pkt_pts_time=0.000000
pkt_dts=0
pkt_dts_time=0.000000
best_effort_timestamp=0
best_effort_timestamp_time=0.000000
pkt_duration=512
pkt_duration_time=0.033333
pkt_pos=48
pkt_size=18693
width=560
height=320
pix_fmt=yuv420p
sample_aspect_ratio=N/A
pict_type=I
coded_picture_number=0
display_picture_number=0
interlaced_frame=0
top_field_first=0
repeat_pict=0
[/FRAME]
[FRAME]
media_type=video
stream_index=0
key_frame=0
pkt_pts=512
pkt_pts_time=0.033333
pkt_dts=512
pkt_dts_time=0.033333
best_effort_timestamp=512
best_effort_timestamp_time=0.033333
pkt_duration=512
pkt_duration_time=0.033333
pkt_pos=21764
pkt_size=199
width=560
height=320
pix_fmt=yuv420p
sample_aspect_ratio=N/A
pict_type=B
coded_picture_number=3
display_picture_number=0
interlaced_frame=0
top_field_first=0
repeat_pict=0
[/FRAME]
...
Toutes les idées?
Votre commande est correcte: il sort un I-image par seconde ou 30 images. Si vous voulez une sortie I-frame seulement, vous devez régler 'keyint' sur 1 et non sur 30. – aergistal
@aergistal Merci pour votre réponse. Je l'ai essayé, mais encore une fois seulement la première image a 'keyframe = 1' ... – Marievi