I like to shoot videos with my Sony Alpha 5000 camera as I have a cheap smartphone that doesn't shoot great video. However I also like Instagram, and uploading to Instagram is made much easier with videos shot with the phone's video camera. It's easy enough to upload photos taken with the camera directly to Instagram just by copying them to the phone and opening them with the app. Video, however, is a different story, which makes sense because video is much more complex. There are many different video formats, codecs, etc. For example, the Sony Alpha 5000 shoots videos in 60i format.
Trial and Error
I was initially very frustrated with Instagram because it seemed so fussy. Videos which would upload easily to Facebook, Twitter and Youtube would render as a snowy mishmash on Instagram (at worst) or contain massive green lines (at best) and would just look horrible. As I mentionned before, videos taken directly from my camera wouldn't even be recognized by the Instagram app. With help from Google, I found some settings that seem to work with Avidemux and these settings convert video from my camera to Instagram ready format. Avidemux is according to the website a free video editor designed for simple cutting, filtering and encoding. It's very basic and fast and loads with minimum fuss.
Instagram only allows a maximum of 60 seconds per video, so trim your video appropriately using the A and B markers. Next, under the video tab, choose Mpeg4 AVC (x264). Under the configuration tab, go down to Rate control and set the Encoding Mode to Average Bitrate (two pass) and change the average bitrate to 2000 kbit/s. You can also experiment with this number if the video doesn't turn out right. Now click on the Filters button and add a crop filter and a resize filter until your video becomes noticeably smaller, say in the neighbourhood of 640x386 or 480x336. It can be in square or rectangular format; whatever you prefer. Next make sure the video is set to 29.97 frames per second (again, change this under the filter tab if required). Now under the Audio tab, select the AAC (faac) encoding. Click the Configure button and set a 128kbps. And now click the filter button and make sure the audio is set to mix mono and have a 44100Hz (44.1kHz) sampling rate. Finally, just before saving your video, set the output format to the MP4 muxer.
The settings above must be followed or else your video will look like crap, with green lines and snow, or both. Check the settings above if this happens and make sure all the appropriate filters are applied. I find that sometimes resizing the video downwards often helps.