The problem I have is defining what exactly language is. I generally don't believe that we truly have any kind of free will, and so I think of our brains as being like a computer program that responds according to certain constraints and can probably even modify itself, but predictably so. Like a computer, this program operates according to a programming language, except that this one is biological and the circuitry is different. Unlike computers, we aren't networked in a physical sense, so we can't simply transfer information directly from one brain to another. A person communicating to another is taking the output of its own program and modifying it according to a certain protocol so that the other person's "program" can interpret it in a useful manner. A shared protocol is a spoken language. How the language/protocol originated is an entirely different question though.
So I tend to think that spoken and written language is the result of cognition, but cognition need not require language. I don't think that's a sure thing, though, and I see quite a few problems with the analogy I used above. I have no clue how meta-cognition fits into the picture.