Android: Диктофон - робимо запис з мікрофону

  1. android.media.MediaRecorder
  2. алгоритм запису
  3. Запускаємо вбудований диктофон
  4. Створюємо свій диктофон
  5. Додаткові матеріали

Повний текст статті та вихідні програми доступні тільки зареєстрованим учасникам сайту.

Вартість реєстрації - символічні 340 рублів.

Для реєстрації спочатку необхідно поповнити Яндекс.Гаманець 410011383280263 на зазначену суму (або Webmoney-гаманець R390884954122 або QIWI - 9055113963 (гаманець, що не на рахунок телефону!)), а потім надіслати лист на адресу [email protected] із зазначенням, на який гаманець ви робили оплату і реквізити, по яким можна вас визначити (Не прикріплюйте до листа картинки або файли). Враховуйте комісію при перекладах.

Чи не надсилайте в листі мої номери гаманців - повірте, я їх знаю і без вас.

У відповідному листі ви отримаєте облікові дані для читання статей з закритої зони за другий курс.

Доступ до третього курсу навчання доступний тільки після оплати другого курсу і становить 340 руб.

Доступ до чётвертому курсу навчання доступний після оплати третього курсу і становить 340 руб. і т.д.

При оплаті відразу всіх курсів одночасно (2-9) ціна складе 2700 руб.

Доступ дається як мінімум на один рік. Для тих, хто оплатив третій і інші курси, терміни доступу збільшуються.

також можливий прийом на PayPal (Тільки для зарубіжних користувачів). Зверніть увагу, що в цьому випадку вартість одного курсу складає 7 $.

2-й курс / Закрита зона

android.media.MediaRecorder
Запускаємо вбудований диктофон
Створюємо свій диктофон
android.media.AudioRecord

android.media.MediaRecorder

Клас android.media.MediaRecorder дозволяє робити записи записи медіафрагментов, включаючи аудіо і відео. MediaRecorder діє як кінцевий автомат. Ви задаєте різні параметри, такі як пристрій-джерело і формат. Після установки запис може виконуватися як завгодно довго, поки не буде зупинена.

алгоритм запису

Спочатку визначимося з джерелом (властивість MediaRecorder.AudioSource):

  • MIC - вбудований мікрофон
  • VOICE_UPLINK - вихідний голосовий потік при телефонному дзвінку (ви говорите)
  • VOICE_DOWNLINK - вхідний голосовий потік при телефонному дзвінку (вам кажуть)
  • VOICE_CALL - запис телефонного дзвінка
  • CAMCORDER - мікрофон, пов'язаний з камерою (якщо такий є)
  • VOICE_RECOGNITION - мікрофон, який використовується для розпізнавання голосу (якщо такий є)
  • VOICE_COMMUNICATION - аудіо потік з мікрофона буде "заточений" під VoIP (якщо такий є)

Якщо зазначений джерело не підтримується поточним пристроєм, то буде використаний мікрофон за замовчуванням.

Далі визначимося з форматом записуваного звуку (властивість MediaRecorder.OutputFormat):

  • THREE_GPP - формат 3GPP
  • MPEG_4 - формат MPEG4
  • AMR_NB - формат AMR_NB (підходить для запису мови)
  • AMR_WB
  • RAW_AMR

Визначимося з стисненням звуку (властивість MediaRecorder.AudioEncoder).

Вказуємо шлях до файлу, в якому буде збережено аудіодані (метод setOutputFile ())

Готуємо і запускаємо запис (методи prepare () і start ()). Зупинити запис можна за допомогою методу stop ().

Запускаємо вбудований диктофон

Для початку спробуємо запустити вбудований диктофон. Незважаючи на те, що в емуляторі немає значка додатка "Диктофон", він там є. І ми можемо запустити його за допомогою наміри. Додамо на екран активності кнопку для запуску додатка і напишемо код.

final static int RQS_RECORDING = 1; Uri savedUri; @Override public void onCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState); setContentView (R.layout.activity_main); Button recordButton = findViewById (R.id.buttonRecord); recordButton.setOnClickListener (new Button.OnClickListener () {@Override public void onClick (View view) {Intent intent = new Intent (MediaStore.Audio.Media.RECORD_SOUND_ACTION); startActivityForResult (intent, RQS_RECORDING);}}); } @Override protected void onActivityResult (int requestCode, int resultCode, Intent data) {if (requestCode == RQS_RECORDING) {savedUri = data.getData (); Toast.makeText (MainActivity.this, "Saved:" + savedUri.getPath (), Toast.LENGTH_LONG) .show (); }}

show ();  }}

Запустивши додаток Диктофон, ви можете записати повідомлення і закрити програму. Шлях до файлу з аудіоданими повернеться в вашу програму через метод onActivityResult () і представлятиме рядок типу external / audio / media / 382. Ви можете пошукати створений файл в папці SD-карти. Але в будь-якому випадку у вас виникнуть труднощі з доступом до створених файлів, так як ви не берете участі в процесі створення файлу. Вам треба попрацювати, щоб розібратися, як зберігаються файли, записані в системному додатку. Я не став показувати тут, як взагалі потрібно дізнатися, де знаходиться потрібний файл. Крім того, я бачив повідомлення на форумах, що даний метод викликає помилки на деяких пристроях.

Створюємо свій диктофон

Напишемо найпростіший диктофон для запису нявкання кота на мікрофон.

Ви увійшли на сайт, як гість.
необхідно зареєструватися , Щоб прочитати статтю

необхідно зареєструватися   , Щоб прочитати статтю

Додаткові матеріали

Диктофон на Kotlin

Реклама