Roku channel stream has 1 too many clicks

Hello, I created a Roku channel that has 1 live video stream link that I watch to The Shopping Channel but when I start the channel I have to click on The Shopping channel logo 3 times before it will start. The second time just has a blank image. What do I need to change? All the other one stream channels out there just have to click twice to start the stream, once to select the channel I want then a second time to play/start the stream. Here are my files for examination; Thx
Categories:


<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<categories>
	<category title="TSC" description="The Shopping Channel" sd_img="http://ia801504.us.archive.org/1/items/TscGraphics/Tsc214x144Sd.png" hd_img="http://ia801504.us.archive.org/1/items/TscGraphics/Tsc290x218Hd.png">
		<categoryLeaf title="TSC" description="The Shopping Channel" feed="http://ia601509.us.archive.org/27/items/RokuXML/themind.xml"/>
	</category>
</categories>

themind:


<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<feed>
	<!-- resultLength indicates the total number of results for this feed -->
	<resultLength>2</resultLength>
	<!-- endIndix  indicates the number of results for this *paged* section of the feed -->
	<endIndex>2</endIndex>
	<item sdImg="http://ia801504.us.archive.org/1/items/TscGraphics/Tsc214x144Sd.png" hd_img="http://ia801504.us.archive.org/1/items/TscGraphics/Tsc290x218Hd.png">
		<title>The Shopping Channel</title>
		<contentId>10001</contentId>
		<contentType>Shopping</contentType>
		<contentQuality>SD</contentQuality>
		<streamFormat>hls</streamFormat>
		<media>
			<streamQuality>SD</streamQuality>
			<streamBitrate>1500</streamBitrate>
			<streamUrl>http://tscstreaming-lh.akamaihd.net/i/TSCLiveStreaming_1@91031/index_3_av-p.m3u8</streamUrl>
		</media>
		<synopsis>TSC is a Canadian English language cable television home shopping channel. The Shopping Channel is a division of Rogers Media. The channel is headquartered in Mississauga, Ontario. It showcases various products which viewers can purchase either by telephone or internet. TSC also distributes a catalogue twice per year and owns an off air outlet store located in Toronto.</synopsis>
		<genres>Shopping</genres>
		<runtime>0</runtime>
	</item>	
</feed>

I assume you’re using the Roku’s ‘videoplayer’ SDK example. That’s just the way it works.

If instead you were to use the NewVideoPlayer (http://forums.roku.com/viewtopic.php?f=34&t=91672&p=516080), which you can get from https://github.com/belltown/Roku-NewVideoPlayer then you can simply change one line of code in Main.brs (replace “pkg:/xml/categories.xml” with “http://ia601509.us.archive.org/27/items/RokuXML/themind.xml”, or whatever file has your actual feed, and you will only have one screen to click on before getting to the screen with the play button. I would also change your feed’s Xml file so that Shopping is changed to episode, so your image on the springboard screen isn’t squished up.

You can also just use a single XML file like so. Point to this file in Main.brs instead of your existing categories.file:


<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<categories>
     <feed title="HSC">
        <item sdImg="http://ia801504.us.archive.org/1/items/TscGraphics/Tsc214x144Sd.png" hd_img="http://ia801504.us.archive.org/1/items/TscGraphics/Tsc290x218Hd.png">
            <title>The Shopping Channel</title>
            <contentId>10001</contentId>
            <contentType>episode</contentType>
            <contentQuality>SD</contentQuality>
            <streamFormat>hls</streamFormat>
            <media>
                <streamQuality>SD</streamQuality>
                <streamBitrate>1500</streamBitrate>
                <streamUrl>http://tscstreaming-lh.akamaihd.net/i/TSCLiveStreaming_1@91031/index_3_av-p.m3u8</streamUrl>
            </media>
            <synopsis>TSC is a Canadian English language cable television home shopping channel. The Shopping Channel is a division of Rogers Media. The channel is headquartered in Mississauga, Ontario. It showcases various products which viewers can purchase either by telephone or internet. TSC also distributes a catalogue twice per year and owns an off air outlet store located in Toronto.</synopsis>
            <genres>Shopping</genres>
            <runtime>0</runtime>
        </item>
    </feed>
</categories>

or if you really wanted it split over two files you could use:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<category feed="pkg://xml/feed.xml" title="TSC" description="The Shopping Channel" sd_img="http://ia801504.us.archive.org/1/items/TscGraphics/Tsc214x144Sd.png" hd_img="http://ia801504.us.archive.org/1/items/TscGraphics/Tsc290x218Hd.png"/>

and in feed.xml:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<feed title="TSC">
   <item title="TSC" sdImg="http://ia801504.us.archive.org/1/items/TscGraphics/Tsc214x144Sd.png" hd_img="http://ia801504.us.archive.org/1/items/TscGraphics/Tsc290x218Hd.png">
      <title>The Shopping Channel</title>
      <contentId>10001</contentId>
      <contentType>episode</contentType>
      <contentQuality>SD</contentQuality>
      <streamFormat>hls</streamFormat>
      <media>
         <streamQuality>SD</streamQuality>
         <streamBitrate>1500</streamBitrate>
         <streamUrl>http://tscstreaming-lh.akamaihd.net/i/TSCLiveStreaming_1@91031/index_3_av-p.m3u8</streamUrl>
      </media>
      <synopsis>TSC is a Canadian English language cable television home shopping channel. The Shopping Channel is a division of Rogers Media. The channel is headquartered in Mississauga, Ontario. It showcases various products which viewers can purchase either by telephone or internet. TSC also distributes a catalogue twice per year and owns an off air outlet store located in Toronto.</synopsis>
      <genres>Shopping</genres>
      <runtime>0</runtime>
   </item>   
</feed>

Ok, thank you. Yes, I was using the old VideoPlayer SDK folder.
Can I keep all of the files local? instead of having to host some of the graphics at archive.org and others in the local images folder. I tried before linking the images in my xml to the local package folder like the manifest does for some of the graphics but did work. I’ll try again with the new program

EDIT: So I have created a tsc.xml file in the XML folder as you have posted above and changed the line in main.brs to: (parseXmlDocument (“pkg:/xml/tsc.xml”)).
Should this be all I need to do and now upload the new zip to my Roku once I fix the manifest file to point to my icons? That is a lot easier than having to use themind.xml and categories.xml files :slightly_smiling_face:

“matrixebiz” wrote:
Ok, thank you. Yes, I was using the old VideoPlayer SDK folder.
Can I keep all of the files local? instead of having to host some of the graphics at archive.org and others in the local images folder. I tried before linking the images in my xml to the local package folder like the manifest does for some of the graphics but did work. I’ll try again with the new program

EDIT: So I have created a tsc.xml file in the XML folder as you have posted above and changed the line in main.brs to: (parseXmlDocument (“pkg:/xml/tsc.xml”)).
Should this be all I need to do and now upload the new zip to my Roku once I fix the manifest file to point to my icons? That is a lot easier than having to use themind.xml and categories.xml files :slightly_smiling_face:

First of all, I’ve uploaded a new verison of NewVideoPlayer to GitHub. You may want to download that one instead. It has improved support for live video. You can put a element in the video feed’s item to signify a live stream (e.g. True). This will disable the FF/REW keys as well as bookmarking/resume functionality, which aren’t applicable to live video. I also no longer display the ‘Play All’ button if there is only one item in the feed.

Yes, all your files (feeds, images, etc.) can be in your local Roku package. This works with NewVideoPlayer, but not with Roku’s videoplayer SDK example.

Yes, to your edit. However, check out the UITheme.brs file. If you’re using a logo that appears at the top left hand corner of your screens, then un-comment the lines below “No logos in this implementation …” and replace the filenames with your own. You can also make any other changes you wish here for different colors, etc. You may want to change your OverhangSlice attributes to use your own overhang images (the stuff that appears across the top of the screens).

Ok, cool so this is all I am going to do and if you can let me know if this will work;

  1. Created a tsc.xml in the xml folder;

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<categories>
     <feed title="TSC">
        <item sd_img=pkg:/images/Tsc214x144Sd.png hd_img=pkg:/images/Tsc290x218Hd.png>
            <title>The Shopping Channel</title>
            <contentId>10001</contentId>
            <contentType>episode</contentType>
            <contentQuality>SD</contentQuality>
            <streamFormat>hls</streamFormat>
			<live>True</live>
            <media>
                <streamQuality>SD</streamQuality>
                <streamBitrate>1500</streamBitrate>
                <streamUrl>http://tscstreaming-lh.akamaihd.net/i/TSCLiveStreaming_1@91031/index_3_av-p.m3u8</streamUrl>
            </media>
            <synopsis>TSC is a Canadian English language cable television home shopping channel. The Shopping Channel is a division of Rogers Media. The channel is headquartered in Mississauga, Ontario. It showcases various products which viewers can purchase either by telephone or internet. TSC also distributes a catalogue twice per year and owns an off air outlet store located in Toronto.</synopsis>
            <genres>Shopping</genres>
            <runtime>0</runtime>
        </item>
    </feed>
</categories>
  1. Change uiDisplay (parseXmlDocument (“pkg:/xml/categories.xml”)) to uiDisplay (parseXmlDocument (“pkg:/xml/tsc.xml”)) in Main.brs

  2. Edit manifest to my own pics and put my images into the images folder;


#*******************************************************************
#
#       NewVideoPlayer -- Example Multi-Level Roku Channel
#
# Copyright (c) 2015, belltown. All rights reserved. See LICENSE.txt
#
#********************************************************************
#
title=TSC
subtitle=The Shopping Channel
#
major_version=1
minor_version=0
build_version=01
#
mm_icon_focus_hd=pkg:/images/MainMenu_Icon_CenterFocus_HD.png
mm_icon_focus_sd=pkg:/images/MainMenu_Icon_CenterFocus_SD.png
#
mm_icon_side_hd=pkg:/images/MainMenu_Icon_Side_HD.png
mm_icon_side_sd=pkg:/images/MainMenu_Icon_Side_SD.png
#
#splash_screen_fhd=pkg:/images/mm_icon_focus_hd-366x210.png
#splash_screen_hd=pkg:/images/mm_icon_focus_hd-366x210.png
#splash_screen_sd=pkg:/images/mm_icon_focus_hd-366x210.png
#
splash_color=#414a4c
splash_min_time=1500
#
  1. Is this all I need to do? I don’t need a hosting site anymore for my images and don’t need categories.xml and themind.xml files for my custom channel.
  1. Enclose your image attribute names in quotes (or the Xml won’t parse), and you should probably change hd_img to hdImg (my code doesn’t care, but if you were to try this in the Roku SDK videoplayer example, it wouldn’t recognize it):
<item sdImg="pkg:/images/Tsc214x144Sd.png" hdImg="pkg:/images/Tsc290x218Hd.png">
  1. Yes

  2. Yes

  3. Yes - no hosting needed; you can put everything in your local package, and you don’t need the other xml files that come with the example.

Awesome, thank you for the help, I’ll test it tonight and yes, you can use my TSC source in your cat example :slightly_smiling_face:

Okay, it works great with the side load zip, now where is the guide again on creating the package file for uploading it to my Online Dev channel account for sharing private channels?

“matrixebiz” wrote:
Okay, it works great with the side load zip, now where is the guide again on creating the package file for uploading it to my Online Dev channel account for sharing private channels?
It’s in the Channel Packaging and Publishing document, which I believe used to be a single web page document that you could easily search through to find stuff. Now, in their infinite lack of wisdom, they’ve decided to split all their documents into multiple mini-documents, which in some cases aren’t immediately obvious which ‘Child Page’ you need to be searching in (the BrightScript Reference and the Developer Guide are the worst in that regard). I miss the good old days when each document was a separate PDF file that I could download onto my PC and search through at will.

Anyway, the section about generating a package is here: http://sdkdocs.roku.com/display/sdkdoc/Packaging+Your+Application and the section on creating a Private Channel is here: http://sdkdocs.roku.com/display/sdkdoc/Managing+Channels

Okay, thank you

“belltown” wrote:
Now, in their infinite lack of wisdom, they’ve decided to split all their documents into multiple mini-documents, which in some cases aren’t immediately obvious which ‘Child Page’ you need to be searching in (the BrightScript Reference and the Developer Guide are the worst in that regard). I miss the good old days when each document was a separate PDF file that I could download onto my PC and search through at will.

Agreed! :disappointed_face:

Hello again Belltown, the channel looks good on my end but the Roku team needs the following stuff fixed in the channel before they can publish it;

Before we can publish your channel, please address the following:
1. Overhang banners and logos are missing. Please go over the following guidelines when creating these images:
·         Safe zone guidelines: http://sdkdocs.roku.com/display/sdkdoc/Design+Guidelines#DesignGuidelines-1.3.2Safezones
·         Overhang specs: http://sdkdocs.roku.com/display/sdkdoc/Design+Guidelines#DesignGuidelines-3.0RokuUIComponents
 
2. Manifest splash screens are missing.
Add or modify the following entries to the manifest file:
splash_screen_fhd=pkg:/images/Splash_FHD.jpg
splash_screen_hd=pkg:/images/Splash_HD.jpg
splash_screen_sd=pkg:/images/Splash_SD43.jpg
 
Add the splash image files with the following dimensions:
Images/Splash_FHD.jpg             1920x1080
images/Splash_HD.jpg                  1280x720
images/Splash_SD43.jpg                720x480

Let us know when these issues have been addressed and we can take another look.

I don’t see these images in the package Images folder so I’ll add them but where do they get called in the code? because I assume the Roku team will want to make sure they show up in my channel for when they do further testing and I just want to make sure they are called upon in the code/script. Thx

“matrixebiz” wrote:
Hello again Belltown, the channel looks good on my end but the Roku team needs the following stuff fixed in the channel before they can publish it;

Before we can publish your channel, please address the following:
1. Overhang banners and logos are missing. Please go over the following guidelines when creating these images:
·         Safe zone guidelines: http://sdkdocs.roku.com/display/sdkdoc/Design+Guidelines#DesignGuidelines-1.3.2Safezones
·         Overhang specs: http://sdkdocs.roku.com/display/sdkdoc/Design+Guidelines#DesignGuidelines-3.0RokuUIComponents
 
2. Manifest splash screens are missing.
Add or modify the following entries to the manifest file:
splash_screen_fhd=pkg:/images/Splash_FHD.jpg
splash_screen_hd=pkg:/images/Splash_HD.jpg
splash_screen_sd=pkg:/images/Splash_SD43.jpg
 
Add the splash image files with the following dimensions:
Images/Splash_FHD.jpg             1920x1080
images/Splash_HD.jpg                  1280x720
images/Splash_SD43.jpg                720x480

Let us know when these issues have been addressed and we can take another look.

I don’t see these images in the package Images folder so I’ll add them but where do they get called in the code? because I assume the Roku team will want to make sure they show up in my channel for when they do further testing and I just want to make sure they are called upon in the code/script. Thx

I didn’t include a logo or official splash screen images in my example code because they’re very much dependent on the individual channel. See my earlier comments in this post: http://forums.roku.com/viewtopic.php?f=34&t=92101#p517022. However, the places where you need to put them are already set up in the code.

  1. Overhang banners and logos: See the file source/UITheme.brs.

The logos are defined in the following code:


    ' No logos in this implementation ...
    REM OverhangPrimaryLogoSD:          "pkg:/images/OverhangPrimaryLogoSD.png"
    REM OverhangPrimaryLogoOffsetSD_X:  "55"
    REM OverhangPrimaryLogoOffsetSD_Y:  "34"
    REM OverhangPrimaryLogoHD:          "pkg:/images/OverhangPrimaryLogoHD.png"
    REM OverhangPrimaryLogoOffsetHD_X:  "123"
    REM OverhangPrimaryLogoOffsetHD_Y:  "0"

remove the comments ("REM ") from the above lines, put the logo files in the images/ folder, making sure all the image dimensions are correct. The offsets will also vary depending on the size and positioning of the logo images.

The overhang banner is defined by:

    OverhangSliceSD:                    "pkg:/images/OverhangSliceSD-1x83.png"          ' solid, single color value of #414a4c
    OverhangSliceHD:                    "pkg:/images/OverhangSliceHD-1x124.png"         ' solid, single color value of #414a4c

Whatever you put in the overhang slice image files is replicated across the entire width of the overhang banner area at the top of the screen. They only need to be one pixel wide, as in my case, if you’re using a single, solid color throughout, or you can create an image that spans the entire width of the screen if you like. The idea is that these overhang slices or images form the background behind the logo that you specify with OverhangPrimaryLogoSD and OverhangPrimaryLogoHD. The dimensions and offsets of your logo, and the dimensions of your slice images should all be consistent. It might take a little futzing around with image sizes and offsets to get them to display them the way you want on the SD and HD TVs.

  1. Splash image files: They go in the ‘manifest’ file at the top-level of the package directory. Add your own images of the correct dimensions (the dimensions listed in the e-mail you got from Roku), and reference them here instead of the generic file mm_icon_focus_hd-366x210.png:

#
splash_screen_fhd=pkg:/images/mm_icon_focus_hd-366x210.png
splash_screen_hd=pkg:/images/mm_icon_focus_hd-366x210.png
splash_screen_sd=pkg:/images/mm_icon_focus_hd-366x210.png
#

Okay, will do, thank you for your help.

Hi belltown, so now that I have my one stream/feed channel created, what do I need to change and add if I wanted to now add another selection/stream? Thx

You just need to change the Xml file:


<?xml version="1.0" encoding="UTF-8"?>

<categories>

    <feed title="TSC" description="" sd_img="http://ia801504.us.archive.org/1/items/TscGraphics/Tsc214x144Sd.png" hd_img="http://ia801504.us.archive.org/1/items/TscGraphics/Tsc290x218Hd.png">
        <item sdImg="http://ia801504.us.archive.org/1/items/TscGraphics/Tsc214x144Sd.png" hdImg="http://ia801504.us.archive.org/1/items/TscGraphics/Tsc290x218Hd.png">
            <title>The Shopping Channel - Feed 1</title>
            <description></description>
            <streamFormat>hls</streamFormat>
            <media>
                <streamQuality>SD</streamQuality>
                <streamBitrate>1500</streamBitrate>
                <streamUrl>http://tscstreaming-lh.akamaihd.net/i/TSCLiveStreaming_1@91031/index_3_av-p.m3u8</streamUrl>
            </media>
            <synopsis>TSC is a Canadian English language cable television home shopping channel. The Shopping Channel is a division of Rogers Media. The channel is headquartered in Mississauga, Ontario. It showcases various products which viewers can purchase either by telephone or internet. TSC also distributes a catalogue twice per year and owns an off air outlet store located in Toronto.</synopsis>
            <genres>Shopping</genres>
            <genres>Live</genres>
            <live>True</live>
        </item>
       <item sdImg="http://ia801504.us.archive.org/1/items/TscGraphics/Tsc214x144Sd.png" hdImg="http://ia801504.us.archive.org/1/items/TscGraphics/Tsc290x218Hd.png">
            <title>The Shopping Channel - Feed 2</title>
            <description></description>
            <streamFormat>hls</streamFormat>
            <media>
                <streamQuality>SD</streamQuality>
                <streamBitrate>1500</streamBitrate>
                <streamUrl>http://tscstreaming-lh.akamaihd.net/i/TSCLiveStreaming_1@91031/index_3_av-p.m3u8</streamUrl>
            </media>
            <synopsis>TSC is a Canadian English language cable television home shopping channel. The Shopping Channel is a division of Rogers Media. The channel is headquartered in Mississauga, Ontario. It showcases various products which viewers can purchase either by telephone or internet. TSC also distributes a catalogue twice per year and owns an off air outlet store located in Toronto.</synopsis>
            <genres>Shopping</genres>
            <genres>Live</genres>
            <live>True</live>
        </item>
    </feed>

</categories>

Do I not have to change “<feed title=” to something like;

<title = TSC ....... <title = HBO .......

or just change

with different images also in this part to something like Live Channels …

It depends what you want. The code I gave you will display a poster for each . When you click on the respective item, the details screen for that item will be displayed. The breadcrumb area at the top of each item’s details screen will show the feed’s title attribute. The purpose of the breadcrumb is to let the user know how they got to where they are, so it will be the parent screen’s title, which is why it’s a attribute, not an attribute.

If you want two separate s, you can wrap each one in a element, but then you’d have an extra, redundant screen layer, and you’d be back to your “one too many clicks” problem, or “one two many clicks” as I guess they say in Canada.

The images used in this scenario will be the image attributes. The 's image attributes will only be used as defaults if the image attributes are missing.

You know, you really won’t break anything if you try things out (unless you forget to back up your code), and see what happens. Rather than ask what will happen if you run the code, how about you run the code and see for yourself. If you want to find out if you do or don’t need a particular attribute set, then set it and see what happens. It’s all part of the development process.

“belltown” wrote:
“one too many clicks” problem, or “one two many clicks” as I guess they say in Canada.

lol, oh man, I didn’t even notice that :slightly_smiling_face:

Okay, I’ll mess around with it. I have all the info I need now. Thx

Hi Belltown, is it easy to have the channel look at a pastbin file/playlist instead of have the direct streams (m3u8) in the code so that if I need to change a stream link right away I don’t have to package an update and wait for Roku to publish the update to the channel, I can just change the link in my pastbin file on the fly and be done with it?