title: Multimedia framework for video playback in a GUI application?
body: <p>Some time ago I started a project in which I needed to do the following things:</p>
  
  <ul>
  <li>Play videos:
  
  <ul>
  <li>In any common format (avi, mpeg, xvid, etc.)</li>
  <li>Be able to pause and reposition the stream programmatically.</li>
  <li>Be able to set the playback speed (not mandatory, but desirable)</li>
  </ul></li>
  <li>Let me paint custom graphics (kept in sync with the video) over the playback component.</li>
  <li>Allow access the current frame as a raster image (this is not mandatory, but desirable).</li>
  </ul>
  
  <p>And also be easy to use (e.g. visual component oriented, I don't want to deal a lot with the multimedia streams internals).</p>
  
  <p>As I already had some related code written in Java, I tried with all the Java libraries that I found (JMF, FMJ, JVLC, Jffmpeg, gstreamer-java) but no one satisfied all my hard requirements (for example, those which allowed me to draw over the frame couldn't be paused or rewinded, those which were full-featured were outdated, etc.), so I put the project on hold.</p>
  
  <p>Now I'm on the mood for a comeback and I won't mind to rewrite the code in other language (of a level equal or higher than Java, but please not C or C++, I've become too lazy :-p) that has a good GUI framework or Rich Client Platform freely available too. Being multiplatform is a good point, as I like to develop and test in Linux, but I'd like to reach a larger audience, so being able to target Windows is a must.</p>
  
  <p>So what language and frameworks would you recommend me?</p>