我们正在构建一个带有PhoneGap& amp;的iOS(iPad)应用程序。 OpenTok phonegap插件。但是,我们遇到了样式问题。实际的视频内容不会跨越通过opentok框架创建的对象元素的整个宽度。我们将关于视频的显式调整参数传递给opentok,但我们仍然遇到这个问题。
非常感谢任何帮助!
答案 0 :(得分:0)
我无法重现您的错误,在我的iOS设备上使用PhoneGap插件,一切都按照应有的方式运行。
这是我的javascript代码(在coffeescript中):
session = ""
publisher = ""
subscribeToStreams = (streams)->
for e in streams
if (e.connection.connectionId == session.connection.connectionId)
return
div = document.createElement('div')
div.setAttribute('id', 'stream' + e.streamId)
div.setAttribute('class', "streamElement")
document.body.appendChild( div )
session.subscribe(e, div.id, {width: 640, height:480})
window.OTGroupChat = (apiKey, sessionId, token) ->
publisher = TB.initPublisher(apiKey, "myPublisherDiv", {width: 320, height: 240})
session = TB.initSession(sessionId)
session.addEventListener 'sessionConnected', (event) ->
session.publish( publisher )
subscribeToStreams( event.streams )
session.addEventListener 'streamCreated', (event) ->
subscribeToStreams( event.streams )
session.connect( apiKey, token )
结果:发布商视图按预期显示为320x240,订阅的流按指定显示为640x480。
然后我通过直接在控制台中输入来更改订阅流的高度:
$("object:last").height(100);
TB.updateViews();
用户流乖乖地调整到新的高度。
然后我通过将对象元素的背景颜色设置为粉红色来测试实际视频内容是否小于对象元素的宽度。没有粉红色显示,因此实际的OpenTok视频要么大于或等于对象元素的尺寸。当我给对象元素一个大小为1的粉红色边框时,视频周围有一个1px的粉红色轮廓,表明对象元素肯定与视频大小相同。
如果我误解了你并且你指的是视频两侧的黑条,我担心OpenTok是保留宽高比的方法,而试图从iOS设备流式传输纵向视图的用户经常会遇到背吧围绕他们的视频。