How can it be the mercy of TinyMCE? The caption-code is a function somewhere in the wordpress-files, and you can (and I have) rewrite it in your own functions.php – just change the built-in function to begin with. The caption is a shortcode, nothing more.
As for using plugins for the video embeds, that’s not an option. I want to know where the automatic parsing resides, and try to write a new version of it – this is for a theme-build, and I don’t want it to output crappy code – not to mention that the embed-code doesn’t even provide a wmode=”transparent” (or opaque) so as to render HTML in front of Flash-video – another omission which basically renders the whole thing useless.
Yes, I know I could probably provide a function to add a specific shortcode around video-links, but this would still have to be explained, and I would rather that minor fixes like this was actually implemented.