I started this prototype by creating an emitter using a bird static mesh and two deformation poses – wings up and wings down.

Next, I attached a custom material to the static mesh that utilizes the deformation data and deforms the mesh using a sine wave over a period of time

I also created a duplicate material but using a cosine wave (to differentiate wing flaps of birds)

Last, because the particle emitter can only use static meshes, but doesn’t care if those static meshes have deformers attached to them, the static bird meshes can be placed into the emitter.  Using an orbit component, the birds can now fly around in a circle.  By duplicating the emitter, it will allow for variation in the flight speed and the amount of flocks.