Change font size
It is currently Fri Mar 22, 2019 5:24 pm

Forum rules


Post a new topicPost a reply Page 1 of 1   [ 4 posts ]
Author Message
 Post subject: FreeView - the missing manual & some parcel media inquiries
PostPosted: Sun Mar 18, 2012 9:33 pm 
User avatar

Joined: Mon Mar 12, 2012 11:22 am
Posts: 4

Let me start by saying a big thank you to all contributors and inspired patrons of these forums. Your questions, answers and creative aspirations have been the greatest aid & guide since I decided to delve into the "world of opensim" only a few weeks ago (& no this is not flattery, I just haven't lifted my head all this time from building and testing - newb enthusiasm).

First part of this is simple instructions on using FreeView (by CrystalShard Foo) that I got to work mostly by trial and error (it's video & note-card usage) since I couldn't find any thorough information around here or at the related Opensim wiki page that features it - naturally any or all of the below are available for any such purpose. Second part (at end of post) is a list of some Parcel media related inquiries I would appreciate your advice on.

Using FreeView

All references below are for FreeView 1.2 WebGuide (revision 3), as seen at:
(so I won't re post the code here)

  1. First in the About Land window Media tab choose a texture to use as Media Texture (as you would anyway). No need to add any URL here, the script will set those "on the fly" later.
  2. Create the prim to use as a monitor/screen, and drop the script in it's inventory (no need for any special texturing or anything here)
  3. Open the script and on line 24 replace ALL_SIDES with the number of the prim's face you want your media displayed on ( 1, 2, 3 or 4).
    integer DISPLAY_ON_SIDE = ALL_SIDES; //Change this to change where the image will be displayed
  4. If you'll be using it for a picture "auto slide-show" (Picture loop) you may wish to modify on line 22 the time for picture rotation
    integer PICTURE_ROTATION_TIMER = 60; //In whole seconds
  5. If you want to restrict usage of the scripts configuration menu to just the owner or group members then change FALSE on line 288 to TRUE
    if(llDetectedKey(0) != llGetOwner() && llDetectedGroup(0) == FALSE)

    Otherwise everyone will be able to change what it displays.
    Be sure to Reset the script after any changes made.

Ready to choose your media.

Use it with Video

  • Touch your prim (hmm that sounds kinky) and a menu will appear to choose the mode, select Video.
  • Select Set URL and it will inform you to chat a media url in channel 1, select OK and then do just that in local chat like below
give it a few seconds
Your media should be loaded on the face you selected on step 3 above - If a permission request appears select Allow - If you can't see it but you hear the sound you might need to rotate around the prim to locate the correct face.
Everytime you use the above method (Set URL) the script is actually setting the media url you type to current parcel media, and it's ok for setting up a single video.

Note: while video is being displayed the left click doesn't activate the menu, use right click and select Touch for it.

You can store multiple videos in a list and use the menu to navigate through them, by creating a note-card named bookmarks and copying it in the prims inventory along with the script. It must be in the following format:
title or description|media URL like below:
Sun Flight by Gerald McDermott|
Animation Remix|

Now from the menu (after selecting Video) you can use the Bookmarks button to navigate through the media on your list and choose Use to set as "active" (parcel media).

Video button particulars
Play, Stop function as expected. The Pause button works fine, but to resume playback I found I had to use the viewer's Play streaming media button - choosing Play from the menu restarts the video.
The loop button loops the currently set parcel media and I found that it works best if clicked when desired video is already set, but stopped.

Use it with Pictures/Images

Not much to say here, pretty straightforward, just add your images in the prims inventory (along script) click and choose Pictures from the menu.
Then you can Browse manualy through them or set an auto "slide show" with Loop.
Whatever you set for the pictures (single or looping) will be what others will see too - in contrast to the video setup that is partially dependent on the user's viewer streaming media preferences.

Additional Info

As left clicking on the face of the prim that is currently playing video doesn't brink up the menu (right click > Touch does) I tested clicking on other faces and they work fine, so if right clicking is not ideal to you, making these faces visibly available to a user might be another approach (Tapering came to mind, although somewhat crude).

You may add on line 159 additional file-type extensions (I have added to my copy mp4 and mv4)
if(ext == "mov" || ext == "avi" || ext == "mpg" || ext == "mpeg" || ext == "mp4" || ext == "m4v" || ext == "smil")

Another proposed security mod (by Ai Austin) was to allow only specific avatars menu control, by adding right after line 288 the code below with the avatar names you wish
if(llDetectedName(0) != "Avatar Name" && llDetectedName(0) != "Another Avatar")

The Help and TVGuide buttons do not lead to their supposed url targets for a good couple of years now (to the best of my knowledge).
TVGuide page used to be a categorized list of available streaming media urls, coded so that clicking on one could set it as parcel media straight into FreeView - unfortunately it got spammed to death.
The set Remote button (Video > Configuration) was needed only for the TVGuide funcionality mentioned above, specifically on group-deeded parcels, used in conjunction with a second prim containing the script below to enable group-deeded objects to use llLoadURL.
I haven't tested this part myself, and since the site isn't working seems somewhat irrelevent, but for completion's sake I thought I'd include it here.
//This script allow Group-Deeded FreeView to work on group deeded land.



integer CHANNEL = 9238742;
integer code = 0;

        llSetText("~FreeView Remote for Group land~\nConfigure me!\nClick the FreeView TV: Video -> Configure -> Set Remote",<1,1,1>,1);
    on_rez(integer i)

    listen(integer channel, string name, key id, string message)
        if(message == "SETUP" && code == 0)
            code = (integer)llFrand(2100000);
            llSay(0,"Done! Please keep me somewhere near your FreeView object. Additionaly, you can modify my shape and texture if you wish.");
        message = llBase64ToString(llXorBase64Strings(message, llStringToBase64((string)code)));
        integer length = llStringLength((string)code);
        if(llGetSubString(message,0,length - 1) != (string)code)

        message = llGetSubString(message,length,-1);

        if(llGetSubString(message,0,3) == "HELP")
            llLoadURL((key)llGetSubString(message,4,39),"The FreeView help pages.",""+llGetSubString(message,40,-1)+"&help=1");
            if(llStringLength(message) == 108)
                llLoadURL((key)llGetSubString(message,0,35), "Come to the Guide to Start Your Viewer Playing!", "" + (string)llGetKey() + "&c=" + llGetSubString(message,36,71) + "&o=" + llGetSubString(message,72,-1) + "&");
    dataserver(key queryid, string data)
        if(data!="" && data != NULL_KEY)
            llSetText("This land is not deeded to group.\nFeel free to delete me.",<1,1,1>,1);
            llSay(0,"You do not need to use this Remote because this land is not owned by group. (It is owned by: "+data+").");

tested using Opensim 0.73 - Imprudence 1.4.0b2 - Singularity 1.6 if interested

That's all for FreeView for now, hope it saves someone new sometime.
But that's not all with my...

Parcel media inquiries

Besides my personal fascination with Opensim, being a senior tutor in a small art & design college I can't help but to see the endless possibilities for educational & presentational purposes.
So I set forth to propose a plan for our designers community launch into the metaverse!
Step one is to get key people familiarized (and hooked) with the environment & possibilities, and thanks to the hassle-free portability of sim-on-a-stick (thx for that WhiteStar) this is going well.
Next step will be to setup a sim on college server for people to explore and test the system capabilities & potential, and finally hooking up to OSGrid for design exhibitions, cross-media group projects etc.

Now you can see why streaming (video, animations) is of such importance to me. So here are some questions and/or points open to clarification or advice.

  1. From what I understand only one media - being that video or web content (web page) - can be set as parcel media at any one time. But this can be "dynamically" changed by the use of a player such as Freeview.
  2. The streaming media is visible only by the avatar that chose to watch it (or listen to it, if streaming music). So no two avatars get synchronized viewing of the source.
  3. So in the case of a player script like the above, with it's menu publicly available, if I chose to watch a stream and someone else another we would be simultaneously watching different streams in our viewers? If so which of the two would be the parcel media initialy streaming for a third avatar that just logged-in?
  4. If I'm standing within a parcel with a certain video stream and can see a "media screen" of a neighboring parcel, which parcels video would it appear to be playing?
  5. Can synchronized viewing of the same source be achieved among many avatars? If so how? This would be really helpful for presentations happenings etc.
  6. Can a media stream (video or flash) play automatically so that its readily available on it's prim for every visiting avatar? even if Automatically play str media isn't checked in their preferences? (with a permission pop-up in this case to Allow)
  7. I tested putting Web Content (html) on a prim, in an effort to investigate possible work-arounds to the parcel media limitation. Preparing html pages with embedded media & even players (since clicking on their controls seems to be working w. Imprudence at least). Appropriate scaling of content seemed to be the main problem there, any thoughts on this approach?
  8. Since subdivision of land into parcels seems to be the way for multiple streaming media, are there things to consider or limitations to this approach? for example, number of parcels per size of region? or subdividing before or after builds on parcel borders? object ownership or script functionality effects?
  9. I understand that re-joining parcels is also possible. Does this involve any other considerations, as above?
  10. I thought that undivided regions are in their own right "different parcels", in the sense that they can each have different media streams. It seems that mega-regions though differ (discovered this on my sim-on-a-stick testdrives), is this normal? and should subdividing a mega-region for multi parcel media usage been thought of any differently than regular region subdivision?

Thanks all who take the time to correct, advise, comment or point to any direction for further investigation.

This is a place where dreams and reality touch, like avatars from juxtaposed realms.

Last edited by Cosmo Topper on Tue Mar 20, 2012 7:55 am, edited 1 time in total.

 Post subject: Re: FreeView - the missing manual & some parcel media inquiries
PostPosted: Tue Mar 20, 2012 3:27 am 
Hi thanks for attempting to convert insides of my old youtube TVs to freeview..however.....How do you 'easily' source the .mp4 urls from the archive site?.... I've tried the lefthand side links but just get a gray screen.

But your example urls work fine. Thanks Sarah

 Post subject: Re: FreeView - the missing manual & some parcel media inquiries
PostPosted: Tue Mar 20, 2012 7:43 am 
User avatar

Joined: Mon Mar 12, 2012 11:22 am
Posts: 4
Sarah hi, I haven't done anything special to use the archive mp4s.
Like you say, I myself used right click > Copy link location (firefox) on the MPEG4 links on the left hand side of the archive's video page.

I have noticed a delay (buffering?) on larger files, which you most probably already have taken into account, and also that when changing the bookmarks note-card contents its best to do so with freeview Powered off and then Reset the script.... Sorry if I'm again stating the obvious, but I can't think of anything else... especially since the above links work for you ok on that same "screen" as you say.

Touching upon the Youtube subject, I have come across a mod of freeview supporting YT videos but it's an old one based on using the long gone - from what I understand nowadays displaying web content on a prim is the only way to show YT video in-world, is this so?

... got a project in mind if it is, for a workaround ...

One other handy note on controlling displayed media I forgot to mention before is the Media helper widget (available in Imprudence 1.4, not sure about other versions or viewers), which when enabled in Preferences > Audio & Video, causes the "media prim" to zoom/center in screen when clicked & some useful controls to appear underneath.


You can even paly video backwards from the left arrow icon... well if need to.

This is a place where dreams and reality touch, like avatars from juxtaposed realms.

 Post subject: Re: FreeView - the missing manual & some parcel media inquiries
PostPosted: Wed Mar 21, 2012 9:47 am 
Thanks for that..yes i was trying a feature length film. Re YouTube...I think in SL makers of 'YouTube' TV's have a proxy or something set up on a server. Neb managed to set one up once at LBSA. You Tube using media on a prim good but I don't think it's a shared experience.

Display posts from previous:  Sort by  
Post a new topicPost a reply Page 1 of 1   [ 4 posts ]

Who is online

Users browsing this forum: No registered users and 3 guests

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
610nm Style by Daniel St. Jules of