رفتن به مطلب

ارسال‌های توصیه شده

PersianAudioRecorder


با سلام. 

با یه کتابخونه بسیار کاربردی دیگه در خدمت دوستان هستیم. یکی از مواردی که اکثر دوستان باهاش مورد داشتن ضبط صدای با کیفیت توی اندروید هست. این کتابخونه این امکان رو برای شما فراهم میکنه که یک ضبط صدای با کیفیت دلخواه داشته باشین. این کتابخونه تقریبا از تلگرام قسمت voice برداشته شده و قاعدتا خیلی حرفه ای روش کار شده. کار با کتابخونه خیلی راحت هست به این ترتیب که اول به صورت زیر اینشیالایز میکنید

Private audiorecord As PersianAudioRecorder
audiorecord.Initialize("audio",audiorecord.ENCODING_PCM_16BIT,audiorecord.CHANNEL_IN_MONO,44100,32000)

ورودی اول که ایونت هست ورودی دوم اینکدینگ هست که دو حالت pcm8 و pcm16 رو دارین که دومی کیفیتش بالاتر هست. همینطور وردی سوم کانال ضبط هست که مونو و استریو هست و وردی چهرم و پنجم هم سمپل ریت و بیت ریت هست که به صورت دلخواه میتونید بدید.

و اما ضبط صدا هم که به شکل زیر باید درخواست بدید

audiorecord.startRecord(dir)

ورودی این متد یه استرینگه که میتونید مسیر دلخواه برای ذخیره فایل بدین یا اینکه یه رشته خالی رو بدین که پیش فرض توی File.DirDefaultExternal ذخیره میشه.

برای متوقف کردن هم میتونید از دستور زیر استفاده کنید

audiorecord.stopAudioRecorder

این متد یه استرینگ برمیگردونه که مسیر کامل فایل ضبط شده هست.

برای پخش صدای ضبط شده هم متدی رو قرار دادیم.

audiorecord.playAudio(prf.GetUriFromFile(audioPatch))

که prf رو از کتابخونه PersianFileProvider میتونید استفاده کنید.

سورس کامل کار با کتابخونه.

voicerecorder.zip


 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

  • پاسخ 50
  • ایجاد شده
  • آخرین پاسخ

بیشترین ارسال‌ها در این موضوع

ارسال‌های محبوب

مشاهده فایل PersianAudioRecorder با سلام.  با یه کتابخونه بسیار کاربردی دیگه در خدمت دوستان هستیم. یکی از مواردی که اکثر دوستان باهاش مورد داشتن ضبط صدای با کیفی

نسخه جدید رو دانلود کن. و به شکل زیر لیست فایلهای ذخیره شده رو بگیر. Dim listAudio As List=File.ListFiles(audio.defaultSavePatch) For Each audioFile As String In listAudio Dim fullAudioPatch As

سلام. مسیر رو خودتون میتونید مشخص کنید عزیز. ورودی متد startRecord مسیر ذخیره فایل هست. مسیر هم ندین به صورت دیفالت توی پوشه dirdefaultexternal ذخیره میشه

تصاویر ارسال شده

سلام خیلی ممنون

و تشکر زیاد

یک سوال

صدایه درونی موبایل رو هم ضبط میکنه این؟

اکثر کتابخانه های بیسیک برای ضبط تماس مشکل دارن و خیلی بی کیفیت ضبط میکنن.

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 30 دقیقه قبل، mahdi tahan گفته است :

سلام خیلی ممنون

و تشکر زیاد

یک سوال

صدایه درونی موبایل رو هم ضبط میکنه این؟

اکثر کتابخانه های بیسیک برای ضبط تماس مشکل دارن و خیلی بی کیفیت ضبط میکنن.

صدای درونی موبایل یعنی کجای موبایل دقیقا؟:crazy:

لینک ارسال
به اشتراک گذاری در سایت های دیگر

والا اصطلاحیه که خیلیا گفتن

مثلا صدایه طرف از پشت تلفن رواکثر کتابخونه ها بی کیفیت ضبط میکنن و صدا خیلی ضعیفه یا اصلا شنیده نمیشه

ولی بعضی نرم افزارا صدا رو با کیفیت ضبط میکنن

حتی صدایه هنذفری رو میگیرن 

 انگار صدایی که ازگوشی خارج بشه.بیت هاشو میگیره..نمدونم والا

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

  • 2 ماه بعد...

دوستان فایلهایی که ضبط میشه کجا ذخیره میشن؟؟ یعنی چجوری لیست فایلهای ضبط شده رو بگیریم؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در ۱ ساعت قبل، vistamobile گفته است :

دوستان فایلهایی که ضبط میشه کجا ذخیره میشن؟؟ یعنی چجوری لیست فایلهای ضبط شده رو بگیریم؟

سلام. مسیر رو خودتون میتونید مشخص کنید عزیز. ورودی متد startRecord مسیر ذخیره فایل هست. مسیر هم ندین به صورت دیفالت توی پوشه dirdefaultexternal ذخیره میشه

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 57 دقیقه قبل، محمدرضا شاهپیری گفته است :

سلام. مسیر رو خودتون میتونید مشخص کنید عزیز. ورودی متد startRecord مسیر ذخیره فایل هست. مسیر هم ندین به صورت دیفالت توی پوشه dirdefaultexternal ذخیره میشه

محمد رضا جان من میخوام خودش ذخیره بشه و بعد به فایلهای ذخیره شده لیست بدم. اگر یکبار لمس شد فایل پخش بشه اگر لمس طولانی شد فایل حذف بشه. تشکر بابت کتابخونه های خوبت

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 2 ساعت قبل، vistamobile گفته است :

محمد رضا جان من میخوام خودش ذخیره بشه و بعد به فایلهای ذخیره شده لیست بدم. اگر یکبار لمس شد فایل پخش بشه اگر لمس طولانی شد فایل حذف بشه. تشکر بابت کتابخونه های خوبت

نسخه جدید رو دانلود کن. و به شکل زیر لیست فایلهای ذخیره شده رو بگیر.

Dim listAudio As List=File.ListFiles(audio.defaultSavePatch)
For Each audioFile As String In listAudio
  Dim fullAudioPatch As String=audio.defaultSavePatch&"/"&audioFile
  Log(fullAudioPatch)
Next

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

  • 3 ماه بعد...

سلام استاد شاهپیری ، در استفاده از این کتابخونه ارور زیر رو میگیرم ، ممنون میشم بفرمایید مشکل از کجاست

B4A Version: 10.0
Java Version: 8
Parsing code.    (0.00s)
Building folders structure.    (0.01s)
Compiling code.    (0.03s)
Compiling layouts code.    (0.00s)
Organizing libraries.    Error
Maven artifact not found: androidx.legacy/legacy-support-v4

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 20 ساعت قبل، mohammadjavadmajidi گفته است :

چطور میشه فایل ضبط شده رو تو حافظه داخلی ذخیره کرد ؟

دوست عزیز توی توضیحات کتابخونه که عرض شده این مورد. توضیحات کتابخونه رو ببینید

 

در در 26 اسفند 1398 در 14:44، محمدرضا شاهپیری گفته است :

و اما ضبط صدا هم که به شکل زیر باید درخواست بدید


audiorecord.startRecord(dir)

ورودی این متد یه استرینگه که میتونید مسیر دلخواه برای ذخیره فایل بدین یا اینکه یه رشته خالی رو بدین که پیش فرض توی File.DirDefaultExternal ذخیره میشه.

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

من اینطور نوشتم ولی وقتی روی start کلیک میکنم بسته میشه

	Dim dir As String
		dir=File.DirRootExternal&",rec"
		audiorecord.startRecord(dir)

متن ارور :

*** Service (starter) Create ***
** Service (starter) Start **
** Activity (main) Create, isFirst = true **
** Activity (main) Resume **
java.lang.NullPointerException: Attempt to invoke virtual method 'void java.io.OutputStream.close()' on a null object reference
	at com.audio.record.audioutils.AudioRecordThread.run(AudioRecordThread.java:70)
	at java.lang.Thread.run(Thread.java:919)
** Activity (main) Pause, UserClosed = true **

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در در 4 مهر 1399 در 12:33، mohammadjavadmajidi گفته است :

dir=File.DirRootExternal&",rec"

این اشتباهه دوست عزیز. شما کار با فایلها رو باید حتما یاد بگیرید.به شکل زیر باید بنویسید

dir=File.DirRootExternal&"/rec"

دسترسی رانتایم کارت حافظه هم حتما واضحه که باید بگیرید

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در در 6 مهر 1399 در 19:25، محمدرضا شاهپیری گفته است :

این اشتباهه دوست عزیز. شما کار با فایلها رو باید حتما یاد بگیرید.به شکل زیر باید بنویسید


dir=File.DirRootExternal&"/rec"

دسترسی رانتایم کارت حافظه هم حتما واضحه که باید بگیرید

خیلی لطف کردید ، بله دسترسی رو دادم

:53:

لینک ارسال
به اشتراک گذاری در سایت های دیگر

  • 2 هفته بعد...

سلام ، این ارور برای چی هست ؟

*** Service (starter) Create ***
** Service (starter) Start **
** Activity (main) Create, isFirst = true **
** Activity (main) Resume **
** Activity (main) Pause, UserClosed = false **
sending message to waiting queue (activity_permissionresult)
running waiting messages (1)
** Activity (main) Resume **
java.lang.NullPointerException: Attempt to invoke virtual method 'void java.io.OutputStream.close()' on a null object reference
	at com.audio.record.audioutils.AudioRecordThread.run(AudioRecordThread.java:70)
	at java.lang.Thread.run(Thread.java:919)
** Activity (main) Pause, UserClosed = true **

دستور ضبط هم به این شکله :


Sub btnStartRecording_Click
	If audiorecord.isRecording=False Then
		Dim dir As String
		dir=File.DirDefaultExternal&"/rec"
		audiorecord.startRecord(dir)
		recordingStart = DateTime.Now
		timer1.Enabled = True
		Timer1_Tick
		btnPlay.Enabled = False
	Else
		ToastMessageShow("در حال ضبط!!",False)
	End If
End Sub

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

  • 3 ماه بعد...

با سلام خدمت استاد شاهپیری ، چطور میتوانم صدای ضبط شده را به اسم دلخواه ذخیره کنم ؟

با سپاس

لینک ارسال
به اشتراک گذاری در سایت های دیگر

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .
توجه: مطلب ارسالی شما پس از تایید مدیریت برای همه قابل رویت خواهد بود.

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.

×
  • اضافه کردن...