Enum vtc::FilmFormat

source ·
pub enum FilmFormat {
    FF35mm4perf,
    FF35mm3perf,
    FF35mm2perf,
    FF16mm,
}
Expand description

Feet and Frames Representations

[[FF35mm4perf]]

35mm 4-perf film (16 frames per foot). ex: ‘5400+13’.

What it is

On physical film, each foot contains a certain number of frames. For 35mm, 4-perf film (the most common type on Hollywood movies), this number is 16 frames per foot. Feet-And-Frames was often used in place of Keycode to quickly reference a frame in the edit.

Where you see it

For the most part, feet + frames has died out as a reference, because digital media is not measured in feet. The most common place it is still used is Studio Sound Departments. Many Sound Mixers and Designers intuitively think in feet + frames, and it is often burned into the reference picture for them.

  • Telecine.
  • Sound turnover reference picture.
  • Sound turnover change lists.

[[FF35mm3perf]]

35mm film with 3-perf per-frame pulldown (64 perforations per foot). ex: ‘12+01.1’.

What it is

3-perf footages are represented as a string with three terms, a number of feet, a number of frames from the beginning of the foot, and an final framing term preceded by a period, indicating how many perfs were cut off the first frame of this foot.

Where you see it

Avid cutlists and pull lists on Avid 3 perf projects.

[[FF35mm2perf]]

What it is

35mm 2-perf film records 32 frames in a foot of film, instead of the usual 16. This creates a negative image with a wide aspect ratio using standard spherical lenses and consumes half the footage per minute running time as standard 35mm, while having a grain profile somewhat better than 16mm while not as good as standard 35mm.

Where you see it

35mm 2-perf formats are uncommon though still find occasional use, the process is usually marketed as “Techniscope”, the original trademark for Technicolor Italia’s 2-perf format. It was historically very common in the Italian film industry prior to digital filmmaking, and is used on some contemporary films to obtain a film look while keeping stock and processing costs down.

[[FF16mm]]

What it is

On 16mm film, there are forty frames of film in each foot, one perforation per frame. However, 16mm film is edge coded every six inches, with twenty frames per code, so the footage “1+19” is succeeded by “2+0”.

Where you see it

16mm telecines, 16mm edge codes.

Variants§

§

FF35mm4perf

35mm, 4-perf footage

§

FF35mm3perf

35mm, 3-perf footage

§

FF35mm2perf

35mm, 2-perf footage

§

FF16mm

16mm footage

Implementations§

source§

impl FilmFormat

source

pub fn perfs_per_foot(&self) -> i64

Utility function mapping self to number of perfs per (logical) foot in this case.

source

pub fn footage_modulus_perf_count(&self) -> i64

Fewest number of perfs required to complete an integral number of feet and integral number of frames in this format. (This should simply be the lcm of the perfs-per-frame and the perfs-per-foot.)

source

pub fn footage_modulus_frame_count(&self) -> i64

Number of frames in footage_perf_modulus.

source

pub fn footage_modulus_footage_count(&self) -> i64

Number of feet in footage_perf_modulus.

source

pub fn perfs_per_frame(&self) -> i64

Utility function mapping self to number of perfs per frame in this case.

source

pub fn allows_perf_field(&self) -> bool

Utility function indicating if the format requires a perf field in footage string representations.

Trait Implementations§

source§

impl Clone for FilmFormat

source§

fn clone(&self) -> FilmFormat

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for FilmFormat

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PartialEq<FilmFormat> for FilmFormat

source§

fn eq(&self, other: &FilmFormat) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Copy for FilmFormat

source§

impl Eq for FilmFormat

source§

impl StructuralEq for FilmFormat

source§

impl StructuralPartialEq for FilmFormat

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.