Splitting More Movie Formats

Plants on my desk.

I wrote Movie Splitter for us, my wife and I. We both have point and shoot Canon cameras that capture video in MPEG-4 format. The cameras have a nice feature called Auto-Hybrid. This feature captures a little video before each photograph we take and combines those little bits into a longer video. Over the course of a day or two taking photos, the compilation of little bits grows into a few minutes of treasured memories.

Some bits of video are better than others. We wanted to keep the better bits and remove the others. I wrote Movie Splitter to help us do that.

I published Movie Splitter on the Mac App Store at an unsustainably low price. Like most products on the store, it can never justify its costs.

Since then I have updated Movie Splitter when we wanted specific improvements. Rarely do I added functionality solely because of requests; I can not justify the time.

Recently I was contacted by a customer who had family footage they wanted to split. Their Canon PowerShot G15 camera, it turned out, saved Auto-Hybrid movies in a slightly different format. The request struck a cord with me for a few reasons: my assumption about Canon camera footage was wrong, the request was kindly written, and family footage is valuable.

More by luck than anything else, I have recently been messing around with video encoding for a side project. So my head was in the right place to tackle this problem.

We e-mailed back and forth figuring out what was wrong and what might make Movie Splitter work. We encountered the normal problems with video: tools silently altered the raw sample footage, sharing large files was a problem, and video file formats are inscrutable.

It took a couple of hours of work but I got Movie Splitter working for them. Their Auto-Hybrid family footage is now split into usable bits and will no doubt bring them joy.

New Formats

For everyone else, Movie Splitter now supports reading and exporting to more formats. I do not know which formats because that is not how this tool works. All I can say is that Movie Splitter definitely works with MPEG-4 but should now work with at least qt and mov video.

Movie Splitter will read any Apple AVFoundation supported video format. The only export formats allowed are those that will not re-encode the original content. The list of supported formats will change as Apple change AVFoundation.

A nice side effect of this “let AVFoundation decide” approach is that Movie Splitter can now export audio only versions of the movie being split. Is this useful? Probably not, but the feature came for free.

Nice Reviews

Despite an appalling average Mac App Store rating for Movie Splitter, I take comfort in most of the written reviews being overwhelmingly positive. Thank you to everyone who has taken the time to comment or leave a positive message. I am delighted to know Movie Splitter has helped you.

New in Movie Splitter v1.4.0

  • Added support all AVFoundation formats.
  • Added export to multiple pass-through formats.

Movie Splitter – Custom Splits

Skim to the start and end frame of movie to split.

Movie Splitter was created with a specific purpose in mind. It has been something of a joy to create an application that only had to do one thing and do it well.

Over time however, Movie Splitter has attracted users who want more. The most requested feature being the ability to split a movie into segments of custom lengths.

With the latest update, Movie Splitter v1.2, this most requested (too frequently demanded) feature is available.

Movie Splitter can halve, quarter, and custom split movies.
Movie Splitter can halve, quarter, and custom split movies.
Select a start and end frame of the movie to split.
Select a start and end frame of the movie to split.

As always, please read the full product description. Movie Splitter remains a specialised application and not a general movie editor.

New in Movie Splitter v1.2.0

  • Added ability to create custom sections.
  • Added ability to create new section from a selection of existing sections.
  • Added ability to merge existing sections into one.
  • Added contextual menu to section list.

Movie Splitter and Multilingual Chapter Markers

Miln Movie Splitter for Mac OS X

An update to my MPEG-4/.mp4 splitting application, Movie Splitter, is now available.

Yesterday Apple’s Mac App Store reviewers accepted my latest update to Movie Splitter. The update should be available worldwide in the next 24 hours.

Movie Splitter in the Mac App Store
Movie Splitter in the Mac App Store

This update adds support for multilingual chapters markers. This odd sounding improvement is as strange as you might imagine. It is possible for movie files to include different chapter markers for different languages. In practice this ability seems rarely used.

However, it is possible for chapter markers to be associated with languages you do not use or for an “undetermined” language context.

It is this latter undetermined, und, language context that this update really addresses.

The movie footage from our Canon cameras contains chapter information in the und context. That makes sense, the camera does not involve itself with the specifics of any spoken language being recorded.

Up until OS X 10.11.4, Apple’s AVFoundation framework happily returned und chapter markers when searching for a best match. With OS X 10.11.5, this behaviour changed and und chapters were no longer returned even when they were the only chapter markers available in the movie file. Is this a bug? I am not sure. If it is, waiting for Apple to fix it is not a game I am any longer willing to play.

With the original Movie Splitter, I searched for the chapters best matching your preferred languages – as determined by your locale. In almost every case this worked.

Then OS X 10.11.5 was released and suddenly Movie Splitter was frequently not being given any chapter markers for movies that previously had good results.

With today’s Movie Splitter, I search for chapter markers for every known ISO 639-2 language code known to OS X plus und. Preference is still given to your preferred languages.

This appears to restore the previous in almost every case this worked behaviour and it improves support for splitting movie files containing chapters markers in extraordinary languages.

My thanks to those who reported this problem via e-mail and for their patience as I found and worked around the underlying cause.

Happy movie splitting!

Making Movie Splitter

Miln Movie Splitter in action

Miln Movie Splitter is my second product through Miln. It is also one of the fastest products I have developed.

Driven by a simple need Movie Splitter came together reasonably easily. That is not to say it was technically easy but the process from start to finish was clear and uncluttered by too many time consuming decisions.

New Cameras

Megan and I recently upgraded our cameras. We both opted for Canon point-and-shoot cameras after my positive experience with a PowerShot SX200 and my family’s experience with an A3200.

Our new cameras both came with a feature called Hybrid Auto. This movie digest feature creates a fun short movie as you take photos. While in Hybrid Auto the camera quietly captures a few seconds of footage before each photo. Those seconds of footage and the resulting photo are added to a summary movie of the day. The result is a surprisingly entertaining movie of the day’s events.

iMovie Frustration

Megan has been learning to film and edit. Her experiments led her naturally to want to incorporate the Hybrid Auto movie into her short films.

Try as she might, iMovie was unable to provide the frame accurate splicing of the Hybrid Auto movie she needed. The latest iMovie is great for home movies but does not attempt to provide individual frame control over the final product or the source materials.

After some frustration I noticed QuickTime Player and QuickLook both recognised each section of the Hybrid Auto movie as a chapter. This hinted that it should be possible to automatically find and slice the sections based on the chapter information.

An Opportunity to Play

This observation gave me something I have long been wanting. An opportunity to play with Apple’s new AVFoundation framework. This audio/visual library of code from Apple is reasonably new in OS X and iOS. AVFoundation underpins the audio and video handling of modern Macs and iPhones – and I had yet to delve in to see what it offered. None of my current work demanded it.

So presented with an opportunity to help Megan and play with the AVFoundation framework, I could hardly say no.

AVFoundation Fun

AVFoundation was surprisingly welcoming. The abilities I wanted had been added only in OS X 10.9 but that did not matter. Our Macs are up to date and Apple’s free upgrade path to OS X 10.9 means it is difficult to justify supporting older versions for brand new products.

Thanks to my work with Power Manager, I was comfortable with AVFoundation’s demand that most functions are asynchronous. That is, functions start and wander off into the wilderness of your computer only returning when the job is done. It means the calling code needs to be prepared to fire and forget for a while. Start the job and allow the user to get on with something else in the mean time.

The result is a much more fluid experience where you rarely feel any pauses or delays. Get the interface right and even the long running tasks feel fast or inconsequential enough not to frustrate.

Compare this to the traditional synchronous approach that starts and waits for completion before continuing. A synchronous approach is marked by progress bars, blocked documents, and long waits.

A New App

What came out of my experiments was Movie Splitter. An application that does one task really well.

The user interface was the biggest challenge for Movie Splitter. The final look and feel is deliberately light in tone.

Movie Splitter shipped with a document window of three parts. Mostly white, separated by titled sections: Source Movie, Sections, and an Export… button at the base. Simple and fairly unassuming for the brutish work it world save the user.

Miln Movie Splitter's document window
Miln Movie Splitter’s document window

Apple is tending towards a new look and feel. I have no idea when OS X will change its appearance but I will not be surprised when it does. The signs are there and clear for all who know where to look; a change is on the wind.

When the change comes, I hope Movie Splitter will be well placed to straddle both realms.


I have always preferred iconic icons over the photo-realistic and often comic feeling icons common on OS X today.

Miln Movie Splitter's icons
Miln Movie Splitter’s icons

Icons should be strong and reproducible at many resolutions without great feats of effort; I am not a graphic artist and just can not afford the time such a burden would demand of me. Movie Splitter’s application and document icon still required artwork in many sizes just to produce something that looked good on retina and normal displays.

I am pleased with the final look of both Font Pestle and Movie Splitter’s icons. They feel cut from the same cloth.

Miln icons - cut from the same cloth
Miln icons – cut from the same cloth

Judgement Day

Submitting a new application for inclusion to Apple’s Mac App Store is a moment of mixed emotions. I have encountered too many stumbling blocks to feel positive about the experience. Getting Movie Splitter into the store took longer than normal. The first review led to a second and that delayed the process.

Until an application – a manifestation of your effort and hope wrapped up in a bundle of bits – is reviewed and accepted, it could yet be rejected. Rejection can be absolute with no chance of acceptance. Rejection can be a trivial change or something more subtle but you never know until all the work is done and you are ready to submit the application.

Movie Splitter was accepted into the Mac App Store. That was a good moment. One Megan and I have yet to properly celebrate; traditionally, launches require a decadent slice of chocolate cake or another treat.

Improving and Refining

I submitted a minor bug fix update for Movie Splitter to Apple today. A link to the included help book was not working. The update fixes it. I expect it will be a few days until the new version appears in the Mac App Store.

There are a few improvements I plan to make to Movie Splitter. I want to be able to integrate the application into a workflow. It seems ideal for the purpose but how depends on how Megan ends up using Movie Splitter. I would be tempted by AppleScript but I suspect Automator or another approach will be a greater priority for her. We shall see.

Follow Along

I am trying an experiment to see how effective a social site is for sharing updates and news about an application. In the past I would rely on my own site almost exclusively. For Movie Splitter, I thought an experiment would be fun.

If would like to be kept informed about Movie Splitter, like Movie Splitter’s Facebook page, facebook.com/milneu.

Sleep Monitor Lite on the Mac App Store

DssW Sleep Monitor Lite

Our third application on the Mac App Store is being rolled out. Over the next 24 hours, Sleep Monitor Lite will become available to buy on the store. This new application joins Activity Audit and Battery Report on the Mac App Store.

DssW Sleep Monitor Lite
DssW Sleep Monitor Lite

Sleep Monitor Lite marks our first Mac App Store only offering.

Sleep Monitor Lite is the little brother to our established Sleep Monitor product. Getting an edition on the Mac App Store has provided a useful insight into the additional requirements Apple will begin enforcing in March 2012.

The requirements of sandboxing and entitlements are looming large in the Mac developer community. The requirements of sandboxing and entitlements are looming large in the Mac developer community. There are new constraints coming that will further limit what an application can do and still be accepted within Apple’s Mac App Store.

We used Sleep Monitor Lite to explore the ramifications. Problems discovered along the way mean today’s Sleep Monitor Lite is not sandboxed; we originally submitted a sandboxed edition but helper applications appear to be fragile. This is something we need to explore further.