Streaming Videos

I am new to Zenphoto and apologize if this has been discussed, but I am interested if I can stream a video.

Comments

  • acrylian Administrator, Developer
    Those two threads are quite old. We have currently two video player plugins on board. Both use adapted flash based video players which are capable of streaming. Additionally you can also use Quicktime if the visitors computer has that installed.

    However the plugins are not set up for real streaming from a server. Instead they just load a video for display in the background which is there default behaviour. If you need real streaming you have to visit those player websites and modify the plugins.
  • "If you need real streaming you have to visit those player websites and modify the plugins."

    Well I've been looking into that as I need live streaming to happen within Flowplayer, ideally appearing as an option (on/off) for each gallery entry.

    For Flowplayer there exists a RTMP plugin, which is available both as SWF and source. The relevant (example) JavaScript for configuring it is below.
    This JS needs to be injected from flowplayer.php, so that the parameters of the RTMP stream are exposed in the interface; however the task is above my current understanding of both PHP and ZenPhoto's internals.

    Any ideas how to move forward from here?
    Should I make this a feature request?
    --------------------------------------------------------------
    $f("live", "http://releases.flowplayer.org/swf/flowplayer-3.2.6.swf", {

    clip: {
    url: 'my_lifecast',
    live: true,
    // configure clip to use influxis as our provider, it uses our rtmp plugin
    provider: 'influxis'
    },

    // streaming plugins are configured under the plugins node
    plugins: {

    // here is our rtpm plugin configuration
    influxis: {
    url: 'flowplayer.rtmp-3.2.3.swf',

    // netConnectionUrl defines where the streams are found
    netConnectionUrl: 'rtmp://cyzy7r959.rtmphost.com/flowplayer'
    }
    }
    });
  • acrylian Administrator, Developer
    Sorry, Zenphoto cannot manage content from other sites and is not meant to do this:
    http://www.zenphoto.org/2009/03/troubleshooting-zenphoto/#17

    This means you have to create a really special plugin or feature. A feature request will not help as I won't be able to test this anyway.

    There is a workaround to use Youtube or other services' videos though:
    http://www.zenphoto.org/2009/03/troubleshooting-zenphoto/#38
    Maybe that helps you to find a way to achieve your wanted functionality.
  • Hi, I already have videos playing on my site at http://radikal.ro
    (mp4s), hosted locally.
    This feature (live streaming) would not actually use storage from a third party, but connect to a RTMP streaming server. Youtube is not that.
    All the pieces are available, except a means of injecting the appropriate JS in the HTML generated for a specific gallery entry (video extensions).

    I don't mean to argue with you, but I know it can be done within the current framework. I will put up a static page outside of Zenphoto as a stop gap, and I will look into integrating it myself as time and skill allow. I already have a private branch out of an older build so what the heck.
  • acrylian Administrator, Developer
    I am not arguing actually. I also know what streaming is and that Youtube is actually not even real streaming. Streaming you get the videos from this streaming server and therefore externally, right?

    Of course it can surely be done somehow but neither "out of the box" nor "easy" because Zenphoto is meant to manage locally stored files.

    The example of the Youtube trick was just to show you a way to maybe store the external urls so you can actually manage (sorting, adding descriptions etc) them via Zenphoto.

    You probably will have to write a additional plugin that treats these external ones like a kind of "streaming format" so Zenphoto can work with them. Look maybe at the text-object plugin that is used for the mentioned youtube trick as a template for such a plugin.
  • externally yes, but not from storage. There is no storage. It's an RTMP URL (rtmp://...) and a stream descriptor. What I pointed out in my first post (but not explicitely) is that an extension to Flowplayer that does just that already exists (here):
    http://flowplayer.org/plugins/streaming/rtmp.html

    this plugin needs configuration in JS, and that should be parametrised per gallery item.
  • acrylian Administrator, Developer
    Yes, but the actual file that is streamed is on that server, right? Or does it really take the file on your server and streams that via another server? That would probably not be really effective.

    As said Zenphoto itself does not work with content on other servers, be they statically or streamed. I doubt that just adding the flowplayer extension will help. Since it is a Zenphoto plugin you need to tell it via Zenphoto what to play, which means a kind of pseudoformat for streaming files. Otherwise you can just use a static page and hardcode the streams. Might be easier.

    Anyway, I admit I have not experience with streaming servers like RTMP at all. If you find a solution we gladly add it to our extensions section.
  • I can hard code a static page but then I would lose the Facebook integration; I want a lot I know.
    Live streaming is really live, like in live TV.
    Content is streamed out of a live encoder (in my case Wirecast) and uplinked (NOT uploaded) to a streaming server(Like Adobe FME, Wowza, Red5) tipically hosted at a CDN. The streaming server "reflects" the uplinked stream to clients, which in the case of RTMP are Flash players.

    This is where Flowplayer and its RTMP plugin come in; as per the JS snippet in my first post in this thread, it needs to be told the rtmp:// URL and stream descriptor.

    My proposed solution is adding a dummy extension (e.g. *.rtmp) to the list of extensions the Flowplayer plugin intercepts, and storing the Live parameters in the database. This will produce a proxy (fake) entry in the gallery/local storage that other plugins can refer to (I care about the ZenFBsuite at the moment).

    I know I'm bending zenPhoto into shape to suit my needs, so I understand if you won't take on such development; it was proper form to ask, since you are the author of the plugin. Currently my installation uses a private branch (with zp-core hacks) out of the [5736] build. If I keep hacking away on that build I doubt my additions will ever make it back to the mainline.
    I'm decent at hacking something quickly but have no deep understanding of ZenPhoto's architecture (and I'm working on pre 1.4 code, so I'm behind the mainline anyway). On top of that I'm in the business of TV/video production, so zenPhoto was just a technology choice for my site.

    Not sure how to go forward, as I would like to stay reasonably in sync with the mainline.
  • acrylian Administrator, Developer
    I have no problem with your question but as you said I can't actively help with this. I could not even test it as I don't have access to these servers nor do I have use for them. I tried to help giving ideas as much as I could. I am all in in using Zenphoto creatively.

    You really should never hack the Zenphoto core. We have lots of ways to do customziations via plugins or theme based functions. This is what you have to do here as well.
    My proposed solution is adding a dummy extension (e.g. *.rtmp) to the list of extensions the Flowplayer plugin intercepts, and storing the Live parameters in the database.

    Yes, that is why I pointed you to the Youtube trick with the text-object plugin. That plugin is an example to make Zenphoto accept other file formats (html and txt in this case) even if it can't process them like images. Just adding the rtmp "format" to the Flowplayer plugin will not make Zenphoto accept it!
Sign In or Register to comment.