You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Current »

Control audio recording on mobile device. Audio file is saved in LMA's logical file system. Maximum audio length depends on the device storage space.

Properties

File

A string value indicates the fully qualified name of the file to record.

CompressionLevel

An integer from 1 to 5 that indicates the level of compression (1 is the lowest compression level, best quality, 5 is highest compression level, lowest quality). Default is 2.

Duration

An integer specifies the max recording duration in seconds. No limit when set to 0.

Methods

Record

Start recording.

  • Input Arguments: None
  • Output Argument: None.
  • Return Value: Status Code

Stop

Stop recording.

  • Input Arguments: None
  • Output Argument: None.
  • Return Value: None.

Events

Started

Triggered when recoding is started.

  • Parameters:

Name

Type

Description

Status

Enum

See Status Code

Completed

Triggered when audio recording is finished.

  • Parameters:

Name

Type

Description

Status

Enum

See Status Code

Message

String


 RecordFinished

Triggered when recoding has reached to duration limit.

  • Parameters: None

Code Examples

Define_Com Class(#xDeviceAudioRecord) Name(#AudioRecord)


Evtroutine Handling(#COM_OWNER.Initialize)  

#Record.Enabled := false  

#Stop.Enabled := false

Endroutine


Evtroutine Handling(#AudioRecord.Initialize)  

#Record.Enabled := true  

#Stop.Enabled := true

Endroutine


Evtroutine Handling(#Record.Click)  

#AudioRecord.File := 'MyVoice'  

#AudioRecord.SampleRate := 44100  

#AudioRecord.Channels := 2  

#AudioRecord.Record()

Endroutine


Evtroutine Handling(#AudioRecord.Started) Status(#lstatus)  

If (#lstatus = 'OK')    

#Status := 'Recording started'  

Else    

#Status := 'Error starting recording: ' + #lstatus  

Endif

Endroutine


Evtroutine Handling(#AudioRecord.Completed) Status(#lstatus)  

Case (#lstatus)  

When ('= OK')    

#Status := 'Recording finished'  

Otherwise    

#Status := 'Error with recording: ' + #lstatus  

Endcase

Endroutine


Evtroutine Handling(#Stop.Click)  

#AudioRecord.Stop

Endroutine

  • No labels