image_clp_rotated = image_clip.fx(mp.vfx.rotate, rotate_emoji, expand=False)
Метод
def rotate_emoji(t):
"""Calculates the rotation angle for each frame."""
if int(t) % 3 == 0:
return -20
elif int(t) % 2 == 0:
return 20
else:
return 0
Это изображение до поворота
[img]https://i.sstatic .net/65azlyqB.png[/img]
Это изображение после поворота.

Почему круг выглядит таким образом?
Примечание.
Клип изображения представляет собой составной видеоклип, состоящий из круга и клипов эмодзи.
image_clip= CompositeVideoClip([circle_image_clp, emoji_image_clp])
Подробнее здесь: https://stackoverflow.com/questions/786 ... xel-effect