ايران ويج

نسخه‌ی کامل: هم الكترو نيك هم كامپيو تر
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
صفحه‌ها: 1 2 3
کد:
WAVRECORD Record sound using Windows audio input device.
    WAVRECORD(N,FS,CH) records N audio samples at FS Hertz from
    CH number of input channels from the Windows WAVE audio device.
    Standard audio rates are 8000, 11025, 22050, and 44100 Hz.  CH
    can be 1 or 2 (mono or stereo).  Samples are returned in a matrix
    of size N x CH.  If not specified, FS=11025 Hz, and CH=1.

    WAVRECORD(..., DTYPE) records and returns data using the data type
    specified by DTYPE.  Supported data types and the corresponding
    number of bits per sample recorded in each format are as follows:
         DTYPE     bits/sample
        'double'      16
        'single'      16
        'int16'       16
        'uint8'        8

    This function is only for use with 32-bit Windows machines.

    Example: Record and play back 5 seconds of 16-bit audio
             sampled at 11.025 kHz.
        Fs = 11025;
        y  = wavrecord(5*Fs, Fs, 'int16');
        wavplay(y, Fs);

    See also WAVPLAY, WAVREAD, WAVWRITE.
اين هم كه بهزاد ميگه خيلي خوبه اگه از مطلب نمي خواي استفاده كني خيلي عاليه (اگه بهزاد لينك داري بزار )
خروجي اين تابع دامنه صداست واحد هم زمان مقدارش هم 1/f باشه f تو مخرجه :wink:
سلام آفا بهزاد و با تشكر از راهنمائي شما

نقل قول: كه ميتونين سورس زبان سي اونو از نت گير بيارين يا بگين من بزارم تو سايت

نقل قول: اين هم كه بهزاد ميگه خيلي خوبه اگه از مطلب نمي خواي استفاده كني خيلي عاليه (اگه بهزاد لينك داري بزار )


از قديم گفتند كه نيكي و پرسش؟
سلام آقا هادي

من سعي كردم كد شما را در دلفي با api پياده كنم. براي اين كار به نظرم مراحل زير را بايد ايجاد
كرد:
1) اختصاص دادن بافر به كارت صدا با WaveIn
2)گرفتن صدا ورودي
3)ايجاد يك تايمر كه در حقيقت نرخ نمونه برداري را مشخص مي كند
4)خواندن بافر در هر پالس و ذخيره آن

نظر شما چيست؟
همون تابعي كه بافر كارت صوتي رو مي خونه (يا از همون خوانواده) نرخ نمونه برداري رو هم بايد تنظيم كنه چون شما نمي توني مثلا اگه 11000 سمپل بر ثانيه بخواي نمي توني تايمري رو با اين سرعت داشته باشي حداكثر سرعتي رو كه تو تايمر ها مي توني استفاده كني 16/1 ثانيه است (فكر كنم) بنابراين نرخ نمونه برداري بايد با تنظيمات كارت صوتي باشه تو msdn‌ يه سري بزني پيدا مي كني
سلام
نقل قول: همون تابعي كه بافر كارت صوتي رو مي خونه (يا از همون خوانواده) نرخ نمونه برداري رو هم بايد تنظيم كنه
منظورم نرخ نمونه برداري از بافر بود نه نرخ نمونه برداري كارت صدا كه با WAVEHDR تنظيم مي

شود. به هر حال آنچه گفتم ناقص است و بايد كامل شود. اگر شما مطلبي به نظر تان مي رسد

لطفآ بيان نمائيد.
صفحه‌ها: 1 2 3