From 35df5441d3e2789663532c948731aff3a1e04728 Mon Sep 17 00:00:00 2001
From: Armin Weatherwax
Date: Mon, 14 Jun 2010 12:04:49 +0200
Subject: llmediaplugins first step
---
linden/indra/newview/CMakeLists.txt | 100 +-
linden/indra/newview/app_settings/settings.xml | 35 +-
linden/indra/newview/chatbar_as_cmdline.cpp | 4 +-
linden/indra/newview/floatervoicelicense.cpp | 4 +-
linden/indra/newview/floatervoicelicense.h | 8 +-
linden/indra/newview/llagent.cpp | 6 +
linden/indra/newview/llappviewer.cpp | 20 +-
linden/indra/newview/llappviewerlinux.cpp | 2 +-
linden/indra/newview/llappviewermacosx.cpp | 4 +-
linden/indra/newview/llassetuploadresponders.cpp | 5 +-
linden/indra/newview/llaudiosourcevo.h | 2 +-
linden/indra/newview/llchatbar.cpp | 2 +-
linden/indra/newview/llcommandhandler.cpp | 6 +-
linden/indra/newview/llcommandhandler.h | 10 +-
linden/indra/newview/llfirstuse.cpp | 4 +-
linden/indra/newview/llfloaterabout.cpp | 27 +-
linden/indra/newview/llfloateravatarinfo.cpp | 2 +-
linden/indra/newview/llfloaterchat.cpp | 54 +-
linden/indra/newview/llfloaterchat.h | 2 +
linden/indra/newview/llfloaterclassified.cpp | 2 +-
linden/indra/newview/llfloaterevent.cpp | 2 +-
linden/indra/newview/llfloatergroupinfo.cpp | 2 +-
linden/indra/newview/llfloaterhandler.cpp | 4 +-
linden/indra/newview/llfloaterhandler.h | 2 +-
linden/indra/newview/llfloaterhtmlhelp.h | 90 --
linden/indra/newview/llfloaterhtmlsimple.cpp | 6 +-
linden/indra/newview/llfloaterhud.cpp | 4 +-
linden/indra/newview/llfloaterhud.h | 4 +-
linden/indra/newview/llfloaterland.cpp | 12 +
linden/indra/newview/llfloaterland.h | 3 +
linden/indra/newview/llfloatermediabrowser.cpp | 398 ++++++
linden/indra/newview/llfloatermediabrowser.h | 102 ++
linden/indra/newview/llfloaterobjectiminfo.cpp | 6 +-
linden/indra/newview/llfloaterparcel.cpp | 2 +-
linden/indra/newview/llfloaterpreference.cpp | 8 +-
linden/indra/newview/llfloatertos.cpp | 33 +-
linden/indra/newview/llfloatertos.h | 7 +-
linden/indra/newview/llfloaterurlentry.cpp | 2 +-
linden/indra/newview/llhoverview.cpp | 3 +-
linden/indra/newview/llhoverview.h | 3 +
linden/indra/newview/llhudview.cpp | 13 +-
linden/indra/newview/llhudview.h | 2 +-
linden/indra/newview/llimpanel.cpp | 2 +-
linden/indra/newview/llloginhandler.cpp | 2 +-
linden/indra/newview/llloginhandler.h | 2 +-
linden/indra/newview/llmediactrl.cpp | 1201 +++++++++++++++++
linden/indra/newview/llmediactrl.h | 201 +++
linden/indra/newview/llmediaremotectrl.cpp | 57 +-
linden/indra/newview/llmimetypes.cpp | 24 +
linden/indra/newview/llmimetypes.h | 6 +
linden/indra/newview/lloverlaybar.cpp | 17 +-
linden/indra/newview/llpanelaudioprefs.cpp | 4 +-
linden/indra/newview/llpanelavatar.cpp | 60 +-
linden/indra/newview/llpanelavatar.h | 16 +-
linden/indra/newview/llpanelclassified.cpp | 2 +-
linden/indra/newview/llpaneldebug.cpp | 2 +-
linden/indra/newview/llpaneldirfind.cpp | 42 +-
linden/indra/newview/llpaneldirfind.h | 15 +-
linden/indra/newview/llpaneldirgroups.cpp | 1 +
linden/indra/newview/llpanelface.cpp | 33 +-
linden/indra/newview/llpanellandaudio.cpp | 195 +++
linden/indra/newview/llpanellandaudio.h | 63 +
linden/indra/newview/llpanellandmedia.cpp | 292 ++--
linden/indra/newview/llpanellandmedia.h | 25 +-
linden/indra/newview/llpanellogin.cpp | 55 +-
linden/indra/newview/llpanellogin.h | 8 +-
linden/indra/newview/llpanelmediahud.cpp | 667 ++++++++++
linden/indra/newview/llpanelmediahud.h | 110 ++
linden/indra/newview/llpanelpermissions.cpp | 2 +-
linden/indra/newview/llpanelweb.cpp | 65 +-
linden/indra/newview/llprefsvoice.cpp | 4 +-
linden/indra/newview/llpreviewscript.cpp | 14 +-
linden/indra/newview/llpreviewsound.cpp | 2 +-
linden/indra/newview/llselectmgr.cpp | 11 +-
linden/indra/newview/llstartup.cpp | 37 +-
linden/indra/newview/llstatusbar.cpp | 2 +-
linden/indra/newview/lltoolcomp.cpp | 4 -
linden/indra/newview/lltoolcomp.h | 1 +
linden/indra/newview/lltoolgun.cpp | 7 +-
linden/indra/newview/lltoolgun.h | 2 +
linden/indra/newview/lltoolmgr.cpp | 14 +-
linden/indra/newview/lltoolmorph.cpp | 2 +-
linden/indra/newview/lltoolpie.cpp | 208 ++-
linden/indra/newview/lltoolpie.h | 1 +
linden/indra/newview/lltoolplacer.cpp | 2 +-
linden/indra/newview/llurldispatcher.cpp | 22 +-
linden/indra/newview/llurldispatcher.h | 6 +-
linden/indra/newview/llvieweraudio.cpp | 3 +-
linden/indra/newview/llviewercontrol.cpp | 19 +-
linden/indra/newview/llviewergesture.cpp | 2 +-
linden/indra/newview/llviewerimagelist.cpp | 2 +-
linden/indra/newview/llviewerkeyboard.cpp | 2 +-
linden/indra/newview/llviewermedia.cpp | 1390 +++++++++++++-------
linden/indra/newview/llviewermedia.h | 200 ++-
.../indra/newview/llviewermedia_streamingaudio.cpp | 169 +++
.../indra/newview/llviewermedia_streamingaudio.h | 69 +
linden/indra/newview/llviewermediafocus.cpp | 359 +++++
linden/indra/newview/llviewermediafocus.h | 91 ++
linden/indra/newview/llviewermediaobserver.h | 71 +
linden/indra/newview/llviewermenu.cpp | 34 +-
linden/indra/newview/llviewermenufile.cpp | 2 +-
linden/indra/newview/llviewermessage.cpp | 8 +-
linden/indra/newview/llviewerobject.cpp | 2 +-
linden/indra/newview/llviewerparcelmedia.cpp | 350 +++--
linden/indra/newview/llviewerparcelmedia.h | 31 +-
.../indra/newview/llviewerparcelmediaautoplay.cpp | 2 +-
linden/indra/newview/llviewerparcelmediaautoplay.h | 1 -
linden/indra/newview/llviewerparcelmgr.cpp | 80 +-
linden/indra/newview/llviewerparcelmgr.h | 5 +
linden/indra/newview/llviewerregion.cpp | 6 +-
linden/indra/newview/llviewertexteditor.cpp | 2 +-
linden/indra/newview/llviewerwindow.cpp | 58 +-
linden/indra/newview/llvoavatar.cpp | 17 +-
linden/indra/newview/llvovolume.cpp | 2 +-
linden/indra/newview/llweb.cpp | 2 +-
.../newview/mozilla-powerpc-darwin-readme.txt | 71 -
linden/indra/newview/pipeline.cpp | 2 +-
.../newview/skins/default/textures/textures.xml | 20 +-
.../skins/default/xui/en-us/floater_about_land.xml | 744 +++++++++--
.../default/xui/en-us/floater_media_browser.xml | 21 +-
.../newview/skins/default/xui/en-us/mime_types.xml | 456 -------
.../skins/default/xui/en-us/mime_types_linux.xml | 445 +++++++
.../skins/default/xui/en-us/mime_types_mac.xml | 445 +++++++
.../skins/default/xui/en-us/mime_types_windows.xml | 445 +++++++
.../newview/skins/default/xui/en-us/panel_bars.xml | 3 -
.../newview/skins/default/xui/en-us/panel_hud.xml | 4 +
.../skins/default/xui/en-us/panel_media_hud.xml | 68 +
linden/indra/newview/viewer_manifest.py | 126 +-
linden/indra/newview/viewer_manifest.py~ | 1176 +++++++++++++++++
129 files changed, 9523 insertions(+), 1997 deletions(-)
delete mode 100644 linden/indra/newview/llfloaterhtmlhelp.h
create mode 100644 linden/indra/newview/llfloatermediabrowser.cpp
create mode 100644 linden/indra/newview/llfloatermediabrowser.h
create mode 100644 linden/indra/newview/llmediactrl.cpp
create mode 100644 linden/indra/newview/llmediactrl.h
create mode 100644 linden/indra/newview/llpanellandaudio.cpp
create mode 100644 linden/indra/newview/llpanellandaudio.h
create mode 100644 linden/indra/newview/llpanelmediahud.cpp
create mode 100644 linden/indra/newview/llpanelmediahud.h
create mode 100644 linden/indra/newview/llviewermedia_streamingaudio.cpp
create mode 100644 linden/indra/newview/llviewermedia_streamingaudio.h
create mode 100644 linden/indra/newview/llviewermediafocus.cpp
create mode 100644 linden/indra/newview/llviewermediafocus.h
create mode 100644 linden/indra/newview/llviewermediaobserver.h
create mode 100644 linden/indra/newview/skins/default/xui/en-us/mime_types_linux.xml
create mode 100644 linden/indra/newview/skins/default/xui/en-us/mime_types_mac.xml
create mode 100644 linden/indra/newview/skins/default/xui/en-us/mime_types_windows.xml
create mode 100644 linden/indra/newview/skins/default/xui/en-us/panel_hud.xml
create mode 100644 linden/indra/newview/skins/default/xui/en-us/panel_media_hud.xml
create mode 100755 linden/indra/newview/viewer_manifest.py~
(limited to 'linden/indra/newview')
diff --git a/linden/indra/newview/CMakeLists.txt b/linden/indra/newview/CMakeLists.txt
index 1691095..15561d0 100644
--- a/linden/indra/newview/CMakeLists.txt
+++ b/linden/indra/newview/CMakeLists.txt
@@ -21,8 +21,8 @@ include(LLImage)
include(LLImageJ2COJ)
include(LLInventory)
include(LLMath)
-include(LLMedia)
include(LLMessage)
+include(LLPlugin)
include(LLPrimitive)
include(LLRender)
include(LLUI)
@@ -31,7 +31,6 @@ include(LLWindow)
include(LLXML)
include(LScript)
include(Linking)
-include(Mozlib)
include(NDOF)
include(GooglePerfTools)
include(TemplateCheck)
@@ -55,8 +54,8 @@ include_directories(
${LLIMAGE_INCLUDE_DIRS}
${LLINVENTORY_INCLUDE_DIRS}
${LLMATH_INCLUDE_DIRS}
- ${LLMEDIA_INCLUDE_DIRS}
${LLMESSAGE_INCLUDE_DIRS}
+ ${LLPLUGIN_INCLUDE_DIRS}
${LLPRIMITIVE_INCLUDE_DIRS}
${LLRENDER_INCLUDE_DIRS}
${LLUI_INCLUDE_DIRS}
@@ -65,7 +64,6 @@ include_directories(
${LLXML_INCLUDE_DIRS}
${LSCRIPT_INCLUDE_DIRS}
${LSCRIPT_INCLUDE_DIRS}/lscript_compile
- ${GSTREAMER_INCLUDE_DIRS}
)
set(viewer_SOURCE_FILES
@@ -185,9 +183,8 @@ set(viewer_SOURCE_FILES
llfloatergroups.cpp
llfloaterhandler.cpp
llfloaterhardwaresettings.cpp
- llfloaterhtml.cpp
llfloaterhtmlcurrency.cpp
- llfloaterhtmlhelp.cpp
+ llfloatermediabrowser.cpp
llfloaterhtmlsimple.cpp
llfloaterhud.cpp
llfloaterimagepreview.cpp
@@ -312,10 +309,12 @@ set(viewer_SOURCE_FILES
llpanelinput.cpp
llpanelinventory.cpp
llpanelland.cpp
+ llpanellandaudio.cpp
llpanellandmedia.cpp
llpanellandobjects.cpp
llpanellandoptions.cpp
llpanellogin.cpp
+ llpanelmediahud.cpp
llpanelmsgs.cpp
llpanelnetwork.cpp
llpanelobject.cpp
@@ -421,6 +420,8 @@ set(viewer_SOURCE_FILES
llviewerkeyboard.cpp
llviewerlayer.cpp
llviewermedia.cpp
+ llviewermediafocus.cpp
+ llviewermedia_streamingaudio.cpp
llviewermenu.cpp
llviewermenufile.cpp
llviewermessage.cpp
@@ -467,7 +468,7 @@ set(viewer_SOURCE_FILES
llwearable.cpp
llwearablelist.cpp
llweb.cpp
- llwebbrowserctrl.cpp
+ llmediactrl.cpp
llwindlightremotectrl.cpp
llwind.cpp
llwlanimator.cpp
@@ -630,9 +631,8 @@ set(viewer_HEADER_FILES
llfloatergroups.h
llfloaterhandler.h
llfloaterhardwaresettings.h
- llfloaterhtml.h
llfloaterhtmlcurrency.h
- llfloaterhtmlhelp.h
+ llfloatermediabrowser.h
llfloaterhtmlsimple.h
llfloaterhud.h
llfloaterimagepreview.h
@@ -756,11 +756,13 @@ set(viewer_HEADER_FILES
llpanelinput.h
llpanelinventory.h
llpanelland.h
+ llpanellandaudio.h
llpanellandmedia.h
llpanellandobjects.h
llpanellandoptions.h
llpanelLCD.h
llpanellogin.h
+ llpanelmediahud.h
llpanelmsgs.h
llpanelnetwork.h
llpanelobject.h
@@ -867,6 +869,8 @@ set(viewer_HEADER_FILES
llviewerkeyboard.h
llviewerlayer.h
llviewermedia.h
+ llviewermediaobserver.h
+ llviewermediafocus.h
llviewermenu.h
llviewermenufile.h
llviewermessage.h
@@ -915,7 +919,7 @@ set(viewer_HEADER_FILES
llwearable.h
llwearablelist.h
llweb.h
- llwebbrowserctrl.h
+ llmediactrl.h
llwind.h
llwindebug.h
llwindlightremotectrl.h
@@ -1118,6 +1122,7 @@ if (WINDOWS)
if (INTEL_MEMOPS_LIBRARY)
list(APPEND viewer_LIBRARIES ${INTEL_MEMOPS_LIBRARY})
endif (INTEL_MEMOPS_LIBRARY)
+ use_prebuilt_binary(dbghelp)
endif (WINDOWS)
# Add the xui files. This is handy for searching for xui elements
@@ -1134,6 +1139,8 @@ set(viewer_XUI_FILES
)
+list(APPEND viewer_XUI_FILES ${viewer_XUI_FILE_GLOB_LIST})
+list(SORT viewer_XUI_FILES)
list(APPEND viewer_XUI_FILES ${viewer_XUI_FILE_GLOB_LIST})
list(SORT viewer_XUI_FILES)
@@ -1169,6 +1176,7 @@ set(viewer_APPSETTINGS_FILES
${CMAKE_SOURCE_DIR}/../scripts/messages/message_template.msg
)
+
source_group("App Settings" FILES ${viewer_APPSETTINGS_FILES})
set_source_files_properties(${viewer_APPSETTINGS_FILES}
@@ -1326,6 +1334,9 @@ if (WINDOWS)
--touch=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/touched.bat
DEPENDS ${VIEWER_BINARY_NAME} ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
)
+
+ add_dependencies(${VIEWER_BINARY_NAME} SLPlugin media_plugin_quicktime media_plugin_webkit)
+
if (PACKAGE)
add_custom_target(package ALL DEPENDS ${CMAKE_CFG_INTDIR}/touched.bat)
add_dependencies(package windows-updater windows-crash-logger)
@@ -1338,8 +1349,8 @@ target_link_libraries(${VIEWER_BINARY_NAME}
${LLIMAGE_LIBRARIES}
${LLIMAGEJ2COJ_LIBRARIES}
${LLINVENTORY_LIBRARIES}
- ${LLMEDIA_LIBRARIES}
${LLMESSAGE_LIBRARIES}
+ ${LLPLUGIN_LIBRARIES}
${LLPRIMITIVE_LIBRARIES}
${LLRENDER_LIBRARIES}
${FREETYPE_LIBRARIES}
@@ -1361,7 +1372,6 @@ target_link_libraries(${VIEWER_BINARY_NAME}
${OPENGL_LIBRARIES}
${FMODWRAPPER_LIBRARY}
${OPENGL_LIBRARIES}
- ${MOZLIB_LIBRARIES}
${JSONCPP_LIBRARIES}
${SDL_LIBRARY}
${SMARTHEAP_LIBRARY}
@@ -1443,6 +1453,8 @@ if (DARWIN)
DEPENDS ${VIEWER_BINARY_NAME} ${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
)
+ add_dependencies(${VIEWER_BINARY_NAME} SLPlugin media_plugin_gstreamer010 media_plugin_webkit)
+
if (PACKAGE)
add_custom_target(package ALL DEPENDS ${VIEWER_BINARY_NAME})
add_dependencies(package mac-updater mac-crash-logger)
@@ -1461,6 +1473,8 @@ if (DARWIN)
--build=${CMAKE_CURRENT_BINARY_DIR}
--dest=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${product}.app
--touch=${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/.${product}.touched
+
+ add_dependencies(${VIEWER_BINARY_NAME} SLPlugin media_plugin_quicktime media_plugin_webkit)
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/viewer_manifest.py
)
@@ -1492,3 +1506,65 @@ if (INSTALL)
endif (INSTALL)
ADD_VIEWER_BUILD_TEST(llagentaccess viewer)
+
+# Don't do these for DARWIN or LINUX here -- they're taken care of by viewer_manifest.py
+if (WINDOWS)
+ get_target_property(BUILT_SLPLUGIN SLPlugin LOCATION)
+ add_custom_command(
+ TARGET ${VIEWER_BINARY_NAME} POST_BUILD
+ COMMAND ${CMAKE_COMMAND}
+ ARGS
+ -E
+ copy_if_different
+ ${BUILT_SLPLUGIN}
+ ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}
+ COMMENT "Copying SLPlugin executable to the runtime folder."
+ )
+
+ get_target_property(BUILT_WEBKIT_PLUGIN media_plugin_webkit LOCATION)
+ add_custom_command(
+ TARGET ${VIEWER_BINARY_NAME} POST_BUILD
+ COMMAND ${CMAKE_COMMAND}
+ ARGS
+ -E
+ copy_if_different
+ ${BUILT_WEBKIT_PLUGIN}
+ ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/llplugin
+ COMMENT "Copying WebKit Plugin to the runtime folder."
+ )
+
+ get_target_property(BUILT_QUICKTIME_PLUGIN media_plugin_quicktime LOCATION)
+ add_custom_command(
+ TARGET ${VIEWER_BINARY_NAME} POST_BUILD
+ COMMAND ${CMAKE_COMMAND}
+ ARGS
+ -E
+ copy_if_different
+ ${BUILT_QUICKTIME_PLUGIN}
+ ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/llplugin
+ COMMENT "Copying Quicktime Plugin to the runtime folder."
+ )
+
+ # Copying the mime_types.xml file to app_settings
+ set(mime_types_source "${CMAKE_SOURCE_DIR}/newview/skins/default/xui/en-us")
+ set(mime_types_dest "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/app_settings")
+ add_custom_command(
+ TARGET ${VIEWER_BINARY_NAME} POST_BUILD
+ COMMAND ${CMAKE_COMMAND}
+ ARGS
+ -E
+ copy_if_different
+ ${mime_types_source}/mime_types_windows.xml
+ ${mime_types_dest}/mime_types.xml
+ COMMENT "Copying mime_types_windows.xml to mime_types.xml."
+ )
+
+endif (WINDOWS)
+
+if (DARWIN)
+# Don't do this here -- it's taken care of by viewer_manifest.py
+# add_custom_command(TARGET ${VIEWER_BINARY_NAME} POST_BUILD
+# COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_SOURCE_DIR}/../libraries/universal-darwin/lib_release/libllqtwebkit.dylib ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/llplugin/
+# DEPENDS ${CMAKE_SOURCE_DIR}/../libraries/universal-darwin/lib_release/libllqtwebkit.dylib
+# )
+endif (DARWIN)
diff --git a/linden/indra/newview/app_settings/settings.xml b/linden/indra/newview/app_settings/settings.xml
index 0a27aa2..4d80845 100644
--- a/linden/indra/newview/app_settings/settings.xml
+++ b/linden/indra/newview/app_settings/settings.xml
@@ -7624,7 +7624,40 @@
Value
0
- MemoryLogFrequency
+ MediaControlFadeTime
+
+ MediaControlTimeout
+
+ MediaOnAPrimUI
+
+ MemoryLogFrequency
+ DebugPluginDisableTimeout
+
DebugShowColor
+
+
+ EnableTextureAtlas
+
+
+
EnableVoiceChat
+ RenderShadowSplitExponent
+
+ RenderShadowOrthoClipPlanes
+
+ RenderShadowProjOffset
+
+ RenderShadowSlopeThreshold
+
+ RenderShadowProjExponent
+
RenderSSAOScale
+
+ RenderGILightRadius
+
+
+ RenderGISamples
+
+
+ RenderGIRange
+
+
+
+ RenderGIDirectionWeight
+
+
+ RenderGILightOffset
+
+
+ RenderGIColorCurve
+
+
+ RenderLuminanceColorCurve
+
+
+ RenderGILuminanceColorCurve
+
+
+ RenderSunLuminanceColorCurve
+
+
+ RenderLuminanceDetail
+
+
+ RenderLuminanceFade
+
+
+ RenderGISpecularCurve
+
+
+ RenderGIIntensity
+
+
RenderDeferredAlphaSoften
- RenderDeferred
+ RenderDeferredSpotShadowBias
- RenderDeferredSunShadow
+ RenderDeferredSpotShadowOffset
+
+ RenderShadowBias
+
- RenderDeferredSunWash
+ RenderShadowOffset
- RenderShadowNoise
+
+ RenderShadowResolutionScale
- RenderShadowBlurSize
+
+
+
+ RenderDeferredTreeShadowBias
- RenderShadowBlurSamples
+ RenderDeferredTreeShadowOffset
- RenderDynamicLOD
-
- RenderFSAASamples
-