Skip to content

Instantly share code, notes, and snippets.

View imorrish's full-sized avatar

Ian Morrish imorrish

View GitHub Profile
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
#add-type -path 'C:\Users\imorrish\Source\Workspaces\VISE_ATEMLib\SwitcherLib\bin\Debug\SwitcherLib.dll'
#cd \scripts
$Videohub="192.168.1.50"
function ConnectToATEM()
{
Try{
$ATEMipAddress = (Get-ItemProperty -path 'HKCU:\Software\Blackmagic Design\ATEM Software Control').ipAddress
#$DocumentsPath = [Environment]::GetFolderPath("MyDocuments") + '\windowspowershell\SwitcherLib.dll'
add-type -path 'SwitcherLib.dll'
@imorrish
imorrish / BMDSDITallySend.ino
Created July 8, 2019 23:11
Blackmagic Design Camera Tally using SDI Shield and Arduino GPIO
/*
SDI Tally interface based
Turns tally of the cameras on and off based on pins pulled low.
This interface is programed for Potential free outputs on a video mixer.
This means that if the tally output of the video mixer is active it will make a connection to ground.
By configuring the inputs with pull-up they are active 5V high and when pulled low to GND it will send that ports tally to the SDI output.
Written by Daniel Wittenaar for free use.
Use code and arduino's with care!! I'm not responsable for any damage caused by using this code!!
#Assume we are in the directory with all required files
add-type -path '.\StreamDeckSharp.dll'
#don't have native streamdeck software running or you get an error
$deckInterface = [StreamDeckSharp.StreamDeck]::OpenDevice()
function inputevent($key){
if($key.IsDown){
#run a supersource annimation when button is pressed
switch($key.key){
#0 is top right key
@imorrish
imorrish / hubrotator.ps1
Created May 3, 2019 20:27
Blackmagic VideoHub monitor port input rotator
Param(
[Parameter(Mandatory=$True,Position=1)]
[string]$HubIP,
[Parameter(Mandatory=$True,Position=2)]
[int]$duration=120,
[Parameter(Mandatory=$True,Position=1)]
[int]$outPort,
[Parameter(Mandatory=$True,Position=1)]
[int[]]$monports
)
# Script created by Ian Morrish
# See https://ianmorrish.wordpress.com/2019/03/02/atem-wireless-multiviewer-with-touch-switching/
# Run Newtek studio monitor first, select input and set to full screen.
# this script requires my switcherlib.dll which you can get from the site above
# after starting this script, <ALT><Tab> to see the multiview live video feed (I will automate this soon)
#Show-Process "overlay"
# Connect to ATEM
function ConnectToATEM()
@imorrish
imorrish / AnimateSupersource.ps1
Created December 29, 2018 18:25
Animate Blackmagic ATEM Supersource box layouts using Windows PowerShell
# See https://ianmorrish.wordpress.com for more info and prerequisites
# Tranlated from LUA code provided by Doug Johnson https://djp.li/supersource
function ConnectToATEM()
{
Try{
$ATEMipAddress = (Get-ItemProperty -path 'HKCU:\Software\Blackmagic Design\ATEM Software Control').ipAddress
$DocumentsPath = [Environment]::GetFolderPath("MyDocuments") + '\windowspowershell\SwitcherLib.dll'
add-type -path $DocumentsPath #'SwitcherLib.dll'
$Global:atem = New-Object SwitcherLib.Switcher($ATEMipAddress)
@imorrish
imorrish / MonitorForPlayback.ps1
Created October 14, 2018 07:24
Send play and stop commands when ATEM switches to/from an input
$monitor=3 #ATEM input to trigger play and stop
function ConnectToATEM()
{
Try{
$ATEMipAddress = (Get-ItemProperty -path 'HKCU:\Software\Blackmagic Design\ATEM Software Control').ipAddress
$DocumentsPath = [Environment]::GetFolderPath("MyDocuments") + '\windowspowershell\SwitcherLib.dll'
add-type -path $DocumentsPath
$Global:atem = New-Object SwitcherLib.Switcher($ATEMipAddress)
$atem.Connect()
@imorrish
imorrish / ATEM_Multiview.ps1
Created July 29, 2018 19:54
Windows PowerShell script to show ATEM Multiview using ffplay and touch overlay to switch ATEM inputs
# Ian Morrish
# https://ianmorrish.wordpress.com
# Powershell script to to allow touch screen control of ATEM by overlaying multiview source with transparent WPF grid
# Any USB 3 capture card that can be detected by ffplay (Direct Show drivers) can be used to display the multiView
#launch ffplay
start-process -filepath c:\tools\launchcamlink.cmd
Start-Sleep 2
function Show-Process($Process, [Switch]$Maximize)
{
@imorrish
imorrish / UploadImageFromMonitoredFolder.ps1
Created July 24, 2018 06:48
PowerShell script to monitor folder for new/changed image and upload to ATEM media pool
# File System Watcher to upload image to ATEM media pool
Function ATEMUploadImage
{
param
(
[String]$File,
[Int]$Slot,
[string]$ATEMip
)
# Just use command line utility as dll may conflict with JustMacros