Jump to:
| Project: | SWF Tools |
| Version: | 6.x-3.0-beta4 |
| Component: | SWF Tools |
| Category: | feature request |
| Priority: | normal |
| Assigned: | Unassigned |
| Status: | postponed |
Issue Summary
We need flowplayer to do pseudostreaming for videos on our website. It was pretty easy to get a very basic non-Drupal test page to do this but we've hit a wall trying to figure out how to tell Flowplayer3 in SWF Tools to do it.
Here was my reference from Flowplayer for getting this started: http://www2.flowplayer.org/plugins/streaming/pseudostreaming.html
Here is what works in a simple html page on an isolated test server:
<script type="text/javascript" src="flowplayer-3.2.2.min.js"></script>
//the below portion is found within the html
<script>
flowplayer("player", "../flowplayer-3.2.2.swf", {
plugins: {
lighttpd: {
url: '../flowplayer.pseudo.swf'
},
},
clip: {
url: 'henson.mp4',
provider: 'lighttpd',
autoPlay: true
},
});
</script> We've looked at as many angles as we could, the most in depth of which was to tell SWF Tools to use the Pseudostreaming plugin by editing the "swftools_flowplayer3.module" in swftools\flowplayer3. It feels like this is closest we've gotten but still don't know if we're on the right track. I've attached the unmodified swftools_flowplayer3.module for reference.
Can it be done this way? Is there a better way to add this plugin? If I can offer more details to make the scenario or what we've tried more clear, let me know.
| Attachment | Size |
|---|---|
| swftools_flowplayer3.module.txt | 23.68 KB |
Comments
#1
Where you able to find a solution working with SWF Tools?
#2
Subscribed
#3
subscribing
#4
Setting priority to normal as part of issue queue tidy up. Changing to feature request as I think this reflects the issue better. Setting to postponed as I won't start on this before the next SWF Tools 6 release, but will give it some thought for SWF Tools 7.
I've not really investigated pseudo-streaming with Flowplayer yet so I will need to give this some thought, and do some tests!
#5
I managed to figure this out! What you need to do is configure your server to allow pseudostreaming first. We did it using the apache module described here: http://tperspective.blogspot.com/2009/02/apache-flv-streaming-done-right...
I was serving flv's, so I had to make sure that my flv had keyframes in it using flvtool2 -u filename.flv
After that, you need to change the flowplayer.module
FROM
$settings = array('flowplayerSwf' => drupal_get_path('module', 'flowplayer') .'/flowplayer/flowplayer.swf',
);
TO
$settings = array('flowplayerSwf' => drupal_get_path('module', 'flowplayer') .'/flowplayer/flowplayer-3.2.7.swf',
);
make sure you download and copy flowplayer-3.2.7.swf to sites/all/modules/flowplayer/flowplayer-3.2.7.swf
Also change
if ($flowplayer_added === FALSE) {// Add the FlowPlayer JavaScript and CSS to the page.
drupal_add_js(drupal_get_path('module', 'flowplayer') .'/flowplayer/flowplayer.min.js');
TO
if ($flowplayer_added === FALSE) {// Add the FlowPlayer JavaScript and CSS to the page.
drupal_add_js(drupal_get_path('module', 'flowplayer') .'/flowplayer/flowplayer-3.2.6.min.js');
And then finally:
$config = array(
'clip' => array(
'url' => $config,
'provider'=>'pseudo'
),
'plugins'=>array(
'pseudo'=>array(
'url'=> '/sites/all/modules/flowplayer/flowplayer.pseudostreaming-3.2.7.swf'
)
)
);
and make sure you have flowplayer.pseudostreaming-3.2.7.swf in /sites/all/modules/flowplayer/
That seamed to work for me!