Slashdot Mirror


Video Capture from an X11 Window?

Dandre asks: "I'm trying to capture video from an X11 window containing a java display of my research into an MPEG. The only 'solution' I was able to find was to use x11rec, which stores an animated gif from the window. I then can presumably use various tools (mpeg2encode & gimp) to split this into separate images then bind it together again into an MPEG. I would have thought there was a simple tool to just capture directly into MPEG from the given display. Does anyone have any suggestions?"

24 comments

  1. Realplayer by PD · · Score: 2, Interesting

    Could that be the elusive way to save a realplayer video stream (without the sound)?

    1. Re:Realplayer by Anonymous Coward · · Score: 0

      There's a (contraband) tool out there called StreamBox to save realplayer (and other streaming format) streams. You can find it if you poke around.

    2. Re:Realplayer by xchino · · Score: 1

      This brings up an interesting point. Programes like DeCSS are illegal because they attempt to avert imposed copyright protection. But an application that polls a window to convert into an mpeg isn't necessarily for piracy, so I don't think could be considered illegal until used in an illegal fashion.

      --
      Everyone is entitled to their own opinion. It's just that yours is stupid.
    3. Re:Realplayer by qqtortqq · · Score: 1

      But an application that polls a window to convert into an mpeg isn't necessarily for piracy, so I don't think could be considered illegal until used in an illegal fashion.

      Just like decoding DVDs that you own so you can watch them under Linux, right?

    4. Re:Realplayer by Media+Tracker · · Score: 1

      Using the information from the RTSP Proxy White Paper, it should be feasible to build a very simple client which would simply download all UDP packets and save them sequentially in a .ram file. The document explains how streams are controlled etc.

      Anyone know if such a tool exists (the foremenyionned StreamBox is for Windows and moreover requires a crack)?

  2. Try this by Bobo_The_Boinger · · Score: 3, Informative

    I came across this site http://www.hdk-berlin.de/~rasca/xvidcap/ that seems to capture directly to single files, so you can skip going from the animated gif to single files step. Not sure if it is exactly what you want though, they say you need a fast machine for any largish size captures.

    --
    --David
  3. hmmm by drDugan · · Score: 2

    I know this will be modded into the depths of hell--

    but if its Java, then it's supposed to be cross platform, right?

    If you were doing it on a Windows box, I'd bet there are lots of tools to capture video. Some even came with my video card.

    try http://desktopvideo.about.com/

    1. Re:hmmm by Rares+Marian · · Score: 1

      You try capturing video from a window.

      If it's Java it is crossplatform, therefere I should have no need to use Windows.

      --
      The message on the other side of this sig is false.
  4. Transcode by WasterDave · · Score: 4, Interesting

    Transcode pulls all sorts of stunts with importing/exporting video.

    http://www.theorie.physik.uni-goettingen.de/~ost re ich/transcode/

    http://www.theorie.physik.uni-goettingen.de/~ost re ich/transcode/html/modules.html

    Dave

    --
    I write a blog now, you should be afraid.
  5. Why would you want to do that? by reynaert · · Score: 3, Informative

    You just have to modify your program to save a bitmap of each frame to a file. That can't be that much of work.

    1. Re:Why would you want to do that? by Screaming+Lunatic · · Score: 2

      Render to bitmap will probably be slower than render to screen. That might change the output of his program. My GF3 has a S-Video out. That's probably the best way to go.

    2. Re:Why would you want to do that? by outlander78 · · Score: 1

      Rendering the screen to a bitmap using Java is not that easy. It'd be fine for the panel contents, but not for the entire window, and would certainly not show things like the user moving things with a mouse or other system-related graphics.

      --
      cheers,
      Andrew
  6. You need a second computer by Anonymous Coward · · Score: 0

    I saw one of these once at a production video shop. One computer plugged into a second. The second had a special video capture card. From that point, capturing screen output to tape (3/4", I think) was trivial.

    It might be a pain at this point, but Data Explorer (http://www.opendx.org) does data visualization, and might be able to duplicate what you already did, or at least use your program to create the data that it renders. One of Data Explorer's strengths is that you can create movies. It sets up each frame, snaps a picture, and then renders the next frame. You can even designate flythroughs with objects moving.

  7. Broadcast2000 by eyepeepackets · · Score: 2

    I've used Broadcast 2000 from the Virtual Herione folks to do something like this, but they're now pushing their Cinelerra product.

    You might try it and see if it does what you want:

    http://heroinewarrior.com/index.php3

    May the luck be with you! -- Some old and wise Chinese dude

    --
    Everything in the Universe sucks: It's the law!
  8. Use (ack) VNC & windows? by xchino · · Score: 1

    This may not be applicable, but I knwo there exists applications for windows that do what you want.. and you can serve an appliaction and just poll the window. However performance will most likely be degraded unless you're on a gigabit network.

    --
    Everyone is entitled to their own opinion. It's just that yours is stupid.
  9. use rfbproxy (from VNC) by g4dget · · Score: 2

    You can get it here. It's small, it's very simple, and it works well. It inserts itself between a VNC server and a VNC client. You can use it to record sessions from Windows, MacOSX, and Linux, and play them back on all those platforms. It can even be played back from a Java applet through a web browser. It probably requires less bandwidth than MPEG.

  10. Probably doesn't exist but... by Anonymous Coward · · Score: 0

    Since X uses a client/server model, all you'd need is an X server that records to MPEG instead of displaying on screen (or forward the data to display X server if input is necessary). As the subject says, there probably isn't any current programs that do it, but maybe it's a project worth looking into?

  11. Capturing FLASH-MPEG? by Dr.Dubious+DDQ · · Score: 2

    I've been hoping to find something like this (that I could get to work) for some time now, to, e.g., make VCD's out of FLASH cartoons...

    I did run into what appeared to be an abandoned project ("xvidcap", I think?) but I couldn't get it to compile...

  12. SGI VizServer? by masonbrown · · Score: 1

    Check out SGI's VizServer program. It's designed to render video on a massive system, compress it on the fly, send it over the network, and play on the viewing workstation (thus eliminating super-expensive graphics hardware on the desktop, while increasing big-iron graphics hardware sales). Doesn't sound dead on, but maybe there's something similar in the works.

  13. subterfuge? by Anonymous Coward · · Score: 0

    There were links to subterfuge for intercepting system-calls under Linux a while ago.

    You'd probably need to know an awful lot of video programming to use subterfuge under the X server, but it might be worth a go.

  14. SGI O2 by Anonymous Coward · · Score: 0

    If you can get your hands on an SGI O2, it has the ability in hardware to record portions of the screen directly to a movie file.