Last updated on March 18, 2016

Application Creation Guidelines

This article provides tips and guidelines in developing Signs applications that are effective, relevant, and able to captivate end-users with a richer media experience. This guideline will cover:

Signage Design Principles

Digital signage design should be clean and simple, yet attractive. Display only the most important messages. As a rule of thumb, each layout should have a limitation of ten to fifteen words that a viewer must read. The viewer should be able to comprehend single-image layouts within five seconds and a series of layouts within eight to ten seconds. Using multiple layouts allows word count limitations to be extended while allowing viewers to comfortably comprehend the displayed messages.

The following are key design principles for digital signage apps:

  • Simplicity - Keep things simple. Good design involves the process of subtraction whereby the best communicators know when to stop adding more and when to take away.

  • Contrast and Legibility - A message can get lost if the viewer is unable to visually separate design elements easily. Contrast is the primary factor for legibility. Poor contrast reduces legibility while good contrast improves it. It is of good design practice to ensure there is significant contrast between the background and foreground colors, especially for text. Below is an example of good contrast versus poor contrast.


  • Text Sizes - Always keep in mind the average distance between the viewer and the screen. Large size text should be used to improve readability at a distance. Therefore, Appspace recommends to use text font size of 40 to 50 pixels for comfortable reading.

  • Text Styles - Words on a screen serve one sole purpose, to communicate a clear and concise message. Maintain font consistency in a single design and use italics sparingly as italics reduce readability at a distance. “Serif” type fonts such as Times New Roman have small strokes on each character and are better suited for long texts as they help the human eye track one word to the next. “Sans-serif” fonts such as Arial do not have small strokes on each character and are thus better suited for short messages.

  • Fonts - Appspace provides users with a collection of fonts for designing a Signs application such as Arial, Century Gothic, Comic Sans MS, Georgia, Tahoma, Times New Roman, Trebuchet MS, and Verdana. Note that in order for a device to display the font, the font must be installed on the device.

    At times, digital videos include typographic representations such as opening titles from a TV newscast or translated subtitles from a foreign film. Should the need for a custom font arise, do one of the following:

    • Install the font onto the device - If the device supports font installation, install the custom font onto that device. The font should either be a True Type Font (TTF) or an Open Type Font (OTF).
    • Embed fonts in SWF animations - When a font is embedded within a Shockwave Flash (SWF) file in the application, the corresponding font will be rendered correctly although the font is not installed on the device.
    • Fonts specified in third-party website HTML or CSS codes - Cisco devices use factory-installed software and fonts to render webpage text for applications. These devices use font substitution methods when they render a webpage that is designed to use unavailable fonts.

  • Colors and Perception - Proper color selection creates good contrast between foreground elements such as text, and background design. The three basic colors used for color mixing are red, green, and blue. The human eye is most sensitive to green, with red coming in second, and the least sensitive being blue.

    Three key points to consider when using color are:

    • Use contrasting colors – Light on dark or dark on light.
    • Understand what the target viewer’s eye is drawn to – Select a color palette that will be more appealing to the target viewer.
    • Control the impact of information – Selectively display key pieces of information instead of flooding the display with information.

  • Focus - Using focus techniques to guide the eye to critical information first will create a visual hierarchy in the design. Headlines, graphics, bright colors, and high contrast items will pull the eye to them. Size also tells the audience the priority of design elements, as does their arrangement, angles and open space.

  • Preview - When previewing the application, consider what your eye looks at first and adjust the design to ensure that the most important elements take priority. Be sure to test readability and visibility before assigning the application to an endpoint. Have at least five feet of distance between yourself and the monitor as this simulates your target audience’s perspective for viewing screens at a distance.


Content Specifications

This section covers the specifications for supported media types that can be used when designing an application in Signs.

Image Formats

To ensure the highest display quality, it is important to pay attention to the size and resolution of images and videos being displayed. For optimum clarity, ensure images are at least 72 DPI when viewed at 100%. Using low-resolution images will resort in image pixelation and distortion.

Supported Image Compression Formats:

  • PNG – Use when smaller sized files are needed with no loss in quality. PNG-24 format is the preferred format to get the best results for images with text, large blocks of color, or simple shapes. PNG-24 also offers the best results when using images that contain transparency.
  • Non-progressive JPEG – Use for photographs and other high color images. JPEG is not suitable for images with text, large blocks of color, or simple shapes, as crisp lines may appear blurry.

Note

  • PNG rendering may be slow on the DMP4310G and 4400G, therefore JPEG is recommended as the preferred format for these devices.
  • JPEG images should utilize the RGB profile.

Audio and Video Formats

Videos should be at minimum 720p (1280×720 pixels) at 30 frames per second although a 1080p (1920×1080 pixels) video is preferred. Videos with an aspect ratio of 16:9 are encouraged.

Note that other formats are supported but are device dependent.

Flash Animations

All complex Flash animations require high CPU usage. Overshooting the CPU capacity of any device will result in severe performance issues. The following tips will help improve playback performance.

  • Resolution of up to 1920 x 1080 when animations within the SWF are small.
  • Ensure that each animation is smaller than 640 x 480 pixels.
  • Ensure that none of the animations contain embedded or referenced objects of dimensions greater than 640 x 480 pixels.
  • Split animations apart by function into smaller files. For example, instead of combining a text ticker and a slideshow into one animation file, separate them into two animation files.
  • General playback performance can be affected by file size and the speed of motion within the flash animation. If the playback appears choppy or does not load properly, it is recommended to export the SWF file as an MPEG file and imported into Appspace as a video. This will ensure smooth playback of the Flash media.
  • Animation frame rates should be set to 12 frames per second (fps) or less.
  • Ensure that there’s only one animation effect per timeline segment. For example, do not fade an object in a segment where that same object is to be resized.
  • When using an animation effect to resize an object, avoid changing its dimensions by more than 10 percent per timeline segment.
  • Avoid redrawing of the whole screen in Flash animations.
  • Avoid combining animations with multiple or complex JavaScripts.
  • Avoid shape-tweening.
  • Avoid distributed movement on different parts of the screen as it may affect performance compared to localized movement.
  • Transparent SWF files are not supported.
  • Alpha transparency is most effective for objects whose dimensions are less than 200px by 150px.

Media player devices are designed to restart automatically when they run low on memory, to avoid crashing. In the rare cases when devices do run out of memory or restart automatically, SWF files are almost always responsible. The known scenarios when this can occur are as follows:

  • The SWF file size is greater than 500KB. Larger SWF files do work correctly in most cases.
  • The SWF file uses bitmapped image files outside itself that have very large file sizeS, either individually or collectively. Any bitmapped image files that you use in the production of an SWF file should be small. It is important to note that merely reducing the height and width of the flash file’s placeholder on the canvas in Adobe Flash (or any similar authoring tool) will not reduce the actual file size.
  • The web page displayed uses too many embedded SWF files.

Note

Do not deploy any design until you have tested its playback performance on at least one device.

HTML and JavaScript

It is not recommended to use JavaScript code generators such as Microsoft Word or ASP.NET for digital media players as they produce elaborate yet wasteful code that can deplete memory. When a digital media player interprets such code, memory usage grows significantly and the player’s performance degrades.

Below are some recommendations to improve performance:

  • Avoid using more than two JavaScript timers per playlist.
  • Avoid refreshing webpages frequently on digital media players.
  • It is recommended that AJAX or Shockwave Flash (SWF) be used to load dynamic content.
  • URLs for media assets should not be longer than 128 characters and must not contain any spaces. It should also use ISO/IEC-8859 (Latin-1) character encoding.
  • Digital media players are not able to render webpages from servers with self-signed certificates.
  • Some webpages with embedded SWF contents use JavaScript code that includes multiple getElementByld() calls or multiple timers such as setDuration or setInterval which can cause the player to run out of memory and reboot. This may also cause the player to render a white screen. These cases are the combined result of Flash 7 memory leak and an over-reliance on JavaScript.

Application Design Best Practices

Transferring Mockups to Layout Design

Wireframes created from customer’s design requirements are used to create a mockup. A mockup is a visual representation of an application that defines the entire application layout including organizing the design elements in layers. A mockup typically includes information such as:

  • layout resolution
  • number of content placeholders
  • content placeholder size
  • content placeholder position
  • content type

Multiple Layouts

When designing an application, consider distributing design elements across multiple layouts. A carefully organised design element does not overwhelm the audience with too many options. It also allows structured grouping of related information and functions. As a rule of thumb, an application should have a limitation of six to ten layouts.

Widgets

Widgets are the building blocks of applications that describe data and visual elements. In Appspace, widgets act as content placeholders in an application’s layout. Among the most commonly used widgets are media zones, clocks, text and text ticker widgets. Almost all applications, both passive and interactive, can be created with a key selection of widgets.

  • Reusing Widgets

    If you repeatedly use the same type of widgets in a specific way throughout the application, consider reusing the widgets across multiple layouts. Appspace allows users to reuse widgets from other layouts to greatly reduce the widget’s load time.

  • Copying Widgets

    Copying widgets can be very helpful. When a widget is copied, its settings and properties will be copied as well. This reduces the need to manually configure each copy of the widget. Using this feature is particularly useful if you are adding the same widget type in one single layout during the design phase.

  • Widget Layering

    Adding widgets in layers create a sense of depth. Layering is a process of grouping widgets so that they share the same plane on the screen. In Appspace, the order of layered widgets are interchangeable.

Scheduling

Use scheduling to achieve maximum signage flexibility when designing an application. The most common types of schedules are layout scheduling and playlist scheduling. A planned layout or playlist schedule conveys time-sensitive messages at a pre-defined time.

Tag Rules

Tag rules provide a quick and simple way of targeting content playback to specific groups of players running the same application. By using player tags, playback of content in a media zone widget can be filtered. A tag rule can be applied to a specific content in a playlist or schedule. This eliminates the need to create multiple applications catering for different sets of content.