我目前正在使用agora SDK进行flutter视频通话。在视频通话期间,我需要截图。只有在视频通话屏幕上,截图是黑色的,在其他屏幕上截图没有问题。通过使用RenderrePaintBarreden,我无法进行截图,
用于截图的代码:
Future<void> _capturePng() async {
try {
RenderRepaintBoundary boundary =
_globalKey.currentContext.findRenderObject();
ui.Image image = await boundary.toImage(pixelRatio: 3.0);
ByteData byteData =
await image.toByteData(format: ui.ImageByteFormat.png);
var pngBytes = byteData.buffer.asUint8List();
final result = await ImageGallerySaver.saveImage(pngBytes);
} catch (e) {
print(e);
} } Widget build(BuildContext context) {
return RepaintBoundary(
key: _globalKey,
child: Scaffold(
backgroundColor: Colors.black,
body: GestureDetector(
onDoubleTap: () => _capturePng(),
child: Screenshot(
controller: screenshotController,
child: Center(
child: Stack(
children: <Widget>[
_viewRows(),
_toolbar(),
],
),
),
))));
}
问题截图:
我也尝试使用这个插件:屏幕截图:^0.1.1,但仍然出现问题
我想你的截图代码是对的。问题可能出在您放置repaintborder
的地方。通常,repaintbounder
中提供的键
将能够截图整个子层次结构。因此,我认为解决方案是将您的小部件
作为子部件,它将您的实时视频提要呈现在repaintbounder
中。例如
Widget build(context){
return RepaintBoundary(
key: _yourGlobalKey,
child: _yourLiveVideoFeedWidget
);
}
如何在Android中通过任何视频链接播放视频(例如—https://youtu.be/SiD77g9KfhA“也可以是另一个媒体门户的另一个视频链接)。我尝试过这样做,但遇到了一个错误。 我的代码 错误。
本文向大家介绍H5播放的video视频,如何实现对视频截图?相关面试题,主要包含被问及H5播放的video视频,如何实现对视频截图?时的应答技巧和注意事项,需要的朋友参考一下
但我只想要一张截图,比如01:23:45。或1截图在86%英寸。 对于ffmpegthumbnailer来说,这一切都是可能的,但这是另一个我不想依赖的依赖项。我希望能够用FFMPEG来完成。
我使用aws kinesis video stream webRTC在reactjs中进行视频聊天。一切都很好。但是我想把视频存储在s3 Bucket中。我应该如何实现这个视频存储?
视频通话中,默认显示1个主屏+4个小屏,若想查看其他人的屏幕,提供两种方式: 1、 在小屏中进行滑动交互,即可通过滑动轮播的形式在小窗口中查看其他人的画面; 2、 在成员管理界面中,右键或点击某个人成员,即可呈现二级菜单,二级菜单中选择置顶到主屏即可。
我正在尝试开发一个应用程序,允许我在录制视频时绘制视频,然后将录制的视频和视频保存在一个mp4文件中供以后使用。另外,我想使用camera2库,特别是我需要我的应用程序在高于API 21的设备上运行,我总是避免使用不推荐的库。 我尝试了很多方法,包括FFmpeg,其中我放置了TextureView的覆盖层。getBitmap()(来自摄影机)和从画布获取的位图。它工作正常,但由于它的功能很慢,视频