• All submissions to this site are governed by Second Life Project Contribution Agreement. By submitting patches and other information using this site, you acknowledge that you have read, understood, and agreed to those terms.
Issue Details (XML | Word | Printable)

Key: SVC-1764
Type: Bug Bug
Status: Closed Closed
Resolution: Fixed
Priority: Critical Critical
Assignee: Qarl Linden
Reporter: anthony reisman
Votes: 8
Watchers: 3
Operations

If you were logged in you would be able to see more operations.
2. Second Life Service - SVC

Setting parcel media for a single agent is broken with new media functionality

Created: 06/Mar/08 06:36 PM   Updated: 19/Mar/08 10:14 AM
Return to search
Component/s: Scripts
Affects Version/s: 1.19.0 Server
Fix Version/s: None

File Attachments: 1. Text File 81763.patch (2 kB)

Environment: with RC 1.19.1

Linden Lab Issue ID: DEV-11622
Linden Lab Internal Branch: Branch_1-19-1-Viewer


 Description  « Hide
At first everything seemed to work properly.
I have several objects that set media for a single agent using the llParcelMediaCommandList function.

When I first loaded 1.19.1, I was able to play media just fine through these objects (they have also been thoroughly tested in previous SL versions)

I then tested several parts of the new media functionality, loading a web page, and then showing an image.

I then tried to show a YouTube page, which showed a page, but without the Youtube (since the system uses an older version of flash)

Then I tried to load media through all of the previously working objects.

Thinking that I had somehow screwed up either the quicktime or SL system. I tried the following:
Restarted Quicktime: no effect
Restarted SL: No effect
Restarted my PC: no effect
Then SL restarted the region I was in (I had also tried other regions): Still couldn't get video to play using the same old commands.

I have also tried it with the following simple script (which must be deeded and you must set the texture key on something), but it didn't work either. I did notice that the first attempt after restarting SL would cause the media texture to momentarily flash gray and then switch back to the texture.

default
{
state_entry()

{ llSay(0, "Hello, Avatar!"); }

touch_start(integer total_number)

{ llParcelMediaCommandList([PARCEL_MEDIA_COMMAND_URL, "http://physics.nku.edu/movies/buggy1.mpg", PARCEL_MEDIA_COMMAND_TEXTURE, "b694513a-cb6b-e8ce-c529-b473e0afe9f4", PARCEL_MEDIA_COMMAND_AUTO_ALIGN,TRUE, PARCEL_MEDIA_COMMAND_PLAY, PARCEL_MEDIA_COMMAND_LOOP ] ); //llParcelMediaCommandList([PARCEL_MEDIA_COMMAND_URL, "http://physics.nku.edu/movies/buggy1.mpg", // PARCEL_MEDIA_COMMAND_TEXTURE, "16adf85f-cbc1-5961-0afc-0ed92c5f718e", // PARCEL_MEDIA_COMMAND_AUTO_ALIGN,TRUE, // PARCEL_MEDIA_COMMAND_PLAY, // PARCEL_MEDIA_COMMAND_LOOP, // PARCEL_MEDIA_COMMAND_AGENT,"798164f6-aea8-4e8e-a8e9-80ec0c51f272"] ); }

}

Also, I started up the Officially released 1.19.0.5 and used the same objects and tests, and everything worked perfectly fine. It was only when using the new RC 1.19.1

Clearing browser cache in preferences, also did not help.
Reinstalling RC1.19.1 over an existing install did not help.
Deleting everything in the RC directory and then installing again, also did help.

The commented part of the code is to test the llParcelMediaCommandList with setting it for a single agent.



 All   Comments   Change History      Sort Order: Ascending order - Click to sort in descending order
Echo Seigo added a comment - 06/Mar/08 07:32 PM
Yeah I'm getting the same thing, it appears PARCEL_MEDIA_COMMAND_AGENT does not work with the new RC.

Gwyneth Llewelyn added a comment - 06/Mar/08 07:33 PM
Lots of people will be very unhappy if PARCEL_MEDIA_COMMAND_AGENT is deprecated

Yes, I know it can be used for malicious harvesting of IP addresses (targetting unsuspecting avatars and 'forcing' their SL clients to load a remote script that records the IP address of the request), but still, it has lots of legitimate uses, and it would be simple to add a dialogue box warning the user that they are being targetted by PARCEL_MEDIA_COMMAND_AGENT, instead of removing this useful feature that has lots of practical and legitimate uses!


Unmitigated Gall added a comment - 06/Mar/08 08:24 PM
Yes, I am freaking out here about this as well.. I have just completed a large contract with several schools in SecondLife that absolutely relies on this functioning. Also in Prior versions the Media Control would change to 'PLAYING' when the Per Agent command was activated, then to stop the media the person simply clicked on the STOP MEDIA button, but now, in both the 1.19.05 it has to be touched twice to stop the media and never changes when the Per Agent Call is started. Media has always been confusing to noobies, please dont let this Release Candidate go live until these issue are addressed.

Thank You!!


Temporal Mitra added a comment - 06/Mar/08 09:50 PM
I am one of the creators of the Temporal Industries Media dvd system...this system has been marketed inworld for several months, and is a unique video system.

The TIM system allows multiple residents to see different video streams on the same player, at the same time, without there being a URL posted to the media tab of the parcel settings. We do this by streaming the video directly to each viewing residents individual SL viewer. This allows multiple streams to be viewed on a single parcel within the grid. The new video implementation in the SL Release candidate 1.19.1 breaks the TIM DVD system. Using the release candidate viewer, the system stops working entirely.

I am unable to post code here in a public forum, because the methodology that we use to do the streaming is proprietary, and I not willing to release any part of it to the public. Our players may be viewed by Lindens responding to this BUG report by going to http://slurl.com/secondlife/Semoshi/177/201/110 , which is the roof of our store location in world, where we have a large scale movie screen in place, so that a linden may do testing. Should a Linden need code examples, and can assure us of confidentiality, please contact Temporal Mitra or Bopete Yossarian in world.


Bopete Yossarian added a comment - 06/Mar/08 09:53 PM - edited
I have tested the RC1.19.1 with our current systems and indeed they no longer work while using this client. We are also developing new systems that will use similar technology, so are very anxious to see this resolved quickly.

anthony reisman added a comment - 07/Mar/08 06:01 AM
As far as reproducing the issue. Using the LSL included in the issue should be enough to see and troubleshoot the problem.

We also have many products that are highly dependent on this functionality as we have been making use of this capability for over a year.


Soft Linden added a comment - 07/Mar/08 06:24 AM
Yike - this would break the MST3K theater's movie sync too, I believe.

I'm fast-tracking this import for the parcel media guys to look at.


Qarl Linden added a comment - 07/Mar/08 09:49 AM
hey Anthony -

i'm having trouble reproducing your problem - let me ask you a question:

after you play around with your media settings via the GUI - did you make sure to set the mime-type back to quicktime?

if it's still set to html, and you try to load a quicktime movie, you'll get exactly that behavior.

if you don't want to set the media type by hand, you'll want to change your script to include PARCEL_MEDIA_COMMAND_TYPE with the parameter "video/quicktime". (see the lsl_guide.html included with the viewer for more info.)

K.

PS: yes, PARCEL_MEDIA_COMMAND_AGENT is still working (as far as i know.)


Qarl Linden added a comment - 07/Mar/08 10:34 AM
aha Anthony - i believe i found the bug.

the PARCEL_MEDIA_COMMAND_LOOP is no longer supported (it's a state variable now, not a command.) and currently it's overriding the PLAY command. i'll fix that, sorry for the trouble.


Temporal Mitra added a comment - 07/Mar/08 10:43 AM
Qarl,

When will the fix be put in place so that we who are having issues with our systems will be able to test?

Temporal Mitra


Qarl Linden added a comment - 07/Mar/08 10:46 AM
Temporal - it will go into the next RC. i believe we usually release RCs on a weekly basis.

Echo Seigo added a comment - 07/Mar/08 11:21 AM
Qarl,

With 1.19.1 PARCEL_MEDIA_COMMAND_AGENT does not appear to be working. This example does not work, unless you remove the PARCEL_MEDIA_COMMAND_AGENT.

default
{

touch_start(integer total_number)

{ llParcelMediaCommandList([PARCEL_MEDIA_COMMAND_URL, "http://www.yahoo.com", PARCEL_MEDIA_COMMAND_TYPE, "text/html", PARCEL_MEDIA_COMMAND_PLAY, PARCEL_MEDIA_COMMAND_AGENT,llGetOwner() ] ); }

}


anthony reisman added a comment - 07/Mar/08 01:14 PM
Qarl,
Thanks for the quick response. I did not specifically set PARCEL_MEDIA_COMMAND_TYPE in the LSL. I have been looking for what parameters are allowed, but can't find them. The lsl_guide.html only lists what parameters are allowed for llParcelMediaCommandList. Is there a list of supported mime/types allowed?

I did try setting the about Land to Video and No Content during testing. Neither of these seemed to help.

I also had tried without PARCEL_MEDIA_COMMAND_LOOP since most of my products play very short smil or teXml pages so they don't need to be looped and those didn't work either.

I will try again with specifing the mime/type for video/quicktime without the loop and see if it works as needed.


Qarl Linden added a comment - 07/Mar/08 01:46 PM
hey Anthony - i located the bug in COMMAND_AGENT processing - and tested with Temporal. it seems to be fixed now.

test with our next RC client, and if it's still broken for you, let me know ASAP.


anthony reisman added a comment - 07/Mar/08 03:00 PM
Ok, is there a possible patch? I was thinking of having my first whack and building the client viewer myself this weekend. If not. I will test as soon as the next RC is available.

Thanks a ton for jumping on and resolving this so quick!

I don't care what others say, you guys ROCK!


Soft Linden added a comment - 07/Mar/08 03:10 PM
@anthony - I'm attaching Qarl's fix as an attachment on this issue. This is governed by the same license as the files it patches.

Bopete Yossarian added a comment - 07/Mar/08 06:27 PM
Thanks bunches to Qarl & Soft and anyone else involved for dealing with this so quickly!

anthony reisman added a comment - 08/Mar/08 10:45 AM
Also, Qarl mentioned that PARCEL_MEDIA_COMMAND_LOOP is going away?

If so, what process should we be using? Is there a new Query type to check if the video is playing?


Unmitigated Gall added a comment - 08/Mar/08 05:52 PM
Fantastic work all....

anthony reisman added a comment - 10/Mar/08 07:14 AM
Unfortunately, I wasn't able to get the client viewer to build I'll be posting to SLDev for some help, but I'll test the fix in the next RC if I'm not able to resolve my build issues.

anthony reisman added a comment - 13/Mar/08 07:52 PM
The portion of playing video directed by PARCEL_MEDIA_COMMAND_AGENT is now fixed, but a new bug has cropped up.
See SVC-1832

Squeebee Wakawaka added a comment - 13/Mar/08 07:54 PM
Hi Qarl;

Squeebee of the MST3K Theater here. I think the true issue has been missed, or that there is a related one.

Please note that errors I encountered have to do with using certain videos with http:// served video instead of rtsp://

One of my videos has a URL of http://slcn.tv/media/shop_wakatech_25feb08.mp4

My regular video scripts will not play it, but will play my rtsp:// hosted streams.

I resolved this by changing my parcel media command to add:

PARCEL_MEDIA_COMMAND_TYPE, "video/*"

If I had to guess, I would say that things with http:// in the URL are being defaulted to text/html. This is bad if it is the case. To retain backwards compatability I strongly recommend that the default for any URL be video/* and let the devs creating new stuff explicitly call text/html as the type.

Just to be clear, my code with the issue listed above used PARCEL_MEDIA_COMMAND_PLAY, not LOOP so this is not a loop related issue.


Qarl Linden added a comment - 14/Mar/08 09:26 AM
hey Squeebee -

the default behavior - when no mime-type is specified, is to use the parcel's current mime-type setting - which in-turn defauits to quicktime.

BUT - if you've changed your parcel's mime-type setting (by, say, playing with webpages) then you'll see that this is the new default.

so the take-away here is: old scripts will continue to work if you leave the mime-type set to quicktime - but if you change it - you must change it back before the old scripts will work again.

i think that's a good behavior - but perhaps no?


Squeebee Wakawaka added a comment - 18/Mar/08 09:06 PM
Qarl I never changed the mime type on my parcels and I am seeing the broken behavior I described. The idea is sound but I'm not observing it.

Qarl Linden added a comment - 19/Mar/08 10:14 AM
Squeebee - i'm having trouble reproducing your bug. (i do notice that your webserver for the above URL isn't specifying a mime-type in the header, but i can't see why that should be borking things.)

i used the following script on a parcel where the mime-type was set (via the GUI) to "video/*"

default
{

touch_start(integer total_number)

{ llParcelMediaCommandList([PARCEL_MEDIA_COMMAND_URL, "http://slcn.tv/media/shop_wakatech_25feb08.mp4", PARCEL_MEDIA_COMMAND_PLAY, PARCEL_MEDIA_COMMAND_AGENT,llDetectedKey(0) ] ); }

}