Zen Cart Logo

Streaming Video Products

Views: 6,254

Results 1 to 20 of 25
19 May 2009, 4:09 PM
#1
ahillworks avatar

ahillworks

New Zenner

Join Date:
May 2009
Posts:
9
Plugin Contributions:
0

Streaming Video Products

Ok so I have searched but have not found a detail and simply answer to my issue. I have figured out how to stream swf videos as a product. My question is when a customer hits download and the video loads it does not have any buttons to stop, play, rewind ect... How can i get those options for a customer?

Thanks all the help is great.

19 May 2009, 5:21 PM
#2
kiddo avatar

kiddo

Totally Zenned

Join Date:
Jul 2006
Location:
SF Bay Area
Posts:
837
Plugin Contributions:
1

Re: Streaming Video Products

If you are simply providing the stream, wouldn't the customer have to choose what player to view it with?

Streaming video where you control the presentation and buttons usually means you also provide a custom flash player as well.

kinda like this:
http://www.laserdiscvault.com/index.php?main_page=page&id=63

Or maybe I misunderstand (happens a lot)

19 May 2009, 6:35 PM
#3
ahillworks avatar

ahillworks

New Zenner

Join Date:
May 2009
Posts:
9
Plugin Contributions:
0

Re: Streaming Video Products

Yeah I tend to leave things out sorry. Ok when my customer clicks on Download after purchase the page automaticly redirects to the redirect link for the swf file the customer wants to watch. The video then loads and plays but there is no play, stop, pause options. How do i correct this. All I am doing is loading the swf files to my downloads folder which has been moved to protect its contents.

19 May 2009, 6:53 PM
#4
kiddo avatar

kiddo

Totally Zenned

Join Date:
Jul 2006
Location:
SF Bay Area
Posts:
837
Plugin Contributions:
1

Re: Streaming Video Products

When a customer buys access to one of your movie clips, are they just supposed to be able to watch it online or are they supposed to download it to their computer to keep and play whenever?

19 May 2009, 6:56 PM
#5
ahillworks avatar

ahillworks

New Zenner

Join Date:
May 2009
Posts:
9
Plugin Contributions:
0

Re: Streaming Video Products

Just watch it via streaming. No download access to file. Only Watching. Thanks You for responding by the way.

26 May 2009, 7:32 AM
#6
pasi avatar

pasi

Zen Follower

Join Date:
Mar 2004
Location:
Finland
Posts:
435
Plugin Contributions:
1

Re: Streaming Video Products

I'm doing a site for a client now that wants to sell films in form of DVD and streaming video. I'm building an interface with a list of videos the customer has paid for (using the order database with order_status system to see which online films the customer has in it's collection).

So there will be a page with list of films, with a link to another custom page that implements a FLV player with secure streaming URL (done with a clever timestamp system, so that you can't download the film directly).

This will not use the zencarts way of handeling downloadable files etc, but a totally custom system.

31 May 2009, 9:47 PM
#7
dcprod avatar

dcprod

New Zenner

Join Date:
May 2009
Posts:
32
Plugin Contributions:
0

Re: Streaming Video Products

I'm a documentary filmmaker presently building a site that will, among other things, sell VOD of my content. As the site has the presentation components built in Flash Pro CS4 and I have done some research into on demand streaming servers I may be able to add some answers here but I also need to ask some questions.

First, some information about secure video streaming.

An FLVplayer component is added to a Flash document (page) with all the controls you wish it to have. It can either be hard-wired to a particular Flash video file (flv or f4v) or loaded by a variable in Actionscript 3. The document is compiled into a swf and then published within an HTML wrapper.

The Flash Video file resides on a Flash streaming server, your own or on a 3rd party site. (I played around with a demo account at Imediasee.com with excellent results - 960X540 30fps @ 1500mbps without dropped frames). The advantage of the Flash streaming server is that the video streams but never gets cached on the client machine which provides pretty good protection from it getting leeched.

To play the file one simply loads the HTML file (containing the SWF file, containing the FLVplayer) in your browser. Pushing the play button connects to the flv\f4v file on the streaming server the file begins to play. The FLVplayer controls can be as elaborate as you want - pause, stop, rewind, scrub, closed-captioned/subs, and full screen mode that with f4v's gets a hardware assist with just about any nVidia or ATI card made in the last 3 years.

So now my question:

I'm looking around for a shopping cart to integrate into my site. I've read a thread here where the author states he was able to point to an HTML file, with an integrated Flash player and play a Flash video residing in the same directory. That's not what I want to do as that file will be cached on the customers site. But if I do something very similar, point to the HTML file wrapping my swf, wrapping my FLVPlayer, and my FLV player points to a file on a remote Flash video streaming server it seems to me it should work in the exact same way without the vulnerability of local caching.

Can anyone hesitate a guess if my assumption might be correct? Before I install, test, and learn to configure Zen Cart I'd like to have a good idea.

Also, from my readings about Zen Cart it seems that downladable purchases are accessed from the client's accounts page. I suppose that and the time limit feature provide some protection against wide re-distribution but what I don't yet understand is how the link to the file is made unique so it can be made to time out.

Thanks, in advance for any informed answers.

David

1 Jun 2009, 11:58 PM
#8
dcprod avatar

dcprod

New Zenner

Join Date:
May 2009
Posts:
32
Plugin Contributions:
0

Re: Streaming Video Products

I found a tutorial that explains how the link is made unique by the Linux/unix "symlink" feature so that answers that question.

Anyone have an idea if my idea on streaming will work?

2 Jun 2009, 7:07 AM
#9
drbyte avatar

drbyte

Sensei

Join Date:
Jan 2004
Posts:
63,513
Plugin Contributions:
177

Re: Streaming Video Products

dcprod:

I've read a thread here where the author states he was able to point to an HTML file, with an integrated Flash player and play a Flash video residing in the same directory. That's not what I want to do as that file will be cached on the customers site. But if I do something very similar, point to the HTML file wrapping my swf, wrapping my FLVPlayer, and my FLV player points to a file on a remote Flash video streaming server it seems to me it should work in the exact same way without the vulnerability of local caching.

Can anyone hesitate a guess if my assumption might be correct?Yes, if the content is streamed from a different server and no caching takes place, then it would seem that your assumption is correct.
I'll admit though that I've never done exactly what you're asking about, so am not much help with the specifics.

2 Jun 2009, 12:18 PM
#10
dcprod avatar

dcprod

New Zenner

Join Date:
May 2009
Posts:
32
Plugin Contributions:
0

Re: Streaming Video Products

Thanks, I'll just have to give it a try. I'll install a local test of Zen Cart, build the shopping component, and proceed from there.

I guess that if it does work there's two ways it can be done:

  1. Hard wire a Flash player on an HTML page for each file that will be streamed. That would be simple but seems rather a waste of space.

  2. Code a passageway for a string variable (the name of the file to stream) from Zen Cart to a single HTML page with Flash player. I know there's I/O with swf files via XML and probably PHP but I haven't learned how to do that yet. And then how secure could that passageway be made to be? I've read that the HTML page can be made invisible by raising its directory level higher but what about the script that talks to it? Any opinion on that would be greatly appreciated.

5 Jun 2009, 7:07 PM
#11
dcprod avatar

dcprod

New Zenner

Join Date:
May 2009
Posts:
32
Plugin Contributions:
0

Re: Streaming Video Products

I've done some testing with a test Zen Cart on my local machine. I don't think what I'd like to do will work. The problem is the swf file that contains the address of the video file on the streaming server has to run on the local computer. In other words it's in the browser cache and its video file will always be accessible by grabbing and running the swf.....unless:

  1. server side coding is created on the streaming server that can talk to the Zen Cart and run a similar symlink stub system.

or

  1. the swf file only talks to the Zen Cart server that somehow securely tells it what to play and where to find it .

Is this reasoning incorrect? Is there something I'm not seeing?

5 Jun 2009, 7:40 PM
#12
drbyte avatar

drbyte

Sensei

Join Date:
Jan 2004
Posts:
63,513
Plugin Contributions:
177

Re: Streaming Video Products

That's a limitation of using HTML files as your delivery mechanism, yes.
Maybe serving content from a CDN or S3 server with limited-count-usage settings on them might be a workaround? You'll have to write custom code to put the files on the CDN server when needed, and set click/time-limits on the access, etc. A fair bit of custom coding involved for that.

5 Jun 2009, 8:46 PM
#13
dcprod avatar

dcprod

New Zenner

Join Date:
May 2009
Posts:
32
Plugin Contributions:
0

Re: Streaming Video Products

Dr. Byte:

Could there be another way of doing this?

If the swf file player Actionscript code gets the address of the file it's to play from a symlink that's generated by Zen Cart for each order it seems that might work if the symlink can be hidden or encrypted. I'm sure this would involve some php scripting to change the default symlink that Zen Cart generates for a downloadable file to an rtmp address pointing to the streaming server.

Possible? Relatively easy?

David

5 Jun 2009, 10:36 PM
#14
drbyte avatar

drbyte

Sensei

Join Date:
Jan 2004
Posts:
63,513
Plugin Contributions:
177

Re: Streaming Video Products

I suppose you could write a special php script to output XML that the actionscript reads after passing certain parameters to it or something (maybe it asks the customer to enter their customer email address and order number?), and then the actionscript does whatever it should based on whatever XML data is sent back from the custom PHP script?

6 Jun 2009, 12:37 AM
#15
dcprod avatar

dcprod

New Zenner

Join Date:
May 2009
Posts:
32
Plugin Contributions:
0

Re: Streaming Video Products

I think the flow would be:

Payment completed data received by Zen Cart from Payment service - say Paypal IPN.

Zen Cart elevates the status to Processing

php writes a symlink in XML

Actionscript in the swf file reads the symlink in the XML and passes the file location to the FLV player.

Couldn't be too hard :)

Anyone around here interested in getting VOD streaming going who is familiar with php and Actionscript3?

6 Jun 2009, 1:11 AM
#16
drbyte avatar

drbyte

Sensei

Join Date:
Jan 2004
Posts:
63,513
Plugin Contributions:
177

Re: Streaming Video Products

dcprod:

Payment completed data received by Zen Cart from Payment service - say Paypal IPN.

Zen Cart elevates the status to Processing
If you are intending on delivering products virtually and on-demand, I strongly recommend PayPal Express Checkout or Website Payments Pro, or a regular CC gateway.
Don't use PayPal IPN.
With Express or a gateway, the status is automatically set to Processing when payment is received, unlike IPN which has to wait for PayPal's servers to contact yours before your store even knows about the transaction.

6 Jun 2009, 1:18 AM
#17
dcprod avatar

dcprod

New Zenner

Join Date:
May 2009
Posts:
32
Plugin Contributions:
0

Re: Streaming Video Products

Thanks for that. Are there preferred CC Gateways that people here like?

6 Jun 2009, 2:33 AM
#18
drbyte avatar

drbyte

Sensei

Join Date:
Jan 2004
Posts:
63,513
Plugin Contributions:
177

Re: Streaming Video Products

I strongly recommend the Authorize.net offering on the Recommended Services page: http://www.zen-cart.com/index.php?main_page=infopages&pages_id=38
There are some other choices for other continents if you need something outside north america. See the Recommended Services link for more options.

9 Jun 2009, 7:45 PM
#19
dcprod avatar

dcprod

New Zenner

Join Date:
May 2009
Posts:
32
Plugin Contributions:
0

Re: Streaming Video Products

Here's the first stab at a program logic workflow for (relatively, I think) secure streaming from a Flash video streaming site. Any comments or suggestions are welcome.

The logic depends on a php component (new or adapted) that passes parameters to and from an Actionscript3 swf file that plays VOD documentaries off the remote Flash streaming server.

It depends for customer identification, to a certain extent, on the customers IP Address not changing during a viewing period (probably three days). It does however take into account the possibility that it will. This is only light security and can probably be improved.

I should add that, over and above my noobie knowledge of the server side, I don't program in php and my knowledge of Actionscript 3 is just above novice. So, if this logic is viable, I'll need to find someone who's proficient in both.

The logic begins after the customer has purchased the VOD item.

  • CASE 1 - Customer, or someone customer has given his login info to, is logged on to his Zen Cart Account
  • customer downloads HTML file that loads swf file from server
  • swf file sends request to server php file to confirm if customer:
  • is logged in,
  • view_number-time availability hasn't expired
  • present IP address matches purchase IP address
  • (The customer's IP address is very unlikely to have changed if he views the film immediately following a purchase. The possibily increases only later in the viewing period.)
  • php file checks login status, view_number-time availability and IP address match
  • If all three are confirmed php file sends encypted address of remote flv file (SSL?) to swf file which plays the video file
  • if view_number-time availability is false
  • swf file passes message to customer that viewing is expired
  • if login status and view_number-time availability is confirmed but IP address match is false (customer IP address has changed or customer has passed swf file to someone else )
  • swf file displays message that user is either not customer and should create their own own account or, if he is customer, to contact admin by pressing a contact button in the swf file.
  • If admin has flagged a php DEFINE = adminAvailability = "present"
  • contact button tells php script to tell swf file to create a form to send email to admin. Email includes a link to tell php file to reset previous IP Address to match new one and adjust a new number of views and time period available
  • (Possibly account registration could be expanded to include a chalenge response question - first pet, mother's maiden name, etc. - that's asked for in the email form.
  • If admin has flagged php file adminAvailability = "away"
  • contact button tells php script to reset previous IP Address to match new one.
  • swf file passes message to customer to go back and try again
  • CASE 2 - Customer pulls swf file from browser cache and he, or another party, runs it
  • as in CASE 1 swf file sends request to server php file to confirm if customer:
  • is logged in,
  • file-time availability = true
  • present IP address matches purchase IP address
  • php file checks login status, time-file availability and IP address match
  • login status is false
  • swf file passes message to customer to log in and play the video from his account
2 Jul 2009, 6:27 PM
#20
supersnow avatar

supersnow

Zen Follower

Join Date:
Apr 2007
Location:
California, USA
Posts:
233
Plugin Contributions:
0

Re: Streaming Video Products

Did you find someone to write the code for this streaming video content?