Archive for February 20th, 2008

When Screencasting Goes Terribly Wrong

Wednesday, February 20th, 2008

Last night felt like the worst night of my entire life. Let me fill you in. Richard and I signed on to record several screencasts on the subject of screencasting in Linux for ShowMeDo. I had already produced my first one without a hitch. My second second screencast was going to cover h264enc and mencoder. What I intended to do was record this second screencast in the same manner as the first one. I was going to record it in a VM on my openSUSE machine and I was going to use Ubuntu as my VM. I won’t go into details of why I chose to do this so it’s not worth talking about.

Anyway, things were going swimmingly last night with my very first take. However, trouble set in when I was almost done with my screencast. Nearly 3 quarters of the way in my VM power exited. Aborted! WTF! I thought. So I started my VM back up again thinking it was just a silly glitch. My VM for this OS was set at 1024×768 but upon rebooting the VM display switched to 800×600. Wonder what caused that. Well, I tried to adjust my resolution back to 1024×768 and then rebooted. This time I came in at 640×480. Do you see a pattern here? VirtualBox was giving me the finger for some reason. Odd since we were the best of friends.

So I decided to dig in and get to the bottom of things while keeping in mind that all I wanted to do was finish the damn screencast. I spent nearly an hour and a half trying to get my x.org rectified to no avail. Cripes! I could have deleted the VM and re-installed Ubuntu again in the time that it took me dinking around with things. And I didn’t even fix it. So it’s still broken.

Being defeated by VirtualBox I gathered what was left of my pride and decided to screencast this bad boy in openSUSE instead. It was the only option that I had. So I set up a new user so that my highly customized openSUSE desktop looked a little more default and standard looking. Maybe I should have justed used Suse in the first place.

Once I got everything ready I started recording again. This time I got all the way through with my tutorial. I was using recordmydesktop in the terminal. When I stepped back in to my terminal to stop recording and start encoding, recordmydesktop locked up…meaning I just lost my entire screencast. There is nothing more frustrating than that. It has happened to me several times in the past.

Cool heads prevail so I started up recordmydesktop in the terminal and recorded again. This time the same thing happened. Mother fu…! I tried it again. Same thing. Right about then I felt like Bruce Banner right before he turned into the Hulk. I was about ready to go “mailboxing” with my lucky Louisville Slugger, if you know what I mean. What’s frustrating is completing the entire screencast only to be disappointed in the end when the damn thing locks up.

Ok, this time, I rebooted my machine. Perhaps I “glitched” something. This time I got myself set up again and started recording. Again, I got all the way to the end of my screencast when I tried to stop recordmydesktop and it hung dead in my terminal. Alright, time to switch over to qt-recordmydesktop. I wanted to see what would happen with that, knowing full well that it was still using the same dieing package as the one that I was running in the terminal. This time I ran a few tests. It seemed to be recording just fine. So I started in again. Got all the way to the end of my screencast and qt-rcordmydesktop locked up. That’s when I exploded. Blood every where. Wife and kids not happy. :)

By this time I had already spent 4 hours trying to record this 15 minute screencast. 4 hours! I bet you can imagine how pissed I was to spend all of that time on something and then not see any results. Let me tell ya…no amount of Hail Mary’s or Our Father’s got me anywhere last night. Speaking of God, I felt like I was Job or something…and experiment. Somebody was playing with me. All of this was going through my head. I think at one point I was going to leave screencasting completely. Quit my job and start selling Amway. You know, a new direction in life.

Anyway, recordmydesktop hadn’t beaten me yet. Recording seemed to work in short bursts. So I decided to split up my recording. I would record a couple of minutes and stop it. That seemed to work. Although that even crashed a few times too.

I thought maybe there might have been an update So I opened my browser and headed out to the recordmydesktop website. Sure enough there was an update to all three packages: recordmydesktop, gtk-recordmydesktop, and qt-recordmydesktop. I checked my version on openSUSE and noticed that I was 3 point releases behind. So I looked for a new rpm file. None. That meant that I was going to compile it. I download all 3 source files, compiled them, and installed them. Now I had the latest and greatest.

By now it was really late in the evening. All that I had to do was re-record the ending of my screencast. So I tried to pickup where I left off and it worked. So now I am not sure if my new packages are working or maybe I just got lucky on the last part of my tutorial.

What I have now is 5 individual ogv (the newer recordmydesktops do not encode into the ogg container anymore) files. Today I will try to assemble those into one fluid video. Although, it may look a little odd. I may have little choice in the matter though. I suppose I could record it in a VM on my Windows machine but I really do not feel like recording it again. This screencast will be easy to re-record but I have already done it one billion times and now all I want to see is it going away.