0:01
Now on video playback on our canvas controllers, presentations were roughly about 10 minutes, but if you have any questions at any point just put them in and we’ll get to the end.
0:12
Hello and welcome to today’s webinar.
0:14
In this webinar we will look at video playback on canvas controllers. Let’s look at the agenda for today.
0:21
First we will discuss why you might want to add video playback to your machine.
0:26
Then we will explain the type of Then we will take a closer look at the Canvas video object and all its features, followed by the compatible file format specifications.
0:40
With that all covered, we will then get into how to convert existing video files to a compatible format using a program called Handbrake.
0:48
There will be demonstrations of everything throughout, and we will finish with a Q &A session. Let’s begin.
0:55
To start, why do we need video playback?
0:58
Firstly, and most importantly, video playback is ideal for displaying help videos.
1:05
In today’s world, watching videos is one of the primary ways people prefer to learn.
1:10
These can teach machine operation and maintenance, but can also be used for training purposes.
1:16
This leads to fast and efficient operator training, increasing uptime, and reducing time spent on support calls.
1:23
What video playback options are available in Horner controllers?
1:28
Today we’ll be looking at, and demonstrating with, the Canvas series controllers.
1:34
But, the XL Prime series also support basic video playback.
1:39
However, they are limited to just basic features, boasting only quarter VGA resolution and requiring build-your-own-playback controls.
1:48
This means all video functions, including play pause, loop video, stop and more, all have to be manually configured.
1:58
The Canvas series provides much more options, including support for higher resolution source file playback, a comprehensive video object and full screen playback.
2:09
The comprehensive video object in the Canvas series looks like this.
2:13
As you can see, we have all the playback controls built in.
2:17
Starting at the bottom left of our image we have a play pause button, a restart button, a stop video button, then on the bottom right we have a loop video button, full screen button, and finally up the top right, blending slightly into the background, we have a screen jump button.
2:37
This last button allows you to jump to a specific screen at a configurable time during playback.
2:43
Next, how do we correctly prepare video files for Canvas playback?
2:49
These days, most video files have a resolution of between 1080p and 4K, and they are usually at a very high bitrate.
2:59
This means they are very high fidelity, which might work fine on a phone or laptop, but won’t work on the Canvas controllers, which are first and foremost PLCs.
3:10
Before playback on Canvas is possible, we need to transcode our files into a compatible file format.
3:18
For today’s demonstration, we will use a program called Handbrake.
3:22
Handbrake is a free and open source transcoder available on Windows and Mac.
3:28
Here, we have a list of the compatible and recommended video specifications for each Canvas controller.
3:34
Highlighted in gold are the recommended specs, but any options listed below will work for each controller.
3:43
We recommend using.mp4 as it is one of the most common and popular video formats.
3:49
For each canvas controller, we have listed the maximum and recommended resolution sizes here.
3:55
Then, for frame rate, either 24 frames per second or 30 work just fine, but 24 will save some extra space on your SD card.
4:06
Finally, we have bitrate.
4:08
This is an often overlooked aspect of digital video, but it is crucial for our application.
4:15
To save space and memory, we recommend no more than 250 kilobits per second for smooth playback.
4:22
How do we get our video files into these specifications?
4:27
That’s where Handbrake becomes very useful.
4:29
To make this process even easier, Here we’ve created several custom presets for each canvas controller option.
4:36
You can import these.json files into Handbrake for your next transcoding project.
4:42
Now we are going to demonstrate how to prepare your video files using Handbrake.
4:49
Here we are in Handbrake.
4:51
Let’s start by importing our video files.
4:53
Click on Open Source, then on File, and from here simply navigate to your video files location on your PC.
5:01
Here is the video we are going to use for our demonstration, which is currently in 1080p.
5:08
Once it imports, we can now begin changing all the settings to best fit the specifications for our controller.
5:16
To save time, we have already created some presets for each controller type.
5:21
We are going to navigate to Presets at the top, and from the dropdown we will select the Canvas 7, 7D, 10D preset.
5:29
This does all the work for us, but it can still be done manually if required.
5:36
Before we can export our video, we need to give it a unique name.
5:40
For our demonstration, we have chosen sensors.mp4.
5:44
Then we click on Start Encode to start the encoding process.
5:49
This process shouldn’t take long, but it will depend on the length of your video.
5:54
Once this finishes, we will be left with a video that is ready to use on our Canvas Controller.
5:58
While this is transcoding, let’s go through how we configure video files in Cscape 10.
6:05
How do we configure the video object in Cscape 10?
6:09
Here on the right, we have a screenshot of the video object settings menu, with each part labelled.
6:16
We will go through this in more detail in the next demonstration shortly, but let’s start with a brief overview.
6:23
First, under video type, we select playback and enter the path to our video file.
6:30
Then, we assign both a trigger variable and a status variable.
6:35
Then, under display properties, we select an aspect ratio, which will alter how our video is displayed.
6:42
And finally, we can configure the screen jump button by assigning a screen to jump to when the button is pressed.
6:50
In terms of the trigger and status variables, there are a few things to remember.
6:55
The trigger variable is very simple, and in most cases won’t be used very often, as playback controls are built in by default.
7:04
Then, the status variable has a few key values.
7:08
It can tell us if the file isn’t present, if the bitrate is not compatible, and also some simple information, like whether or not the video is paused or playing.
7:18
Now, behind the scenes, our video file has just finished transcoding.
7:24
Let’s jump back to Cscape and configure our video object with our newly transcoded video.
7:31
Here we are in Cscape 10.
7:34
For this demonstration, we’ve created some demo screens.
7:37
Here we have our main screen, with a screen jump button to the help video.
7:42
And here is our video screen, with the video object in the center.
7:46
You can find this object under the LiveGraphicsData tab in the Toolbox, then simply size it to the appropriate size, and double-click to start configuring.
7:58
Here’s how we’ve configured our video object. We started by selecting Playback, and then we simply typed in the name of our video file.
8:06
This is because we placed our file in the root directory of our SD card.
8:11
If you decide to place your file somewhere else on your SD card, simply type in the path to the file before its name.
8:20
Then we assigned a trigger variable which needs to be 8 consecutive bits, so in our case we used a variable array.
8:28
We also assigned a 16-bit variable for our status variable here.
8:33
For aspect ratio, we selected 16 by 9 as that best suited our video.
8:38
If you select 4 by 3, then the video object will resize itself to fit that ratio.
8:45
You can also select Variable Aspect Ratio if you want to input a custom ratio size to better suit your video.
8:53
Finally, for our Screen Jump button, we’ve selected the option Simulate Escape Key, which will simply return us to the previous screen when pressed.
9:04
And that is all the configuration that is required.
9:06
Let’s move to the bench and see if our video playback works at runtime.
9:13
Here we are on the bench, with our canvas controller configured and ready to go.
9:18
At the bottom of this screen we can jump to our video screen.
9:21
Here if we press the play icon in the center of the video object, our video starts playing as intended.
9:28
We can use this button to make the video full screen, and now we have several options down here.
9:33
We can play and pause.
9:35
We can also make it loop and repeat with this button.
9:39
And once we’re done viewing, we can exit full screen and click the screen jump button to escape back to our main screen.
9:47
We have successfully configured the video playback on a canvas controller.
9:52
That concludes our webinar for today.
9:54
Thank you so much for listening and the Q &A session will begin shortly.
10:02
Okay, nice and straight forward one today.
10:06
The registration links are up for our upcoming webinars so you’ll have got a newsletter on those and they’re also under the webinar section under support and the website if you’d like to go and see what’s coming up there as well.
10:19
Other than that I don’t see anything else in on today so thank you all very much and we’ll see you next time.