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

Compare with Current View Page History

Version 1 Next »

Show Contents List
You are here:

14.6.4 xDeviceAudioRecord Widget

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  
Show Contents List

  • No labels