NameDateSize

..16-Mar-201612 KiB

.gitignore29-Dec-2012258

ChangeLog10-Aug-20157.5 KiB

CMakeLists.txt12-Oct-201523 KiB

conf/12-Oct-20154 KiB

CONTRIBUTING29-Dec-2012428

CONTRIBUTORS29-Dec-20121.5 KiB

COPYING29-Dec-201234.3 KiB

COPYING.LESSER29-Dec-20127.5 KiB

debian/07-Apr-20154 KiB

docs/19-Apr-20124 KiB

Doxyfile29-Dec-201268 KiB

etc/19-Apr-20124 KiB

i18n/29-Dec-20124 KiB

media/29-Dec-20124 KiB

README10-Aug-20153.1 KiB

README.GRAPHICS29-Dec-20121.8 KiB

README.tests29-Dec-20121.4 KiB

README.win3229-Dec-20122 KiB

RELEASING29-Dec-20121.3 KiB

resources/27-Feb-20134 KiB

src/09-Dec-20154 KiB

TESTING29-Dec-20121.5 KiB

tests/07-Aug-20154 KiB

tools/24-Aug-20154 KiB

README

1Lightspark is an open source Flash player implementation for playing
2files in SWF format. Lightspark can run as a web browser plugin or as
3a standalone application.
4
5Lightspark supports SWF files written on the newest version of the
6ActionScript language, ActionScript 3.0, which was introduced at the
7same time as Flash player 9.
8
9INSTALLATION
10============
11
12To compile this software you need to install development packages for
13llvm (version 2.8 or >= 3.0), opengl, curl, zlib, libavcodec,
14libglew, pcre, librtmp, cairo, libboost-filesystem, 
15gtk-2, libjpeg, libavformat, pango, liblzma
16
17If sound is enabled (on by default), you will also need the
18development package for pulseaudio-libs and/or libsdl.
19
20Install also cmake, nasm and gcc (version 4.6.0 or newer) or clang
21
22To build the software please follow these steps.
23
241) cd lightspark
252) mkdir obj
263) cd obj
274) cmake -DCMAKE_BUILD_TYPE=Release ..
285) make
296) sudo make install
30
31DEBUG MODE:
32To enable debug mode change the cmake command like this:
334b) cmake -DCMAKE_BUILD_TYPE=Debug
34
35CMAKE_BUILD_TYPE available: Debug LeanDebug Release RelWithDebInfo Profile
36
37Sound support may be disabled using the following option:
38-DENABLE_SOUND=0 The audio backend can be set using
39-DAUDIO_BACKEND=<pulseaudio|sdl> (default is pulseaudio)
40
41EXECUTION
42=========
43
44Using `make install`, lightspark is installed in the system wide
45
46Browser plugin
47--------------
48
49Firefox plugin path and Firefox should show it in the about:plugins
50list and in the Tools->Add-ons->Plugins window.
51
52Lightspark registers itself as the plugin for
53application/x-shockwave-flash and for application/x-lightspark, so it
54should be recognisable in the about:plugins page. Its description
55string is "Shockwave Flash 12.1 r<current version>". The current
56version is now "r710".
57
58Firefox is not able to deal very well with multiple plugins for the
59same MIME type. If you only see a black box where a flash app should
60be try to remove any other flash plugin you have installed.
61
62Command line
63------------
64
65The command line version of Lightspark can play a local SWF file.
66Execution: lightspark file.swf
67
68Type `lightspark` to see all command line options.
69
70Keyboard shortcuts
71------------------
72
73Ctrl+Q Quit (standalone player only)
74Ctrl+M Mute/unmute sounds
75Ctrl+P Show profiling data
76Ctrl+C Copy an error to the clipboard (when Lightspark fails)
77
78SWF SUPPORT
79===========
80
81Many web sites do not yet work yet because the implementation is
82incomplete. See the following page for support status of selected web
83sites: https://github.com/lightspark/lightspark/wiki/Site-Support
84
85You may also try Lightspark on some known-to-work Youtube movies:
86
87http://www.youtube.com/watch?v=ca20NEt4VSQ
88http://www.youtube.com/watch?v=4N2YWRJ-ppo
89http://www.youtube.com/watch?v=XITHbsUUlYI
90http://www.youtube.com/watch?v=-j7c0u9yZ8M
91http://www.youtube.com/watch?v=G4S9tV8ZLcE
92
93http://www.youtube.com/watch?v=FatHLHG2uGY
94
95REPORTING BUGS
96==============
97
98If you think you have found a bug in Lightspark, please file a bug
99report at https://bugs.launchpad.net/lightspark. See
100https://github.com/lightspark/lightspark/wiki/Reporting-Bugs for help
101on reporting bugs.
102

README.GRAPHICS

1Overview of graphics pipeline
2-----------------------------
3Lightspark tries to be efficient on the rendering side using both caching and
4multi threaded rasterization.
5
6Most of the graphic assets come in vectorial form. Cairo is used to transform
7vectorial data in raster (bitmap format). PangoCairo is used for dynamic text.
8Rendered data is then transferred onto OpenGL textures using Pixel Buffer
9Objects (that hopefully are implemented using DMA). Textures are only loaded
10when an object changes, so static objects are always cached in VRAM.
11
12Pipeline for Stage:
131) When an object changes and needs to be redrawn it will call its
14DisplayObject::requestInvalidation method. The method needs an InvalidateQueue
15parameter and will add the object to such queue.
162) Invalidation requests are gathered together in the queue, but not executed
17until the currently handled event ends, to make sure we are rendering a
18consistent state.
193) At the end of the event all objects in the queue will have their ::invalidate
20method called. This method returns an instance of IDrawable or NULL is rendering
21is not necessary. It's important that the IDrawable instance contains a copy of
22all the needed object state since the object may change while the rendering
23happens. In the future Copy On Write could be useful to save the copy of data in
24some cases.
254) The returned IDrawable and a reference to the object itself will then be
26stored inside an AsyncDrawJob. The reference to the objects is necessary to make
27sure the CachedSurface of the object, which stores information about the OpenGL
28texture where the data must end, survives until the end of the rendering.
295) The AsyncDrawJob in added to the Thread Pool, to be executed. It will use
30IDrawable::getPixelBuffer to get the raw pixels and upload them to the GPU.
31

README.tests

1You can get the Flex 4 SDK at:
2http://opensource.adobe.com/wiki/display/flexsdk/Download+Flex+4
3
4Flex 4 SDK is assumed to be installed in $FLEX_ROOT
5
6To compile and run the test suite run:
7
8./tests
9
10Run "./tests --help" inside tests/ to see scripts usage.
11
12Compiling tests manually inside the tests/ directory:
13$FLEX_ROOT/bin/mxmlc -static-link-runtime-shared-libraries -compiler.omit-trace-statements=false test.mxml -output test.swf
14
15Creating new testcases
16----------------------
17
18Use template.mxml as a template for new testcases.
19
20We've provided a simple Tests class which should be used where
21possible to test general behaviour of AS classes. See Tests.as for its
22usage.
23
24Please use a naming scheme as follow:
25
26For toplevel classes: tests/CLASSNAME_test.mxml (CLASSNAME is the
27exact name of the class/function)
28
29For other classes: tests/NAMESPACE_CLASSNAME_test.mxml (NAMESPACE is
30for example "net" for "flash.net" classes/functions, e.g.:
31tests/net_NetStream_test.mxml)
32
33Please group all tests for one class in one file.
34
35Subdirectories
36--------------
37
38tests/other:
39
40Tests that aren't suitable for testing with the Tests class should be
41put in here. (e.g.: testing video playing, StageScaleMode testing
42etc...). The naming schemes still apply to these testcases though.
43
44tests/unimplemented:
45
46Tests for unimplemented features.
47
48tests/performance:
49
50Tests aimed at measuring runtime performance.
51

README.win32

1-- How to crosscompile lightspark win32 binaries on a linux box --
2(This is the only supported way to build win32 binaries)
3
4I assume that your currently one level above the directory
5'git', which contains the lightspark sources.
6
71. Apply this patch to your local cmake installation to fix a bug with .rc file handling:
8  http://public.kitware.com/Bug/file_download.php?file_id=4062&type=bug
9
102. Install MXE (M cross environment) by
11  1. git clone -b master https://github.com/mxe/mxe.git
12  2. cd mxe
13  3. Apply the patch from below to src/curl.mk
14  4. make gcc llvm glibmm gtk2 ffmpeg cairo pango boost libxml++ glew freetype curl librtmp
15     Note: You may want to add e.g. '-j4' to build four packages in parallel, or e.g. JOBS=3 to use three cpus per package.
16     Note: This may ask you to install additional packages. Do so using the package manager of your distribution.
17           For Ubuntu (oneiric), use 'apt-get install libtool yasm scons flex unzip wget')
18  5. cd ..
19
203. Build lightspark
21  1. mkdir mingw && cd mingw
22  2. cmake -DCMAKE_INSTALL_PREFIX=../mingw-build -DCMAKE_BUILD_TYPE=Debug -G'Unix Makefiles' -DCMAKE_TOOLCHAIN_FILE=../mxe/usr/i686-pc-mingw32/share/cmake/mxe-conf.cmake ../git
23  3. make package
24  4. cd ..
25
264. Run lightspark from 'mingw-build/lightspark'
27
28-------------------------------------------------------------------------------
29--- a/src/curl.mk
30+++ b/src/curl.mk
31@@ -7,7 +7,7 @@ $(PKG)_CHECKSUM := f6016a24051d98806ca3ddf754592701cb66e00c
32 $(PKG)_SUBDIR   := curl-$($(PKG)_VERSION)
33 $(PKG)_FILE     := curl-$($(PKG)_VERSION).tar.bz2
34 $(PKG)_URL      := http://curl.haxx.se/download/$($(PKG)_FILE)
35-$(PKG)_DEPS     := gcc gnutls libidn libssh2
36+$(PKG)_DEPS     := gcc gnutls libssh2
37 
38 define $(PKG)_UPDATE
39     wget -q -O- 'http://curl.haxx.se/download/?C=M;O=D' | \
40@@ -23,7 +23,7 @@ define $(PKG)_BUILD
41         --disable-shared \
42         --prefix='$(PREFIX)/$(TARGET)' \
43         --with-gnutls \
44-        --with-libidn \
45+        --without-libidn \
46         --enable-sspi \
47         --with-libssh2
48     $(MAKE) -C '$(1)' -j '$(JOBS)' install
49
50