As a native speaker I can add:
If there is no direct implications about length of the process length of 'прошептать' is very short - word or sentence. For example 'он прошептал ей на ушко всё что думал о ней' - implies very short period of time, word or clause. But anyway it's about period of time in it's core.
'шепнул' is about completed process without emphasizing that it had length.