


Penyelesaian terbaik kepada AEC dengan mengalihkan algoritma matlab/oktaf ke C
Oct 17, 2024 pm 06:13 PMSelesai! Agak kagum dengan diri saya.
Produk kami memerlukan fungsi pembatalan gema, tiga kemungkinan penyelesaian teknikal telah dikenal pasti,
1) gunakan MCU untuk mengesan audio keluar dan audio dalam isyarat audio, tulis algoritma untuk mengira kekuatan kedua-dua belah isyarat bunyi, mengikut kekuatan keluar audio dan audio di antara dua penukaran saluran pilihan, untuk mencapai kesan panggilan separuh dupleks, tetapi kini di pasaran adalah kesan panggilan dupleks penuh, separuh dupleks akan menjadikan produk berdaya saing lebih rendah
(2) Gunakan algoritma pembatalan gema daripada vendor CPU, penghapusan gema ujian sebenar tidak cukup bersih oleh semua penalaan parameter boleh laras dan banyak perbincangan bulat dengan vendor, jauh daripada kesan yang dijangkakan. maklum balas daripada vendor adalah untuk menambah baik perumahan untuk mengasingkan MIC sejauh mungkin dari pembesar suara, Tetapi tiada ruang untuk menukar perumahan kerana reka bentuk ID, kualiti bunyi dan keperluan volum.
(3) Muat turun algoritma pembatalan gema sumber terbuka seperti webrtc dan speex daripada Internet, dan alihkannya ke produk selepas penyusunan silang.
4) Beli algoritma daripada syarikat yang pakar dalam algoritma audio, tetapi setiap produk memerlukan kos tambahan, yang akan mengurangkan daya saing produk dengan ketara.
Selepas menimbang pilihan, saya memutuskan untuk melakukan penyelidikan mendalam tentang penyelesaian menggunakan algoritma sumber terbuka;
Jadi, saya memuat turun satu siri kod pembatalan gema daripada github, gitee dan tapak lain, dalam C dan matlab.
Sintesis kedua-dua suara dengan oktaf untuk menjana bahagian adegan berbual dua dengan suara tangkapan mikrofon hujung dekat serta suara rujukan hujung jauh.
Kemudian jalankan kod yang dimuat turun dalam talian untuk pembatalan gema, analisis audio output dan pilih algoritma yang paling berkesan antaranya.
Daripada keputusan, algoritma AEC bagi pemprosesan audio webrtc adalah tidak baik, pembatalan gema tidak bersih, dan jelas menelan kata-kata dalam adegan percakapan dua kali. Algoritma AEC3 bagi pemprosesan audio webrtc adalah bersih, tetapi ia menyekat bunyi hujung bicara dua kali dengan sangat banyak, dan bunyi itu berselang-seli dan tidak semula jadi;
Speex mempunyai gema sedikit, yang terbaik adalah mencari pelaksanaan bahasa matlab bagi algoritma aec, penghapusan gema sangat bersih, dua kali bercakap hanya fenomena menelan perkataan sedikit.
Kemudian, saya menggunakan studio visual untuk menyusun dan menyahpepijat kod sumber terbuka webrtc audioprocessing aec, rujuk algoritma aec matlab di atas untuk mengubah suai kod, menggunakan penyahpepijatan dalam talian untuk menetapkan titik putus, berjalan satu langkah dan analisis lain bagi nilai penyataan demi langkah berubah, dan akhirnya mendapat data dan keputusan algoritma aec bahasa matlab adalah sama Data akhir yang diperolehi adalah sama persis dengan hasil algoritma aec dalam matlab;
Hari ini disusun kepada produk, keuntungan MIC dan SPEAKER diselaraskan kepada nilai yang munasabah, dan kemudian panggilan sebenar untuk menguji kesan pembatalan gema, hasilnya sangat baik.
Oleh itu, ada harapan untuk mereka bentuk produk yang boleh mencapai jualan melebihi sasaran kecil.
Atas ialah kandungan terperinci Penyelesaian terbaik kepada AEC dengan mengalihkan algoritma matlab/oktaf ke C. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Ya, kelebihan fungsi adalah bentuk polimorfik dalam C, khususnya polimorfisme kompilasi masa. 1. Kelebihan fungsi membolehkan pelbagai fungsi dengan nama yang sama tetapi senarai parameter yang berbeza. 2. Pengkompil memutuskan yang berfungsi untuk memanggil pada masa penyusunan berdasarkan parameter yang disediakan. 3.

C mempunyai dua jenis polimorf utama: polimorfisme kompilasi masa dan polimorfisme jangka masa. 1. Polimorfisme masa kompilasi dilaksanakan melalui fungsi overloading dan templat, memberikan kecekapan yang tinggi tetapi boleh menyebabkan kod kembung. 2. Polimorfisme runtime dilaksanakan melalui fungsi maya dan warisan, memberikan fleksibiliti tetapi overhead prestasi.

Ya, polimorfisme di C sangat berguna. 1) Ia menyediakan fleksibiliti untuk membolehkan penambahan mudah jenis baru; 2) Menggalakkan penggunaan semula kod dan mengurangkan pertindihan; 3) Memudahkan penyelenggaraan, menjadikan kod lebih mudah untuk berkembang dan menyesuaikan diri dengan perubahan. Walaupun terdapat cabaran pengurusan prestasi dan memori, kelebihannya amat penting dalam sistem yang kompleks.

C destructorscanleadtoSeveralCommonerrors.toavoidthem: 1) pencegahandoubledeletionbysettingpointerstonullptrorusingsmartpointers.2)

Orang yang belajar python pemindahan ke c kekeliruan yang paling langsung adalah: Mengapa anda tidak boleh menulis seperti python? Kerana C, walaupun sintaks lebih kompleks, menyediakan keupayaan kawalan asas dan kelebihan prestasi. 1. Dari segi struktur sintaks, C menggunakan pendakap kerinting {} dan bukannya lekukan untuk mengatur blok kod, dan jenis pembolehubah mesti diisytiharkan secara eksplisit; 2. Dari segi sistem jenis dan pengurusan ingatan, C tidak mempunyai mekanisme pengumpulan sampah automatik, dan perlu menguruskan memori secara manual dan memberi perhatian kepada melepaskan sumber. Teknologi RAII boleh membantu pengurusan sumber; 3. 4. Dari segi perpustakaan standard, STL menyediakan bekas dan algoritma yang kuat, tetapi perlu menyesuaikan diri dengan idea pengaturcaraan generik; 5

Polimorfisme dalam C dibahagikan kepada polimorfisme runtime dan polimorfisme kompilasi masa. 1. Polimorfisme runtime dilaksanakan melalui fungsi maya, yang membolehkan kaedah yang betul dipanggil secara dinamik pada masa runtime. 2. Polimorfisme masa kompilasi dilaksanakan melalui fungsi overloading dan templat, memberikan prestasi dan fleksibiliti yang lebih tinggi.

C Polymorphisminkludescompile-time, runtime, andtemplatePolymorphism.1) compile-timePolymorphismusesfunctionandoperatoroveroveroverfiency.2) runtimepolymorphismemplempemplemplorfuntionsflonflexibility.3) TemplatePolymorphismenabenabenabenabenabenaben

C Polymorphismisuniqueduetoitscombinationofcompile-timeandruntimePolymorphism, membolehkanforbotheficiencyandflexibility.toharnessitspowerstylishly: 1) menggunakanmartpointerslikestd :: unik_ptrformemorymanagement, 2)
