Presentation is loading. Please wait.

Presentation is loading. Please wait.

MOMA Display Screens K u r t R a l s k e.

Similar presentations


Presentation on theme: "MOMA Display Screens K u r t R a l s k e."— Presentation transcript:

1 MOMA Display Screens K u r t R a l s k e

2

3

4

5

6

7

8 Technologies used in the project C - for graphics processing code Java - for XML parsing and show scheduler XML - for storing show templates and show definitions Max - for image display and talking to QuickTime OSC - network protocol

9

10

11

12 Motion Graphics is extremely data-intensive One second of video = (720 (width) x 480 (height)) pixels x 30 frames per second = 10,368,000 pixels per second …this is a lot of data for a hard disk to read, consistently

13 10,368,000 pixels per second CPU uses four elements per pixel (alpha, red, green, blue), so 10,368,000 pixels x 4 = 41,472,000 CPU operations per sec per image layer …plus, many operations may need to be done to each element Motion Graphics is extremely CPU intensive

14 10,368,000 pixels per second CPU uses four elements per pixel (alpha, red, green, blue), so 10,368,000 pixels x 4 = 41,472,000 CPU operations per sec per image layer …plus, many operations may need to be done to each element Motion Graphics is extremely CPU intensive

15 ___Standard video format -- 720 x 480 (720 x 480) pixels x 30 fps x 4 = 41,472,000 CPU operations per sec per image layer ___MoMA video format -- 1280 x 768 (1280 x 768) pixels x 30 fps x 4 = 117,964,800 CPU operations per sec per image layer (1280 x 768) / (720 x 480) = 2.84 MoMA spec requires high resolution video

16 Problem: How to get huge amounts of video data off hard drive, quickly? Problem / Solution

17 Problem: How to get huge amounts of video data off hard drive, quickly? Solution: Don’t do it. Instead, render video in real-time. Technical hurdle: Compressed / uncompressed video? How to create specified video actions in real- time, using many layers of images? Problem / Solution

18 Problem: How to render video in real-time, at high resolution? Problem / Solution

19 Problem: How to render video in real-time, at high resolution? Solution: Work from still images. Create visual motion by moving, transforming, and layering the images. Technical hurdle: How to access hundreds of still images? Problem / Solution

20 Problem: How to access hundreds of large still images from the hard drive, with no latency? Problem / Solution

21 Problem: How to access hundreds of large still images from the hard drive, with no latency? Solution: Don’t do it. Store images in RAM. Technical hurdle: How many images will fit in RAM? How much RAM is available? Problem / Solution

22 Problem: Each machine needs a different set of images. How to catalog and retrieve hundreds of still images from 9 different machines? Problem / Solution

23 Problem: Each machine needs a different set of images. How to catalog and retrieve hundreds of still images from 9 different machines? Solution: Don’t do it. Make sure all the machines store all the images that any machine might need. Technical hurdle: How many images will fit in RAM? How much RAM is available? Problem / Solution

24 Problem: How to deal with network latency, from the master controller machine to the 9 player machines? Problem / Solution

25 Problem: How to deal with network latency, from the master controller machine to the 9 player machines? Solution: Structure commands so only very few messages need to be sent. Technical hurdle: How few messages can be sent, with still keeping time-sync between multiple machines? Problem / Solution

26 Problem: How to keep performance high, so each machine can create layers of video, without slowing down or dropping frames? Problem / Solution

27 Problem: How to keep performance high, so each machine can create layers of video, without slowing down or dropping frames? Solution: 1970’s-style optimizations: integers instead of floating point, fixed-point math, no divisions, bit shifting, keeping math outside of inner loop. Technical hurdle: How to keep code human-readable! Problem / Solution

28 1) A dream 2) Researching the limits of the technology 3) Working with (or working around) the limits The development process


Download ppt "MOMA Display Screens K u r t R a l s k e."

Similar presentations


Ads by Google