Setting up your Flash development environment for Flowplayer development
Introduction
In this tutorial we will set up a Flowplayer Flash development environment. Flowplayer uses some "exotic" development tools that many Flash developers are not familiar with. For example, it uses Apache Ant for compilation and other build tasks. Here we will explain how to install all these tools and how to configure the build process. After reading this tutorial you should have all the required tools and libraries installed so that you can compile Flowplayer's plugins, and also compile the player itself.
Required software
We need to install following software in order to work on Flowplayer Flash plugins:
- Flex SDK
- Java Development Kit (JDK)
- Apache Ant
In addition to the these you will need a text editor or an IDE for editing ActionScript. Flowplayer does not force you to use any particular editor or IDE, you can choose your favorite. You can also use the Adobe Flash CS4 application for editing ActionScript, but that is not required. In fact, you will not find the typical .FLA files in any of the Flowplayer source packages because the compilation is done using the Flex SDK and Ant. Flash CS4 is not so good at editing ActionScript, but it's good when authoring animation and Flash graphics, and we recommend it for those tasks.
One popular editor for ActionScript 3 is the Flex Builder. It has rich ActionScript editing features and does a much better job at it when compared to Flash CS4. It is a commercial product, but free evaluation versions are available. Other good IDEs are FDT and Intellij IDEA that both have support for Flex/Flash.
Note that Flowplayer is not a Flex application. The Flex compiler is used in compilation, but none of the Flex components or Flex classes are used in Flowplayer. Flowplayer is a Flash application implemented in ActionScript 3.
We'll next install the required software packages starting with the Adobe Flex SDK. The Flex SDK is a free Flex and Flash development kit and it contains the compilers that are used to compile the player and plugins.
Flex SDK
You can download the Flex SDK from the Adobe's Flex site. The SDK is Open Source. After you have downloaded the zip file, unzip it to your desired location. You will later need to reference this installation location when you configure the Flowplayer build files. One good location for it is your home directory, on my Mac I have it installed in /users/api/flex_sdk_3 and on my Windows machine it's in E:\cygwin\home\Anssi\flex3sdk. (Note that in this tutorial I'm not working on Cygwin as the name of this Windows directory might suggest. I can however recommend Cygwin because it makes the command line experience in Windows much usable and efficient when compared to the standard Windows command prompt.)
Let's verify that we installed Flex correctly. Open the command prompt (or terminal) and execute the following commands. I'm typing this on my Windows machine and the following goes to the Command Prompt:
E:\>cd E:\cygwin\home\Anssi\flex3sdk\bin
E:\cygwin\home\Anssi\flex3sdk\bin>mxmlc
Adobe Flex Compiler (mxmlc)
Version 3.3.0 build 4852
Copyright (c) 2004-2007 Adobe Systems, Inc. All rights reserved.
mxmlc [options] [defaultVar]
Use 'mxmlc -help' for more information.
I changed the working directory to the bin subfolder contained in the Flex installation folder. In that directory I ran the Flex compiler mxmlc. If you see similar output, you can be assured that the installation was OK.
Java Development Kit (JDK)
We need a working Java Development Kit installation. You might already have it installed, and to verify this, type the following at your command prompt:
E:\cygwin\home\Anssi\flex3sdk\bin>javac -version
javac 1.6.0_13
javac: no source files
Usage: javac .... (rest of output omitted)
If you see similar output, the Java compiler has been found on your system. If not, you need to download and install it. The Java SE SDK is available here. Download the installation program and run it. After the installation is complete, verify the result by executing javac again at the command prompt. If javac is not found, you will need to add the JDK's bin folder to your Path (or PATH) environment variable. I have following included in my Path on Windows: E:\Program Files\Java\jre1.6.0_u13\bin.
Apache Ant
The third an final tool that we need is Apache Ant. Download the binary distribution and unzip it to your desired installation location. Next, add Ant to your Path (or PATH) environment variable, my Ant entry there reads E:\Program Files\apache-ant-1.7.1\bin. Next, verify the Ant installation by running:
C:\Documents and Settings\Anssi>ant -version
Apache Ant version 1.7.1 compiled on June 27 2008
If you see similar output from Ant, you have it installed correctly. If not, follow the Ant installation instructions here.
Compiling Flowplayer
Obtaining the source code
First, we will compile the Flowplayer player SWF. We need the player compiled as a library when developing plugins for it because the plugins are compiled against the flowplayer.swc library. If you don't want to compile the player itself, you can download the flowplayer.devkit package and use the library contained in it. Note that having the player sources available is beneficial when developing plugins because you can then quickly lookup the player sources to see how it interacts with the plugin you are developing.
We're going to place the player sources and plugin sources all under one workspace directory. A good place is, for example, a folder called flowplayer located in your home directory. This workspace directory will hold sub-directories for the player and for all the plugins you will be developing or working with:
- flowplayer.core (a directory for the player sources)
- flowplayer.devkit (a required module containing supporting build files)
- controls (a directory for the controlbar plugin)
- ... other plugins.
Next, you need to decide whether you want to work against the latest sources that are available in our Subversion repository. The other option is to download the source package and compile using the sources contained in it. To access the source repository, you will need a Subversion client installed on your machine. The IDEs mentioned above will include an integrated Subversion client. The player repository is hosted at Google code. To checkout the latest sources, run the following at your command prompt. Make sure you are in the flowplayer workspace directory when executing this:
> svn checkout http://flowplayer-core.googlecode.com/svn/flowplayer/trunk/ flowplayer.core
This command will checkout the trunk (the branch containing the latest sources) from the repository into flowplayer/flowplayer.core. Next, we need to checkout the flowplayer.devkit module that contains supporting build scripts that are needed to compile the plugins. It will also hold the flowplayer.swc library that gets built from the sources contained in flowplayer-core. To fetch the devkit from the plugins repository, run the following. Again, make sure you are in the flowplayer workspace directory when executing this:
> svn checkout http://flowplayer-plugins.googlecode.com/svn/flash/flowplayer.devkit/trunk/ flowplayer.devkit
Obtaining the common package
Some plugins including the controlbar and the Viral Videos plugin use a shared class library called common. In order to compile these plugins you should do a checkout to fetch it's sources.
Make sure you are in the flowplayer workspace directory when executing this so that the common directory will be placed next to the player and devkit directories.
> svn checkout http://flowplayer-plugins.googlecode.com/svn/flash/common/trunk/ common
Obtaining the controlbar plugin sources
To build the player we also need the controlbar plugin sources in our workspace directory. It's also possible to build the player without having the controlbar sources available but that needs some modifications to the flowplayer build.properties file.
Again make sure you are in the flowplayer workspace directory when executing this so that the plugin will be placed next to the player and devkit sources.
> svn checkout http://flowplayer-plugins.googlecode.com/svn/flash/controls/trunk/ controls
We will actually build the controlbar SWF but before going to that let's first configure and build the player.
Configuration
At this point, you should have a directory structure with flowplayer.core, flowplayer.devkit and controlslocated next to each other in the flowplayer workskpace directory. It's time to configure the build.properties files to point to our Flex SDK installation. Open up flowplayer.core/build.properties with your favorite editor. Edit the flex3dir property that is found in the beginning of the file so that it points to the location where you installed Flex SDK:
# you need to adjust the following to point to your Flex SDK
flex3dir=E:/cygwin/home/Anssi/flex3sdk
Next, check the devkit-dir property contained in the same file. Because we have the player and devkit directories both located in the same parent flowplayerdirectory, the default setting works and needs no modification. Also, the plugins.dir points to the parent directory where we are going to later place our plugin source code directories. As we are working on Windows, we need to also change the Flex executables to point to the Windows .exe files:
devkit-dir=../flowplayer.devkit
plugins.dir=../
# change the following to point to the .exe files when running on Windows
mxmlc_bin= /mxmlc.exe
compc_bin= /compc.exe
asdoc_bin= /asdoc.exe
These same properties are also defined for every plugin in the plugin specificbuild.properties file. To make it possible to build plugins individually make sure you have the paths set correctly there as well.
flowplayer.core/build.properties file contains references to different plugins so that it's possible to build all the various plugins into the player SWF. See this document for more information about building plugins and configuration into the palyer. Now we need to make sure that we don't reference any plugins that we don't have sources available in our workspace.
# this needs to point to the directory where we have the controlbar sources
controls-dir=../controls
plugin-classes=0/src/actionscript
# following needs to be commented out unless you want to build plugins as part of the main core build
# plugin.buildfiles=
# if you want to build the controls plugin and the content plugin as part of the core build,
# uncomment following
# plugin.buildfiles=controls/build.xml,content/build.xml
The final configuration is done to the flowplayer.devkit/plugin-build.properties file that is used when building plugins. Open it in your favorite editor and again change the flex3dir property to point to your Flex SDK directory and deploy_dir to point to the flowplayer.core directory:
# you need to adjust the following to point to your Flex SDK
flex3dir=E:/cygwin/home/Anssi/flex3sdk
# where the compiled plugins will be deployed (copied) to
deploy_dir=../flowplayer.core
Building the player
Now that we have configured the player for compilation, it's time to test how the compilation works. CD (change directory) to the flowplayer.core and execute ant at the command prompt:
> ant
Buildfile: build.xml
check-uptodate:
[echo] main up-to-date:
[echo] main up-to-date:
[echo] lib up-to-date:
.....
The compilation produces lots of output to the console, and when it finishes we should see the following:
compile:
[echo] Building binary flowplayer.swf
[exec] Loading configuration file /Users/api/flex_sdk_3/frameworks/flex-config.xml
[exec] /Users/api/flowplayer/flowplayer.core/build/flowplayer.swf (105993 bytes)
[copy] Copying 1 file to /Users/api/flowplayer/flowplayer.core/build
[echo] building example
[copy] Copying 1 file to /Users/api/flowplayer/flowplayer.core/build/example-free
[copy] Copying 2 files to /Users/api/flowplayer/flowplayer.core/build/example-free
BUILD SUCCESSFUL
Total time: 31 seconds
If you see "BUILD SUCCESSFUL", the build was successful and you have a working player located at flowplayer.core/build/flowplayer.swf. If you get "BUILD FAILED", something went wrong. It's possible that the repository trunk contains a broken build and the compilation is failing because of that. In that case, please send an email to support [at] flowplayer.org.
To build the commercial version, run ant build-biz. This resulting player is flowplayer.core/build/flowplayer.commercial.swf.
The previous build also generates an example HTML file located at flowplayer.core/build/example-free/index.html. You can open up that file in your Web browser. It will load our freshly compiled flowplayer.swf and open it up in the page. Because the player by default tries to load the controlbar plugin you will get the error "300: Player initialization failed: Error: 301: Unable to load plugin: Unable to load plugin flowplayer.controls-3.1.1.swf". Looks like it's the time to build the controlbar plugin to get rid of this error!
Compiling plugins
We have already checked out the controlbar plugin from the source repository. Now it's time to build that.
We don't need to do any configuration for the controls plugin build since it reads the build properties from flowplayer.devkit/plugin-build.properties that we edited previously. The next step is to build the controlbar plugin:
> cd flowplayer.controls
> ant
..
....
_deploy:
[echo] deploying plugin to ../flowplayer.core
[copy] Copying 1 file to /Users/api/flowplayer/flowplayer.core/build
[copy] Copying 1 file to /Users/api/flowplayer/flowplayer.core/build
[copy] Copying 1 file to /Users/api/flowplayer/flowplayer.core/dist
BUILD SUCCESSFUL
Total time: 0 seconds
As you can see from the last lines of Ant output, the build copied the flowplayer.controls.swf to flowplayer/flowplayer.core/build. This is where the example HTML file picks up the plugins and now we can again test by loading up flowplayer.core/build/example-free/index.html in the Web browser. This time you should see the player showing up correctly with the controlbar in its default location!
Developing your own plugin
The easiest approach for implementing your own plugins is to follow the same conventions and structure that is used by Flowplayer's "official" plugins, one of which is the controlbar plugin that we just compiled. These plugins all use the flowplayer.devkit/build.xml for compilation and other build tasks like building the distribution zip files. Your plugin can also include graphical assets that you design and create using the Adobe Flash CS application.
You should place your plugin in the same flowplayer workspace folder that already holds the flowplayer.core, flowplayer.devkit and flowplayer.controls folders that we have been working with in this tutorial. Let's take a look at the directory structure you should have in your plugin folder - this structure should be followed so that the devkit's Ant build file (build.xml) knows where to look for the different assets that are needed to build your plugin.
Directory structure
Here is the directory structure for plugins that use the flowplayer.devkit/build.xml for compilation and other build tasks:
| directory | description |
|---|---|
| src | The root folder for different types of source files. |
| src/actionscript | ActionScript source files. |
| src/flash | Flash precompiled libraries to be included in the library path when compiling. |
You can create the build.xml file for your plugin by taking the build.xml from the controlbar plugin and changing some of the property values defined in it. The properties that you need to change are all commented in the file shown below. Here are the relevant parts of the controlbar plugin's build.xml file:
<project name="Flowplayer controlbar" default="deploy">
<!-- The version number of our plugin, used in the zip and SWF file names -->
<property name="version" value="3.1.1" />
<!-- "basename" is the name of this plugin to be used in the SWF file name -->
<property name="basename" value="flowplayer.controls" />
<!-- The main class of our plugin. This is the main class provided to the mxmlc compiler -->
<property name="plugin-main-class" value="org/flowplayer/controls/Controls.as" />
<!--
library-path should be defined if our plugin contains precompiled
SWC files to be used in the compilation
-->
<property name="library-path" value="src/flash/default" />
<!-- Location of the devkit -->
<property name="devkit-dir" value="../flowplayer.devkit" />
<!--
Note that some properties and tasks that usually don't need any
modification were left out from this example.
-->
</project>
Comments:
thanks
thanks,
http://flowplayer-core.googlecode.com/svn/flowplayer/trunk/flowplayer.core
http://flowplayer-plugins.googlecode.com/svn/flash/flowplayer.devkit/trunk/flowplayer.devkit
http://flowplayer-plugins.googlecode.com/svn/flash/controls/trunk/controls
flowplayer.core -> checkouthttp://flowplayer-core.googlecode.com/svn/flowplayer/trunk/
flowplayer.devkit -> checkouthttp://flowplayer-plugins.googlecode.com/svn/flash/flowplayer.devkit/trunk/
controls -> checkouthttp://flowplayer-plugins.googlecode.com/svn/flash/controls/trunk/controls
Remember, when you are checking out plugins, you are getting all of them, which are under development, if you only want flowplayer.devkit, explore the directories under trunk folder, and choose to checkout "flowplayer.devkit".
You can explore directory structure using TortoiseSVN(Windows), and VisualSVN(MAC).
Hope this helps.
--
Chetan
http://riageeks.com
Posts: 1
Registered:
Feb 25, 2010
Are you looking for info about embeding flowplayer into Flash? Here is some info:http://flowplayer.org/forum/1/37338
var name_value:TextField;
var isLive_value:TextField;
Now, what I am trying to do is to hook up my vars with the Flowplayer onLoad action provided by model.Plugin class. This is where I'm stuck. As I said, it's nothing really fancy. I've tried including the flowplayer component and still nothing. Not even the import org.flowplayer.model.Plugin does not work.
What I am trying to do is this:
name_value.text = _player.getTime() (where _player is returned from the onLoad event in the class)
Please help me out on this one. I don't use a main class, its linear AS2 style coding :)
svn checkouthttp://flowplayer-plugins.googlecode.com/svn/flash/content/trunk/ content
svn checkouthttp://flowplayer-plugins.googlecode.com/svn/flash/common/trunk/ common
In "flowplayer.core/build.properties" comment out these unavailable plugins:
${plugins.dir}akamai/src/actionscript ${plugins.dir}rtmp/src/actionscript ${plugins.dir}pseudostreaming/src/actionscript
${plugins.dir}audio/src/actionscript ${plugins.dir}bwcheck/src/actionscript ${plugins.dir}cluster/src/actionscript
${plugins.dir}captions/src/actionscript ${plugins.dir}securestreaming/src/actionscript ${plugins.dir}smil/src/actionscript
ln -s /Applications/Adobe Flash Builder 4/sdks/3.5.0/ flexsdk
Then in flowplayer.core/build.properties and flowplayer.devkit/build.properties use:
flex3dir=../flexsdk
http://flowplayer-plugins.googlecode.com/svn/flash/viralvideos/trunk/ viralvideos
and it only compiled in windows by changing
mxmlc_bin= ${flex3bindir}/mxmlc to
mxmlc_bin= ${flex3bindir}/mxmlc.exe
instead of
mxmlc_bin= /mxmlc.exe
(and likewise for compc_bin & asdoc_bin)
and setting
plugin-classes=
instead of
plugin-classes=0/src/actionscript
C:flowplayerflowplayer.controls>ant
Buildfile: C:flowplayerflowplayer.controlsuild.xml
build:
[echo] ++ flowplayer.controls.swf +++
[echo]
prepare:
[mkdir] Created dir: C:flowplayerflowplayer.controlsexample
[mkdir] Created dir: C:flowplayerflowplayer.controlsuild
[mkdir] Created dir: C:flowplayerflowplayer.controlsdist
[copy] Copying 1 file to C:flowplayerflowplayer.controlsuild
[unzip] Expanding: C:flowplayerflowplayer.devkitflowplayer.swc into C:fl
owplayerflowplayer.controlsuild
compile:
[echo] compiling with src/flash/modern
[echo] compiling with -define=CONFIG::skin,'true' -define=CONFIG::hasSlowM
otion,'true'
[exec] Loading configuration file C:flexframeworksflex-config.xml
[exec] C:flowplayerflowplayer.controlssrcactionscriptorgflowplayerco
ntrolsscrubberScrubberController.as(148): col: 21 Error: Access of possibly un
defined property silent through a reference with static type org.flowplayer.view
:Flowplayer.
[exec]
[exec] _player.silent = false;
[exec] ^
[exec]
[exec] C:flowplayerflowplayer.controlssrcactionscriptorgflowplayerco
ntrolscontrollersToggleFullScreenButtonController.as(71): col: 73 Error: Acces
s of possibly undefined property useHWScaling through a reference with static ty
pe org.flowplayer.model:Clip.
[exec]
[exec] var shouldEnable:Boolean = clip && (clip.origina
lWidth > 0 || ! clip.useHWScaling) && _config.config.enabled;
[exec]
^
[exec]
[exec] C:flowplayerflowplayer.controlssrcactionscriptorgflowplayerco
ntrolsscrubberScrubberSlider.as(398): col: 25 Error: Access of possibly undefi
ned property silent through a reference with static type org.flowplayer.view:Flo
wplayer.
[exec]
[exec] _player.silent = true;
[exec] ^
[exec]
[exec] C:flowplayerflowplayer.controlssrcactionscriptorgflowplayerco
ntrolsscrubberScrubberSlider.as(400): col: 25 Error: Access of possibly undefi
ned property silent through a reference with static type org.flowplayer.view:Flo
wplayer.
[exec]
[exec] _player.silent = false;
[exec] ^
[exec]
[exec] C:flowplayerflowplayer.controlssrcactionscriptorgflowplayerco
ntrolsscrubberScrubberSlider.as(411): col: 25 Error: Access of possibly undefi
ned property silent through a reference with static type org.flowplayer.view:Flo
wplayer.
[exec]
[exec] _player.silent = true;
[exec] ^
[exec]
[exec] C:flowplayerflowplayer.controlssrcactionscriptorgflowplayerco
ntrolsscrubberScrubberSlider.as(415): col: 21 Error: Access of possibly undefi
ned property silent through a reference with static type org.flowplayer.view:Flo
wplayer.
[exec]
[exec] _player.silent = false;
[exec] ^
[exec]
[exec] C:flowplayerflowplayer.controlssrcactionscriptorgflowplayerco
ntrolsscrubberScrubberSlider.as(462): col: 21 Error: Access of possibly undefi
ned property silent through a reference with static type org.flowplayer.view:Flo
wplayer.
[exec]
[exec] _player.silent = true;
[exec] ^
[exec]
BUILD FAILED
C:flowplayerflowplayer.devkitplugin-build.xml:219: The following error occurr
ed while executing this line:
C:flowplayerflowplayer.devkitplugin-build.xml:32: The following error occurre
d while executing this line:
C:flowplayerflowplayer.devkitplugin-build.xml:210: The following error occurr
ed while executing this line:
C:flowplayerflowplayer.devkitplugin-build.xml:84: exec returned: 7
Total time: 9 seconds
Thank you,
Joshua Carpenter - Vudu
We're testing flowplayer as we'd like to use it on our production site. I am following the above instructions and got a Build Failed error (Buildfile: build.xml does not exist!) when I tried to build the player. Apache Ant, Flex and Java installations were successful. I used svn to checkout the controls and core files, downloaded the devkit and created directory structure, flowplayer/controls/trunk
flowplayer/flowplayer.core/trunk
flowplayer/flowplayer.devkit/(files)
I'd appreciate any advice on how to proceed next. Do I need to
svn checkouhttp://flowplayer-plugins.googlecode.com/svn/flash/content/trunk/ content
svn checkouhttp://flowplayer-plugins.googlecode.com/svn/flash/common/trunk/ common
http://flowplayer-plugins.googlecode.com/svn/flash/viralvideos/trunk/ If so, which directory should I download them to?
Thanks so much!
could you please tag all sources (core and plugins) at the time of release of Flowplayer and/or plugin and create KGS (known good set) of recommended versions for the particular Flowplayer version? (version list in player release notes is sufficient) I want to build custom flowplayer with included plugins but there are no SVN tags (latest is core:3_1_5 and audio:3.1.0). It may be difficult sometimes to build Flowplayer+Plugins from trunk because of API changes!
Thanks
I am getting an error while compiling pseudostreaming.swf. This is the error:
[echo] ++ flowplayer.pseudostreaming.swf +++
[echo]
prepare:
[unzip] Expanding: C:\_workspace_fdtFlowplayerflowplayer.devkitflowplayer.swc into C:\_workspace_fdtFlowplayerpseudostreaminguild
compile:
[echo] compiling with
[echo] compiling with
[exec] Loading configuration file C:flex_sdkframeworksflex-config.xml
[exec] C:\_workspace_fdtFlowplayerpseudostreamingsrcactionscriptorgflowplayerpseudostreaming
etByteRangeNetStream.as(78): col: 9 Error: Aufruf f?r eine m?glicherweise nicht definierte Methode appendBytesAction ?ber einen Verweis mit statischem Typ org.flowplayer.pseudostreaming.net:ByteRangeNetStream.
[exec] this.appendBytesAction(NetStreamAppendBytesAction.END_SEQUENCE);
[exec] ^
[exec] C:\_workspace_fdtFlowplayerpseudostreamingsrcactionscriptorgflowplayerpseudostreaming
etByteRangeNetStream.as(78): col: 27 Error: Zugriff auf eine nicht definierte Eigenschaft NetStreamAppendBytesAction.
[exec] this.appendBytesAction(NetStreamAppendBytesAction.END_SEQUENCE);
[exec] ^
[exec] C:\_workspace_fdtFlowplayerpseudostreamingsrcactionscriptorgflowplayerpseudostreaming
etByteRangeNetStream.as(170): col: 10 Error: Aufruf f?r eine m?glicherweise nicht definierte Methode appendBytesAction ?ber einen Verweis mit statischem Typ org.flowplayer.pseudostreaming.net:ByteRangeNetStream.
[exec] this.appendBytesAction(NetStreamAppendBytesAction.RESET_SEEK);
[exec] ^
[exec] C:\_workspace_fdtFlowplayerpseudostreamingsrcactionscriptorgflowplayerpseudostreaming
etByteRangeNetStream.as(170): col: 28 Error: Zugriff auf eine nicht definierte Eigenschaft NetStreamAppendBytesAction.
[exec] this.appendBytesAction(NetStreamAppendBytesAction.RESET_SEEK);
[exec] ^
[exec] C:\_workspace_fdtFlowplayerpseudostreamingsrcactionscriptorgflowplayerpseudostreaming
etByteRangeNetStream.as(173): col: 5 Error: Aufruf einer m?glicherweise undefinierten Methode appendBytes.
[exec] appendBytes(bytes);
[exec] ^
[exec] C:\_workspace_fdtFlowplayerpseudostreamingsrcactionscriptorgflowplayerpseudostreaming
etByteRangeNetStream.as(181): col: 10 Error: Aufruf f?r eine m?glicherweise nicht definierte Methode appendBytesAction ?ber einen Verweis mit statischem Typ org.flowplayer.pseudostreaming.net:ByteRangeNetStream.
[exec] this.appendBytesAction(NetStreamAppendBytesAction.END_SEQUENCE);
[exec] ^
[exec] C:\_workspace_fdtFlowplayerpseudostreamingsrcactionscriptorgflowplayerpseudostreaming
etByteRangeNetStream.as(181): col: 28 Error: Zugriff auf eine nicht definierte Eigenschaft NetStreamAppendBytesAction.
[exec] this.appendBytesAction(NetStreamAppendBytesAction.END_SEQUENCE);
[exec] ^
[exec] C:\_workspace_fdtFlowplayerpseudostreamingsrcactionscriptorgflowplayerpseudostreaming
etByteRangeNetStream.as(182): col: 10 Error: Aufruf f?r eine m?glicherweise nicht definierte Methode appendBytesAction ?ber einen Verweis mit statischem Typ org.flowplayer.pseudostreaming.net:ByteRangeNetStream.
[exec] this.appendBytesAction(NetStreamAppendBytesAction.RESET_BEGIN);
[exec] ^
[exec] C:\_workspace_fdtFlowplayerpseudostreamingsrcactionscriptorgflowplayerpseudostreaming
etByteRangeNetStream.as(182): col: 28 Error: Zugriff auf eine nicht definierte Eigenschaft NetStreamAppendBytesAction.
[exec] this.appendBytesAction(NetStreamAppendBytesAction.RESET_BEGIN);
[exec] ^
[exec] C:\_workspace_fdtFlowplayerpseudostreamingsrcactionscriptorgflowplayerpseudostreaming
etByteRangeNetStream.as(200): col: 9 Error: Aufruf f?r eine m?glicherweise nicht definierte Methode appendBytes ?ber einen Verweis mit statischem Typ org.flowplayer.pseudostreaming.net:ByteRangeNetStream.
[exec] this.appendBytes(bytes);
[exec] ^
[exec] C:\_workspace_fdtFlowplayerpseudostreamingsrcactionscriptorgflowplayerpseudostreaming
etByteRangeNetStream.as(12): col: 22 Error: Definition flash.net:NetStreamAppendBytesAction wurde nicht gefunden.
[exec] import flash.net.NetStreamAppendBytesAction;
[exec] ^
BUILD FAILED
C:\_workspace_fdtFlowplayerflowplayer.coreuild.xml:314: The following error occurred while executing this line:
C:\_workspace_fdtFlowplayerflowplayer.coreuild.xml:328: The following error occurred while executing this line:
C:\_workspace_fdtFlowplayerflowplayer.devkitplugin-build.xml:207: The following error occurred while executing this line:
C:\_workspace_fdtFlowplayerflowplayer.devkitplugin-build.xml:31: The following error occurred while executing this line:
C:\_workspace_fdtFlowplayerflowplayer.devkitplugin-build.xml:198: The following error occurred while executing this line:
Does anybody know what to do?
Cheers, elbjoern
I'm facing the same problem, I updated flex SDK to 4.1 already, but the problem persists. According to the ActionScript documentation, appendBytes function is available in Flash Player 10.1. See http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/net/NetStream.html#appendBytes()
How can I update my dev environment to compile pseudostreaming plugin, please? It is possible to update SDK to support Player 10.1 runtime ? Should I use Flex 4.1 nightly build ?
Thanks
I've" followed this thread as is but same problem persist with drupal 7. any help please.
flowplayer.core/build.xml:549: The following error occurred while executing this line:
flowplayer.core/build.xml:354:
jsplugins does not exist.
Im using flexsdk 4.5.1 and running it in Mac 10.6
Do I need to downgrade flexsdk4.5.1 to flex 3?
Thanks.
There is a svn director above the /src/flash called /src/javascript
Check out the trunks of those plugins in a called jsplugins in your plugins directory
and you be good to go.
I then had an issue with build.properties, having "deploy.dir" set to "(something) / hyde (something) .... changed it to my local webserver's flowplayer (where I'll be testing) and all good.
All in all pretty painless to get going, thanks to the VERY well-written and thorough doco here:http://flowplayer.org/documentation/developer/development-environment.html
this is the first time compiling the flowplayer by myself. I have done everything, which I have to do according to the tutorial, but I am still unable to build a working flowplayer swf.
The development environment should fine: (I am using Windows 7 64 bit, German)
Console output:
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. Alle Rechte vorbehalten.
C:UsersSInCE>ant -version
Apache Ant(TM) version 1.8.2 compiled on December 20 2010
C:UsersSInCE>javac -version
javac 1.7.0_01
C:UsersSInCE>cd flex3sdkin
C:UsersSInCEflex3sdkin>mxmlc
Adobe Flex Compiler (mxmlc)
Version 4.6.0 build 23201
Copyright (c) 2004-2011 Adobe Systems, Inc. Alle Rechte vorbehalten.
mxmlc [Optionen] [defaultVar]
So on, I checked out all needed folders as described in the tutorial, edited the build.properties at "flowplayer/flowplayer.core" and run ant:
Console Output:
C:UsersSInCEflowplayerflowplayer.core>ant
Buildfile: C:UsersSInCEflowplayerflowplayer.coreuild.xml
check-uptodate:
[echo] main up-to-date: ${uptodate.main}
[echo] main up-to-date: ${uptodate.commercial}
[echo] lib up-to-date: ${uptodate.lib}
build-lib:
prepare:
compile-lib:
[exec] Konfigurationsdatei C:UsersSInCEflex3sdkframeworksflex-config.x
ml wird geladen
[exec] C:UsersSInCEflowplayerflowplayer.coresrcactionscriptorgflowp
layerconfigConfigParser.as: Error: A reference with multiple name can't be unique resolved. JSON (aus C:UsersSInCEflex3sdkframeworkslibspl
ayer11.1playerglobal.swc(JSON, Walker)) and com.adobe.serialization.json:JSON
(aus C:UsersSInCEflowplayerflowplayer.corelibcorelibsrccomadobeseriali
zationjsonJSON.as) are available.
[exec]
[exec] C:UsersSInCEflowplayerflowplayer.coresrcactionscriptorgflowp
layerconfigConfigParser.as(35): column: 20 Error: Try to access an undefined property JSON.
[exec]
[exec] return JSON.decode(config);
[exec] ^
[exec]
[exec] C:UsersSInCEflowplayerflowplayer.coresrcactionscriptorgflowp
layerconfigConfigParser.as(40): column: 55 Error: Try to access an undefined property JSON.
[exec]
[exec] var configObj:Object = config is String ? JSON.decode(co
nfig as String) : config;
[exec] ^
[exec]
BUILD FAILED
C:UsersSInCEflowplayerflowplayer.coreuild.xml:235: The following error occ
urred while executing this line:
C:UsersSInCEflowplayerflowplayer.coreuild.xml:241: exec returned: 3
Total time: 3 seconds
Translations:
Because I am using a german windows version, I translated the error messages.
Anssi or anyone else:
Do you get the same error or something similar some time? Hopefully someone can help me! thx