1

我正在使用 OSMF 的Strobe Media Playback播放器尝试播放来自 AWS Cloudfront/S3 的文件

桶被称为ct.recorder。云端分发被称为1dm7svtk8jb00c.cloudfront.net,它的起源是ct.recorder

桶内的视频被称为vid_test001

我试过用rtmp://s34osaecrafusl.cloudfront.net/cfx/st/vid_test001

但这不起作用。

我明白了Connection attempt rejected by FMS server. Connection failed

最后我也试过了.flv,但这也不起作用。

我没有正确链接到文件,还是我的播放器?

4

2 回答 2

1

好吧,我写了一个完整的答案,推测它与存储桶权限有关,现在我正在抓挠那个答案并发布这个,而不是。:)

$ rtmpdump -r rtmp://s34osaecrafusl.cloudfront.net/cfx/st/vid_test001.flv -o testfile.flv
RTMPDump v2.4
(c) 2010 Andrej Stepanchuk, Howard Chu, The Flvstreamer Team; license: GPL
Connecting ...
WARNING: HandShake: client signature does not match!
INFO: Connected...
Starting download at: 0.000 kB
INFO: Metadata:
INFO:   duration              13.82
INFO:   videocodecid          2.00
INFO:   audiocodecid          6.00
INFO:   canSeekToEnd          FALSE
INFO:   createdby             AMS 5
INFO:   creationdate          Tue Dec 03 13:41:46 2013
1190.238 kB / 13.82 sec (100.0%)
Download complete

这实际上对我有用......无论最后是否带有 .flv,生成的文件是一个 7 秒的视频,其中一个人正在看网络摄像头。

使用 Windows 的“smplayer”,我可以使用 rtmp:// url 连接到 cloudfront 并流式传输视频,但它只能在没有.flv 的情况下工作,使用:

MPlayer Redxii-SVN-r36243-4.6.3 (C) 2000-2013 MPlayer Team
Custom build by Redxii, http://smplayer.sourceforge.net
Compiled against FFmpeg version N-52798-gf5846dc
Build date: Sun May  5 23:51:25 EDT 2013

这并不能完全回答您为什么它不起作用的问题,只是说您的播放器似乎在向您撒谎,因为“连接尝试被 FMS 服务器拒绝”,因为至少从这里开始,它很好,除了对于这部分,我不知道这意味着什么。

WARNING: HandShake: client signature does not match!

然而,这可能只是一种干扰。

看起来它会成为你的玩家……所以尝试其他玩家是值得的。

当然,有可能存在涉及您从您所在位置访问的云端特定边缘位置的区域性问题,这可能与我正在访问的位置有很大不同,因为它在地理上......但如果另一个玩家在你所在的地方工作,那么你可能会得到你正在寻找的答案。启动wireshark 并分析协议交换也可能是一个有趣的练习。


事后诸葛亮:路径中的额外斜线也可能让人大吃一惊,因为 RTMP url 显然由两个不同的组件组成,“应用程序”/“流名称”,并且在某种程度上,描述点对于链中的某些组件可能是模棱两可的. 如果云端认为“应用程序”是“cfx”并且流是“st/vid_test001”,但客户端假设“应用程序”是“cfx/st”,流名称为“vid_test001”,那么似乎可能存在一些互操作性的潜力麻烦在那里。这是疯狂的猜测,但也许也值得尝试。

于 2013-12-04T03:42:55.227 回答
0

嵌入参数urlIncludesFMSApplicationInstance需要设置为true.

于 2013-12-04T18:48:40.167 回答