BrightSign Users Guide Matches: BrightSign HD2000 Version: 1.3.14 AutoPlay Script Version: 1.3.0.6 California, USA www.rokulabs.
INTRODUCTION ............................................................................................................................. 4 BRIGHTSIGN FEATURES.............................................................................................................. 5 EXAMPLE BRIGHTSIGN SETUPS ................................................................................................ 7 EXAMPLES .........................................................................................................
SUPPORTED INPUT DEVICES ........................................................................................................
Introduction The Roku BrightSigns are complete standalone Digital Sign or Kiosk Controllers that can play content from standard Flash memory cards. BrightSigns have uniquely high quality video playback. This is achieved via professional quality decoders and a scaler that can produce crisp clean 1920x1080 interlaced video from high definition mpeg sources on an HD2000, and 1024x768 video on a VGA monitor from standard definition mpeg sources on an HD600.
BrightSign Features BrightSign HD600 Display Resolutions NTSC PAL S-Video (requires adaptor) 640x480 (VGA out) 800x600 (VGA out) 1024x768 (VGA out) 1280x768 (VGA out) 480p (Component out) 480p (HDMI out) 576p (Component out) 576p (HDMI out) 720p (Component out) 720p (HDMI out) 1080i (Component out) 1080i (HDMI out) Video Compression Standards MPEG-1 MPEG-2 Picture Formats BMP PNG JPEG Audio Formats AC3 pass through MP3 decode out to analog and SPDIF MP3 decode out to USB WAV decode out to analog, USB and S/
IR receiver Compact Flash card slot SD/MMC flash card slot Video mode select button LEDs: connector activity and video mode Back Panel Connectors Power 3 audio out stereo 1/8” mini plugs VGA Component out 3 RCA jacks: Y-Pr-Pb HDMI out 2 High Speed USB host ports 10/100 Ethernet jack DB25 control port (for buttons & LEDs) RS-232 serial port Optical SPDIF audio out 1/8” 5V serial port 8 position dip switch Power Typical power consumption Features Auto play and looping video support Playlists .
Example BrightSign Setups Probably the simplest way to use BrightSign is to put a video or set of still images on a CompactFlash card, and use a VGA cable to connect the BrightSign to a flat panel monitor. Variations on this setup include using the component out to connect to a High Definition display (like a Plasma TV), or even connecting to a standard definition display. On the HD2000, HDMI out can be used to connect to a display.
Examples Here are some examples of what you can do with a BrightSign: • Display a looping video with “DVD+” quality on a variety of monitor types. • Display a looping slide show in high definition. • Play looping music. • Combine any of the above. • Create interactive displays that play video, photos, or audio in response to customers using touch screens, mouse, keyboard, remote, or a custom button board you have created.
your monitor is configured to the correct input type and is connected using the correct cable. You should now see the demo in various video modes, and see how it auto scales and supports widescreen or 4x3. Note that the front panel “video mode” button is not currently supported on the HD2000. Software Versions The version of the BrightSign device software that matches this manual can be found on the cover of the Manual.
BrightSign Documentation The complete set of BrightSign documentation is available at www.rokulabs.com/BrightSign.
Getting Started Step 1: Get Hardware You Need To start using the BrightSign, you’ll need the following hardware. • Display – Any monitor, TV, or Elo touch screen with a VGA, Component, Composite (HD600 only), or HDMI (HD2000 only) inputs. • CF Card Reader/Writer o A Compact Flash card to store the demo or your content. Read “Selecting Compact Flash Cards” o A USB card reader for your PC or Macintosh that supports compact flash cards. You can get one for less then $20.
Media Types Supported The following media types are supported: • MPEG-2 Video Files (aka “VOB” or “MPG” files) - These are the same types of files that are found on DVDs. They can be authored using any video editing software such as Pinnacle Studio or iMovie. Video sizes up to 1080i (1920x1080 interlaced) are supported with bit rates up to 25Mbps on the HD2000, and sizes up to D1 (720 x 480) are supported with bit rates up to 9 mbps on the HD600.
Playing Media with BrightSign Media can autoplay from a CompactFlash card upon power-up, play via a script on a CompactFlash card, or be tested using the serial shell commands. NOTE: On an HD600, video will come out the VGA connector, and the resolution will be 1024x768 unless you have changed this in your .CSV, Playlist, or Script, or by using the front panel video mode button (the video mode button is not currently supported on the HD2000).
Auto Playing a Video upon Power-up To autoplay a video file on power-up or reset, do the following: 1. Copy the video file onto the root directory of a CompactFlash card and name it “autoplay.vob” or “autoplay.mpg”. 2. Go to www.rokulabs.com/brightsign and download the “autoplay.zip” file. This contains a script named autorun.bas. Copy autorun.bas into the root directory of your CF card. 3. Insert the CF card into the BrightSign, apply power, and after a few moments, the video should play and auto loop.
Auto Executing a Script Upon Power-Up Creating a BrightScript file allows you the most control over your interactive digital sign application. To autorun a script: 1. Create the script using a text editor (see the script section of this manual for more information) 2. Save it to the root directory of your CompactFlash card with the name “autorun.
Playlists A BrightSign playlist is a text file that ends in “.bsp” (BrightSign Playlist). It contains the names of the files to play, in the order they should play. Files are played in sequence, one after the next. This means that it is not currently possible to have a playlist that plays audio and a video at the same time, for example. Getting Started To play a playlist, you must have your content, the playlist, and the Roku autoplay script (autorun.bas) on your CF card.
Playlist Commands Here is the list of commands that can appear in a playlist: .bmp, .mp3, .mpg, .vob, .png (HD2000 only), .jpg (HD2000 only) Any line that is a file name that ends in one of these extensions is played. Names may contain spaces. .bsp You can call another playlist from within a playlist putting the playlist filename on a line by itself. For example: mysubplaylist.bsp. This “sub playlist” will complete one loop and then return control to the main playlist.
audiochan # (default is 2 ) Since there are three analog outs, if analog is selected you must also use the "audiochan" cmd: • audiochan 2 -- output 1 (this is not a typo) • audiochan 1 -- output 2 • audiochan 0 -- output 3 volume # (default is 100 ) Sets the volume to a value between 0 and 100. For example: volume 100 videomode (default is 1024x768x60p ) Set the output framebuffer format.
lighton # lightoff # These two commands are used to set or clear one of the GPIO outputs. The number can be any integer between 17 and 22. For example: lighton 17 sets LED 0 on the button board. waitbuttonany This will pause until any of the GPIO buttons is pressed. pause # This will pause for the specified number of seconds. The number must be an integer.
Creating Interactive Displays With BrightSign you can create displays that respond to user input. For example, give the customer options of watching different videos depending on which button is pressed. To accomplish this with BrightSign, you need to decide what the input device will be, and you will need to either (a) use Microsoft Excel to create a control table and use BrightSign’s “autoplay .CSV files” mode, or (b) create a custom control script.
STATE bs5.bmp bs6.bmp STATE bs6.bmp bs7.bmp STATE bs7.bmp bs8.bmp STATE bs8.bmp bs9.bmp STATE bs9.bmp bs10.bmp STATE bs10.bmp demo_menu .bmp Keywords The first two lines use the optional “videomode” and “imagemode” keywords. These items are optional, but if used, can have these parameters (in the column after the keyword VIDEOMODE or IMAGEMODE).
• • 2 - Scale to fill and crop. The image is scaled so that it totally fills the screen, though with its aspect ratio maintained. 3 - Scale to fill. The image is stretched so that it fills the screen and the whole image is viewable. This means that the aspect ratio will not be maintained if it is different to that of the current screen resolution.
Sets the volume when playing an audio file. The volume parameter should be between 0 and 100. FLIPELO This keyword isn’t used in the example above. The FLIPELO keyword should only be used with a touch screen if the touch screen coordinates appear to be reversed. FLIPELO IMAGEMODE EVENTS 2 elo:110:180:355:210 REGISTRYSECTION (HD2000 only) Directs that any writes to the registry in this CSV file will be written to the specified registry section.
• • • • • button - Triggers on a GPIO Control Port button press. The format is: button:number, where number is between 0 and 12. timeout - When a video or slide is displaying, or an audio is playing, you can use a “timeout” event. The format is: timeout:seconds where seconds is the number of seconds after the video/image/audio starts that the event will trigger. This event can be used to advance a slide show to the next slide, or exit a looping video after a certain number of seconds of playback.
later in the document). To do this, append the following to the state name specified in an event column: :counter() In the example above, the state cars.mpg is in the “elo:110:180:350:400” event column. To track the number of times that the user activates this transition, enter “cars.mpg:counter(TouchToDemoMenu) in place of “cars.mpg”. The value in the registry corresponding to the TouchToDemoMenu key is incremented when the corresponding event is triggered.
The general syntax is: :(;;gpio_num) That is, the state name followed by a colon, then the gpio command, then a list of semicolon separated gpio’s inside of parentheses. Gpio 0 corresponds to the first LED on the button board The GPIO commands are • gpiosOn – turns on the specified GPIO’s; unspecified GPIO’s are unchanged. • gpiosOff – turns off the specified GPIO’s; unspecified GPIO’s are unchanged.
To use a second state machine, use the keyword NEXT in the first column of the CSV file following all of the STATE’s from the first state machine. Keywords can then be added, followed by the states for the second state machine. Subsequent state machines can be added in the same way, up to a maximum of four state machines total. When using multiple state machines, the use of video and images must be specified in the first state machine only. Additionally, the state machines must use independent resources.
State File (CSV) Examples The BrightSign Demo described above shows that you can design powerful interactive signs using easy to understand CSV files. The following examples further illustrate how easy CSV files are to use. Example 1: Slideshow that advances automatically after the first slide plays Example 1 contains two events, an elo event (used for ELO touch screens or any Mouse input) and a timeout event. The clickable/touch area is defined as the whole screen. One touch or click starts the slideshow.
Example 2: slideshow that advances only when a click / touch occurs Example 2 has only 1 event, the same elo event as Example 1. • There’s an elo event entry for each image that plays next image when there’s a click or touch anywhere onscreen. • There are no timeout events in this demo. Because example 2 only has an elo event, and no timeout events, you must click or touch the screen to advance the slideshow.
Example 3: Video and Slide playback, using button input Example 3 contains five events, three button events and a timeout and videoend event. This demo plays two videos and 3 images. When this demo starts, menu.bmp is displayed since it’s in the first STATE position. • If the menu is being displayed, pressing button 1 starts the attract video; pressing button 2 starts the showcase video; pressing button 3 starts the slideshow.
Example 4: Multiple state machines in a single CSV file Example 4 contains three state machines. The first state machine specifies the video mode, image mode, and audio output for video. In this case, the keyword VideoPlayerAudioOutput directs the BrightSign to output stereo PCM via the SPDIF audio connector. This machine uses button 0 and the video end event to control the videos and the image. Note the NEXT keyword on line ten; it signals the beginning of another state machine.
Rollover Regions using State Files (CSV) In the previous section, “Using Excel to Create Interactive Signs”, you learned that you can create touchable (clickable) areas on the screen using elo (elor) and eloc keywords in the EVENTS row of a CSV file. You can then use these regions like buttons to playback content. Any touch region can be setup as a rollover region. Rollover regions allow you to create more dynamic and interactive displays that accept mouse and touch input.
This is an example of what you would enter in the CSV file to define a rollover region. In this example: • Starting position is: 765, 674 • The touch region is 96 pixels wide and 43 pixels high • The rollover region is enabled • The on and off images are: next_on.bmp and next_off.bmp. • The rollover images are displayed in the same location as the touch region Normally, the on and off image have the same dimensions as touch region (width, height), and the same starting position (x,y).
Example 5.1: Example 5.
Scheduling Playback (HD2000 only) Videos, still images, playlists, and CSV files can be played back at scheduled times using the autoschedule.txt file. This file contains a series of date/time specifications, followed by a specification of what to play when the date/time event occurs.
music.bsp 2008/1/*-WED-16:00 video.mpg 2008/1/*-*-07:00 breakfast.bsp 2008/1/*-*-14:00 demo.csv In this example, the image “image.png” will be displayed starting on December 15, 2007 at 3:20 PM. On December 25, at 4:16 PM, the playlist “music.bsp” will start. The next specification indicates that “video.mpg” will start playing at 4:00 PM every Wednesday in January, 2008. The playlist “breakfast.bsp” will start playing at 7:00 AM during January, 2008. Finally, “demo.
1. Using a text editor create a file called “hello.bas” with this line: print “hello world” 2. Save “hello.bas” into the root directory of a CF card 3. Insert the CF card into BrightSign 4. Connect the serial port of BrightSign to you PC using a null modem cable, and run hyperterminal (see the “Shell” section of this manual for more details). 5. Power up BrightSign. 6. Wait for it to boot, and for the “Roku>” shell prompt to appear 7. type: script /hello.bas 8.
11 BrightScript> ?type(5) rotINT32 BrightScript> if 1=1 then print"1 does equal 1!" else print "strange!" 1 does equal 1! BrightScript> ?right("abcdef",3) def BrightScript> exit Roku> Registry (HD2000 only) The BrightSign HD2000 has an I2C EEPROM with 2K bytes of memory that supports the storage of persistent settings. The BrightSign software registry object is how BrightScript reads and writes data to this eeprom.
p = CreateObject("roMessagePort") tmr = CreateObject("roMessagePort") gpio = CreateObject("roGpioControlPort") gpio.SetPort(p) event_loop: msg=wait(0, p) if type(msg)<>"roGpioButton" then event_loop butn = msg.GetInt() if butn > 5 then event_loop gpio.SetOutputState(butn+17,1) print "Button Pressed: ";butn msg = wait (500, tmr) gpio.SetOutputState(butn+17,0) clear_events: msg=p.
Troubleshooting If you are still having problems after trying troubleshooting tips, please contact customer support at www.rokulabs.com/brightsign for more assistance. Autoplay & General Troubleshooting Autoplay.mpg does not play automatically 1. Verify autoplay.mpg is spelled correctly 2. Verify that the autorun.bas v1.1 or later and autoplay.mpg are both in the root of the CF card 3. Verify you do not have an “autoplay.csv” or “autoplay.bsp” in the root of the CF card.
7. Re-create content with different software, if possible. 8. Contact Roku Customer Support if you are still having problems. Video output includes artifacts, quality lower than expected The format of video content should be chosen to best match the properties of the intended display resolution. Most of the video output modes are progressive and so for the highest quality video reproduction, video files should be MPEG-2 encoded as progressive files.
Playlist support requires autorun.bas v1.1 or later. 1. Verify autoplay.bsp is spelled correctly 2. Verify that the autorun.bas v1.1 or later and autoplay.bsp are both in the root of the CF card 3. Verify you do not have an “autoplay.csv” or “autoplay.mpg” in the root of the CF card. There should only be one autoplay file in the root of the CF card. 4. Check if your PC is set to show file extensions. If your PC is not set to show file extensions, and you rename the file “autoplay.
BrightSign Software Update Fails 1. 2. 3. 4. 5. Verify that the update file is named update.rok Verify the update file is in the root of the CF card, not in a sub-directory Try reformatting the CF card as FAT32 Try using a different CF card Try updating from the BrightSign Shell. Please see “Device Software and Upgrading” for details. 6. Contact Roku Customer Support, www.rokulabs.com/brightsign., if you are still having problems.
USB Mouse is not responding The BrightSign works with many different brands of USB mice. Before troubleshooting the mouse, please download the BrightSign Demo, and test if your mouse works with the demo. If the mouse works with the demo, then the problem is with your script or the coordinates used in the .csv file. 1. Unplug the mouse from the BrightSign, and reconnect 2. If you are using a wireless mouse, reconnect the wireless transmitter, and replace the batteries in the mouse 3.
Appendix Selecting Compact Flash Cards Summary When using a BrightSign Product, your content and scripts are loaded onto a Compact Flash (CF) card. Although the CF interface is standardized, there are a wide range of performance, compatibility, and reliability issues with different CF card brands and models. Roku strongly recommends that you use “industrial rated” CF cards with BrightSign.
speed with BrightSign by placing a file on it, and using the shell “readperf” command (see the BrightSign User Guide on shell instructions). BrightSign Compatibility BrightSign is compatible with most CF cards, but may not be 100% compatible with every model. Although there are standards for CF card interfaces, most chips are slightly different. We have tested with a large number of chips, and at this point have high compatibility.
Generating HD Content for the BrightSign HD2000 using Final Cut Pro From within Final Cut Pro: • Open an existing sequence or create a new one o Add HD content to the sequence as needed o Ensure that audio tracks are enabled. If your project has no audio, add a Slug to one of the audio tracks • Select the portion of the sequence to export • Select File > Export > Using Compressor In Compressor: • Go to the Settings tab in the Settings window.
• • Select your file and check in the Inspector window that the resolution, frame rate and aspect ration are correct (click on the Encoder button in the Inspector window second from the left). Most HD sources (HDCAM, HDV etc) will have set the resolution to 1440x1080.
b. If you wish to verify the new software version, startup the BrightSign without a flash card inserted. If this update is older than version 1.1, use the BrightSign Shell and the “version” command. See the “BrightSign Shell” section for more details. 6. HD2000 a. Wait. If a display is connected it will be blank. The LEDs on the front panel will be lit as the unit boots up. After some time, the red upgrade LED will light up. b.
BrightSign Shell BrightSign has a command line shell that can be accessed via the serial port. The shell allows you to type in commands to trigger tasks such as running scripts, playing video, trying different video modes, etc. It is not required that you use the shell. You can simply put your content on a CF card and configure it to auto play on power-up (see Playing Media with BrightSign). You may find it useful to use the shell to test various options or for debugging.
videoplay “/my video.vob” To change volume (0 - 100) to 75% when playing back a video or audio use: videoplay volume 75 audioplay volume 75 To change the videomode use the videomode command. Example: videomode 1024x768x60p To display an image, use the imageplay command. Example: imageplay slide1.bmp To specify an image mode, use the imageplay command with mode setting. Examples: imageplay slide1.bmp 0 imageplay slide1.
readperf bigfile.mpg If the “dir” command fails, you’ll get the following result: Roku> dir / opendir[/] Error: can't open dir If the “readperf” command fails, you’ll get the following result: Roku> readperf bigfile.mpg SET FEATURES transfer mode SUCCEEDED Unable to open file ATA:\autorun.bas Testing Scripts, Playlists, and .CSV An efficient way to test playback is to use the BrightSign Shell. By using the shell, you can see “debug output”.
3. Change to: debug = true 4. Rename autorun.bas file to “run.bas” for example, so it doesn’t start automatically a) If you are testing a playlist, the main playlist must be named “autoplay.bsp” b) If you are testing a .csv file, it must be named “autoplay.csv” 5. Insert your CF card into the BrightSign, and add power 6. At the Roku prompt, type the following: script run.
Linux Shell (HD2000 only) The HD2000 has a Linux shell that can be accessed via the serial port. To access the Linux shell, enter the following at the Roku prompt: exit When done using the Linux shell, enter the following at the Linux prompt: reboot Setting the Date/Time on BrightSign (HD2000 only) BrightSign has a real time clock that can be used for scheduling content playback. In order to use BrightSign’s scheduling features, the date and time on the BrightSign must be set.
7. Assumes logo.bmp is the file name of your logo file on the CF card. 8. Reboot the system - your logo should appear Using Your Own Boot Script The script must be self contained. For example, it can't be used to play a playlist or csv file. You can use the boot script to play any content on your CF card (images, audio, and videos). 1. 2. 3. 4. 5. 6. Save your boot script as myscript.bas Copy your myscript.
Widescreen vs. 4x3 Discussion BrightSign can be used with widescreen or 4x3 displays. However the use of different display aspect ratios with the various BrightScreen options can often be confusing. In this section we try to clarify what you can expect. Displaying Videos Video and Images are currently treated a little differently. When a video is being played back, it is displayed by default in what is known in BrightSignese as “ViewMode 0”.
• • • • • • • • • • • • • • • • Elo Touch Screens Many brands of USB Keyboards Many brands of USB Speakers – HD600 only Many brands of USB Mouse or Trackballs Many brands of USB Bar Code Scanners (these appear as a keyboard). Quadravox Serial Button Board Any “GPIO” button, signal or LED (your custom board or led display). Roku has a test button board available for purchase on our estore. VGA Monitors Component-input TVs.