Porta is a development toolkit that allows users to build their own custom software based on standard ultrasound imaging techniques. Where the main clinical and research software has many features that support the imaging, such as a patient database, measurement tools, system setup, etc., Porta is a scaled down version of the software that performs purely imaging functions, such as running B and Doppler modes, and providing access to parameters that control the image formation. This makes using Porta a more lightweight solution, with fewer dependencies with respect to the research software provided by default.
Typically, new research users are encouraged to start with the research software to acquire data through the freeze and store to disk methods. When more flexibility is required, the Ulterius package is suggested, as data can be transferred to a client program in real-time through a TCP/IP or shared memory interface. When even more flexibility and real-time functionality is needed, Porta is the logical next step, as callbacks that link directly to the cine buffer are available, as well as real-time processed image access (ie. scan converted and post-process filtered data).
Porta is the tool of choice for OEM customers of Ultrasonix who purchase Ultrasonix technology (boards/Modulos/full-carts) for the construction and sale of custom medical device equipment. Porta is also a great tool for researchers wanting to build a more clinically relevant solution with additional customized software, perhaps with the potential for a future commercial solution.
History and Versions
Porta started out in 2004 as a project for Ultrasonix' first OEM customer, where they required access to the imaging engine.
- Version 1.0 could be considered a bunch of source code files provided in a jumbled mess.
- Version 2.0 actually packaged them into a set of custom classes and binary files, the first real SDK.
- Version 3.0 simplified things with respect to the number of functions that were required to be called to initialize the system, and the official name Porta took shape.
- Version 4.0 condensed everything once more, and a single class was all that was (and still is) needed to interface to the system. Version 4.0 became mainstream and had numerous updates to support the multiple customers using it, however one of this versions' pitfalls was the fact that it was branched off into it's own code-base and had few imaging engine updates that took place over the years of Ultrasonix development.
- Version 5.0 now solves that issue by providing an SDK engine that is built directly off of Ultrasonix' latest code-base, which takes advantage of the latest imaging presets that have been optimized for clinical scenarios. This version works best right now with the latest 64 receive channel beamformer, however a project has been started to ensure backwards compatibility with the older 32 channel beamformer works properly and images just as well as in version 4.0.
The following partners have a rich history of working with Ultrasonix, and specifically programming using the Porta SDK. We strongly recommend contacting them if an OEM or Porta based software solution is required for a project:
Download all Porta SDK documentation as a PDF