首页 > 代码库 > delphi android 录像(调用Java的功能)

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

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

unit Unit8;interfaceuses 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.

 

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

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