| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146 |
- import 'package:flutter/cupertino.dart';
- import 'package:get/get.dart';
- import '../../resource/assets.gen.dart';
- import '../../resource/string.gen.dart';
- enum RecordStatus {
- pending,
- recording,
- paused,
- }
- RecordStatus recordStatusFromName(String name) {
- switch (name) {
- case "pending":
- return RecordStatus.pending;
- case "recording":
- return RecordStatus.recording;
- case "paused":
- return RecordStatus.paused;
- default:
- return RecordStatus.pending;
- }
- }
- enum SampleRate {
- rate8k,
- rate12_8k,
- rate16k,
- rate22_05k,
- rate24k,
- rate32k,
- rate44_1k,
- }
- enum Channel {
- mono,
- stereo,
- }
- extension SampleRateExtension on SampleRate {
- int get value {
- switch (this) {
- case SampleRate.rate8k:
- return 8000;
- case SampleRate.rate12_8k:
- return 12800;
- case SampleRate.rate16k:
- return 16000;
- case SampleRate.rate22_05k:
- return 22050;
- case SampleRate.rate24k:
- return 24000;
- case SampleRate.rate32k:
- return 32000;
- case SampleRate.rate44_1k:
- return 44100;
- }
- }
- String get desc {
- switch (this) {
- case SampleRate.rate8k:
- return "8k";
- case SampleRate.rate12_8k:
- return "12.8k";
- case SampleRate.rate16k:
- return "16k";
- case SampleRate.rate22_05k:
- return "22.05k";
- case SampleRate.rate24k:
- return "24k";
- case SampleRate.rate32k:
- return "32k";
- case SampleRate.rate44_1k:
- return "44.1k";
- }
- }
- }
- extension ChannelExtension on Channel {
- int get value {
- switch (this) {
- case Channel.mono:
- return 1;
- case Channel.stereo:
- return 2;
- }
- }
- String get desc {
- switch (this) {
- case Channel.mono:
- return "Mono";
- case Channel.stereo:
- return "Stereo";
- }
- }
- }
- extension RecordStatusExtension on RecordStatus {
- String get desc {
- switch (this) {
- case RecordStatus.pending:
- return StringName.recordStatusPending.tr;
- case RecordStatus.recording:
- return StringName.recordStatusRecording.tr;
- case RecordStatus.paused:
- return StringName.recordStatusPaused.tr;
- }
- }
- ImageProvider get actionButtonImage {
- switch (this) {
- case RecordStatus.pending:
- return Assets.images.iconRecordStart.provider();
- case RecordStatus.recording:
- return Assets.images.iconRecordPause.provider();
- case RecordStatus.paused:
- return Assets.images.iconRecordResume.provider();
- }
- }
- ImageProvider get saveButtonImage {
- return this == RecordStatus.pending
- ? Assets.images.iconRecordSaveDisable.provider()
- : Assets.images.iconRecordSaveEnable.provider();
- }
- ImageProvider get cancelButtonImage {
- return this == RecordStatus.pending
- ? Assets.images.iconRecordCancelDisable.provider()
- : Assets.images.iconRecordCancelEnable.provider();
- }
- RecordStatus get nextStatus {
- switch (this) {
- case RecordStatus.pending:
- return RecordStatus.recording;
- case RecordStatus.recording:
- return RecordStatus.paused;
- case RecordStatus.paused:
- return RecordStatus.recording;
- }
- }
- }
|