On occasions, Unicorn does not pick up changes to media items in Sitecore correctly. e.g. after installing a package of UAT content into my local environment the other day, I noticed that some of the serialized media items had been created on disk but with the blob field left empty. Using Developer > Serialize tree seemed to trigger the blob data to be saved to the items correctly. However, I am finding that during deployment (synchronization), the media blobs are often missed so we have media items which are "empty" (with no attachment).
I'm aware that this question might be a bit vague and some details might be dependent on our particular CI/deployment setup, but hoping someone has experienced a similar issue before and has an idea of the solution.