Feb 04

Liberating Video From Flash or Silverlight via Quicktime Screen Recorder

Example Quicktime video made from a embedded flash view

I had a recent situation where some video I need to deal with was locked into Silverlight, Flash or other website embed from the source. I am not advocating you duplicate restricted material with this method. You shouldn’t. This is just a quick guide to generate an editable movie using the default software inside Mac OS X. In the following example, I am just going to snag a clip from an embedded video on my own site.

There are other ways to do this and you can use additional software options from various vendors for video and audio, but my way only uses the following:

1. MacBook Pro with Line In and headphone jack
2. 3.5mm audio cable
3. Mac OS X 10.6.x or Mac OS X 10.7.x
4. Quicktime Player version 10.x (version that ships with Snow Leopard (10.6) or Lion (10.7)

I am running Lion (OS X 10.7) in my example. Here we go.

Step 1: Confirm Audio Settings and Cable setup

You can just trick the audio recording with a simple 3.5mm cable in the headphone and line in jacks. You can get software from Rogue Amoeba or others like SoundFlower, but I have always found quality issues and “stadium” echo sound effects when doing that. A simple audio cable does the trick.

Simple audio cable looped into both ports

 

Simple audio cable looped into both ports

 

Once you have the cable plugged-in, you need to check to be sure your Sound settings are correct. These will probably be set by default, but good thing to check.

OS X Sound Preference Pane Input Setup

OS X Sound Preference Pane Output Setup

Step 2: Position and setup video

In my tests, lowing the resolution down from the very high-res setting makes sense to do. In my tests, I usually cut the resolution to 1200×1024 or even 1024×768. If I am watching the clip in non-fullscreen mode so I don’t generate a huge video file.

Thinking about the setting of the display

Then, you want to go to the video via the web browser or whatever and get it queued up and ready to play. The more you have it setup, the less you will have to trim for the final video.

Prepping location for the video you want to capture

If you have the option, you can decide to record the video in fullscreen mode. Most embedded videos will give you the fullscreen option, but in my example, I am just snagging a fixed size embedded video.

Step 3: Quicktime Player New Screen Recording Prep

If you have the audio setup and the video queued and ready to go, then you can start the Quicktime Player. Inside QT Player, select “New Screen Recording”

File > New Screen Recording

Screen recording functionality is wonderful for training videos on how to walk people through something on the computer. The audio setting is typically the internal mic by default so you can narrate or do a voice-over of what you are doing. You do though have the option to change the audio source. In our case for this, you will change it to Line In.

Use Built-In Input: Line In

I have Soundflower installed, but am not using it. You might have other audio sources available too, but because of the audio cable setup, you will use Line In. Move the Screen Recording controller out of the way of the video location on your screen and get ready to record.

Step 4: Start the recording and play the video

When ready, press the record button. You can leave the volume on this controller down to the minimum. It does not dictate the volume. The Sound prefs do. (step 1 above.) When you trigger the record, you have to select the region of the screen to record.

Starting the Screen Recording

Get as close as you can to the core of the video you want to snag. If you just click, it will record the whole screen, so you probably want to just create a region around the video only. You can do the whole screen and then trigger fullscreen playback on the video, but that may or may not be really necessary depending on what you want from this all.

Selecting the Screen Recording Region

They press the the button to start recording to start the acquisition. Immediately then play the video. You will need to trim the screen recording of you pressing play on the video but that is super simple in Quicktime.

When have recorded the piece of video you require, you can stop recording and stop the video playback. Quicktime Player will open the screen recording capture for you.

Screen recording as a Quicktime Player movie

You can trim that initial part of the recording and you have a viable quicktime movie to export to mp4 or whatever.

Yes, not the most elegent or highest video quality in the world, but it does generate a workable video file with decent audio that came around via the loop cable. Hope this helps if you get caught in a situation that requires something like this.

Aug 24

Compiling current clone of FFMPEG on OS X 10.7 Lion

 

Upgrading to OS X 10.7 (Lion) has really caused some issues for me. A big issue for me was not being able to easily grab the current clone of ffmpeg from the git repository. I was able to compile after doing the following.

1. Get your OS X 10.7 system current (as of now 10.7.1 is the latest and greatest)

2. Get Xcode from the App Store and there will be a software update on that (unless Apple has recently changed that.)

3. Reinstall fink (recommended after the 10.6-10.7 upgrade) and get it fully up-to-speed. http://www.finkproject.org

4. Install pkgconfig via fink using

# fink install pkgconfig

as root or do it with sudo.

5. Get (git!) the current clone of ffmpeg. (info here —> http://ffmpeg.org/download.html )

6. When you do the ffmpeg source configure, include the  –disable-yasm flag

#./configure –disable-yasm

Then

# make

Then

# make install

7. You will have ffmpeg on OS X Lion.

Hope this helps.

Apr 19

Using Dock Cleats As Cable Managers In Classrooms

Powder-Coated Dock Edge Classic™ Cleats

When it comes to computer cabling in classroom environments, no matter what you do for the long runs, you usually a mess on your hands those final few feet to the faculty equipment.

No matter what you do in your school classrooms to handle cabling for faculty, there is that final length of cable for audio and video to projectors, interactive boards and audio that usually is a total cluster. Then, add-in the multiple uses and people in the rooms doing a variety of different types of presentations in different locations in the room and you compound the issue.  In our case, we had long cables running from the projector and speakers and the length connecting to faculty laptops has always been a nightmare to deal with. They sits on the ground and constantly get kicked around, removed, lost and/or damaged. It also just looks bad when you come in and see a pile of cables you need to rely on for a teaching session.

In addition to adding cable management from the projectors and speakers in the room through putting then behind the walls (if you can) or going with cable tracking to conceal and secure cables, you still need some slack to allow teachers to setup in the space in different locations. Because you want to leave some slack, but it can stay unorganized. All strict cable management systems from the usual vendors are really geared to hold the cabling in a fixed position. This doesn’t work for that final few feet from the wall you want for the teacher to be flexible with depending on their material and hardware use.

I found nothing great out there in the cabling vertical market intended to handle this sort of scenario. But, there are many solutions out there for dealing with situations LIKE this on boats with rope, which is why I looked to solutions with rope management and found that dock cleats could be a perfect solution. Different materials and environments, but very similar form and function. After a talk with L-W Visual Arts teacher, Robert Sanborn, who happens to be extremely knowledgeable of boat hardware and interiors, I found out that I should head down to West Marine and see what they have that could work for VGA and other rope-like cabling we deal with in schools.

DockEdge Classic™ Cleat in White Finish

West Marine had many different types of dock cleats but the Dock Edge Classic Cleat models seemed to be the best one to use in my opinion because it was lightweight, sturdy and seemed like our walls could handle it without too much trouble. Going through the check-out, the cashier asked if I had a boat (which we do not.) After briefly explaining I would be using this in a classroom, he smiled pretending to understand and was happy to sell whatever to me for whatever reason. Sidenote: If you have never had the chance to go in and look around store that carry boat supplies, I highly recommend it. There is a lot of really cool equipment and tools for boats but have so many other applications as well.

After We are getting a bunch in and will be installing in every classroom as we can in addition to normalizing the cabling runs with boxes and tracking. The have white and powder-coated models. We will get a mix of both depending what we can continue to acquire from vendors. I prefer 8 1/2 inch model (PN#2508W-F) as it provides enough spacing for decent extra length from the wall to take into the room for a table or desk use presentation.

Besides working quite well to tether the last few feet of a VGA, audio and USB cable, the cleat provides relief on the cable run itself to the rest of the run when it is pulled from the desk or table with the equipment. It stops the pull to the rest of the cabling in the track or behind the wall while still providing organization.

Lastly, it is also pretty fun to say you are getting a piece of equipment for your classrooms of your school from Bass Pro Shops (as they sell this model as well!) But, there are many places on the web you can order them from if you don’t have a local boat shop in your area. Depending on which sizes you get, the pricing ranges from $10-$30 or so.

Boating Dock Cleat in Lick-Wilmerding's Room C

Jan 12

Preparing Video for The WhippleHill Brightcove-Based Media Gallery

Starting January 10th, WhippleHill moved the multimedia back-end of their Podium platform to Brightcove for a number of reasons I won’t cover here but all positive in the grand scheme of things. But, this did leave me with the opportunity to look at and change from what I was doing with our video pre-processing in their old flash-based system since the Brightcove back-end provides much more flexibility on device support with HTML5 MP4 players in addition to flash capability.

So, starting early January 10th, I began testing. The main process I have been performing around video relate to our Community Meetings, Assemblies and Performances we have and want to make available for the larger community. The Brightcove Recommendations and Specifications page was helpful, but not all that specific. This became more of a trial and error to see what would be acceptable for us and the type of video we were going to be posting now in the new and improved environment.

If you are unsure what sizing and settings will work for you, I suggest you do what I did. Take a 1 min clip of video that is representative of the type of video you will be posting and export that to H.264 MP4 format a few different ways and upload them into your Whipple Hill Media Gallery to see how they show on your Desktop computers and mobile devices. Encoding/exporting 1 minute of video into the different formats will give you a better sense of exactly what happens when you change a setting here or there. It will also provide clarity on file size. Based on how you export your MP4 file, that 1 minute video filesize can range from under 20 megs into 30megs and up. This is extremely useful to understand and be aware of when you process your video. It also allows you to be able to know a 30 minute video with your preferred settings will be x megs when you go to upload it. Brightcove typically has a 2 GB file upload limit and currently WhippleHill has a 1 GB upload limit. So, knowing that and the roughly the size of video encoded with your settings will give you a guideline early in the process on how you should proceed.

Another aspect to consider is what devices people will be accessing the video from. There will be more and more people viewing our video from iOS-based and Android-based devices in the coming months and years, but today most people are still going to want to view it via laptop or desktop. This is important because it helps guide you on your priorities on sizing of the video. If you go lower in resolution, Brightcove does size it up or down very nicely for devices that want to natively go larger, but in my opinion it is probably better to get the video into Brightcove at a reasonable high resolution so even the full-screen player on a widescreen laptop or desktop monitor will look good.

One item to note: Apple does have an .m4v file format they use as a container for video files, but this is NOT the same as MP4. More information on this format can be found here. Just saving a movie out of Apple media applications to the .m4v format will not get you there.

I do most of the initial processing and editing in iMovie then export using QuickTime. You can export from iMovie under the ‘Share’ menu

In iMovie, Export Using QuickTime To Go to MP4

Change the Export Pop-up to Movie To MPEG-4

Selecting Movie to MP4

Then into the ‘Options’ button.

After a lot of testing my MP4 settings for file uploads are ideally this -

Quicktime Export to MP4 Settings

QuickTime Export to MP4 Settings

Video Format: You want to keep the format H.264.

Data Rate: The most important variable that dictates the size and quality of the resulting file. 3500kbs might be a little overkill, but in testing north and south of that, it seemed that was the cutoff of quality that I was happy with.This setting and the Image Size really are the reasons for quality and file size to fluctuate.

Image Size: Using 1280×720 because the video I have from the HD camera is going to be 16:9 and I wanted larger resolution for the desktop full-screen player. This is way overkill for iPhones and iPads, but still looks nice for desktop full-screen viewing. Brightcove gears down for devices that cannot handle large resolutions really nicely.This is something along with Data Rate you can use to decrease the size (and probably the quality of the resulting MP4)

Frame Rate: Typically from most cameras, your video will be recorded at 30FPS (frames per second) but this is often many more frames and data than needed. I geared down on the frames per second because it does save some file space and it is really not noticeable for viewers to have be at 30 fps. Also, in my testing, I found going to 15fps really increased the turnaround on encoding at the Brightcove end for some reason. Video pre-processed at 15FPs came back live into the Whipple Hill Media Gallery from Brightcove faster perhaps because there was half the number of frames to mess with on their end.

With these settings exporting out of something like iMovie, Final Cut Pro or QuickTime 7 Pro, you get about a 27.6 meg MP4 file for a minute of video. This means in my screenshot example of around 30 minutes of video I get an exported file of around an 800 meg file to upload which keeps me under the WhippleHill limit of 1GB. Most of our videos are going to be around 30 minutes or so long or we can break them up into parts that are 30 minutes or less, so this works for us.

If your video durations differ – perhaps you routinely want to post an hour of video. You might want to gear that resolution down to 640×360 and lower the Data Rate to to 2500 or so. In my testing with Podium and Brightcove, I was not happy with anything less than 2500kbs no matter want the resolution was. 640×360 is a nice step down in sizing, but the Data Rate is the biggest driver of that MP4 file size. If you are processing a really long video like an hour or more, you might be better served going with a higher data rate like 3500kbs and just breaking up the video into parts that make sense for the viewer.

Just as I didn’t like anything less than the 2500 on the Data Rate side of things even in 640×360, I didn’t seem to see any real difference going higher than 3500kbs no matter what the resolution was. I tested 4000kbs and higher, but the huge increases in file size did not provide any better quality in my opinion and after looking and many, many, many 1 minute videos.

Hope this helps and your mileage may vary but this testing process can be very helpful in understanding the dark art of video processing and getting a handle on the positives and negatives of the switches and settings you can tweak to get the results you want.

Dec 02

Backing-Up and Transferring iMovie Projects

Anyone involved with groups of people doing movie projects in schools with students and teachers will tell you the transition off iMovie HD aka iMovie 6 has been a tough one for everyone to get used to. It happened many years ago now when Apple released a totally different application and called it iMovie 7 but it was completely different and just about every way then the previous version that everyone was accustomed to. Many of us have been trying to handle that transition for people for years now.

Perhaps the biggest issue for me around all of this is not so much what changed inside the walls of the application, but rather how iMovie 7 onward deals with its files. This is just a very difficult concept for people to have to grasp if they want to share or move an editable project around to other computers. The old iMovie would save all of its project-related data to a single database and content file – simple for people to comprehend. Starting with iMovie 7, iMovie keeps its data in a couple of folders and save a project file out is really worthless without the content that file is pointing to.

To effectively backup or make a movie project portable you now really need to grab the directories iMovie is using because in the combination of those directories is your iMovie project.

To backup your iMovie projects

1. Quit iMovie
2. Copy the two directories under the /Users/<current username>/Movies folder named

iMovie Events
iMovie Projects

to an external drive or large USB memory stick. This has all the video data you might have used in the project.

3 .If you used photos and or music as well, you need to really grab these directories as well to be sure you have what you will need.

/Users/<current username>/Pictures
/Users/<current username>/Music

To place your movie project on another Mac you need to do the following.

1. Make sure iMovie is not open.

2. Connect media you moved everything onto and copy the folders into the same paths they were in on the above procedure.

3. Open iMovie. It will be looking for those paths and when it sees that data, it will provide you will all the event clips and settings you had on the other computer.

It is quite annoying and especially the case in a lab computer environment where students might be working on things from home, then bringing them into the school, then passing them around to other students doing groupwork, etc. The frustrating aspect of this is that a similiar problem and solution is out there now if Apple could just replicate it.

Generating InDesign files is very similar to what we are dealing with in iMovie projects. InDesign uses fonts, images, etc. and if you need to give a printing house your information or pass an InDesign project to another designer, you have the function of ‘Packaging‘ the file. This allows InDesign to gather all the relevant files for the file together in a simple way so it is easily portable to another user/computer.

I would LOVE to see Apple incorporate something like this. I have mentioned this multiple times to Apple Reps around the iMovie training and product management, but nothing yet. I had hoped iMovie ’11 would have had something like this, but didn’t happen.