Random Tech

Wednesday, November 30, 2005

Take a Screenshot of DVD Player in OS X

Ever since OS X came out, Apple made sure that it would not be possible to take a screenshot of a DVD. When DVD Player is open, you can't capture the screen with Grab. Command-Shift-3 and Command-Shift-4 both do not work when DVD Player is open. This makes no sense at all (If you own the DVD, you should have every right to do whatever you want with it! But that's another story). However, Apple forgot one thing...

1) Put your DVD in your computer and open DVD Player (Applications -> DVD Player) if it does not open automatically. Go to Video -> Maximum Size, or hit Command-3. Fast forward to the frame you want to capture, or select the scene to start at.

2) Open the Terminal (Applications -> Utilities -> Terminal). Type this, or copy / paste it right in the Terminal:

screencapture -i ~/Desktop/dvd.png

Your mouse should turn into crosshairs. Now hit the space bar. Your mouse should now be a camera. Click the window the DVD is playing in. A file called "dvd.png" will appear on your desktop.

3) Sweet! If you want, you can go into Photoshop or another image editing application and trim off the window part of the capture.

More Screencapture Options

Feel free to adjust the code to your likings. Here are all the options for the Unix command 'screencapture':
usage: screencapture [-icmwsWx] [files]
-i capture screen interactively, by selection or window
control key - causes screen shot to go to clipboard
space key - toggle between mouse selection and window selection modes
escape key - cancels interactive screen shot
-c force screen capture to go to the clipboard
-m only capture the main monitor, undefined if -i is set
-w only allow window selection mode
-s only allow mouse selection mode
-W start interaction in window selection mode
-x do not play sounds
-S in window capture mode, capture the screen not the window
-C capture the cursor as well as the screen. only in non-interactive modes
-t image format to create, default is png
files where to save the screen capture, 1 file per screen


Why does this work? Did Apple simply forget about screencapture and taking screenshots with Unix commands? Or maybe they thought that it wasn't worth the hassle to fix? Perhaps something else? What do you think?

digg story


  • Taking a screen shot with grab worked in 10.2, and most likely 10.1 (I wouldn't know, never used 10.1). It broke in >= 10.3

    By Anonymous Anonymous, at 11/30/2005 9:23 PM  

  • or just take a screenshot in vlc....

    By Anonymous Anonymous, at 11/30/2005 9:25 PM  

  • I agree with previous poster ... just use VLC and not worry with Photoshop or Terminal

    By Blogger FYT, at 11/30/2005 9:47 PM  

  • Oh, you can also use video in through USB/firewire or a device like eyeTV that don't have the restrictions

    By Blogger FYT, at 11/30/2005 10:01 PM  

  • learn command line, it's good for you.

    By Anonymous Anonymous, at 11/30/2005 11:16 PM  

  • "Capture" Widget

    By Anonymous Anonymous, at 11/30/2005 11:24 PM  

  • Both SnapNDrag and the widget ScreenShot Plus take pics of DVD Player without problem.

    By Anonymous Anonymous, at 12/01/2005 4:32 AM  

  • VLC is def the way to go...it even has a sweet "save picture" command in the recent versions.

    By Anonymous Anonymous, at 12/01/2005 5:08 AM  

  • According to what it says right there you can get just the window contents with the -S option. So you will only get the image and not the border.

    By Anonymous Anonymous, at 12/01/2005 5:21 AM  

  • Where can I find info on VLC?

    By Anonymous Anonymous, at 12/01/2005 6:17 AM  

  • Google....VLC

    By Anonymous Anonymous, at 12/01/2005 6:30 AM  

  • VLC here ---> http://www.versiontracker.com/dyn/moreinfo/macosx/14738

    By Anonymous Anonymous, at 12/01/2005 6:33 AM  

  • VLC for all platforms, official site here : http://www.videolan.org/vlc/

    By Anonymous Anonymous, at 12/01/2005 6:48 AM  

  • Funny how even Apple caters to the unreasonable whims of the movie studios.

    I ran into this way back when and just used VLC to capture, as mentioned by others here.

    Is it any wonder I prefer open-source solutions? }:)

    By Anonymous Anonymous, at 12/01/2005 7:19 AM  

  • Awsome! built-in, no need to download any software. I'm sure this will come in handy when I am on-site or on the road anot not online or whatever... and best of all, it'll work on every 10.x mac I come across. Nice Find! The jpg option is also very nice.

    By Anonymous Anonymous, at 12/01/2005 7:37 AM  

  • It might not be strcitly DRM related... It may be the method the DVD Player has been using to display video to the screen has changed. I ran into something similar on a Windows machine once... one DVD player was screen-capture capable, and the other wasn't, and neither was a result of any DRM restriction, just the method that the programs were using to display the video.

    Considering that programs like MacTheRipper and HandBrake still work, it's not an OS level restriction anyhow.

    By Blogger richard, at 12/01/2005 8:54 AM  

  • Of course Apple caters to the movie studios. Does Pixar mean anything to you?

    By Anonymous Anonymous, at 12/01/2005 8:57 AM  

  • I believe the main reason why the screen shot is not available is simply because the dvd player outputs the content directly to the video card, and it bypasses the whole Quartz Extreme API layer. It's always been this way with TV tuner cards.

    By Anonymous Anonymous, at 12/01/2005 9:34 AM  

  • Kick ass! Thanks!

    By Blogger Giovanny Gutierrez, at 12/01/2005 9:43 AM  

  • According to the screencapture man page, you need to use the -t [format] option to set the file format -- just changing the file extension won't work. The PNG format is used by default, so you're actually saving it as a PNG even if you use the .jpg extension. If you don't believe me, run the "file" command against your screenshot. Here's what happens when I do this:

    eriktown@antimony { ~ }$ file foo.jpg
    foo.jpg: PNG image data, 583 x 784, 8-bit/color RGBA, non-interlaced
    eriktown@antimony { ~ }$


    eriktown@antimony { ~ }$ screencapture -t jpg -i foo.jpg
    eriktown@antimony { ~ }$ file foo.jpg
    foo.jpg: PNG image data, 583 x 784, 8-bit/color RGBA, non-interlaced
    eriktown@antimony { ~ }$

    So be careful to specify your desired output format. (And isn't "file" useful?)

    By Anonymous Anonymous, at 12/01/2005 9:50 AM  

  • Guess what, you can also just hit:


    Then hit the spacebar and click on your window.

    SHIFT-APPLE-3 takes a 'full' screen shot.

    - eltoozero

    By Anonymous Anonymous, at 12/01/2005 10:17 AM  

  • Yeah stick with vlc.

    By Anonymous Anonymous, at 12/01/2005 11:36 AM  

  • eltoozero-

    Did you even read the post? You can't do the built in screen grab with DVD Player.

    And as far as using VLC instead of the Termainal, a little command line never hurt anybody...

    By Anonymous Anonymous, at 12/01/2005 12:35 PM  

  • Use mplayer for DVD playback, (or VLC) and all screencapture problems are solved. You can also download and install imagemagick along with the X windowing system for UNIX. That way you can just do an import -root and you get a screen grab of the entire desktop, regardless of what "restricted" apps like iDVD are running. Thanks for the info though.

    By Anonymous Anonymous, at 12/01/2005 1:02 PM  

  • Apple didn't deliberately make DVD screenshots impossible; rather, DVD Player outputs the video signal straight to the video card, rendering many screen- capture techniques ineffective. SnapZ Pro will capture video of your screen, but doesn't work with DVD player either. Same reason.

    WTF would a movie studio restrict capturing images? "Na, I don't want to see that movie, I've already seen all the good frames..." They pay still photographers thousands of dollars to get publicity photos on set, and they don't include any DRM when they release those...

    By Anonymous Anonymous, at 12/01/2005 1:38 PM  

  • Windows users will experience the same behavior. This is due to the fact that the video isn't really being displayed on your desktop, it's piped directly to the video card. The Video card in turn replaces a blank area where the player window falls with the video. There's a neat trick you can do with most video cards which will probably work on OSX as well. Take a screenshot of the player and pop that into Photoshop. What you will get is a video player with a blank screen. Hit play on the video player, and let it fall behind Photoshop. When the player window aligns up with the player screenshot in Phtotshop, the video should 'play' in your Phototshop image.
    I imagine this will go away with Vista which has a completely different compositing system that's double buffered.

    By Anonymous Anonymous, at 12/01/2005 2:01 PM  

  • No, this is deliberate. OS X doesn't use the old video overlay method—it has been composited on the graphics card since 10.2, just like Vista will be whenever it comes out.

    By Blogger cless, at 12/01/2005 3:37 PM  

  • Another very good tool is Snapz Pro, which takes screenshots of the Apple DVD player out of the box. This is a very useful tool that I have years for years.

    By Blogger Peter in Japan, at 12/01/2005 9:05 PM  

  • SnapsPro is the way to go on this. It is well worth the $$

    By Anonymous Anonymous, at 12/01/2005 9:08 PM  


    You Don't need tools like snapz pro.
    DVD Player has a SCRIPTS FOLDER. Just write the unix commands in a APPLESCRIPT and put it in the Scripts Folder of DVD Player.

    Then you got it in the MENUBAR of DVD Player and you can TAKE SCREENSHOTS WITH A SHORTCUT.



    By Anonymous Anonymous, at 12/02/2005 12:26 AM  

  • FYI, I'm putting this tip into my podcast, The Geekcast, on episode #66.

    By Anonymous Anonymous, at 12/04/2005 6:12 AM  

Post a Comment

<< Home