অডিও রেকর্ড করার জন্য অ্যান্ড্রয়েড অডিও রেকর্ড বনাম মিডিয়া রেকর্ডার


94

আমি আমার অ্যান্ড্রয়েড ফোনে মানুষের ভয়েস রেকর্ড করতে চাই। আমি লক্ষ্য করেছি যে অ্যান্ড্রয়েডের এটি করার জন্য দুটি শ্রেণি রয়েছে: অডিওরেকর্ড এবং মিডিয়ারেকর্ডার । কেউ আমাকে বলতে পারেন যে দুজনের মধ্যে পার্থক্য কী এবং প্রত্যেকের জন্য উপযুক্ত ব্যবহারের ক্ষেত্রে কী কী?

প্রশস্ততা ইত্যাদি পরিমাপ করার জন্য আমি রিয়েল-টাইমে মানুষের বক্তৃতা বিশ্লেষণ করতে সক্ষম হতে চাই ইত্যাদি I আমি কী বুঝতে পারি যে অডিওরেকর্ড এই কাজের জন্য আরও উপযুক্ত?

অডিও রেকর্ড করার জন্য আমি অফিসিয়াল অ্যান্ড্রয়েড গাইড ওয়েবপৃষ্ঠায় লক্ষ্য করেছি , তারা অডিওরেকর্ডের কোনও উল্লেখ না করে মিডিয়া রেকর্ডার ব্যবহার করে।

উত্তর:


85

আপনি আপনার বিশ্লেষণ করতে যখন রেকর্ডিং এখনো চলছে চান, আপনি ব্যবহার করতে হবে AudioRecord, যেমন MediaRecorderএকটি ফাইলে স্বয়ংক্রিয়ভাবে রেকর্ড করে। AudioRecordঅসুবিধা আছে, যে ফোন করার পরে উদাহরণ startRecording()থেকে নিজেকে ডেটা পোল করা প্রয়োজন AudioRecord। এছাড়াও, আপনাকে অবশ্যই ডেটাটি দ্রুত পড়তে এবং প্রসেস করতে হবে যাতে অভ্যন্তরীণ বাফারটি ওভাররন না হয় (লগক্যাট আউটপুটটি দেখুন, AudioRecordকখন তা ঘটবে তা আপনাকে জানাবে)।


আপনার কাছে অডিওরেকর্ডের নমুনা কোড রয়েছে? আমি যেগুলি পেয়েছি তাদের বেশিরভাগ হ'ল মিডিয়া রেকর্ডার ...
রোমেল পারস

@ রোমেলপরাস অ্যান্ড্রয়েড উত্সের জন্য "টেলিগ্রাম" এ এই শ্রেণিতে দেখছেন। github.com/DrKLO/Telegram/blob/master/TMessagesProj/src/main/…
ডেভিড

@ ডেভিড আপনি কি আরও বেসিক নমুনা জানেন? এক যে নিজের কাজ করে?
অ্যান্ড্রয়েড বিকাশকারী

দুর্ভাগ্যক্রমে না।
ডেভিড

35

যেহেতু আমি বুঝতে পারি MediaRecorderএকটি কালো বাক্স যা আউটপুটটিতে সংকোচিত অডিও ফাইল AudioRecorderদেয় এবং আপনাকে কেবল কাঁচা শব্দ প্রবাহ দেয় এবং আপনাকে এটিকে নিজের দ্বারা সংকুচিত করতে হবে।

MediaRecorderআপনাকে getMaxAmplitude()পদ্ধতির শেষ কল থেকে সর্বাধিক স্বীকৃতি দেয় যাতে আপনি উদাহরণস্বরূপ একটি শব্দ ভিজ্যুয়ালাইজার প্রয়োগ করতে পারেন।

সুতরাং বেশিরভাগ ক্ষেত্রেই MediaRecorderআপনার পক্ষে কিছু জটিল সাউন্ড প্রসেসিং করা উচিত এবং কাঁচা অডিও স্ট্রিমের অ্যাক্সেস থাকা উচিত except


4
GetMaxAmplitude () পদ্ধতিটি উল্লেখ করার জন্য ধন্যবাদ। সম্ভবত এটি আমার প্রয়োজন।
ধীররাজ ভাস্কার

আমি মিডিয়া রেকর্ডার ব্যবহার করে ভিজ্যুয়ালাইজার কীভাবে প্রয়োগ করতে পারি?
ওয়ানপঞ্চমান

4
GetMaxAmplitude ঠিক এখানে কি সহায়তা করে? ভিজ্যুয়ালাইজারের জন্য প্রতিটি মুহুর্তে আপনার বর্তমানের দরকার নেই?
অ্যান্ড্রয়েড বিকাশকারী

18

অডিওরেকর্ডার প্রথমে মিনিবুফারে ডেটা সংরক্ষণ করে তা সেখান থেকে অস্থায়ী বাফারে অনুলিপি করা হয়, মিডিয়া রেকর্ডারে এটি ফাইলগুলিতে অনুলিপি করা হয়। অডিওরেকর্ডারে আমাদের প্রয়োজনীয় অবস্থানে সংরক্ষিত ডেটা অনুলিপি করার জন্য এপিআই সেটরেকর্ডপজিশন () প্রয়োজন, অন্যদিকে মিডিয়া রেকর্ডারে ফাইল পয়েন্টারটি মার্কারের অবস্থান নির্ধারণের জন্য এই কাজটি করে। অডিওরেকর্ডারটি সেই অ্যাপ্লিকেশনগুলিতে ব্যবহার করা যেতে পারে যা কোনও এমুলেটরটিতে চালিত হয় এটি কম স্যাম্পল রেট যেমন 8000 সরবরাহের মাধ্যমে করা যেতে পারে, মিডিয়া রেকর্ডার ব্যবহার করে অডিও এমুলেটর ব্যবহার করে অডিও রেকর্ড করা যায় না। অডিওরেকর্ডে কিছুক্ষণ পরে পর্দা ঘুমায়, যখন মিডিয়ারেকর্ডারে স্ক্রিনটি ঘুমায় না।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.