android中surfaceview截图问题

最近用surfaceview显示一段视频 需要先用mediacode解码H.264数据
然后给surfaceview显示出来 现在我要进行播放过程中截图 发现用view和窗口
图像截图的办法截图出来是一张黑图 求大声们指导

1个回答

kylukuan
壹葉之秋 回复Leo--Wang: 有什么解决方法吗
大约一年之前 回复
Joson_Wang
Leo--Wang 没有效果 问题是由surface自动从解码器中得到画出 不用ondraw()
4 年多之前 回复
Joson_Wang
Leo--Wang 没有效果 问题是由surface自动从解码器中得到画出 不用ondraw()
4 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
安卓SurfaceView截屏

关于安卓SurfaceView截屏 2015.12.9号是一个值得记得日子,开始拖着背包从学校出来,挤上火车,做着接近30小时的硬座,来到了美丽的成都,那时候赵雷的还没火,‘走到玉林路的尽头 坐在小酒馆的门口 ‘,多么诗情画意的生活啊。来不及享受这安逸之都的生活,便匆匆的开始实习生涯。 时至今日,也已经毕业大半年了,也从实习生正式成了职场人。身边大神很多,公司也是藏龙卧虎,也感觉应该养成

Aandroid截屏遇到SurfaceView

最近做项目遇到个问题,网上搜索了一下,很多人也遇到这个问题,觉得很有必要拿出来说一下,做个总结!嗯,内容精华,千万别错过! 项目具体的需求说起来又要大费周章说半天,我就直接简单地说下我们的目的是什么,很简单就是把拍摄的照片和自定义view原样显示(简单理解就是截屏)   如下图空白区域就是SurfaceView,空白区域的上方有个刻度尺,我们的目的就是要使拍摄的照片上存在这个刻度尺,这

Android 截屏在surfaceview上失败的问题

项目中surfaceview,为了要透明效果不得不设置zorder。这个时候截屏 只能截到surfaceview以外的东西。 于是多加了一步操作 1、截出原有部分 2、画出surfaceview部分 3、合成为一张图 代码: 1、Bitmap shareScreen = PrintScreen.takeScreenShot(getActivity());  2、surfaceview

Android--SurfaceView截屏问题

 转载▼ 标签: it 分类: Android 一般的View截屏实现代码如下: View view = activity.getWindow().getDecorView();   view.setDrawingCacheEnabled(true);     view.buildDrawingCache();   Bitmap

SurfaceView截屏问题

做PPT截屏的时候遇到一个问题:显示content的View是SurfaceView做的,截屏时无法截取到内容,截取到的是一块黑色区域。    其实,原因就是SurfaceView的实现原理。Surface通常有两个buffer,一个front buffer,一个back buffer。而back buffer就是Canvas对应的bitmap。每当frong buffer显示时,back

Android中截图(surfaceView)

前几天,在网上总结了一个方法,实现了在Android当前Activity的截图,本人测试确实通过了,不过有朋友说截出来的图是黑色的,不能看。我心想,这没有问题啊,相同的代码我就可以执行通过,并没有没有在意这个问题。可是,今天我再调用那个方法时,截出来的图部分是黑屏。我当时就郁闷了。网上的东西很全,但同时很乱。有一个大神用的是引用Linux下编译出来的库,又用到什么JNI我完全不懂,貌似可以实现截屏

Android截屏SurfaceView黑屏问题的解决办法

最近项目中有截屏的需求,普通的view截屏方法网上一搜一大把,但是SurfaceView截屏黑屏问题很多文章说的并不清楚,自己参考了一些别的博客,再加上自己的思考,算是找到了一种解决方案。 1、首先看我们一般是怎么用SurfaceView的 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

surfaceview播放视频截图黑屏

不多说,直接上码!(原理是把视频去帧,保存到画布,然后把当前屏幕截图,然后再画到画布上)     @SuppressLint("NewApi")     private void savaScreenShot() {         // 构建Bitmap                 WindowManager windowManager = getWindowManager();

Android应用截图和SurfaceView截图问题总结

最近在做android截图应用的过程遇到很多问题,接触了好些截图方法,但是还是不能实现SufaceView截图功能。今天就把我尝试过的方法总结下,希望把我惨痛的经历写出来后能够帮助到要做此功能的朋友少走弯路,或者是给一些思路吧。如果哪位大侠能够做到SurfaceView截图,还请分享下思路。

android surfaceview截图 系统截图

使用普通截图方式截取surfaceview的人都会遇到surfaceview区域黑屏,也就是截取不到图片。然后各种百度google,有的说换用textureview,也有些别的方法。大概试了都没能成功,textureview是有对应方法。不过现在需要截图的是surfaceview。 Android在5.0系统之前,是没有开放视频录制的接口的,5.0之后Google开放了视频录制的接口,相关类是Me

Android中SurfaceView截屏

这是在上网收集的,能够截取当前Activity中surfaceView中图片。本人亲测可以通过。

获取普通View和SurfaceView截图的方式

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦: Markdown和扩展Markdown简洁的语法 代码块高亮 图片链接和图片上传 LaTex数学公式 UML序列图和流程图 离线写博客 导入导出Markdown文件 丰富的快捷键 快捷键 加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

MediaPlayer+SurfaceView 视频截图

其中MediaMetadataRetriever类在2.3api之后 才提供,大致就是这样的,系统点的代码 以后再补- - private void savaScreenShot()     {         mMediaPlayer.pause();         Bitmap bitmap = null;         // 2.3api下可用         Med

surfaceview进行屏幕截图demo

surfaceview进行屏幕截图demo

SurfaceView播放视频的截图

//创建媒体数据寻找类 MediaMetadataRetriever mediaMetadataRetriever = new MediaMetadataRetriever(); //找到视频源 mediaMetadataRetriever.setDataSource(Environment.getExternalStorageDirectory() + "/dianying .mp4");

Android应用截图和SurfaceView截图问题(学生PAD抽奖系统)

问题描述 在开发用户中心“抽奖系统”项目模块时,有个功能是抽中奖品,中奖物品弹出时将背景全部模糊,效果图如下图1-1 图1-1 抽奖系统中奖界面效果图 要将背景进行模糊后并进行一系列的动画效果,这个处理流程大致为:       ①  获取中奖后的最后一帧背景图       ②  将背景图进行缩放、模糊处理       ③  将处理后的背景图设置给中奖界面,并进行后续

Cocos2dx GL SurfaceView截屏 应用层实现

问题:

最简单的surfaceview画图和截图

最简单的surfaceview画图和截图,点击“点击加图”会在surfaceview上增加一个bitmat,点击“点击保存”会将最新的surfaceview图片保存在手机上。

Android MediaProjection截屏与录屏(surfaceview截图)(一)

MediaProjection 和 MediaProjectionManager 是 Android 5.0 开放的屏幕截图与录制视频的接口,它可以用来对 surfaceview 进行截图,解决以前 surfaceview 截图出现黑屏的问题(就是问了这个问题来的,5.0以下没找到方法)。MediaProjectionManager 是一个系统级的服务,可以通过 getSystemService 来

Android SurfaceView 黑屏问题

说一个真实的案例。其中需求要做一个绘图功能,一听到绘图,自然而然就像到了SurfaceView这个类。所以我就用了。<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="m

录制视频(Surfaceview+MediaRecorder)

这个是自己写的录制视频,为了简单,全写在一个Activity中,可以切换照相机,没有带聚焦,需要聚焦自己写个OnTouch即可。在我的测试机上跑起来畅通无阻,我只有3个测试机。如果你使用了我的有问题可以告诉我。这个demo比网上什么的写死录像尺寸强多了,全部自匹配尺寸。如果你的跑不起可以第一时间检测这个尺寸设置。我的思路是获取手机屏幕尺寸,等到高/宽的比 比如1280/720 或者1920/10

Camera 预览之SurfaceView、TextureView、GLSurfaceView(三)

今天介绍下GLSurfaceView如何使用。GLSurfaceView的包名是android.opengl,由此可以它是opengl的一个类,它也可以预览camera,而且在预览camera上有比SurfaceView独特的优势,可以做到数据和显示的分离,比如在没有屏幕的设备照样可以开预览实时直播。下面要介绍的这个例子是获取camera预览数据编码为视频流。但这篇文章只介绍如何使用GLSurfaceView去预览,关于获取预览数据编码视频流后续会介绍。

使用安卓Camera类完成视频截图功能

最近公司在VOIP视频上传的功能里加视频截图的功能。下面我来介绍一下我的实现思路和实现过程。

SurfaceView学习遇到常见问题

今天刚刚开始学习Android里面游戏开发的基础知识,像View和SurfaceView,在这里我先不想详讲View和SurfaceView的区别。今天我先讲讲学习SurfaceView遇到的问题。 1. 首先学习SurfaceView需重写SurfaceView和实现SurfaceHold.Callback类。        2. 就是在重写SurfaceView的时候,需要锁定canvas

Activity设置style透明后与SurfaceView合用引发的无形命案

最近搞视频通话,SurfaceView是必不可少的,由于启动视频要加载一些资源,比较耗时,会有1.2s黑屏的现象,为了改善用户体验,我们需要设置Activity的Theme为透明风格(QQ 也是如此),下面是我截取的日志,QQ和我们的引用启动视频通话第一个Activity所花费的时间: Displayed com.xxx.xxx/.activity.voip.CallVoipVideoActiv

Android 解决SurfaceView切换导致界面闪烁,短暂黑屏问题。

自己在初学Android游戏的时候遇到了的问题,今天刚好解决了,记录一下。   游戏只用了一个Activity,使用setContentView(View)来展示不同的界面。但是界面切换的时候会有短暂的黑屏,导致界面切换闪烁。      查了下资料,因为SurfaceView的绘画是在setContentView之后的,所以会导致界面短暂黑屏(因为SurfaceView还没开始画),界面没有显

动态添加SurfaceView时的闪烁问题

surfaceview动态添加的时候会出现闪烁问题,原因是: SurfaceView因为不同于一般的view,它有自己良好的缓冲以及数据存取机制,系统对他有特殊处理。当surfaceview第一次在当前activity上添加的时候,系统会给WindowManager重新排布局,relayout,这样就会黑一下,这个只会出现在第一次,以后再添加surfaceview时就不会黑屏了。 su

VideoView与SurfaceView的使用

VideoView概述: 这个类其实也是继承了SurfaceView 类,集成度高,开发难度小,只是灵活性差。通过VideoView播放视频的步骤:1、在界面布局文件中定义VideoView组件,或在程序中创建VideoView组件2、调用VideoView的如下两个方法来加载指定的视频setVidePath(String path):加载path文件代表的视频setVideoURI(Uri ur

SurfaceView+MediaPlayer封装之路

SurfaceView+MediaPlayer封装之路我的播放器叫做JsPlayer,喜欢的话,就给个star喽^_^https://github.com/shuaijia/JsPlayer这里我只介绍播放器封装思路,会贴出部分代码,如果大家想查看完整代码,可以去github查看,有不清楚或错误或改进的地方,可以issues 我!写在之前先上效果图:(1.5版本新增弹幕功能)为什么要用Surface

Fragment中包含surfaceView出现闪屏问题解决方法

Fragment中包含有SurfaceView,在第一次初始化的时候屏幕会出现黑屏闪一下,以后再进行Fragment切换的时候却不会再出现这种情况,Activity里面包含SurfaceView却不会出现闪屏,网上搜了一下,找到一中方法解决了我的问题,解决办法是在包含Fragment的Activity的onCreate()方法中加上一句话:getWindow().setFormat(PixelFo

解决SurfaceView各种疑难杂症

RecyclerView加载多个surfaceview覆盖,黑屏。SurfaceView黑色背景??透明背景??多层嵌套被遮挡?苦苦找了好多天,一点办法没有,各个论坛问遍了,都是互相抄,痛苦的我,尝试了好多种方式都解决不了。翻了好几天API,现把解决方法总结,分享一下。首先说:不能在list视图中使用VideoView,因为VideoView继承SurfaceView,而SurfaceView不支...

视频画面帧的展示控件SurfaceView及TextureView对比

SurfaceView是什么 ?SurfaceView优点及缺点?SurfaceView中双缓冲?TextureView是什么?TextureView优点及缺点?两者的性能相比如何?播放器应该选择谁?SurfaceView是什么?它继承自类View,因此它本质上是一个View。但与普通View不同的是,它有自己的Surface。有自己的Surface,在WMS中有对应的WindowState,在S

SurfaceView onDraw()方法问题

View的onDraw函数是protected的。protected 表明被它修饰的成员变量为保护类型,在同一个包里和 public 类型是一样的,也是能够访问到的。但是如果在不同包里的 protected 类型的成员变量就只能通过子类来访问,这个修饰符是区别

Android关于含有SurfaceView的View会导致其他空间出问题的解决方案

今天写游戏的时候碰到一个非常诡异的问题,之前我的游戏GameView是继承自View的,当是View时没有一点问题 但是后来为了能够让画面流畅,我就把View换成了带有双缓冲机制的SurfaceView了,这时候问题就出现了,原本显示在 SurfaceView上层的一个Button绘制的时候绘制不全了,如下图: 看图片左下方的一个方向按钮,显示不全了,这个方向按钮放在一个Relati

Android--SurfaceView播放视频

前言   本篇博客讲解一下如何在Android下,使用SurfaceView播放一个视频流媒体。之前有讲到如何使用MediaPlayer播放音频流媒体,其实MediaPlayer还可以播放视频,只需需要SurfaceView的配合,SurfaceView主要用于显示MediaPlayer播放的视频流媒体的画面渲染。对MediaPlayer不了解的朋友,可以先看看那篇博客:Android--M

SurfaceView闪屏解决办法

使用SurfaceView自定义了一个视频播放器. 但是每次进入界面都会闪烁一下. 解决办法: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android

Android N中SurfaceView泄露的问题分析

最近遇到一个bug,现象为SurfaceView的Layer没有销毁,导致屏幕上一直显示该Layer。觉得该案例有点意思,故在此记录下分析过程及解决方法,供有一定framework基础的Rom开发人员参考。 现象 分析过程 首先最直接相关的模块是SurfaceFlinger,既然能看到,应该存在该Layer并且进行了合成,否则这里就有问题,用如下命令dump状态信息:

android Multimedia实战(一)详解SurfaceView,TextureView之播放视频的四种方式

在Android中,我们有四种方式来实现视频的播放: 1、使用其自带的播放器。指定Action为ACTION_VIEW,Data为Uri,Type为其MIME类型。2、使用VideoView来播放。在布局文件中使用VideoView结合MediaController来实现对其控制。3、使用MediaPlayer类和SurfaceView来实现,这种方式很灵活。4、使用MediaPlayer类和Te

Android播放网络视频截图

Android播放网络视频截图最近博主遇到一个Android电视的开发项目,项目需要电视客户端播放服务器端视频,通过遥控器一键截图,并将截图云推送到手机客户端,于是博主就开始找度神去求助了,毕竟以前没搞过视频,当然要去先搜集下资料再开工啦,正所谓知己知彼,百战百胜嘛,于是,你将看到博主以下两天中的蛋疼经历参考内容videoview视频播放 http://blog.csdn.net/shenxi

Android有关surfaceView重新创建的问题。

最近在做一个Android视频播放器的项目,遇到一个问题,就是锁屏之后,surfaceview就会被销毁掉,然后就会出现各种错误。到csdn论坛去发帖提问,各种所谓的大神都说,解锁屏在重新创建一个,问他具体怎么做,就没有回复了。后来也尝试手动创建,但是报错说surfaceview必须在mediaPlayer之前创建。 其实这个问题,根本不用重新创建!!!解锁屏之后,surfaceview就会自动

Android解决Fragment中使用SurfaceView切换时闪一下黑屏的问题

重构了下之前自己的一个新闻客户端,全部使用了Fragment来进行页面切换,只有一个入口Activity作为程序的启动Activity,其中有一个界面需要调用摄像头识别二维码,于是就会用到SurfaceView进行预览,那么问题来了,当切换到对应的Fragment时,屏幕会黑一下,黑了1秒左右就显示出正常的界面,而且这种现象只有第一次进入该Fragment才会出现,之后进入都不会出现,解决方法是无意

关于使用SurfaceView绘制同名背景为黑色解决方法

在继承SurfaceView绘制图片时,图片透明的部分出现了黑色,找了很多方法,都无效, 后来通过设置  seZOrderOnTop(true)  解决了。 本意是将其放到画布的最顶层,这样我的问题就解决了

关于EGL glreadpixels获取缓存数据的方法 截取surfaceView 保存成图片

我要从一个主界面中,获取其中的一个子窗口如图中的人物镜(surfaceview)显示的内容保存成图片!他是一个摄像镜头所显示的动态的图像。朋友说可以用opengl 中glreadpixels 方法实现 。但是我按照网上的方法进行操作结果只是获取整个页面显示的图像,子窗口内容全为黑黑的一片。  所以想请问一下怎么取得该子窗口surfaceview的缓冲数据???谢谢     以下是我初始化E

动态调整Android surfaceView 视图上下层问题

转载自: http://stackoverflow.com/questions/37385522/how-to-change-surfaceviews-z-order-runtime-in-android 核心代码如下: mLocalRender.setVisibility(View.GONE); mRemoteRender.setVisibility(V

SurfaceView在ScrollView里面滑动出现黑色背景怎么解决?覆盖了一些东西怎么办?

SurfaceView在ScrollView里面滑动出现黑色背景怎么解决?覆盖了一些东西怎么办

Android ScrollView添加SurfaceView背景问题

当在ScrollView里添加SurfaceView时: 如果SurfaceView设置其他颜色背景会

多个surfaceview的切换有问题

开发工具eclipse

ArcGIS For Android MapView 截图

private Bitmap getViewBitmap(MapView v) { v.clearFocus(); v.setPressed(false); boolean willNotCache = v.willNotCacheDrawing(); v.setWillNotCacheDrawing(false); int color = v.getDrawingCach

Android两个SurfaceView叠加显示

最近一段时间一直在做智能后视镜产品(Android平台)里的相机模块,目前已经告一段落了。现在空闲的时候可以把一些技术点记录下来。其中有一个需求就是显示前、后两个摄像头的预览画面,并且可以相互切换显示。类似下面这个样子: 在Android里常用来显示相机预览的就是SurfaceView,因为不需要在UI线程刷新。那这里我们考虑的就是将两个SurfaceView叠加在一起显示。布局xml(部分):<

解决SurfaceView预览Camera拉伸问题

在android中实现录制视频时,都会要求实现一个视频预览的功能(一般都是全屏预览),实现方式就是用SurfaceView来实时显示Camera传递过来的图像。 但是我们都知道,android手机的屏幕尺寸千奇百怪,使用默认的预览尺寸,部分手机会导致SurfaceView显示时图像拉长,整个人的脸看起来比驴脸还长;如果设置Camera的预览尺寸为屏幕尺寸,那么如果刚好Camera不兼容这个尺寸,

立即提问
相关内容推荐