latest stable versions: v150827 (changelog)

Old Forums (READ-ONLY): The community now lives at WP Sharks™. If you have an s2Member® Pro question, please use our new Support System.

I Can't Configure RTMP

Home Forums Community Forum I Can't Configure RTMP

Tagged: , ,

This topic contains 13 replies, has 4 voices. Last updated by  Jason (Lead Developer) 3 years, 11 months ago.

Topic Author Topic
Posted: Tuesday Jan 8th, 2013 at 9:19 pm #36667

I had everything working on my previous site. We recently moved to AWS EC2 (bitnami wordpress AMI), and since JWP6, WP3.5 and the latest s2/pro, I can’t successfully stream rtmp.

  • server check = all pass
  • open ssl = check
  • allow_url_fopen = On
  • Configured s3/cloudfront with a new bucket
  • No plugins except s2/pro and Exec PHP
  • using JW PLayer 6 Sample Code

My Test embed
My Server Check

One Other Note = GZIP Exclusions could not be written, so I used the chmod 777 to allow s2 to write, and then the chmod 644 to revert back. After s2 added the exclusions, i got the “this file was not found on the server” error for all my pages except the home page, so i deleted the exlusions from the /wordpress/htdocs/.htaccess. Now i can visit my pages. I’m not sure if this is causing the RTMP problem…

Login to my site with Username: ********* Password: *********

  • This topic was modified 3 years, 12 months ago by  Cristián Lávaque. Reason: Remove login info

List Of Topic Replies

Viewing 13 replies - 1 through 13 (of 13 total)
Author Replies
Author Replies
Posted: Wednesday Jan 9th, 2013 at 4:47 pm #36801

Forgot to mention:

JW Player Error Message
Error Loading Stream: ID Not Found on Server
Download URL Works

I added a download link to the “video-test” page, and this delivers the video inline from the CloudFront download distribution just fine, so I know the problem isn’t due to to a faulty s3/cloudfront setup.

The only file in the bucket, “How-to-use-this-site.mp4” is not in a subdirectory, and since my JW Player 6 is in /jwplayer/, I didn’t change anything in the sample code except the file name.

  • This reply was modified 3 years, 12 months ago by  Addison Day.
Posted: Wednesday Jan 9th, 2013 at 11:03 pm #36824

Hi Addison.

I see that you aren’t using the sample JW code for streaming in s2Member, but a modified version trying to have a playlist. [hilite path]Dashboard -› s2Member® -› Download Options -› JW Player® & RTMP Protocol Examples -> RTMP streaming MP4, via s2Member's Amazon® S3/CloudFront integration[/hilite]

I’m not very familiar with JW Player to tell what’s wrong with your code. :/

Have you tried using Philly’s plugin for this? http://phillymax.com/web/s2member-video-shortcode/ :)

By the way, I removed the login info from your post, for security reasons. I suggest that you remove that account or, at least, change the password.

Posted: Thursday Jan 10th, 2013 at 12:48 pm #36868

I see that you aren’t using the sample JW code for streaming in s2Member, but a modified version trying to have a playlist.

Actually, I’m using the code sample exactly. I just copied it straight from the sample. I just checked and I didn’t copy it incorrectly…

Have you tried using Philly’s plugin for this?

Yes! its great, but only compatible with JW Player 5, and I can’t find a legacy download of JW Player 5 anywhere.

By the way, I removed the login info from your post, for security reasons. I suggest that you remove that account or, at least, change the password.

Thanks! Its just a test site. I have lots of them right now trying out new configs, so no worries.

Next Steps

Since my s2member download links are working, reconfiguring my s3/cloudfront integration won’t do anything. I checked my code against the sample – it matches. I don’t know what to do next. I guess I’ll just start from scratch with a new wordpress installation… :( I hope i can resolve this soon. This is the whole reason we are using s2member.

Posted: Saturday Jan 12th, 2013 at 5:12 am #37103
Staff Member

Thanks for the heads up on this thread :-)

@ Addison Day

Please take a look at this thread, and try adding the mp4: prefix please. Or a prefix for whatever type of file you’re serving. If you’re serving a webm file, use a webm: prefix.

See: http://www.s2member.com/forums/topic/cloudfront-subfolder-streaming-error/#post-35174

Please let us know if problems persist :-)

Posted: Saturday Jan 12th, 2013 at 8:48 pm #37193

Thanks for getting back to me, Jason.


Update

I prepended the string with the “MP4” extension as shown in this post. I used:

{type: "rtmp", file: "<?php echo $mp4["streamer"]; ?>/mp4:<?php echo $mp4["file"]; ?>"},

But alas, no change. I’m still getting the Error loading stream: ID not found on server error. I am still using the JW Player 6 code sample, as it appears in the s2Member download settings. I used:

<?php
// Configuration.
$s2_jw_config["jwplayer"] = "/jwplayer/"; // Relative URL path to JW Player files directory.
$s2_jw_config["mp4_video_file_name"] = "how-to-use-this-site.mp4"; // Name of your MP4 test file.
// Don't edit anything else below unless you know what you're doing.
?>

<div id="jw-container">JW Player® appears here.</div>
<script type="text/javascript" src="<?php echo $s2_jw_config["jwplayer"]; ?>jwplayer.js"></script>

<?php /* A direct URL to the RTMP source; counting the file against the current User in real-time. */
$cfg = array ("file_download" => $s2_jw_config["mp4_video_file_name"], "url_to_storage_source" => true, "count_against_user" => true); ?>

<?php /* API Function `s2member_file_download_url()` returns false if access is denied to the current User. */
if (($mp4 = s2member_file_download_url ($cfg, "get-streamer-array"))) { ?>

    <script type="text/javascript">
        jwplayer('jw-container').setup({
                playlist:
                    [{
                        sources: /* List all available sources. */
                            [
                                {type: "rtmp", file: "<?php echo $mp4["streamer"]; ?>/mp4:<?php echo $mp4["file"]; ?>"},
                                {type: 'mp4', file: '<?php echo $mp4["url"]; ?>'}
                            ]
                    }],
                primary: 'flash' /* Try Flash® RTMP first, fallback on HTML5 or direct download of MP4 file. */,
                width: 480, height: 270 /* Set video dimensions for all sources. */
            });
    </script>

<?php } else /* Access is denied to the current User. */ { ?>
    Sorry, you do NOT have access to this file.
<?php } ?>

Also,

  • MP4 file in bucket root, not in a subdirectory
  • Fresh WordPress install
  • Download link = success
  • This reply was modified 3 years, 12 months ago by  Addison Day.
  • This reply was modified 3 years, 12 months ago by  Addison Day.
Posted: Saturday Jan 12th, 2013 at 9:19 pm #37198

I found this on the JW Player Troubleshooting page:

Error loading stream: ID not found on server
This means the player successfully connected to your RTMP server, but the server failed to return the requested stream. Ensure your stream is indeed available at the correct location and any security mechanism (like Wowza securetoken or Cloudfront signing) is correctly set. If the stream is a live stream, ensure the encoder is connected and streaming video too.

Could this be related to new S3 or CloudFront versions security? When I set up my s2Member CloudFront integration I copied the contents of my CloudFront key pair’s [*.pem] file into the text field without the “—–BEGIN RSA PRIVATE KEY—–” and “—–END RSA PRIVATE KEY—–” parts. This method worked for me on my previous setup.

Posted: Sunday Jan 13th, 2013 at 4:45 am #37236
Staff Member

Thanks for the follow-up :-)

I’m continuing to investigate this. Thanks for your patience.

Could this be related to new S3 or CloudFront versions security? When I set up my s2Member CloudFront integration I copied the contents of my CloudFront key pair’s [*.pem] file into the text field without the “—–BEGIN RSA PRIVATE KEY—–” and “—–END RSA PRIVATE KEY—–” parts. This method worked for me on my previous setup.

No, that’s fine to do that.

QUESTION: Is the Amazon S3 Bucket (tied to your s2Member installation), or the CloudFront Distributions (tied to your s2Member installation), or any other part of your Amazon Console or API being accessed by another service or system? For instance, how do you access the Amazon S3/CloudFront Console when you’re working with your files? Do you use the Amazon website, or another software application? Do you have any other websites interacting with these files?

Posted: Sunday Jan 13th, 2013 at 6:13 pm #37312

We use the Transmit ftp program to upload, and the AWS console site to manage permissions, etc., but no other websites are using the files.

I’m currently experiencing this problem using a new bucket containing a single test file. I tried using my old bucket initially, but after experiencing this problem I created a fresh one, along with a fresh wordpress installation for testing purposes.

In regards to other AWS services, we use EC2 for hosting, and I have a separate S3 bucket and CloudFront distribution for CDN through W3 Total Cache, but the cache wasn’t setup when I first experienced this problem.

  • This reply was modified 3 years, 11 months ago by  Addison Day.
Posted: Monday Jan 14th, 2013 at 7:53 am #37350
Staff Member

Thanks for the follow-up :-)

I’m sorry. I’m out of ideas on this. I’ve been unable to reproduce this in our lab. If problems persist, please send me a Dashboard login, with a new test installation. An installation that has NO Amazon integration yet. This could be related to a server incompatibility, so if I investigate it this on your server, it might shed light on the issue here. Please send that privately. See: s2Member® » Private Contact Form

Something you can do as well. Please unzip and upload this file to your server and open it in a browser. This is a server scanning tool that we use here at s2Member, that will help detect any issues that s2Member might be having in your environment. Download: http://www.s2member.com/r/server-check-tool/

Posted: Monday Jan 14th, 2013 at 3:56 pm #37524
Staff Member

Details received. Thank you!

~ I will investigate this as soon as possible and get back with you here.

Posted: Monday Jan 14th, 2013 at 6:47 pm #37539
Staff Member

Thanks for your patience.

OK. I ran some tests against your WordPress installation. I also integrated your installation with two different S3 Buckets, 4 different CloudFront distributions. It’s not a server compatibility issue, because all my tests succeeded. I was able to stream & download audio/video content without issue, using s2Member from your server.

The only other thing I can suggest is that you enable logging on your S3 Buckets from the Amazon Console and hopefully something will pop up and shed light on this. Or, you might want to contact Amazon and see if they can provide you with any further specifics about why your requests are failing.

Is there anything abnormal about your own IP address during your tests? CloudFront signed URLs include your IP address, and if for some reason your IP address is not a match during playback, that could cause an issue I suppose.

Also… the reason I asked about other software accessing your Bucket/Distro at Amazon, is because Amazon has multiple versions of their API. I’ve been told that if a software application accesses your Bucket/Distro using a newer version of the API than s2Member uses, it could throw your Bucket/Distro out of compatibility mode, causing all sorts of strange issues for you. To test for this as a possibility, I would create a brand new Bucket, a brand new Access Key ID too, and test that against s2Member, just in case this has something to do with your problem.

s2Member uses AWS API version: 2010-11-01

Posted: Monday Jan 28th, 2013 at 5:09 pm #39805

Jason

You said -> “I also integrated your installation with two different S3 Buckets…”

How did you accomplish this ?

Did you just add the name multiple S3 buckets in the field provided ? Or is there something else I would have to do ?

I want to have 1 bucket for audio, one bucket for video, and another for zip files.

Would I enter 1bucket-audio, 1bucket-video, 1bucket-zip into the Amazon® S3/CDN Storage & Delivery section ?

Miles.

Posted: Thursday Jan 31st, 2013 at 6:48 am #40093
Staff Member

Thanks for the follow-up :-)

Would I enter 1bucket-audio, 1bucket-video, 1bucket-zip into the Amazon® S3/CDN Storage & Delivery section ?

I integrated with one Bucket, then re-integrated with another Bucket, as part of a test. s2Member® supports only ONE S3 Bucket at a time. It’s not possible to integrate multiple Buckets running simulataneously.

I suggest that you create sub-directories in your S3 Bucket.

/audio
/video
/zips
Viewing 13 replies - 1 through 13 (of 13 total)

This topic is closed to new replies. Topics with no replies for 2 weeks are closed automatically.

Old Forums (READ-ONLY): The community now lives at WP Sharks™. If you have an s2Member® Pro question, please use our new Support System.

Contacting s2Member: Please use our Support Center for bug reports, pre-sale questions & technical assistance.