Showing posts with label Emily Browning. Show all posts
Showing posts with label Emily Browning. Show all posts

FFmpeg: FAPA (Frame-Averaged Pixel Array)


Preamble: When I create a blog-post about a film, I will often include a cryptic looking pixelated image somewhere in the body of the post. When possible, I will create one of these images for every film I watch. I create them as a type of 'fingerprint', showing overall tonality and temporal dynamics of the film's visuals.

The image contains all frames in a given film. Each pixel represents the average colour of its particular frame. This colour is calculated by doing no more than scaling the frame to dimensions of '1x1' in a FFmpeg 'scale' filter. The frames [pixels] are then tiled into a single image of suitable dimensions.

The example video is taken from 'Summer in February (2013)' and shows a scene involving tropospheric lightening near the end of the film. The section of the 'pixel array' image relating to this scene has been highlighted and magnified. The contrast in lighting between frames means each frame can be clearly discerned as the video plays, even without the aid of the arrow.



The Bash script outputs basic information before and while processing. The process will take a reasonable length of time to finish. The version here uses two instances of FFmpeg to process the video. This is so progress feedback is displayed during execution. A simple single instance alternative is included in the 'Notes' section of the script, as well as ideas for showing progress while using this version. The script has not been updated since its initial creation and can probably be improved upon.

#!/bin/bash
################################################################################
# Create a 'Frame-Averaged Pixel Array' of a given video. Works by reducing
# each frame to a single pixel, and appending all frames into single image.
# - Takes: $1=Filename [$2=width]
# - Requires: ffmpeg + ffprobe
#   ver. 1.1 - 10th November, 2015
# source: https://oioiiooixiii.blogspot.com
###############################################################################

width="${2:-640}" # If no width given, set as 640
duration="$(ffprobe "$1" 2>&1 \
            | grep Duration \
            | awk  '{ print $2 }')"
seconds="$(echo $duration \
           | awk -F: '{ print ($1 * 3600) + ($2 * 60) + $3 }' \
           | cut -d '.' -f 1)"
fps="$(ffprobe "$1" 2>&1 \
       | sed -n 's/.*, \(.*\) fps,.*/\1/p' \
       | awk '{printf("%d\n",$1 + 0.5)}')"
frames="$(( seconds*fps ))"
height="$(( frames/width ))"
filters="tile=${width}x${height}"

clear
printf "$(pwd)/$1
___Duration: ${duration::-1}
____Seconds: $seconds
________FPS: $fps
_____Frames: $frames
_____Height: $height
____Filters: $filters\n"

# First instance of FFmpeg traverses the frames, the second concatenates them.
ffmpeg \
   -y \
   -i "$1" \
   -vf "scale=1:1" \
   -c:v png \
   -f image2pipe pipe:1 \
   -loglevel quiet \
   -stats \
| ffmpeg \
    -y \
    -i pipe:0 \
    -vf "$filters" \
    -loglevel quiet \
    "${1%.*}_$width".png

################################ NOTES #######################################

# Single line solution, but doesn't show progress
# ffmpeg -i "$1" -frames 1 -vf "$filters" "${1%.*}".png -y
# filters="scale=1:1,tile=${width}x${height}" # Used with single line version
# View ingest progress using: pv "$1" | piped to ffmpeg
download: video2pixarray.sh

[Note: I have struggled with giving a name to this process since I created the script, and have left it as the first thing I thought of. Perhaps others whom have creating something similar have better names for it.]

film review: https://oioiiooixiii.blogspot.com/2017/11/summer-in-february-2013.html

Halloween 1:6 Scale Sewing Project: Finished - "Sarabite"






The original working title was 'cleric', and then changed to 'cenobite', relating to some fantasy religious order. After a little casual research it was decided that the word 'cenobite' has become too associated with Clive Barker's 'Hellraiser' series (Halloween being a particularly acute time) and an alternative name was sought. A related, and similar sounding word, "sarabite", was settled upon. While some definitions of the word leave a lot to be desired, the key points play into a "rogue" social status which suited the character.
'Sarabites, who have been tried by no rule nor by the experience of a master,... singly, without a shepherd, shut up, not in the Lord’s sheepfolds, but in their own, make a law to themselves in the pleasure of their own desires: whatever they think fit or choose to do, that they call holy; and what they like not, that they consider unlawful.

The Sarabites have no reference outside themselves: no rule, no abbot, no received tradition... The Sarabite syndrome can be summed up as: “I want to do what I want to do, when I want to do it, in the way I want to do it.”'

source: http://vultuschristi.org/index.php/2013/05/cenobites-anchorites-sarabites/



The entire outfit: back and front. Along with the constructed garments, the ensemble includes a bejeweled costume-jewelry crucifix. The 1:6 scale body is a inexpensive 'Owfeel' 1:6 female figure from Amazon.co.uk. The head is a 'SO-TOYS' (SO-05) sculpting of Emily Browning's 'Baby Doll' character from the 2011 movie 'Sucker Punch'. The hair was going to be replaced or dyed dark brown, but it was left as purchased. A Schleich model cat is also present in some photographs.

 




 

The project suffered some compromises and failings, but all in all, was deemed a success. The project took approximately 2 months, from concept to completion.

Halloween 1:6 Scale Sewing Project Related posts -
Designs and drawings: https://oioiiooixiii.blogspot.com/2018/01/halloween-2017-16-scale-sewing-project.html
Fitted Shirt: https://oioiiooixiii.blogspot.com/2018/01/halloween-2017-16-scale-sewing-project_2.html
Pleated Skirt: https://oioiiooixiii.blogspot.com/2018/01/halloween-2017-16-scale-sewing-project_3.html
Hooded Cape: https://oioiiooixiii.blogspot.com/2018/01/halloween-2017-16-scale-sewing-project_4.html
Ancillary Items: https://oioiiooixiii.blogspot.com/2018/01/halloween-2017-16-scale-sewing-project_5.html

Halloween 2017 1:6 Scale Sewing Project: Designs and drawings



A selection of designs and rough[!] sketches for a sewing project embarked on in 2017 . It originally started out as 1:6 scale "Violet Baudelaire" dress, as seen in the 2004 "Lemony Snicket's ASOUE" film, but as the Halloween timeline was chosen, the idea of a "witch" emerged. Continuing on this, thoughts wandered to a "Van Helsing" type character, with a hooded cape and melee weapon accessories. Finally, a female cleric, or cenobite, was settled on.

 
 
 
twitter: https://twitter.com/oioiiooixiii/status/946892429940150272

Summer in February (2013)



An unfortunate film. What could have been an engaging and scenic period-drama was ultimately ruined by bad story telling. Based on a true story, perhaps the film-makers were just too familiar with the subject material, and got lost sketching a field of mere junctures, only hinting at the stories and personalities beyond. The film lacks the zest of surrealism to excuse the, frankly, bizarre choices made by the characters.



info: https://en.wikipedia.org/wiki/Summer_in_February
discussion: https://www.filmboards.com/board/12184287/

Emily Browning: Pompeii (2014)



It might not have been her best look, but OP is being a bit dramatic. The film was atrocious, let's leave it at that 

source: http://www.imdb.com/title/tt1921064/board/thread/226231966