Now that we have a means to dynamically assemble a video based on available data, what steps are involved in a typical Personalized Video project? The process is similar to the video production process for a single video, but also must consider production of personalization segments needed for each recipient of a personalized video.
Conceptualize
First we look at the overall message we’d like to convey to our group of video recipients, and break the script down into elements that can be personalized based on the data we have available. We have the ability to vary:
- video segments
- audio segments
- text blocks
- images
Video and audio segments are then produced, which incorporate the personalization that we’ve identified in the conceptualization stage. With client approvals of all individual segments that will make up any personalized video, we assemble an After Effects file, which includes layers that will contain the variable content. The After Effects file is the document that will be merged with the data source to create each personalized video.
Versioning
Versioning, the creation of unique videos from one video template, can consist of just a few videos to a virtually unlimited number of videos. It is critical that the versioning process be optimized for speed. The rate-controlling step is the processing done within After Effects for each personalized video. Processing a large number of personalized videos can be trimmed by hours, even days, by being deliberate about certain production factors. Factors that affect render times are:
- Consistency of video parameters between elements that make up a versioned video — using some video segments rendered at 720p, and others rendered at 1080p for a final rendered video that will be 720p takes more time than one that is made up of segments that are all 720p
- Complexity of After Effects effects that are rendered uniquely in each versioned video — render out complex effects into the video segments, rather than have After Effects render the effects with every versioned video
- Duration of final versioned video
The versioning process results in a group of videos, typically of high resolution, and high data rate. In order to convert the videos into a more network friendly video size, we transcode the file into a more appropriate size. The program we use to do this is FFMPEG, a free, industry-standard application. The transcoding process is substantially quicker than the versioning process, but essential for delivering videos that customers can play back on any device and play under a wide range of connectivity speeds.
Hosting
Final video sizes are generally too big to email as an attachment to a customer. Instead, we typically email a unique link, which links to a video player page with their video. We host videos with Amazon Web Services’ (AWS) S3 service. The service is highly available, low cost, and provides the ability to manage files through an expiration service, so that videos are deleted after a reasonable amount of viewing time.
Playback
There are two methods in which videos can be shared with customers:
- Email/texting of a direct link to the video’s URL on AWS. This is perhaps the easiest approach, but bypasses any real opportunity to gather playback statistics.
- Webpage with video player. We typically construct a webpage with an embedded JWPlayer player. Customers are sent a unique URL and query string that identifies the page and video that should be played when accessed. Not only do users get a better presentation of their video, but we’re able to gather video-related statistics regarding playback.