在 Quickblox 中,我们如何在 Android 应用程序 (QBRTCSurfaceView) 中旋转视频(例如 90 度)?

Posted

技术标签:

【中文标题】在 Quickblox 中,我们如何在 Android 应用程序 (QBRTCSurfaceView) 中旋转视频(例如 90 度)?【英文标题】:In Quickblox, how can we rotate a video (90 degrees, for example) in Android app (QBRTCSurfaceView)? 【发布时间】:2017-07-06 20:05:32 【问题描述】:

我们正在使用 Quickblox 流式传输视频聊天,我们希望能够旋转它(90、180、270 度)。

ios SDK 中这似乎是可能的,但在 android 中似乎没有设置。我们如何解决这个问题并显示旋转的视频?谢谢!

【问题讨论】:

【参考方案1】:

您可以使用 View 方法:void setRotation(浮动旋转),如下所示:

your_vide_view.setRotation(90f);
or
your_vide_view.setRotation(180f);
or
your_vide_view.setRotation(270f);

此方法适用于 sdk >15

你也应该添加这个条件:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) 

            your_vide_view.setRotation(180f);
        

【讨论】:

【参考方案2】:

这可能为时已晚,但是对于任何想知道如何旋转视频视图的人来说,您可以获取视频轨道并调用 addSink() 函数来检索每一帧。然后,您可以旋转帧并在视频视图上调用 onFrame() 函数。请在下面找到示例代码。

在添加以下代码之前删除任何渲染器,也不要添加任何渲染器,因为下面的代码会这样做。

 localVideoTrack?.track?.addSink  videoFrame->
            localVideoView.onFrame(VideoFrame(videoFrame.buffer, 90, -1))
        

【讨论】:

以上是关于在 Quickblox 中,我们如何在 Android 应用程序 (QBRTCSurfaceView) 中旋转视频(例如 90 度)?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 QuickBlox 的离线消息中启用内容可用键?

如何在 PHP 中生成 QuickBlox 身份验证签名?

如何在quickblox中默认打开后置摄像头

如何使用 WEB SDK 在 QuickBlox 中创建房间

QuickBlox:如何让应用程序在后台保持活跃?

如何在 QuickBlox 中禁用日志语句?