record 5.1.2 record: ^5.1.2 copied to clipboard
Audio recorder from microphone to file or stream with multiple codecs, bit rate and sampling rate options.
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:record_example/audio_player.dart';
import 'package:record_example/audio_recorder.dart';
void main() => runApp(const MyApp());
class MyApp extends StatefulWidget {
const MyApp({super.key});
@override
State<MyApp> createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
bool showPlayer = false;
String? audioPath;
@override
void initState() {
showPlayer = false;
super.initState();
}
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
body: Center(
child: showPlayer
? Padding(
padding: const EdgeInsets.symmetric(horizontal: 25),
child: AudioPlayer(
source: audioPath!,
onDelete: () {
setState(() => showPlayer = false);
},
),
)
: Recorder(
onStop: (path) {
if (kDebugMode) print('Recorded file path: $path');
setState(() {
audioPath = path;
showPlayer = true;
});
},
),
),
),
);
}
}