Saturday, October 24, 2020

Is Colorization Part of Digitally Remastering a Film?

A friend recently asked:

When they say they are digitally re-mastered, does that include the colorization technique [I had previously commented] about?

I responded: 

The ability to manipulate and even infer missing information (replacing missing frames of film, correcting physical damage mold, fading of dyes and the image-recording structures themselves) in the digital realm of computers makes makes them invaluable for working with all recorded media forms: still images, sound and moving-pictures. In these very mature disciplines, original content is converted into the digital language of computers. This is often referred to as "digitization," and includes such things as transferring the sound from a 140 year-old Edison Phonograph cylinder to scanning your children's baby photos from the original negative, to all the motion pictures in history. When you watch a movie on television (and back when we used to go to movie theaters, almost all of which have converted to digital projection), the original film was digitized to be transported and exhibited using digital devices. 

So "digitally re-mastered" is a bit of marketing hype, since no one would consider the alternatives to working with old films in the old analog realm if they could avoid it. Before there was digital manipulation of media, each stage of manipulating the content likely imposed "generational loss" on the facsimile. If you make a copy of a copy of a copy of a photograph, or an audio tape recording, or of a motion picture film in the analog realm the way all things were done before the last 40 years, the integrity of the original content suffered - it didn't look or sound as good as the original. Every movie you ever saw until the 1990s was degraded by at least three or four generations of the film production process by the time you saw it in the theater. "Signal" - the part you want - is increasingly displaced by "noise" in the process. In the digital workflow, you only have to manage noise during that first step from the real world of light and sound to the digital realm. After that, there can theoretically be zero loss of the original - 100% integrity (in practice there is quite a bit of loss incurred to economically transport the content to the user with a deliberately-designed, minimal amount of noticeable degradation).

Ideally, "re-mastering" a movie would mean getting access to the original negative film that went through the camera, and has been in storage in a secure, climate-controlled vault for decades. As mentioned previously, this one-of-a-kind recording media contains quite a bit more information that ever got to the Big Screens on the hundreds or thousands of mass-produced "release prints" that were shipped to theaters, after being copied from yet another generation-old "Intermediate Prints" used to protect the precious Camera-Original Negative (which is worth however much it cost to make the movie - so potentially hundreds of millions of dollars) - dozens of these intermediate prints were distributed to mass-duplication labs to be copied to Release Prints. 

(Today's theaters can receive movies over broadband data connections, rather than having heavy cans of film shipped around the world. Furthermore, these "prints" can not be scratched and broken over time. Remember what it was like to see a movie that had been at the Janus Theatres for two months? They looked like someone had dragged them across a gravel parking lot.)

In addition to the camera-original neg and visual effects negatives, an ideal re-mastering effort might attempt to access original sound production elements. These would included dialog recorded on the set (independently of picture), music scoring sessions, and sound effects. While these would have been meticulously edited and mixed on potentially hundreds of channels of audio, they would have been performed on equipment from the last 90 years, and older equipment would have imposed more noise on the results. So rather than use the pre-edited, pre-mixed soundtrack, a re-mastering team might consider (if available) re-mixing from dozens or hundreds of already-edited tracks of sound-striped 35mm film, or they might simply use that as a reference, and if the source materials were comprehensively archived, replicate or even improve on the original work by starting from scratch while using the completed materials as a reference. In the case of sound, one might create a stereo or surround-sound version of a film which was originally released as monophonic (although many enterprises create stereo versions of mono soundtracks with nothing but the final media - I once interviewed with a company whose primary business was stereo conversion). 

Using ever-evolving computational algorithms, the tools with which moving images can be altered continue to be improved and invented. And with them, so does the ethical question of where one crosses the line from "remaster" to "remake." If someone cleaning a world famous painting decides to paint a repair over a chipped, missing section of the painting, is that OK? If a recording of a famous singer's performance is missing, is it OK to replace that section with a piece synthesized with a sample of their voice? Or by using another singer?

In re-mastering, it is possible not only to "restore" the visual intent of the original filmmakers - their expectation of what would be exhibited in theaters, generational loss and all - but to deliver far more of that camera original information to the viewer. 

It's also possible to deliver MORE than was originally recorded, expected or intended. From any given film source material, a modern project could: 

  • Deliver higher resolution than the original camera recording by predictively synthesizing additional image information never recorded, but inferred by surrounding recorded information
  • Be presented at a higher frame rate than the original (early silent films were hand-cranked at 12 to 18 frames per second, and play back with motion too fast in modern 24 fps systems) by synthesizing digitally interpolated intermediate frames
  • Have color information never recorded
  • Be stereoscopic (3D), having never been shot with two separate lenses (most of today's "3D" movie releases are no longer shot with complicated and bulky stereo camera rigs, but are created independently by production businesses which uses software tools and tedious labor to create adequately believable stereoscopic images)

As you might imagine, these choices are polarizing amongst film historians, nerds and fans. Back in 2006, I attended a CBS Paramount Domestic Television presentation of the first completed "digitally remastered" episode of the original 1966 Star Trek series. They were planning to remaster all 79 episodes, and their product is uniquely valuable, having effectively never been off the air - perpetually in syndication. The really exciting prospect that I had been speculating to a Trekkie friend about for decades was that we'd see this show in High Definition (that was the year we bought our first HDTV), with far more image information that was ever intended. I predicted being able to see nails and taped seams in the set walls. Those shows were shot in the same 35mm film as theatrical motion pictures, even though they were only going to be viewed on the crude television system which we all used until the last decade. 

I don't remember if we knew that this was part of the project until that night, but the shocking part of the Star Trek "remastering" project was not that they had re-scanned all of the 35mm film to make beautiful high-definition masters, but they had replaced nearly every visual effects shot with a modern, digital replacement. Did they look better? Yes, perhaps. Were die-hard Trekkies/Trekkors/Trekkers going to be upset? Yeah, a lot of them were. But Paramount/CBS was looking to inject some new life into the property, and propel it into their licensing future. So they did it anyway. 

You may be aware of revisionist alterations of movies that have been "remastered" - the single most famous revision is "Han Shot First" (ask a Star Wars nerd if you don't know what this is about). 

With the power of modern tools comes the responsibility of utilizing them. We have to make good choices and respect the work of artists and craftspeople who invented and created the works we are tasked to curate and protect.

Saturday, May 18, 2019

A Flexible and Inexpensive AC Appliance Timer

As a workaround to persistent problems with our ancient X10 wireless remote system (which we've used for 26 years to control lights in our home, especially those with ridiculous original switch locations), I went searching for something like a "repeating appliance timer." 
   Timer Outlet, Nearpow Multifunctional Infinite Cycle Programmable Plug-in Digital Timer Switch with 3-Prong Outlet for Appliances, Energy-Saving Timer, 15A/1800W
This timer can control a 15 amp load, and cycle AC current with the following strategies:

  1. Daily Timing - up to 3 periods, defined by OFF and ON times of day (like a typical "appliance timer)
  2. Countdown and Turn Off - the timer will turn the AC outlet OFF after up after a delay from 1 minute to (I think) 23 hours, and 59 minutes; It can optionally sound a built-in audible alarm when the countdown reaches zero
  3. Countdown and Turn On - as above, but turning a device ON (with optional alarm)
  4. Continuous Intervals - the timer will continue to cycle between an ON duration and an OFF duration; the intervals can vary between 1 second and 59:59 minutes, or 1 minute and (I think) 23:59 hours. (This is what I'm using for my X10 workaround, resetting the X10 RF/AC interface every 30 minutes for one second.)
  5. Set Interval Periods (Daily) - this restricts the behavior of #4 above between defined Start and Stop times.
(There's a good chance that by the time you read this - originally posted May 2019 - this particular model won't be available, but I suspect you'll be able to find something similar. I just wanted to share that this kind of solution exists at all.)

I'm excited that these exist, and I suspect that I'll be acquiring a few more.

Thursday, October 25, 2018

Having to Scroll Horizontally to Read Your Gmail? Fix Gmail Message Formatting Caused by Large Images

This doesn't come up that often, but sometimes when I receive email with some kinds of large image files included inline with the body text of the email, Gmail presents the image in actual size, rather than scaling it to fit on-screen. When the image is very large, the image can display at several times the width of the region of the Gmail window for viewing message. Worst of all, Gmail flows the text of the message to the width of the image, requiring the user to scroll left and right to read the message.

This free Chrome extension fixes that behavior, configuring Chrome to automatically scale images to fit in the current message pane (as Gmail should have been written in the first place. Gmail's built-in image viewer is still accessible by double-clicking the image, so the user still has access to the full resolution of the inline images.

Gmail Inline Image Fit

Thursday, May 31, 2018

Batch Extract Image Files from PowerPoint Presentations

After going through a lot of grief with alternate (and unsuccessful) methods to do this task, I ran across this incredibly simple solution for extracting image files from within PowerPoint presentations. (I'm repurposing decades-old PowerPoint presentations with hundreds of images on hundreds of pages, so hand-extracting the content image-by-image, page-by-page is tedious and even physically painful.)

The only minimum requirement is that the PowerPoint files be in .pptx file format (not just .ppt), or access to a version of PowerPoint from Office 2007 or later, which can write .pptx files.

This example is on a Mac, but the same principle works on Windows, all that is required for Windows is an un-ZIP utility.

The solution is SIMPLE. SIMPLE.

  • If the PowerPoint file has a .ppt extension, open it in PowerPoint 2007+ and save it again as .pptx.
    • PPTX files save presentation data as widely-supported XML data structures, compressed in a package using the venerable ZIP archive format.
  • On a Mac, rename the .pptx extension to .zip. The Finder will ask if you’re sure. Click “Use .zip.”
  • Double-click the resulting .zip file. The Finder will uncompress the file into a directory structure. Inside[folder with orig filename]:ppt:media are all the image files in their native formats.


Sunday, May 06, 2018

Quickly Rotate Google Photos with a Keyboard Shortcut

While it's possible to rotate an image in Google Photos by:

  • clicking on the photo's "Edit" icon
  • clicking the  "Crop & Rotate" icon
  • clicking the "Rotate" icon once for every 90 degrees clockwise
  • click "Done"
  • click "Done" (again)

That's an incredibly tedious process, especially if several images need to be rotated.

There is a much simpler procedure. Click on an image in Google Photos, and press [shift]+[R] on the keyboard. The image will rotate 90 degrees counter-clockwise. Repeat the shortcut to rotate another 90 degrees as necessary. The change is committed with no further actions.

Pressing the [left arrow] and [right arrow] keys on you keyboard, you can advance to the previous and next images, and repeat the rotate operation. Thus, you can quickly rotate a number of images.

Tuesday, February 13, 2018

SOLVED: Harmony Ultimate Home no longer responds to some Google Home commands


Beginning some time since February 10, 2018, we can no longer invoke many of the Activities our Harmony Ultimate Home via voice commands to our Google Home. When we say, “Me: “Hey Google, tell Harmony to turn on DVR3,” Harmony responds by voice that it does not know how to respond.

(Learn how to configure your Google Home and Harmony hub-based remote to control your Harmony by voice commands at this Logitech Support page: Harmony experience with the Google Assistant.)


I discovered through experimentation that for SOME Activities that I have created, Harmony no longer responds to the expression “tell Harmony.”

SOLUTION: Always say “ASK Harmony.” This has completely resolved my problem.

UPDATE 2/14/2018: My symptoms are entirely related to the presence of numerals in my Activity names. See more below.


Some time after 2/10/2018, some hub-based Harmony remote systems stopped responding to certain voice requests made through linked Google Home devices.

Experimentation reveals that Harmony responds with an error message if both of these conditions are true:
  • The voice command uses the phrase "tell Harmony,"
    • AND
  • The Harmony Activity name contains a numeral or a word representing a number
Substituting "ask Harmony" for "tell Harmony" results in normal execution of the requested Activity.

Renaming the Activity to omit any numerical references also results in normal execution.


Around two days ago, (February 11, 2018), I discovered that SOME of the Activity requests sent to the Harmony Home Ultimate via our Google Home were no longer understood by the Harmony.

Me: “Hey Google, tell Harmony to turn on DVR3.”

Harmony (via Google Home): “Sorry, I misunderstood your last statement.”

Other possible Harmony responses (which vary randomly):
  • “Sorry, I don’t understand.” Ask Harmony for help to ask what I can respond to.” 
  • “Sorry, I’m not totally sure about that.” 
  • “Sorry, I don’t understand. Visit to learn what I can respond to.” 
NOTE: This is the _Harmony_ voice responding, and NOT the Google Home voice.
Curiously, SOME of the Activities could still be invoked. Here is the list of failures and successes:
  • “Hey Google, tell Harmony to turn on DVR1.” FAIL
  • “Hey Google, tell Harmony to turn on DVR2.” FAIL
  • “Hey Google, tell Harmony to turn on DVR3.” FAIL
  • “Hey Google, tell Harmony to turn on Apple TV.” SUCCESS
  • “Hey Google, tell Harmony to turn on PS3.” FAIL
  • “Hey Google, tell Harmony to turn on Chromecast.” SUCCESS
  • “Hey Google, tell Harmony to turn off.” SUCCESS
Rebooting and power-cycling the Harmony hub and the Google Home had no effect on the symptoms.

I tried altering the name of the Activity in a minor way: I changed “DVR3” to “DVR 3” and “DVr3” (noting that all the problem Activities were all-caps), but the problem persisted.

However, completely changing the name from “DVR3” to “Elephant” allowed me to invoke that Activity by saying “Hey Google, tell Harmony to turn on Elephant.” Changing the activity name BACK to the original “DVR3” reintroduced the problem (which is a great diagnostic clue).

Eventually, I tried a different verbal command. Instead of saying, “Hey Google, _tell_ Harmony to turn on [activity name],” I said, “Hey Google, _ask_ Harmony to turn on [activity name].” Success! Without making any changes whatsoever, simply changing what we say - using the polite “ask” rather than the imperative “tell” ALWAYS WORKS.

So something has changed. I’m certain that we’ve always said “tell Harmony” because since November 2017, we’ve had a hand-written sign on our AV cabinet which I wrote for my wife the first day I set up Google Home to work with the Harmony. The sign reads, “Hey Google, tell Harmony to turn on DVR3.”
Even further and more absolute proof: Google Assistant keeps a log of all your activities:
The same command which worked on February 10, 2018 fails on February 13.

Unclear is whether the change that’s taken place was by Harmony (Logitech) or Google.

For now, I’m happy to be back in business.


Thanks to feedback from Logitech Harmony forum user "john_woo," I realized that I'd entirely missed a clue that I'd put in my list of SUCCESS/FAIL Activities above. All of the Activities that result in a Harmony error response when issuing the "tell Harmony to" command have a number in them. (And to reiterate, using "ask" instead of "tell" works even with a number in the Activity name.)

Interestingly, replacing the digit "3" with the word "three" doesn't help. The error persists. To test whether the prohibited terms were digits, I tried incorporating a "30" into an Activity name. So it appears that any use of a numerical reference in an Activity name will cause the request to fail if "tell Harmony to" is also in the voice command.

Something appears to have changed in either the Harmony (Logitech) or Google code which prohibits the use of a numerical value (whether expressed as numerals or written out as a word) in a Harmony Activity name, when used in conjunction with a "tell Harmony to" voice command.


In the course of trying to find any information about this problem online (and since I just found a post from someone else from February 10, 2018, I’m guessing that this problem is too new for there to be any online information), I discovered that by using Google Assistant Shortcuts, we can eliminate having to say the “ask Harmony to” part altogether. By following the instructions starting in Section 4 of this Logitech Harmony Support page, you can shorten these commands from:

“Hey Google, ask Harmony to turn on DVR3”

“Hey Google, watch TV”

...or whatever you’d like to say to start a Harmony Activity.

(If you really wanted to, you could use a Google Assistant Shortcut to still say “tell Harmony” and have Google pass along the more polite and functional “ask Harmony” instead.”)

Wednesday, January 31, 2018

Fixing Stuttering/Jumpy Cursor Problems on Mac Pro with Magic Mouse

I love the top tracking surface of my Apple Magic Mouse - to me, it's the best-ever solution for scrolling, even allowing simultaneous scrolling while moving the cursor.

However, on my Mac Pro 4,1 (2009), cursor control has been spastic, making use of the Magic Mouse frustrating. Concurrently connected Apple Bluetooth Trackpad and wired Mighty Mouse both work normally, thus suggesting that it wasn't either the cursor control subroutines or the Bluetooth system at fault. I've kept all of them connected for years, switching around for either better cursor control or better scrolling.

Periodically, I'd look for solutions to the oft-reported problem, but none of the fixes I attempted had any effect.

Then I found this blog entry: MAC PRO 2009 BLUETOOTH FIX

And was immediately convinced that this blog's author had identified the true culprit: that the Bluetooth antenna location inside the aluminum case of the Mac Pro made for very poor signal propagation (my mousing surface is 10" from the top-front corner of the Mac Pro, and perhaps 30" from the OEM Bluetooth antenna's location inside the case). I liked the sound of the author's "BLUETOOTH FIX USING ORIGINAL BLUETOOTH CARD" solution, which mounts an aftermarket antenna on the outside of the Mac Pro's case.

As of January 2018, I found that Amazon stocks a 2-pack of both the appropriate antennas and the prescribed "pigtail" antenna cables for only $10US:

  • (2) 6dBi 2.4GHz/5GHz Dual-Band WiFi RP-SMA Antenna
  • (2) 35cm U.fl / IPEX to RP-SMA Antenna WiFi Wireless WAN Pigtail Cable
The brand name listed is "Highfine."

The fix is somewhat involved, requiring removal of the Mac Pro's CPU daughterboard and graphics PCI card. The solution also requires some real estate on a PCI mounting plate - the blog article specifies drilling a hole in a blanking plate, but all my PCI slots were populated. I chose to remove an infrequently-used adapter card for a video-acquisition box, but if I were to re-install that, I'd probably add the antenna to a USB 3 adapter PCI card. Fishing the pigtail cable through to the Bluetooth card, and actually working with the tiny U.fl connector can be challenging. 


Problem solved! The Magic Mouse now works like a . . . mouse! Performance is fluid and consistent. It was totally worth the effort.