Max/MSP Syphon Server App to crop/zoom video based on MIDI input

已完成 已发布的 4 年前 货到付款
已完成 货到付款

Note: requires expertise with Max/MSP and Syphon

This first project is a simple Syphon Server that implements PTZ (pan, tilt, zoom) functionality for an input video digitally. Many later enhancements are planned that will involve more substantial video manipulation. This will be used for Image Magnification of a musical performer so efficient coding is crucial to minimize any video delay.

Functionality:

The app will use 5 MIDI Continuous Controller inputs to manipulate the video in the following ways:

Channel 1: Zoom video, 0-127, where 0= no zoom and 127=400%. Default=0.

Channel 2: Pan Left-Right (when zoomed), 0-127, where 0=100% left, i.e. any zoom crops only on right, and 127 will crop only on the left. Default=64.

Channel 3: Tilt Up-Down (when zoomed), 0-127 where 0 crops only from the bottom, and 127 crops only on the top. Default=64

Channel 4: Opacity, 0-127 where 0 is fully transparent. Default=127.

Channel 5: Damping Amount: 0-127, where 0 is no damping of changes in pan/tilt/zoom, and 127 is maximum. Default=64.

Notes:

Changes in zoom are always from the center of the input image rather than the viewed crop, so if Channel 2 is currently 0 (pan 100% left) then increasing the zoom will result in the right side of the image being cropped as the zoom increases, but the left side will stay in view.

As the image will be shown on a large screen we need to smooth out (damp) changes in pan, tilt, and zoom. This can be implemented a number of ways. One is to output the 'moving average' of controller values that are read periodically, e.g. every 100ms. In this case the 'Damping Amount' would vary the number of historical values that are averaged to make the output: 0 would be none, and 127 could be 40 (4 seconds.)

The App should work on all Syphon sources but the hardware I'll be using is as follows:

The video input will be 720p60 provided by a Syphon server ('Black Syphon' reading video from a fixed Marshall CV-150M SDI camera on stage via a Black Magic Thunderbolt UltraStudio MiniRecorder). The output will ultimately be sent to the projector by ProPresenter over SDI using a Black Magic Thunderbolt Mini Monitor.

The hardware is a MacBook Pro.

In your proposal please describe your previous Syphon Max/MSP projects.

Graphics Programming 编程 软件开发

项目ID: #19703058

关于项目

2个方案 远程项目 活跃的4 年前

授予:

ptk921

The most performant way to create this patch is to use a shader so that the video processing happens on the GPU. I have experience creating custom zoom/crop shaders in Max using [login to view URL], and am confidant that I can 更多

$444 USD 在7天内
(1条评论)
3.1