Digital Signage
UIT manages digital signage screens across campus.
Many content managers have access to update their department or building digital signage.
To receive access to update digital signage, please submit a digital signage access request.
Some of the instructions are intended for administrators and may not apply to your access level or needs. These instructions may be revised at any time.
Creating a Player
- Create a directory in the players directory of the Digital Signage directory (
/digital-signage/players
).- Players directories MUST be added here.
- Directory names can only contain numbers, letters, hyphens, and underscores.
- Creating player directories (sub-folders) inside of an existing player directory is
allowed. Example:
/group-a/sign-1/
,/group-a/sign-2/
,/group-a/sign-3/
.
- Determine which kind of player you need. How you want to manage the content of your
player will determine which player you need to create.
- See Types of Players (Methods) and Player Method Comparison Table.
- Upload content to Omni.
- If using CSV Method, configure CSV and upload to Omni.
- In the root of the Digital Signage directory there is an Excel spreadsheet that you can download and use to create the CSV configuration file from.
- Publish content and/or CSV file in Omni.
- Verify player content is displaying correctly and without errors. Do this by viewing
your player in a web browser (see Displaying a Player).
- Are images displaying?
- Are videos playing?
- Is player transitioning between each content item cleanly?
- Are all content items that you want to be displayed displaying?
Displaying a Player
A player is displayed by navigating your browser to the digital signage directory
and appending the following query parameter: ?id={player id}
. Where {player id}
is the path to the your specific player directory from within the /players
directory.
Examples
Omni Player Directory Path |
Player ID | Player URL |
---|---|---|
/digital-signage/players/med | med | https://campus.und.edu/digital-signage/?id=med |
/digital-signage/players/aerospace/aviation | aerospace/aviation | https://campus.und.edu/digital-signage/?id=aerospace/aviation |
Player Options (Parameters)
Append these parameters after the Player URL with an ampersand (&) proceeding each option.
Option | Data Type | Required | Description | Example of Option | Example URL |
---|---|---|---|---|---|
start-at | Number | No |
Define which slide the player will start at. |
&start-at=3 | https://campus.und.edu/digital-signage/?id=med&start-at=3 |
debug | Number | No |
Debug adds error messages to a slide item when an image does not load. |
&debug=1 | https://campus.und.edu/digital-signage/?id=med&debug=1 |
Types of Players (Methods)
There are two types of players, Directory and CSV. They player type name references how content is configured and managed for the player.
Limitations
- Cannot schedule when player content is published. You must manually add/remove content from a player directory to add/remove content from the player.
- Cannot set the duration of player content. Default duration is 15 seconds.
- Cannot use video content.
Publishing Content
Add content to a player by uploading content to the root of a player directory.
- Content will be displayed immediately.
- Only content in the current directory will be displayed.
- Sub-directories that are added to a player directory will not have their content displayed.
Un-Publishing Content
There are two options for removing content from a player:
- Delete content from the player directory.
- (Preferred) Create a sub-directory in the player directory and move/store files there. This is
a great option for staging and removing content without having to add/remove it from
Omni.
- This sub-directory has no limitations on what it can be called other that the directory syntax rules
All content to be displayed must be added to the CSV file. This method will not automatically add any content you have uploaded to your player directory.
Features
- Schedule when content is published/un-published.
- Set duration of player content.
- Use video content.
CSV Rules
- File MUST be named digitial-signage-config.csv.
- No changing header columns in any way. Do not rename them or re-order them.
- Each content item should appear on its own row.
- Publish CSV for changes to appear in player.
Adding Content
- Each row in the CSV represents a single content item that will be displayed in the player.
- Configure all required fields for the content item to display in the player, see CSV Field Table. If a required field is not configured, the content item will not be displayed.
- Additions and changes will be available on page load or when the player refreshes itself.
Publishing Content
- Content will published based on the values supplied for Start Date and Start Time
Un-Publishing Content
- Content will be un-published based on the values supplied for End Date and End Time
CSV Field Table
CSV Field | Required | Format | Example | Description |
---|---|---|---|---|
URL | Yes | n/a | https://campus.und.edu/digital-signage/players/example/photo.jpg |
MUST contain an absolute URL. This means, site domain + path + filename. |
Start Date | Yes | MM/DD/YYYY | 11/26/2016 |
The date you would like the content item to appear in the player. |
Start Time | No | HH:SS (military time) |
5:45 (5:45am) |
Leave blank to use default time. If Start Time is not provided, then content will be display at midnight on the date defined for Start Date. |
End Date | Yes | 2/5/2017 |
The date you would like the content item to be removed from the player. Content will be displayed through this date and taken down on the last second of the day unless specified by some other time by End Time. |
|
End Time | No | HH:SS (military time) |
5:45 (5:45am) |
Leave blank to use default time. If End Time is not provided, then content will be removed on the last second of the date specified by End Date. |
Duration | No | Number | 154 (2 minutes, 34 seconds) |
Value represents seconds. Leave blank to use default value. Default duration is 15 seconds. |
Player Method Comparison Table
Directory Method | CSV Method | |
---|---|---|
Supported Content Types | ||
Images | Yes | Yes |
HTML5 Video | No | Yes |
Embedded Video (YouTube, Vimeo) | No | Yes |
Features | ||
Start Date | No | Yes |
Start Time | No | Yes |
End Date | No | Yes |
End Time | No | Yes |
Duration | No | Yes |
Supported Content Type Formats
Content Type | Supported Formats/Website |
---|---|
Image | PNG, JPG, GIF |
Video | MP4 |
Embedded Video | YouTube, Vimeo |
Player Refresh
Both player types will refresh themselves every so often. A player refreshes itself by checking if anything has changed on the server (directory contents or CSV files changes). If changes have occurred, the player applies these changes when it is done displaying the last item in the current queue.
Video Parameters
Player Methods: CSV method only.
All videos have default parameters. These parameters and their values are set for each video in order to provide consistent video display and functionality in the player. Default parameters can be changed and additional parameters can be added as needed. To do so, you will need to add a query string to the video URL.
When changing a default parameter or adding a new one, you will need to follow the
following format: &{name}={value}
. The ampersand (&) MUST proceed the parameter name. If the video URL you are using
doesn't already have a query string in it, then the first parameter MUST start with
a question mark (?) instead of an ampersand (&).
Example of overriding the loop parameter: https://www.youtube.com/watch?v=34kLVwBkRBU&loop=1
Autoplay + Audio
Most browsers will block autoplay when audio is enabled. This is done to improve user experience, reduce data consumption, etc.
Autoplay is restricted in the following browsers:
- Safari 11+ (Desktop)
- Chrome 66+ (Desktop/Mobile)
- iOS (Safari, other mobile browsers, apps)
- Firefox 66+ (Desktop/Mobile)
The odds of being able to autoplay a video and enable audio at the same time through standard web interfaces and protocols is unlikely. The most likely way to achieve this combination of settings is through the environment in which the video players are played, i.e. setting a browser flag.
Autoplaying and looping embedded videos
Autoplay in Chrome - New Behaviors
YouTube Parameters
For parameter details and values, please reference YouTube's Iframe Player API developer documentation.
Below is a list of parameters, along with their default value, that will be included for every embedded YouTube video.
Parameter | Value |
---|---|
autoplay | 1 |
controls | 0 |
loop | 1 |
rel | 0 |
modestbranding | 1 |
origin | https://und.edu |
mute | 1 |
Vimeo Parameters
For parameter details and values, please reference Vimeo's Help Embedding Videos documentation.
Below is a list of parameters, along with their default value, that will be included for every embedded Vimeo video.
Parameter | Value |
---|---|
autoplay | 1 |
controls | 0 |
loop | 1 |
muted | 1 |
HTML5 Video Parameters (MP4)
For parameter details and values, please reference MDN Video Element documentation. Under-the-hood, these parameters are handled a little differently than third-party embedded videos, please see HTML5 Video Parameters Specification.
Below is a list of parameters, along with their default value, that will be included for every HTML5 video.
Parameter | Value |
---|---|
autoplay | 1 |
loop | 1 |
muted | 1 |
preload | auto |
HTML5 Video Parameters Specification
Unlike YouTube and Vimeo videos, HTML5 videos are not added to the player via an <iframe>
element. Instead, they use the <video>
element. Because of this difference, our query string parameters are not consumed
and handled the same way as they would by a third-party. The query string parameters
that are being provided will be mapped to a <video>
element as HTML attributes. Some of these attributes do not require a value but rather
simply need to be added to the <video>
element to be enabled. For those attributes, use the values 0 and 1 - use 1 to include
the feature and 0 to omit the feature.