How To: Get your external Super Drive working in Lion
Every once in awhile I like to post a tip that will likely help only one other person on the planet. Today is such a time.
As some of you may know, I recently replaced my MacBook Pro’s internal SuperDrive with an SSD drive. I chose the MCE Optibay kit for both its ease of installation, and also because it included an external enclosure for my SuperDrive (basically turning my internal drive into an external USB-powered one), so on those rare occasions where I actually needed to burn or read a DVD, I could.
Well, wouldn’t you know it, the day after upgrading to Lion I needed to rip something in Handbrake. This worked fine in Snow Leopard, so imagine my surprise (really, TRY to imagine it) when I popped in a DVD and got THIS message from the DVD Player App:
“There was an initialization error. A valid DVD drive could not be found. [-70012]”
This error sucked for a couple reasons. First, this drive worked just fine in Snow Leopard – I didn’t have to do anything other than plug it in to get it to play a DVD. Second, it’s one of those error messages that really doesn’t give you any info or course of action other than to say “Crap. It looks like a hardware error, and what the hell am I supposed to do with that?” And Third, I knew it WASN’T a hardware error since the DVD Showed up on the desktop and in Finder – it was just that the DVD Player App couldn’t see it.
Well, luckily for me, I have many smart faithful readers, and luckily for YOU, I am going to tell you what I learned. Faithful Macenstein reader Jens pointed me to an article over at hardwrk that fixed my problem, and at the risk of plagiarism (and because their screenshots are in German and I want to get this info out there) here’s a quick run through of the steps to get Lion to recognize your now EXTERNAL, formerly internal, SuperDrive.
Step 1: You’re going to need to slightly modify the DVDPlayback framework on your Mac, and to do that, you need a Hex editor. Download 0xed. You’re basically going to do a “Find and Replace” on that file, changing all instances of the word “Internal” to “External”. But a regular text editor can’t do that.
Step 2: Back up the file /System/Library/Frameworks/DVDPlayback.framework/Versions/A/DVDPlayback by Option + dragging a copy to your desktop, or somewhere else on your computer. I then renamed the file by adding the word “ORIG” to the end. You should too. This is just so if you screw things up you can always put the original file back, but you’re not going to screw anything up.
Step 3: Open the file in 0xed. It should look like this:
Step 4: Hit Command + F (Find) or go to EDIT> FIND> FIND, and then type in “Internal” in the top FIND box, and type “External” in the bottom REPLACE box. I left “Ignore case” checked, and then hit REPLACE ALL.
Step 5: You probably won’t be able to save the file over itself, so you’ll need to do a SAVE AS. Save the file to your desktop (good thing you renamed your old version ORIG, right?). Now just drag that file back into the /System/Library/Frameworks/DVDPlayback.framework/Versions/A/ folder, overwriting the old file. (You may have to give your admin password to modify the file).
Step 6: That should be it. Try plugging in your external drive and verify that it works. If it still doesn’t, then, sorry. I got no other ideas. But it should.
Wonder Woman!! 🙂
Do you have a link to that wallpaper?
Wallpaper link
http://www.youwall.com/papel/wonder_woman_wallpaper_d2f53.jpg
– The Doc
Great find. Thanks!
ya know what… F*** Lion!
I had the same problem already under snow leopard. Just used VLC
Thanks for this great tip, Doc. Solved a problem I’ve had for more than a year. 🙂
Thanks so much. I just upgraded AND did a hard drive upgrade and external Superdrive enclosure switcharoo – now I am back to normal.
Thanks, works great!!
great! thanks so much!
it worked!
even on Snow Leopard!!!
thank you very much!!!
great!
andreas
Okay so i guess mine is messed up… it won’t even load dvd’s where i get the error message anymore.
I can’t thank you enough. It worked beautifully.
Glad to have this fixed, Thank you! I was thinking this was a Hackintosh only Problem, I went so far as to write an Automator script to auto-play DVDs in VLC…. I appreciate being able to have the native DVD Player working again though!!!
-Dan
After doing this trick, the Superdrive installed inside a sata slim box still doesn’t work, anyone have an idea what can I do to fix it ?
For information, the Slim box is a Firstcom product, and when i plug it to the macbook, it starts but nothing happens, and after 1 or 2 minutes, it turns off all by itself.
thank for your help
This worked in my OWC SuperSlim External enclosure with my MacBook Pro optical drive which I removed to install an SSD and a HD. My DVDs play fine. Many thanks.
FYI, this post (http://forum.notebookreview.com/apple-mac-os-x/492588-external-drive-dvd-player-issues-optibay-easy-fix.html) has an app you can download that runs a script to do this process.
Thanks a lot! I just put my superdrive external, to add a second HDD inside my macbook pro. As I use Lion from the beginnning, I don’t understand what I miss when my superdrive was not recognize by the system, nor DVD Reader, neither iTunes. Fortunately, someone on a french mac list I use to read give me your link.
Really, I love the mac community! 🙂
thanks! Had resigned myself to using VLC, which is really no problem, but its nice to have a fix.
Thank you! i am running snow lepord 10.6.8 and was having the problem!. It fixed it like a charm. Even if you only help a small amount of people, I am extremely grateful!
I’m the other person on the planet. Worked GREAT! Thank you!!!
…wow thank you!!!
this really does work also with snow leopard.
thanks again
ian
Worked perfectly! THank you for the easy instructions.
Dude, you rock…
so you’ve helped one more person!
Thanks!!!!
LEGEND! worked like a charm… can’t thank you enough! 🙂
Thanks a lit that worked fine at least for the legal DVD
but I still have a Issue
– when entering my audio CD’s no audio CD’s seem to be recognized (no pirate CD’s) just my old CD collection out of the 80’s-90’s
– The audio CD’s never show up in finder => iTunes does not recognize them
what I did so far:
– iTunes has been updated
– disk permissions have been repaired
– no different if I would change the default audio player to Cog instead of iTunes
– I realized this already in SL and after update to Lion the sings are still the same.
What seem to work:
– boot from the external drive works seem to work (my snow leopard boot disk was recognized)
– Burning CD’s with Data is as well ok
– Bank CD’s are recognized
– Blank DVD’s are recognized
– Data CD’s have been recognized apart from a few but this ones might even be Windows installation
Would be good if someone of you could help me 🙂
I am running a
MBP 2.66 GHz Intel Core 2 Duo / 8GB ram / Mac OS X Lion 10.7.3 (11D50) / MATSHITA DVD-R UJ-868:
Firmware Revision: KB19
Interconnect: USB
Burn Support: Yes (Apple Shipping Drive)
Cache: 2048 KB
Reads DVD: Yes
CD-Write: -R, -RW
DVD-Write: -R, -R DL, -RW, +R, +R DL, +RW
Write Strategies: CD-TAO, CD-SAO, DVD-DAO
Media:
Type: DVD-ROM
Blank: No
Erasable: No
Overwritable: No
Appendable: No
This solution rocks! Even on 10.5. First, the internal dvd drive in my MB stopped working a few years back. Apple’s suggested remedy: buy an external drive. Eventually I did just that, which worked fine. Until today. After several dead-ends I stumbled on this site and applied the above fix and presto, my external drive lives once more!
You are doing God’s work. Thank you.
You’re a rock-star!! Thanks so much for posting this!!! I’ve got the data doubler rocking and now my dvd player is working again! So cool that you posted this! thanks!
Brill advice – I was completely stuck on this issue then I found your post. Now got an external DVD drive once again.
Many many thanks.
You absolute star! Thank you so much.
Super, man you are a hero!!!
Genius! Thanks for sharing!!! Worked great for me!
This helped me too! I was experiencing the problem under Snow Leopard! PERFECT!
Thank you! First time ever using a hex editor. Your instructions were perfect. Worked like a charm. 🙂
Thanks, had exactly the same situation and this got my superdive working
OMG Thankx, i was really troubled in the same condition, but i fixed it!
Rock on, thanks!
I just did a Snoopy dance in your honor. Thanks.
i can not find the framework file in the directory. Has anybody a hint where i can find it ?? (Mac OS Lion 10.7.4).
Thanks, Roland
Hey Roland,
Are you in the right Library file? It’s the System>Library, not User Library.
Incidentally, Apple hid the user Library folder by default in Lion, sorry. To see it, do the following:
1- Click on your desktop (Finder)
2 – At the top of your screen you will see the GO menu
3 – Click and hold on that. You will see a bunch of places you can go.
4 – While still clicking and holding, now press the OPTION button on your keyboard.
5 – You should now see LIBRARY added to the list. You can now select it and go to it.
– The Doc
Thank you Doc. The way you describe brings me to the user library. And in the Systemlibrary, there is still no “DVDPlayback.framework”, even when i show hidden files.
Yes, I know it’s the wrong Library, just throwing that out for a “in case you didn’t know” thing.
Are you missing the Frameworks folder entirely in the System > Library folder? Of is the DVDframework just not in that folder?
– The Doc
Thanks, works perfect!
Will be using VLC mostly, but it’s nice to have a fully functional external superdrive.
BRILLIANT!
Thanks for the clear instructions!
Wonderful!! Thank you so much. This solution works. Bless you many times.
Primo, thanks bro! Works perfectly!
I’m running 10.7.4 on a MacBook Pro 17″ mid 2010. I removed the internal Apple DVD burner and mounted externally. I don’t know what version others who have reported success are running, but it’s clear that when I attempt to copy back my modified DVDplayback file, the OS replaces it with the original. I followed the instructions verbatim.
With the hex editor, I rechecked my modified DVDplayback file after saving it and indeed all references to “internal” are gone. Before I copy the modified version, I first deleted the original DVDplayback from /System/Library/Frameworks/DVDPlayback.framework/Versions/A/
However, when I copy the modified version back to the /System/Library/Frameworks/DVDPlayback.framework/Versions/A/ folder, I check it again, and what do you know? the references are all back to “internal”.
Clearly, the OS is restoring this file upon copy.
So I booted the computer from my secondary hard drive (running another copy of the same OS version) and did the copy behind the OS’s back (the one I’m trying to run it on) and guess what? It worked! Thus proving my theory that 10.7.4 monitors the DVDplayback file. If it sees the file being copied, it uses it’s default version to be copied back. Anyone else run into this?
You rock! Thanks a ton!!!
This didn’t work for me. However, I dug around some more, found roughly the same fix. What ended up working for me in the end was looking for the hex version of “internal” and “external” From reviews on cnet –
http://reviews.cnet.com/8301-13727_7-20070591-263.html
“locate the hex code for the word “Internal” (which is “496E7465726E616C”) and replace it with the hex code for the word “External” (which is “45787465726E616C”).”
Worked like a charm!
I briefly just breeze through some of these comments and saw that some people can’t save to the folder. In the finder, find the folder “A” , /System/Library/Frameworks/DVDPlayback.framework/Versions/A/, get info on that folder and change the permission so that everyone can read and write. Save the DVDPlayback file to the folder and you are golden! I assumed to change the permission back to read only.
Fantastic fix – many thanks!
Thanks a lot man. Worked like a charm first try. I installed a new SSD and replaced my optical drive with a HDD harness and put the optical drive in an external case. I tried to play a movie today and freaked out. I’m glad I didn’t have to mess with terminal. Huge help!
I had to do this all over again for Mountain Lion. I’m happy to report that replacing the hex characters for internal and external has worked!