In [1]:
import sys
sys.path.append('../../')
from moviegoer.tables import film_id_from_film_directory, load_film_object
from random import choice
In [2]:
film_id = film_id_from_film_directory()
film_id
Out[2]:
'resolution_2012'
In [3]:
film_obj = load_film_object(film_id)
film_obj.print_info()
*Film Information*
Title, Release Year: Resolution (2012)
File Runtime: 01:33:02
Film Runtime (No Credits): 1:29:59

*Technical Details*
Aspect Ratio: 2.39
Avg. Shot Duration: 18.68
Avg. Brightness: 45
Avg. Contrast: 44

*Dialogue Cadence*
Sentences Per Minute: 16
Words Per Sentence 6.22
Questions Per Minute: 2.72
Pct. Questions: 17%

*Emotion*
Pct. Upset Faces: 58%
Profanity Per Minute: 3.33
Words Per Profanity: 29
Exclamations Per Minute: 0.80
In [4]:
print(len(film_obj.scene_objects))
film_obj.display_scenes()
8
*Plot Context*
Context Themes: Counter({'dining': 4})
Potential Common Locations: Counter({'kitchen': 4})
Named Participants: Counter({'chris': 1, 'mike': 1})
Descriptors: ['indoors', 'standing']
Active Actions: Counter({'crossed': 29})
*Plot Context*
Potential Other Locations: Counter({'building': 2})
Establishing Shot Locations: Counter({'building': 1})
Named Participants: Counter({'michael': 1})
Descriptors: ['standing']
Held Items: Counter({'piece of paper': 3})
*Plot Context*
Context Themes: Counter({'drinking': 37})
Descriptors: ['indoors', 'sitting']
Held Items: Counter({'bottle of beer': 32, 'bottle': 18, 'beer': 16, 'pipe': 4, 'beer bottle': 4})
Active Actions: Counter({'open': 2, 'drinking': 1})
*Plot Context*
Context Themes: Counter({'dining': 10})
Potential Common Locations: Counter({'bathroom': 1})
Named Participants: Counter({'mike': 2, 'chris': 1})
Descriptors: ['indoors', 'sitting']
Held Items: Counter({'bowl of food': 4, 'bowl': 3, 'cup': 1})
Active Actions: Counter({'eating': 10, 'pointing': 2, 'chained': 2})
*Plot Context*
Named Participants: Counter({'nah': 1, 'mike': 1, 'michael': 1})
Descriptors: ['indoors', 'sitting']
Held Items: Counter({'his head': 10, 'toothbrush': 5, 'cell phone': 3, 'piece of paper': 2, 'remote': 1})
Active Actions: Counter({'giving': 4, 'crossed': 3, 'pointing': 1, 'laughing': 1})
*Plot Context*
Potential Other Locations: Counter({'building': 10, 'sidewalk': 5, 'street': 1})
Named Participants: Counter({'chris': 1})
Descriptors: ['outdoors', 'sitting']
Held Items: Counter({'skateboard': 7, 'cell phone': 2, 'something': 1, 'control': 1, 'cigarette': 1})
Active Actions: Counter({'open': 2, 'painting': 2, 'pointing': 2, 'riding': 1})
Left Wearing: Counter({'brown jacket': 12, 'black jacket': 1})
*Plot Context*
Establishing Shot Locations: Counter({'building': 5})
Named Participants: Counter({'mike': 1})
Descriptors: ['sitting']
*Plot Context*
Named Participants: Counter({'mike': 1})
Descriptors: ['sitting']
Out[4]:
[None, None, None, None, None, None, None, None]
In [5]:
film_obj.chart_all_dialogue_emotional_indicators()
In [6]:
film_obj.chart_all_dialogue_shape()
In [7]:
film_obj.chart_all_dialogue_question_proportion()
In [8]:
film_obj.display_color_shots()
In [9]:
rand_scene = None
if film_obj.dialogue_objects:
    rand_scene = choice(film_obj.dialogue_objects)
    rand_scene.display_qna_frames()
In [10]:
if rand_scene:
    rand_scene.display_first_p_sentence_frames()
In [11]:
if rand_scene:
    rand_scene.display_second_p_address_frames()
In [12]:
film_obj.display_laughs()
Out[12]:
[]
In [13]:
film_obj.display_unintelligible_language()
In [14]:
film_obj.display_self_intros()
I'm, I'm Michael.
I'm Michael.
Um, I'm Michael.
I'm Michael.
In [15]:
film_obj.display_other_intros()