PHP Classes

File: examples/case-studies/electronics/audio_rlc_fir_processing/audio_rlc_fir_processing-GR.md

Recommend this page to a friend!
  Packages of Christos Drogidis   Ascoos OS   examples/case-studies/electronics/audio_rlc_fir_processing/audio_rlc_fir_processing-GR.md   Download  
File: examples/case-studies/electronics/audio_rlc_fir_processing/audio_rlc_fir_processing-GR.md
Role: Documentation
Content type: text/markdown
Description: Documentation
Class: Ascoos OS
A PHP Web 5.0 Kernel for decentralized web and IoT
Author: By
Last change: Update of examples/case-studies/electronics/audio_rlc_fir_processing/audio_rlc_fir_processing-GR.md
Date: 9 months ago
Size: 5,494 bytes
 

Contents

Class file image Download

?????????? ??? ??????????? ??????? ?? RLC Band-Pass ?????? ??? ??????? FIR ??????

???? ? ?????? ?????????? ??????????? ??? ?? Ascoos OS ?????? ?? ?????????????? ??? ?? ????????? ???? ?????????? RLC ??????????? ???????, ??? ???????? ???????? FIR ??????? ?? ???? ????, ?? ?????????? SPICE netlist ??? ???????????, ??? ??? ??????????? ???? ?? ????????, ?????????????? ??? ??? fade. ????????, ????????? ??????? ????????? ??????????.

??????

?? ?????????? ????????? ??? ???????? ??????? ??? Ascoos OS: - TElectronicsHandler: ??????????? ?????????? RLC ??????? ??? ???????? ??????????. - TCircuitHandler: ?????????? SPICE netlist ??? ???????????. - TDigitalCircuitHandler: ?????????? FIR ??????? ??? ??????? ????????? ??????????. - TAudioHandler: ??????????? ???? (????????, ??????????????, fade-in/out). - TValidationHandler: ????????? ?????????? ???????. - TEventHandler: ????????? ????????? ????????????. - TErrorMessageHandler: ?????????? ????????? ??? ??????????. - TArrayGraphHandler: ?????????? ?????????? ????????? ??????????.

????

? ?????? ??????????? ?? ??? ?????? PHP: - audio_rlc_fir_processing.php: ???????????? ????????? RLC ???????, ??????? ??????????? ????, ???????, ??? ?????????? ????????.

??????????????

  1. ??????????? ??? Ascoos OS (????? repository).
  2. ???????? ?? ?????? WAV ???? (?.?., `input_audio.wav`) ??? `$AOS_TMP_DATA_PATH`.
  3. ?????????? ???????? ????? ???????? `$AOS_LOGS_PATH` ??? `$AOS_TMP_DATA_PATH/reports/audio_rlc_fir/`.
  4. ????????????? ????????????? (?.?., Murecho) ??? ?????????.

??????????

  1. ??????????? ??? ?????? WAV ??? `$AOS_TMP_DATA_PATH`.
  2. ????????? ?? script ???? web server:
    https://localhost/aos/examples/case-studies/electronics/audio_rlc_fir_processing/audio_rlc_fir_processing.php
    

?????????? ??????

$electronicsHandler = new TElectronicsHandler();
$centerFrequency = 1000; // Hz
$resistance = 1000; // 1 k?
$inductance = 0.1; // 100 mH
$capacitance = 1 / (4 pi() pi() $inductance $centerFrequency * $centerFrequency);
$bandpassGain = $electronicsHandler->bandpassFilterGain($centerFrequency, $resistance, $inductance, $capacitance);

$digitalHandler = new TDigitalCircuitHandler();
$firCoefficients = [0.25, 0.5, 0.25];
$signal = $audioHandler->readWavFile("input_audio.wav");
$filteredSignal = $digitalHandler->applyFIRFilter($firCoefficients, $signal);

$audioHandler = new TAudioHandler();
$trimmedSignal = $audioHandler->trimSignal($filteredSignal, 1.0, 9.0, 44100);
$signalWithFade = $audioHandler->fadeIn($trimmedSignal, 44100 * 0.5);
$signalWithFade = $audioHandler->fadeOut($signalWithFade, 44100 * 0.5);
$normalizedSignal = $audioHandler->normalizeSignal($signalWithFade, 0.9);
$audioHandler->writeWavFile($normalizedSignal, 44100, "processed_audio.wav");

??????????? ??????????

?? script ??????????: - ??? SPICE netlist ?????? (rlc_filter.sp). - ??? ??????? ????????? ?????????? ??? FIR ??????? (fir_frequency_response.png). - ??? ????????????? ?????? WAV (processed_audio.wav). - ??? JSON ?????? ???????? (audio_rlc_fir_report.json):

{
    "rlc_filter": {
        "center_frequency": 1000,
        "resistance": 1000,
        "inductance": 0.1,
        "capacitance": 2.533e-5,
        "gain_at_center": 0.707
    },
    "fir_filter": {
        "coefficients": [0.25, 0.5, 0.25]
    },
    "signal_stats": {
        "samples": 352800,
        "duration": 8
    }
}

?????

??????????

?????? ?? ???????????? ?? ???? ?? ?????? ??????????; ????? fork ?? ??????????, ???????????? ? ????????? ???? ??????????? ??? audio_rlc_fir_processing.php, ??? ????????? pull request. ????? ?? CONTRIBUTING.md ??? ???????.

????? ??????

???? ? ?????? ?????????? ?????????? ??? ??? Ascoos General License (AGL). ????? ?? LICENSE.