This is great but you should consider adding something like this:
Add this to the <tr> where the flash object is in.
Code:
style="display: none"
and add this just after that one (that with flash object)
Code:
<tr>
<td onclick="this.parentNode.style.display = 'none'; this.parentNode.parentNode.getElementsByTagName('tr')[0].style.display = '';">
Click here to display the video.
</td>
</tr>
I tested it on FF2.0 and IE7 and this works good. Don't know if it works on IE6 yet, because I don't have it anymore. Opera should be fine.
I checked this on FF with Temper Data extension (shows requests that are made by FF) and the flash is not loaded when it is not displayed (display: none) and loads just after clicking on the predefined text. I know that not everyone will want that change so maybe you could add this as an alternative version? This would save users some bandwidth when they open thread with many videos (not everybody wants to watch all the videos).
----edit----
Oh and one more thing. I think that using opaque wmode in flash is slightly faster than transparent (it doesn't need to check if flash has transparent parts). This still works like transparent in context of dynamic html (works well with z-index).