freedom of speech doesn't mean that you can just say whatever you want, whenever you want, wherever you want. It mostly just means that you can protest government stuff.
Actually, yes, it does mean exactly that.
The only thing you are not legally able to do in the United States is threaten the life of the president (others officials and citizens as well can be used as stance for a charge, but only the president is an automatic offense) and slander someone, though that doesn't mean you can't insult someone without grounds, it means you can't make, say, a commercial with intent of harming a person or their business without proper proof of the things you're using to do harm.
However, unless there are local laws (which really shouldn't exist and you can take them to court over them if you really have a stick up your ass about it) then no cop can tell you to shut up and mean it. He can say it personally, because he too has rights as a citizen, but he can't force you to shut up. If you say something, anything, and a cop uses force while on duty to silence you, he is in the wrong. Every time.
EDIT: Disturbing the peace is another thing all together, though, but if you silently say forget they can't do a thing about it.