This repository includes both the source files and the release package for the TwinCAT Event Video Playback package. The package provides an easy to use PLC interface for assembling images captured with TwinCAT Vision into a single video file. When the video file is created, a corresponding alarm event is logged into the TwinCAT Event Logger for later viewing. In addition, an HMI Control component is supplied for easy viewing and playback of logged video events on TwinCAT HMI.
WARNING: Remove any installs from the legacy TC_EventVideoPlayback before using the new 4026 version
For end users: Instead of building from source, connect to the Beckhoff USA Communtiy package feed like you would normally with Beckhoff Official Packages.
For developers: See Building from Source below.
Find the latest up-to-date documentation here on GitHub pages, or you can find them after install under the install path /Documentation.
The latest examples for using EventVideoPlayback are held in a seperate GitHub repository here.
EventVideoPlayback/
├── src/
│ ├── App.Service/ # EventVideoPlaybackService (C# Windows Service)
│ ├── HMI/ # EventVision HMI Control (TwinCAT HMI)
│ └── PLC/ # EventVideoPlayback PLC Library (TwinCAT PLC)
├── tcpkg/ # TwinCAT Package build system
├── docs/ # Documentation assets
└── LICENSE # License information
- TwinCAT XAE: Version 3.1.4024 or later
- .NET SDK: 8.0 or later
- Visual Studio: 2022 or later
- Operating System: Windows 10/11 (x64)
- TwinCAT Version: TwinCAT 3 (for PLC library usage)
- Install TwinCAT XAE
- Install .NET 8.0 SDK
- Install Visual Studio 2022 with:
- .NET desktop development workload
- C++ desktop development (for native dependencies)
cd src/App.Service
dotnet restore EventVideoPlaybackService.sln
dotnet build EventVideoPlaybackService.sln --configuration Release- Open
src/PLC/EventVideoPlayback/EventVideoPlayback.slnin TwinCAT XAE - Build the solution (F7)
- Install as library via TwinCAT Library Repository
- Open
src/HMI/TcHmiEventVideo/TcEventVideoPlayback-TcHMIControl.slnin Visual Studio - Restore NuGet packages
- Build solution (Ctrl+Shift+B)
cd tcpkg
.\Build.ps1 -CleanBuildBuilt packages will be in tcpkg/release/.
This project is licensed under the MIT License - see the LICENSE file for details.
This project includes or depends on the following third-party components:
- OpenCvSharp4: Apache License 2.0 - see LICENSE-OpenCvSharp4
- OpenH264 Codec: BSD 2-Clause License - see LICENSE-openh264.txt
All third-party licenses are included in this repository and must be retained in any distribution.
Should you have any questions regarding the provided sample code, please post to the issue tracker for this repository.
All sample code provided by Beckhoff Automation LLC are for illustrative purposes only and are provided "as is" and without any warranties, express or implied. Actual implementations in applications will vary significantly. Beckhoff Automation LLC shall have no liability for, and does not waive any rights in relation to, any code samples that it provides or the use of such code samples for any purpose.