delphi xe系列自带的控件都无法保存录像,经网友帮忙,昨天终于实现了录像功能(但有个问题是录像时无画面显示),程序主要使用了JMediaRecorder,MediaRecorder的使用方法可参考网上java的相关说明,下面代码是可以正常录像的:

unit Unit8;

interface

uses
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
Androidapi.Helpers, FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,FMX.Media.Android,Androidapi.JNI.Media,
FMX.Controls.Presentation, FMX.StdCtrls,System.IOUtils,Androidapi.JNI.GraphicsContentViewText,
Androidapi.JNI.Provider,
Androidapi.JNI.App,
Androidapi.JNI.Net,
Androidapi.JNIBridge,
FMX.Media,
Androidapi.JNI.JavaTypes,
Androidapi.JNI.Os; type
TForm8 = class(TForm)
Button3: TButton;
Button4: TButton;
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
private
{ Private declarations }
texture : JSurfaceTexture;
surface: JSurface;
recorder: JMediaRecorder;
public
{ Public declarations }
end; var
Form8: TForm8; implementation {$R *.fmx} procedure TForm8.Button3Click(Sender: TObject);
VAR FILENAME:STRING;
begin
texture := TJSurfaceTexture.JavaClass.init(1);
surface := TJSurface.JavaClass.init(texture);
recorder := TJMediaRecorder.Create(); recorder.setPreviewDisplay(surface);
recorder.setAudioSource(TJMediaRecorder_AudioSource.JavaClass.MIC );
recorder.setVideoSource(TJMediaRecorder_VideoSource.JavaClass.CAMERA);
recorder.setOutputFormat(TJMediaRecorder_OutputFormat.JavaClass.MPEG_4);
recorder.setAudioEncoder(TJMediaRecorder_AudioEncoder.JavaClass.DEFAULT);
recorder.setVideoEncoder(TJMediaRecorder_VideoEncoder.JavaClass.H264);
recorder.setMaxDuration(1800000); // 30 minutes
recorder.setVideoSize(320, 240);
recorder.setVideoFrameRate(15);
filename:=TPath.GetSharedCameraPath+'/abc0002.mp4';
recorder.setOutputFile(StringToJString(FILENAME));
recorder.prepare();
recorder.start();
end; procedure TForm8.Button4Click(Sender: TObject);
begin
recorder.stop;
end; end.

https://www.cnblogs.com/qiufeng2014/p/4809144.html

delphi android 录像(使用了JMediaRecorder,MediaRecorder的使用方法)的更多相关文章

  1. delphi android 录像(使用了JMediaRecorder,MediaRecorder的使用方法可参考网上java的相关说明)

    delphi xe系列自带的控件都无法保存录像,经网友帮忙,昨天终于实现了录像功能(但有个问题是录像时无画面显示),程序主要使用了JMediaRecorder,MediaRecorder的使用方法可参 ...

  2. delphi android 录像(调用Java的功能)

    delphi xe系列自带的控件都无法保存录像,经网友帮忙,昨天终于实现了录像功能(但有个问题是录像时无画面显示),程序主要使用了JMediaRecorder,MediaRecorder的使用方法可参 ...

  3. delphi android 录像

    delphi xe系列自带的控件都无法保存录像,经网友帮忙,昨天终于实现了录像功能(但有个问题是录像时无画面显示),程序主要使用了JMediaRecorder,MediaRecorder的使用方法可参 ...

  4. Android(java)学习笔记144:Android音视频录制类MediaRecorder用法举例

    Android语音录制可以通过MediaRecorder和AudioRecorder.MediaRecorder本来是多媒体录制控件,可以同时录制视频和语音,当不指定视频源时就只录制语音(默认录制语言 ...

  5. Delphi Android USB Interface with the G2

    来源:http://www.bverhue.nl/g2dev/?p=65 Delphi Android USB Interface with the G2 Leave a reply I first ...

  6. Delphi Android 询问框

    Delphi Android 询问框 http://community.embarcadero.com/blogs/entry/xe7-dialog-box-methods-support-anony ...

  7. Android应用开发SharedPreferences存储数据的使用方法

    Android应用开发SharedPreferences存储数据的使用方法 SharedPreferences是Android中最容易理解的数据存储技术,实际上SharedPreferences处理的 ...

  8. Android HTTP实例 使用GET方法和POST方法发送请求

    Android HTTP实例 使用GET方法和POST方法发送请求 Web程序:使用GET和POST方法发送请求 首先利用MyEclispe+Tomcat写好一个Web程序,实现的功能就是提交用户信息 ...

  9. 八、Android学习第七天——XML文件解析方法(转)

    (转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html) 八.Android学习第七天——XML文件解析方法 XML文件:exten ...

随机推荐

  1. shell - sed 简单使用记录

    时间长不用,总是会忘掉的........还是烂笔头好些. sed 命令使用帮助及实操举例 功能:主要用来对一个或多个文件进行编辑,简化对文件的反复操作. 语法: sed [-hnV] [-e<s ...

  2. Truck History(最小生成树)

    poj——Truck History Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 27703   Accepted: 10 ...

  3. NEERC15

    2015-2016 ACM-ICPC Northeastern European Regional Contest 再开一个新坑吧 目前姿势有限,C.H.I仍然处于弃坑状态 代码戳这里 Problem ...

  4. java excel导出(基于注解)

    小白,做日志只是为了方便自己查看,能帮到别人当然更好,不喜勿喷. 上代码 依赖: <dependency> <groupId>org.apache.poi</groupI ...

  5. SQL SERVER 工具

    http://www.cnblogs.com/fygh/archive/2012/04/25/2469563.html

  6. 数字类型(NSInteger,NSUInteger,NSNumber)

    在Objective-C中,我们可以使用c中的数字数据类型,int.float.long等.它们都是基本数据类型,而不是对象.也就是说,不能够向它们发送消息.然后,有些时候需要将这些值作为对象使用. ...

  7. 【MyEcplise】设置右键快捷菜单的方法

    在我们右键新建项目或文件时,有许多的选项我们几乎是不用的,那就没有必要放在右键的快捷菜单中:而有些选项是我们经常会用的,但是右键快捷菜单有没有,我们总是需要选择其它去到弹出的对话框中取选取.这些操作很 ...

  8. django忘记超级用户密码的解决方法

    用Django shell: 1 python manage.py shell 然后获取你的用户名,并且重设密码: 1 2 3 4 from django.contrib.auth.models im ...

  9. JAVA微信开发:[17]如何获取所有关注用户

    该方法获取所有关注公共账号的微信用户的openId集合, 再通过openId集合既可以获取所有的用户的信息.   /** * 获取所有的关注用户 * * @return */ public  List ...

  10. PS 基础知识 CMYK全称是什么

    已解决 请问谁知道CMYK四色的英文全称? 悬赏分:20 - 解决时间:2006-9-6 16:23 C代表什么颜色?英文全称是什么? M代表什么颜色?英文全称是什么? Y代表什么颜色?英文全称是什么 ...