Product icon Help book icon IPC Connect : User's Guide

How It Works

This Quick Start assumes you are already familiar with SoundMill or VideoMill.

Note: Video Mill and Sound Mill can communicate with each other directly WITHOUT the use of the IPC_Connect app. IPC_Connect is specifically for use by third party apps that need to communicate with Video Mill and Sound Mill.

About IPC Connect

Figure 1. Network Diagram
Figure 1. Network Diagram

IPC_Connect is a utility program to allow third party programs to interface with Breakthru Software programs that use IPC (Inter-Process Communications) as a Communications method ( SoundMill, VideoMill, etc). IPC_Connect provides a simple interface by writing-to and reading-from standard text files (Figure 2 and 3).

The third party program and IPC_Connect may be on the same computer or a different computer from SoundMill or VideoMill. When on a different computer they will need to be connected to a network via router (wired or wireless).

Third pary programs may implement their own IPC listener code if preferred (standard UDP networking based programming). IPC_Connect is provided for development shops that do not have networking expertise on staff.

To send an IPC Command

To send an IPC Command, the third pary, external program writes an IPC Command to a text file (IpcConnect_Command.txt, Figure 2). IPC_Connect watches this file for changes (file saved events). When a new command is written to this file, it will send the command to the specified target program. The text file are located in the IPC_Connect User Documents folder (typically on Windows 10, C:\Users\WinUserId\Documents\IpcConnect\IpcConnect_Command.txt).

You can use any method you want to write to the text file: a text editor (ex Notepad), batch or powershell file writes, program exe write methods. Only one command is processed with each file save (the first line of the file) so do not 'append' when writing. Do a replace write.

See the IPC Help page for a full list of available IPC Commands.


Command Syntax

The input should include the Target-App Identifier followed by the IPC command. The Target-App is the program you want to send the IPC command to. The Target-App Id can take any of three forms:

Command Syntax
Target-App-Id IPC-Command Command-Parms 

Target-App Identifier
  • IP:Port (IP Address and port number) of the Target-App (ex 10.0.0.1:52010 or 127.0.0.1:52010)
  • Target-App IPC Remote Client Id number (ex. 2147483550).
  • 0 - IPC_Connect designated Default IPC Remote Client.

Command examples

These are examples of the commands you would write to IpcConnect_Command.txt. Assume that Soundmill is configured with these IPC Client settings: IP:Port = 10.0.0.1:52010; IPC Remote Client Id = 2147483550; and it is set as the Default Remote Client in IPC_Connect. Then any of these commands would send a ListIdGet command to Soundmill. Soundmill would reply with a ListId IPC command (the id of the current opened Soundlist and its filename).


Example formats
  1. Uses the IP:Port numbers
  2. Uses the Remote Client id
  3. 0 uses the Default Remote Client id.

Example syntax
  1. 10.0.0.1:52010 ListIdGet
  2. 2147483550 ListIdGet
  3. 0 ListIdGet
Figure 2. IPC Command Message Flow
Figure 2. IPC Command Message Flow

To receive a reply from IPC Command

To receive a reply from IPC Command (if any), third pary program simply reads a reply text file (IpcConnect_Replies.txt). If multiple replies are received, each reply is on a separate line in the file. You can empty this file before issuing a new IPC Command so that it will only contain a reply to the most recent command. The text file are located in the IPC_Connect User Documents folder (typically on Windows 10, C:\Users\WinUserId\Documents\IpcConnect\IpcConnect_Replies.txt).

Figure 3. IPC Reply Flow
Figure 3. IPC Reply Flow

How to Run Multiple Instances of IPC_Connect

Note: Most users will not need to do this. This is only provided for advanced app setups.

Needing to run multiple instances of IPC_Connect on the SAME computer would be a rare occurrence. However, it is possible with a few adjustments. If you are running IPC_Connect on two DIFFERENT computers you do NOT have to do this.

Follow these steps using your favorite file manager tool (ex Windows File Explorer, etc).

  • In the folder where you installed IPC_Connect, make a copy of the IpcConnect.exe file. (Right-click on the file and pick "Copy". Right-click on the folder and pick "Paste".)
  • Rename the copy to IpcConnect2.exe. (or any logical name you prefer)
  • Start IpcConnect2.exe and configure its IPC clients. This copy of IPC_Connect must listen on a different port number. The default port for IPC_Connect is 52003. So for the IpcConnect2 Origin Client Port number use another port (ex 52004 or some number you like).
  • IpcConnect2 will use different files to send and recieve commands (IpcConnect2_Command.txt and IpcConnect2_Replies.txt ). Note that the exe file name (IpcConnect2) is part of these file names.