• 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.
MAINTENANCE ANNOUNCEMENT - JIRA will undergo maintenance starting 1:00am PDT through 3:00am on Saturday 2010.03.20. Please do not enter issues during this time as the system maybe restarted.
Issue Details (XML | Word | Printable)

Key: SNOW-301
Type: Bug Bug
Status: Resolved Resolved
Resolution: Fixed
Priority: Normal Normal
Assignee: Merov Linden
Reporter: Merov Linden
Votes: 1
Watchers: 4
Operations

If you were logged in you would be able to see more operations.
6. Second Life Snowglobe - SNOW

Update pluginapi code so to support newest API

Created: 14/Oct/09 06:00 PM   Updated: 08/Jan/10 08:41 PM
Component/s: None
Affects Version/s: Snowglobe 1.2
Fix Version/s: Snowglobe 1.3

Time Tracking:
Not Specified

File Attachments: 1. Text File SNOW-301-2.patch (41 kB)
2. Text File SNOW-301-3.patch (42 kB)
3. Text File SNOW-301-4.patch (22 kB)
4. Text File SNOW-301-5.patch (22 kB)
5. Text File SNOW-301-6.patch (20 kB)
6. Text File SNOW-301.patch (104 kB)

Environment: All
Issue Links:
Parent/Child
 

Patch attached: Patch attached


 Description  « Hide
Snowglobe 1.2 includes all the plugin-api changes however "Media on a prim" was not completely done in that branch and, therefore, doesn't work in Snowglobe 1.2.

That task is to track the merge of the most recent pluginapi work, in particular media on a prim, into Snowglone 1.3



 All   Comments   Work Log   Change History      Sort Order: Ascending order - Click to sort in descending order
Merov Linden added a comment - 14/Oct/09 06:02 PM
Note that SNOW-267 and SNOW-268 are fixes in Snowglobe 1.2 to prevent bugs introduced by the mid way state of Media on a prim in 1.2. The current task may have to undo those particular fixes.

Merov Linden added a comment - 30/Nov/09 04:20 PM
Changing the title as supporting media on a prim is hanging on way too many UI changes and that it also requires server changes. So, porting this to Snowglobe now will likely break lots and lots of existing content (not that we need to break things more!).

So, this task is now about updating the plugin host (SLPlugin) and plugins so to use the same API as viewer 2.0 (so that Snowglobe plugins will work with viewer 2.0 if anyone dare to make any...). At the same time, we should inherit of a bunch of bug fixes and better error detection.


Merov Linden added a comment - 01/Dec/09 03:32 PM
Things we get with the update:
  • new quicktime for Windows
  • new llqt libs
  • new example plugin
  • change in plugin API: map address passed as a string instead of a set of two 32 bits ints (so less sensitive to 64 bits issues)
  • better error reporting for all plugins: for instance, now makes the difference between a failure to load a plugin and a failure to load a media
  • better, less finicky timeout management
  • loads of picky improvements...

Merov Linden added a comment - 02/Dec/09 06:57 PM
Here's SNOW-301.patch
I'll be applying to my local Snowglobe trunks and testing on Windows and Mac. Would be great to have someone doing the same on Linux to give me a hand.

Merov Linden added a comment - 02/Dec/09 09:24 PM
Patch applies, builds and works fine on Mac.

Thickbrick Sleaford added a comment - 03/Dec/09 10:14 AM
Builds and seems to work ok on Linux (32 bit). Since there's a 64-bit related change in it, probably needs someone to test that too.

Merov Linden added a comment - 03/Dec/09 04:31 PM
Committed to trunk, svn rev 3048.

Merov Linden added a comment - 15/Dec/09 01:37 PM
Not quite done since the pluginapi code is still changing. I'll keep this record open for tracking as long as the media team will be making changes to its code (likely, for the entire 1.3 timeframe).

Merov Linden added a comment - 15/Dec/09 01:38 PM
Patch leveling up with code up to 12-14-09

Merov Linden added a comment - 29/Dec/09 04:02 PM
Attaching SNOW-301-3.patch: adding changes to llviewerparcelmedia.cpp

Merov Linden added a comment - 31/Dec/09 04:01 PM
Committed that last patch to Snowglobe trunk svn rev 3066

Thickbrick Sleaford added a comment - 01/Jan/10 09:46 AM
I did not test this with a standalone build (had unrelated trouble getting my standalone build to work...) but after r3066 I can't build a regular build with gcc 4.3.4

The error I'm getting is "deprecated conversion from string constant to 'gchar*'" in line 520 in indra/media_plugins/gstreamer010/llmediaimplgstreamervidplug.cpp.

By reverting this change, I was able to build again:
http://svn.secondlife.com/trac/linden/changeset/3066/projects/2009/snowglobe/trunk/indra/media_plugins/gstreamer010/CMakeLists.txt


Merov Linden added a comment - 04/Jan/10 03:22 PM
@Thickbrick: aagh! You're right. That change must be reverted. I reverted this in trunk svn rev 3068.

Merov Linden added a comment - 04/Jan/10 05:33 PM
svn rev 3069: backpedaling on install.xml changes (for SDL libs) that broke Windows and Mac builds (non standalone builds)

Merov Linden added a comment - 04/Jan/10 05:48 PM
SNOW-301-4.patch: latest in plugin changes. I tried using the latest libs for llqtwebkit (of course) but also a bunch of others, including boost, using 1.39 for all platforms. This should make easier to move to updated compilers and fix a couple of lingering issues. Unfortunately, I'm having problems on Windows so, if you apply the patch, you're warned!
I'm going to check on Mac. If someone could build on Linux and see, that'd be nice.

Merov Linden added a comment - 05/Jan/10 06:30 PM
Attaching SNOW-301-5 : modifying expat for Mac a bad idea... Mac works fine. Now have to find out why Windows doesn't...

Thickbrick Sleaford added a comment - 07/Jan/10 07:36 AM
I think the jira DB crash from yesterday ate the SNOW-301-6 patch, but I tested it on Linux, and it seems to work (tested land radio, land media (video, web) and Voice).

I think the updated openal-soft for Linux might solve some problems that PulseAudio users have been having (assuming it more recent than version 1.10 of openal-soft.) but I haven't tested with PulseAudio.

I didn't test a standalone build, though...


Merov Linden added a comment - 07/Jan/10 01:29 PM
Attaching SNOW-301-6.patch: last ditch at this and planning to commit asap following tests on Mac and Windows by me and Linux by Thickbrick.
Things done:
  • Plugin code:
    . cleaner timeout code for all plugins
    . webkit: default on all platforms now, cookies enabled, better cleanup
    . gstreamer: bunch of small fixes
  • 3rd party Libraries:
    . llqtwebkit: is not updated with that patch. Recent changes there are creating issues on Windows. After discussion with the media team, we decided to keep the mid November update which seems to work fine.
    . all others: tried to get on par for all libs on all platforms with the internal branches. See details in install.xml. Most important:
    . newer openal for Linux
    . boost for Mac and Linux: all platforms are now using 1.39 which should make supporting newer IDE easier

Merov Linden added a comment - 07/Jan/10 01:54 PM
SNOW-301-6.patch committed to Snowglobe trunk svn 3079.
No further update planned for Snowglobe 1.3 so I'm resolving this. Will open new records for breakage / bugs this may introduce.

Viktoria Dovgal added a comment - 08/Jan/10 06:58 AM - edited
From r3079, the new prebuilt versions of APR and Freetype for Darwin are built as i386 only so universal builds are borked. Is that an intentional change? The updated boost is OK.

Merov Linden added a comment - 08/Jan/10 08:41 PM
committed r3085
Viktoria is right: those libs are not universal and are indeed borking on the Mac build machines so I need to pedal back on those.