使用Blackberry模拟器进行视频流传输

3
所以,我写了一个快速的iPhone应用程序,可以输入一个http URL,并播放该URL中的.mp4视频。当然,它做的不仅仅是这个,但这是其主要功能。自然地,我希望它不仅在单一的移动平台上运行,所以我决定下一个目标是BlackBerry。
然而,我在BlackBerry环境中遇到了很多问题。首先,我发现我只能下载256k的文件!我学习如何在我的MDS模拟器中设置该变量,我了解到这不是一个生产解决方案,因为任何最终用户都必须让他们的BES或MDS管理员更改那里的设置。然后,我找到了一个小于2 MB的视频可以进行练习。进入浏览器时,提示我保存视频,而不是像我预期的那样在浏览器中播放。保存视频后,它拒绝播放,说它是错误的格式。
所以。我找不到关于BlackBerry是否可以使用HTTP流的参考资料。我听说它可以使用RTSP,但也听说它不能使用HTTP,这真的很糟糕。我也找不到BlackBerry使用的格式参考,尽管我可以找到数百万个将一个文件转换为“BlackBerry”格式的程序。

肯定有人之前已经尝试使用黑莓进行视频流传输了。他们是如何做到的呢?这只是一个无望的空想吗?我必须使用RTSP吗?

抱歉没有明确的问题。我真的很迷茫,我讨厌许多教程或论坛帖子似乎默认我知道黑莓的能力。


编辑:我终于发现黑莓使用的是我从未听说过的.3gp格式。但我仍然不知道如何从网络上流媒体视频。我找到了"如何在BlackBerry智能手机应用程序中播放视频",看起来很有用,但是如果你给它一个URL,它的代码就不起作用,尽管它声称可以。

1
RTSP被支持,但不通过BES、BIS(也可能不通过MDS模拟器),因此您必须确保客户端Blackberry可以使用无线服务提供商的APN或WAP网关访问RTSP服务器。 - Richard
只需覆盖一个新线程的run()方法并在其中执行操作即可。 - Prof. Falken
1个回答

2
虽然您说的教程声称代码将加载任何有效的URL,但javax.microedition.media.Manager.createPlayer的API文档指定了“在URI语法中描述媒体内容的定位器字符串”,这可能实际上与任何有效的URL不同。幸运的是,createPlayer还可以使用InputStream和指定内容类型的String。因此,您应该能够按照HttpConnection的API文档中记录的方式打开URL,获取内容类型字符串,并打开输入流以创建播放器。
我承认我还没有这样做,但这将是我的下一步。
顺便提一下,请记得在应用程序事件线程之外运行HttpConnection获取。

1
嗯……我在任何我能找到的Java API中都没有看到“HttpConnection”类的参考……你是指HttpURLConnection吗?如果是,它似乎从未继承InputStream……我真的可以用它吗?InputStream本身让我感到困惑,因为似乎有很多种,而且文档假定我知道如何创建适当的InputStream,而我实际上并不知道……不过我会继续在API中摸索,看看能找出什么。 - J.R.
1
好的,我发现HttpConnection在net.rim里面...但我还是迷失了,因为使用它得到的结果是一样的。也许不在单独的线程中运行是问题所在?但我认为那只会影响性能?无论如何,我该怎么做呢? - J.R.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接