When using ffmpeg to encode an MP4 for general consumption, should I set the profile and IDC level? (-profile:v and -level:v)
Let the encoder set the level automatically. The encoder will have a default profile (High for x264) and higher the profile, better quality for a given bitrate or lower bitrate for a certain quality target. Unless you have compatibility concerns, default High is fine as well.