@jjlmoya/utils-forensic-science 1.12.0 → 1.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/category/index.ts +3 -1
- package/src/entries.ts +5 -1
- package/src/index.ts +1 -0
- package/src/tests/locale_completeness.test.ts +2 -2
- package/src/tests/tool_validation.test.ts +2 -2
- package/src/tool/voice-spectrogram-analyzer/audio-runtime.ts +75 -0
- package/src/tool/voice-spectrogram-analyzer/bibliography.astro +14 -0
- package/src/tool/voice-spectrogram-analyzer/bibliography.ts +16 -0
- package/src/tool/voice-spectrogram-analyzer/component.astro +116 -0
- package/src/tool/voice-spectrogram-analyzer/controller.ts +219 -0
- package/src/tool/voice-spectrogram-analyzer/dom-views.ts +204 -0
- package/src/tool/voice-spectrogram-analyzer/entry.ts +31 -0
- package/src/tool/voice-spectrogram-analyzer/evaluator.ts +13 -0
- package/src/tool/voice-spectrogram-analyzer/fft.ts +64 -0
- package/src/tool/voice-spectrogram-analyzer/i18n/de.ts +135 -0
- package/src/tool/voice-spectrogram-analyzer/i18n/en.ts +122 -0
- package/src/tool/voice-spectrogram-analyzer/i18n/es.ts +122 -0
- package/src/tool/voice-spectrogram-analyzer/i18n/fr.ts +135 -0
- package/src/tool/voice-spectrogram-analyzer/i18n/id.ts +136 -0
- package/src/tool/voice-spectrogram-analyzer/i18n/it.ts +135 -0
- package/src/tool/voice-spectrogram-analyzer/i18n/ja.ts +135 -0
- package/src/tool/voice-spectrogram-analyzer/i18n/ko.ts +135 -0
- package/src/tool/voice-spectrogram-analyzer/i18n/nl.ts +136 -0
- package/src/tool/voice-spectrogram-analyzer/i18n/pl.ts +136 -0
- package/src/tool/voice-spectrogram-analyzer/i18n/pt.ts +135 -0
- package/src/tool/voice-spectrogram-analyzer/i18n/ru.ts +136 -0
- package/src/tool/voice-spectrogram-analyzer/i18n/sv.ts +136 -0
- package/src/tool/voice-spectrogram-analyzer/i18n/tr.ts +136 -0
- package/src/tool/voice-spectrogram-analyzer/i18n/zh.ts +135 -0
- package/src/tool/voice-spectrogram-analyzer/index.ts +11 -0
- package/src/tool/voice-spectrogram-analyzer/logic.test.ts +46 -0
- package/src/tool/voice-spectrogram-analyzer/logic.ts +163 -0
- package/src/tool/voice-spectrogram-analyzer/seo.astro +15 -0
- package/src/tool/voice-spectrogram-analyzer/storage.ts +33 -0
- package/src/tool/voice-spectrogram-analyzer/ui.ts +49 -0
- package/src/tool/voice-spectrogram-analyzer/voice-spectrogram-analyzer.css +547 -0
- package/src/tools.ts +3 -1
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
2
|
+
import type { VoiceSpectrogramLocaleContent } from '../entry';
|
|
3
|
+
|
|
4
|
+
const slug = "analisador-espectrograma-voz-online";
|
|
5
|
+
const title = "Analisador de Espectrograma de Voz Online";
|
|
6
|
+
const description = "Visualize a frequência, tempo, intensidade e formantes de duas amostras de áudio de forma privada no seu navegador.";
|
|
7
|
+
|
|
8
|
+
const howTo = [
|
|
9
|
+
{
|
|
10
|
+
"name": "Selecione duas amostras",
|
|
11
|
+
"text": "Utilize ficheiros locais ou os exemplos sintéticos."
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"name": "Ajuste o teto de frequência",
|
|
15
|
+
"text": "Escolha 4, 6 ou 8 kHz conforme o tipo de voz."
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"name": "Examine o espectrograma",
|
|
19
|
+
"text": "Analise tempo, frequência e formantes."
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"name": "Escute e compare",
|
|
23
|
+
"text": "Compare as médias F1, F2 e F3 pedagogicamente."
|
|
24
|
+
}
|
|
25
|
+
];
|
|
26
|
+
|
|
27
|
+
const faq = [
|
|
28
|
+
{
|
|
29
|
+
"question": "O que mostra um espectrograma de voz?",
|
|
30
|
+
"answer": "Um espectrograma mapeia o tempo no eixo horizontal, a frequência no vertical e a energia pela luminosidade."
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"question": "As minhas gravações são enviadas para um servidor?",
|
|
34
|
+
"answer": "Não. Todo o processo é executado localmente."
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"question": "O que são F1, F2 e F3?",
|
|
38
|
+
"answer": "São estimativas educativas das ressonâncias do trato vocal."
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"question": "Esta ferramenta pode identificar um falante?",
|
|
42
|
+
"answer": "Não. Semelhança visual não constitui prova biométrica."
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"question": "Por que os formantes mudam com o teto de frequência?",
|
|
46
|
+
"answer": "A escala de frequência altera a separação dos picos."
|
|
47
|
+
}
|
|
48
|
+
];
|
|
49
|
+
|
|
50
|
+
export const content: VoiceSpectrogramLocaleContent = {
|
|
51
|
+
slug,
|
|
52
|
+
title,
|
|
53
|
+
description,
|
|
54
|
+
ui: {
|
|
55
|
+
"privacyBadge": "Apenas local",
|
|
56
|
+
"privacyNote": "As suas gravações permanecem no seu dispositivo. O processamento ocorre no navegador.",
|
|
57
|
+
"loadHeading": "Carregue dois sons para analisar",
|
|
58
|
+
"sampleALabel": "Amostra A",
|
|
59
|
+
"sampleBLabel": "Amostra B",
|
|
60
|
+
"chooseFileLabel": "Selecionar áudio",
|
|
61
|
+
"replaceFileLabel": "Substituir áudio",
|
|
62
|
+
"dropHint": "Arraste um ficheiro de áudio para aqui (máx. 25 MB). Os primeiros 20 segundos serão analisados.",
|
|
63
|
+
"presetHint": "Experimente os dois estudos sintéticos de vogais.",
|
|
64
|
+
"presetWarmLabel": "Estudo de vogal quente",
|
|
65
|
+
"presetBrightLabel": "Estudo de vogal brilhante",
|
|
66
|
+
"emptySampleLabel": "A aguardar áudio",
|
|
67
|
+
"readySampleLabel": "Placa espectral gerada",
|
|
68
|
+
"decodingSampleLabel": "A processar placa espectral",
|
|
69
|
+
"errorSampleLabel": "Não foi possível analisar a amostra",
|
|
70
|
+
"durationLabel": "Duração",
|
|
71
|
+
"ceilingHeading": "Teto de frequência",
|
|
72
|
+
"ceilingFourLabel": "4 kHz",
|
|
73
|
+
"ceilingSixLabel": "6 kHz",
|
|
74
|
+
"ceilingEightLabel": "8 kHz",
|
|
75
|
+
"stageLabel": "Mosaico de espectrogramas espelhados",
|
|
76
|
+
"mirrorViewLabel": "Placas espelhadas",
|
|
77
|
+
"splitViewLabel": "Placas paralelas",
|
|
78
|
+
"playALabel": "Reproduzir amostra A",
|
|
79
|
+
"playBLabel": "Reproduzir amostra B",
|
|
80
|
+
"stopLabel": "Parar",
|
|
81
|
+
"timeAxisLabel": "Tempo",
|
|
82
|
+
"frequencyAxisLabel": "Frequência",
|
|
83
|
+
"intensityLegendLabel": "Tinta mais brilhante indica maior energia sonora",
|
|
84
|
+
"formantLegendLabel": "Guias de formantes estimados",
|
|
85
|
+
"sampleAEmptyCanvasLabel": "Carregue a amostra A para ver o espectro",
|
|
86
|
+
"sampleBEmptyCanvasLabel": "Carregue a amostra B para ver o espectro",
|
|
87
|
+
"comparisonHeading": "Análise de ressonâncias espectrais",
|
|
88
|
+
"comparisonNote": "Valores médios dos picos espectrais. As diferenças são medições físicas, não uma prova de identidade.",
|
|
89
|
+
"formantOneLabel": "Primeira região de ressonância (F1)",
|
|
90
|
+
"formantTwoLabel": "Segunda região de ressonância (F2)",
|
|
91
|
+
"formantThreeLabel": "Terceira região de ressonância (F3)",
|
|
92
|
+
"averageLabel": "Média",
|
|
93
|
+
"differenceLabel": "Diferença",
|
|
94
|
+
"unavailableLabel": "Não disponível",
|
|
95
|
+
"statusEmptyLabel": "Carregue uma amostra para começar",
|
|
96
|
+
"statusSingleLabel": "Uma placa pronta",
|
|
97
|
+
"statusReadyLabel": "Ambas as placas espectrais prontas",
|
|
98
|
+
"limitError": "O ficheiro excede o limite local de 25 MB.",
|
|
99
|
+
"decodeError": "O navegador não conseguiu descodificar o ficheiro.",
|
|
100
|
+
"browserError": "API Web Audio não disponível neste navegador.",
|
|
101
|
+
"educationalNote": "Ferramenta educativa. As guias de formantes não devem ser usadas para identificação forense de voz."
|
|
102
|
+
},
|
|
103
|
+
seo: [
|
|
104
|
+
{ type: 'title', text: "Como um espectrograma transforma som em imagem", level: 2 },
|
|
105
|
+
{ type: 'paragraph', html: "Um <strong>espectrograma de voz</strong> transforma uma gravação num mapa visual onde o tempo decorre no eixo horizontal e a frequência no vertical. Uma energia mais forte surge com cor mais brilhante. Isso torna as vogais sustentadas, harmónicos, silêncio e ressonâncias mais fáceis de observar do que numa forma de onda tradicional. Esta representação facilita a análise do sinal." },
|
|
106
|
+
{ type: 'paragraph', html: "O analisador divide o sinal em pequenos segmentos sobrepostos, aplica uma janela de Hamming e calcula a distribuição de energia por frequência via FFT. Um segmento curto permite situar precisamente um evento, enquanto a resolução em frequência mostra onde a energia se concentra. Devido ao princípio da incerteza, existe sempre um compromisso entre resolução temporal e frequencial. Estas configurações definem a nitidez." },
|
|
107
|
+
{ type: 'diagnostic', variant: 'info', title: "Processamento privado no navegador", html: "Visualize a frequência, tempo, intensidade e formantes de duas amostras de áudio de forma privada no seu navegador." },
|
|
108
|
+
{ type: 'stats', columns: 3, items: [
|
|
109
|
+
{ value: "Tempo", label: "Leitura da esquerda para a direita" },
|
|
110
|
+
{ value: "Hz", label: "Posição de frequência" },
|
|
111
|
+
{ value: "Energia", label: "Representada pelo brilho" }
|
|
112
|
+
] },
|
|
113
|
+
{ type: 'title', text: "Interpretar formantes com responsabilidade", level: 3 },
|
|
114
|
+
{ type: 'paragraph', html: "Os formantes são regiões de ressonância moldadas pelo trato vocal. F1 e F2 são usados na fonética para descrever a altura e o local de articulação das vogais. Este analisador rastreia picos suavizados em três regiões de frequência para que os utilizadores relacionem as bandas visíveis ao comportamento de F1, F2 e F3." },
|
|
115
|
+
{ type: 'paragraph', html: "A medição profissional de formantes utiliza normalmente uma codificação preditiva linear (LPC) ajustada ao falante. Os harmónicos do fundamental, ruído de fundo, reverberação e compressão de áudio podem deslocar estimativas simples. Utilize estas guias como referências didáticas e controle sempre o espectro subjacente." },
|
|
116
|
+
{ type: 'table', headers: ['Guide', 'Region', 'Meaning'], rows: [["F1","180 a 1000 Hz","Primeira região de ressonância, associada à abertura da vogal"],["F2","900 a 3000 Hz","Segunda região de ressonância, associada à posição da língua"],["F3","2000 a 4500 Hz","Região de ressonância superior, influenciada pelo trato vocal"]] },
|
|
117
|
+
{ type: 'title', text: "O impacto dos ajustes de frequência", level: 3 },
|
|
118
|
+
{ type: 'comparative', columns: 2, items: [
|
|
119
|
+
{ title: "Teto baixo (4 kHz)", description: "Melhor visualização de frequências baixas", points: ["Útil para vogais", "Pode excluir alta energia", "Não garante maior precisão"] },
|
|
120
|
+
{ title: "Teto alto (6/8 kHz)", description: "Mais detalhes superiores", highlight: true, points: ["Para vozes brilhantes", "Mostra fricativas", "Comprime bandas inferiores"] }
|
|
121
|
+
] },
|
|
122
|
+
{ type: 'title', text: "Comparação adequada entre duas amostras de voz", level: 3 },
|
|
123
|
+
{ type: 'paragraph', html: "A comparação entre duas placas é especialmente útil quando as gravações contêm a mesma vogal ou frase em condições acústicas semelhantes. As diferenças apresentadas são distâncias físicas absolutas. Não constituem uma percentagem de semelhança nem uma prova biométrica de identidade." },
|
|
124
|
+
{ type: 'list', items: ["<strong>Comparar o mesmo conteúdo falado:</strong> vogais ou palavras idênticas facilitam o contraste.","<strong>Harmonizar condições de gravação:</strong> o microfone e a acústica influenciam fortemente o espectro.","<strong>Ouvir com o cursor:</strong> relacione eventos visuais com o som exato.","<strong>Evitar afirmações de identidade:</strong> um espectrograma semelhante não prova a identidade do falante."] },
|
|
125
|
+
{ type: 'summary', title: "Resumo do analisador", items: ["Gerar um espectrograma de áudio localmente a partir de ficheiros compatíveis.","Explorar duas amostras em placas espelhadas ou paralelas.","Aprender como a energia espectral e os formantes variam.","Manter uma abordagem descritiva e pedagógica."] }
|
|
126
|
+
],
|
|
127
|
+
faq,
|
|
128
|
+
bibliography,
|
|
129
|
+
howTo,
|
|
130
|
+
schemas: [
|
|
131
|
+
{ '@context': 'https://schema.org', '@type': 'SoftwareApplication', name: title, description, applicationCategory: 'MultimediaApplication', operatingSystem: 'Any' },
|
|
132
|
+
{ '@context': 'https://schema.org', '@type': 'FAQPage', mainEntity: faq.map((item) => ({ '@type': 'Question', name: item.question, acceptedAnswer: { '@type': 'Answer', text: item.answer } })) },
|
|
133
|
+
{ '@context': 'https://schema.org', '@type': 'HowTo', name: title, step: howTo.map((step) => ({ '@type': 'HowToStep', name: step.name, text: step.text })) }
|
|
134
|
+
]
|
|
135
|
+
};
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
2
|
+
import type { VoiceSpectrogramLocaleContent } from '../entry';
|
|
3
|
+
|
|
4
|
+
const slug = "analizator-spektrogrammy-golosa-onlajn";
|
|
5
|
+
const title = "Анализатор Спектрограммы Голоса Онлайн";
|
|
6
|
+
const description = "Визуализируйте частоту, время, интенсивность и форманты двух аудиозаписей локально и конфиденциально в вашем браузере.";
|
|
7
|
+
|
|
8
|
+
const howTo = [
|
|
9
|
+
{
|
|
10
|
+
"name": "Выберите два образца",
|
|
11
|
+
"text": "Загрузите файлы с компьютера или используйте синтетические тесты."
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"name": "Настройте предел частоты",
|
|
15
|
+
"text": "Выберите 4, 6 или 8 кГц в зависимости от голоса."
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"name": "Изучите спектрограмму",
|
|
19
|
+
"text": "Анализируйте время, частоты и форманты."
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"name": "Слушайте и сравнивайте",
|
|
23
|
+
"text": "Сравнивайте средние значения F1, F2 и F3."
|
|
24
|
+
}
|
|
25
|
+
];
|
|
26
|
+
|
|
27
|
+
const faq = [
|
|
28
|
+
{
|
|
29
|
+
"question": "Что показывает спектрограмма голоса?",
|
|
30
|
+
"answer": "Спектрограмма показывает время по горизонтали, частоту по вертикали и интенсивность звука с помощью яркости."
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"question": "Загружаются ли мои записи на сервер?",
|
|
34
|
+
"answer": "Нет. Все вычисления выполняются локально в вашем браузере."
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"question": "Что означают F1, F2 и F3?",
|
|
38
|
+
"answer": "Это учебные оценки резонансов речевого тракта."
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"question": "Может ли этот инструмент идентифицировать человека по голосу?",
|
|
42
|
+
"answer": "Нет. Визуальное сходство не является биометрическим доказательством."
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"question": "Почему форманты меняются при смене предела частоты?",
|
|
46
|
+
"answer": "Изменение масштаба частоты влияет на видимое разделение пиков."
|
|
47
|
+
}
|
|
48
|
+
];
|
|
49
|
+
|
|
50
|
+
export const content: VoiceSpectrogramLocaleContent = {
|
|
51
|
+
slug,
|
|
52
|
+
title,
|
|
53
|
+
description,
|
|
54
|
+
ui: {
|
|
55
|
+
"privacyBadge": "Только локально",
|
|
56
|
+
"privacyNote": "Ваши записи остаются на вашем устройстве. Декодирование и анализ работают в браузере.",
|
|
57
|
+
"loadHeading": "Загрузите два аудиофайла для анализа",
|
|
58
|
+
"sampleALabel": "Образец A",
|
|
59
|
+
"sampleBLabel": "Образец B",
|
|
60
|
+
"chooseFileLabel": "Выбрать аудио",
|
|
61
|
+
"replaceFileLabel": "Заменить аудио",
|
|
62
|
+
"dropHint": "Перетащите аудиофайл сюда (макс. 25 МБ). Анализируются первые 20 секунд.",
|
|
63
|
+
"presetHint": "Попробуйте готовые примеры синтетических гласных.",
|
|
64
|
+
"presetWarmLabel": "Теплая гласная",
|
|
65
|
+
"presetBrightLabel": "Яркая гласная",
|
|
66
|
+
"emptySampleLabel": "Ожидание аудио",
|
|
67
|
+
"readySampleLabel": "Спектральная пластина готова",
|
|
68
|
+
"decodingSampleLabel": "Обработка спектрограммы",
|
|
69
|
+
"errorSampleLabel": "Не удалось проанализировать образец",
|
|
70
|
+
"durationLabel": "Длительность",
|
|
71
|
+
"ceilingHeading": "Верхний предел частоты",
|
|
72
|
+
"ceilingFourLabel": "4 кГц",
|
|
73
|
+
"ceilingSixLabel": "6 кГц",
|
|
74
|
+
"ceilingEightLabel": "8 кГц",
|
|
75
|
+
"stageLabel": "Зеркальное отображение спектрограмм",
|
|
76
|
+
"mirrorViewLabel": "Зеркально",
|
|
77
|
+
"splitViewLabel": "Параллельно",
|
|
78
|
+
"playALabel": "Воспроизвести образец A",
|
|
79
|
+
"playBLabel": "Воспроизвести образец B",
|
|
80
|
+
"stopLabel": "Стоп",
|
|
81
|
+
"timeAxisLabel": "Время",
|
|
82
|
+
"frequencyAxisLabel": "Частота",
|
|
83
|
+
"intensityLegendLabel": "Более яркий цвет означает высокую энергию",
|
|
84
|
+
"formantLegendLabel": "Линии оценочных формант",
|
|
85
|
+
"sampleAEmptyCanvasLabel": "Загрузите образец A для просмотра спектрограммы",
|
|
86
|
+
"sampleBEmptyCanvasLabel": "Загрузите образец B для просмотра спектрограммы",
|
|
87
|
+
"comparisonHeading": "Анализ резонансных частот",
|
|
88
|
+
"comparisonNote": "Средние значения пиков спектра. Различия являются физическими измерениями, а не доказательством идентичности.",
|
|
89
|
+
"formantOneLabel": "Первая область резонанса (F1)",
|
|
90
|
+
"formantTwoLabel": "Вторая область резонанса (F2)",
|
|
91
|
+
"formantThreeLabel": "Третья область резонанса (F3)",
|
|
92
|
+
"averageLabel": "Среднее",
|
|
93
|
+
"differenceLabel": "Разница",
|
|
94
|
+
"unavailableLabel": "Недоступно",
|
|
95
|
+
"statusEmptyLabel": "Загрузите образец для начала",
|
|
96
|
+
"statusSingleLabel": "Один образец готов",
|
|
97
|
+
"statusReadyLabel": "Оба образца готовы",
|
|
98
|
+
"limitError": "Файл превышает локальный лимит 25 МБ.",
|
|
99
|
+
"decodeError": "Браузер не смог декодировать этот аудиоформат.",
|
|
100
|
+
"browserError": "Web Audio API недоступен в этом браузере.",
|
|
101
|
+
"educationalNote": "Учебный инструмент визуализации. Формантные линии не предназначены для судебной фоноскопической экспертизы."
|
|
102
|
+
},
|
|
103
|
+
seo: [
|
|
104
|
+
{ type: 'title', text: "Как спектрограмма превращает звук в детальную карту частот", level: 2 },
|
|
105
|
+
{ type: 'paragraph', html: "<strong>Спектрограмма голоса</strong> превращает любую аудиозапись в визуальную карту высокой точности, где время идет по горизонтальной оси, а частота - по вертикальной. Более высокая энергия отображается более ярким цветом. Это позволяет наблюдать устойчивые гласные, гармоники, тишину и изменения резонансов четче, чем на стандартной осциллограмме. Такая визуализация существенно облегчает детальный спектральный анализ звукового сигнала и полноценное исследование важнейших акустических, формантных и частотных характеристик речи человека." },
|
|
106
|
+
{ type: 'paragraph', html: "Анализатор делит сигнал на короткие перекрывающиеся отрезки, применяет окно Хэмминга и вычисляет распределение энергии по частотам с помощью БПФ. Короткий отрезок определяет точное время события, а частотное разрешение показывает концентрацию энергии. Из-за принципа неопределенности всегда существует компромисс между временным и частотным разрешением. Эти параметры определяют итоговую четкость и детализацию графического отображения речевых сигналов в реальном времени." },
|
|
107
|
+
|
|
108
|
+
{ type: 'diagnostic', variant: 'info', title: "Конфиденциальная обработка в браузере", html: "Визуализируйте частоту, время, интенсивность и форманты двух аудиозаписей локально и конфиденциально в вашем браузере. Все исходные файлы остаются строго на вашем компьютере без передачи на серверы." },
|
|
109
|
+
{ type: 'stats', columns: 3, items: [
|
|
110
|
+
{ value: "Время", label: "Чтение слева направо" },
|
|
111
|
+
{ value: "Гц", label: "Позиция по частоте" },
|
|
112
|
+
{ value: "Энергия", label: "Отображается яркостью" }
|
|
113
|
+
] },
|
|
114
|
+
{ type: 'title', text: "Правильное чтение формант", level: 3 },
|
|
115
|
+
{ type: 'paragraph', html: "Форманты - это области резонанса, формируемые речевым трактом. F1 и F2 используются в фонетике для детального описания подъема и ряда гласных. Этот анализатор отслеживает сглаженные пики в трех частотных областях, помогая наглядно сопоставить видимые полосы с поведением F1, F2 и F3 в удобном формате." },
|
|
116
|
+
{ type: 'paragraph', html: "Профессиональное измерение формант обычно использует линейное предиктивное кодирование (LPC), настроенное под диктора. Гармоники основного тона, реверберация и фоновый шум могут смещать простые оценки. Используйте эти линии как учебные ориентиры и всегда проверяйте фоновую спектрограмму для визуальной верификации частотных наложений." },
|
|
117
|
+
{ type: 'table', headers: ['Guide', 'Region', 'Meaning'], rows: [["F1","от 180 до 1000 Гц","Первая область резонанса, связанная с подъемом гласной"],["F2","от 900 до 3000 Гц","Вторая область резонанса, связанная с рядом гласной"],["F3","от 2000 до 4500 Гц","Верхняя область резонанса, зависящая от геометрии тракта"]] },
|
|
118
|
+
{ type: 'title', text: "Влияние настроек частоты на результат", level: 3 },
|
|
119
|
+
{ type: 'comparative', columns: 2, items: [
|
|
120
|
+
{ title: "Низкий предел (4 кГц)", description: "Лучше видны низкие частоты", points: ["Полезно для гласных", "Может исключить высокую энергию", "Не гарантирует высокую точность"] },
|
|
121
|
+
{ title: "Высокий предел (6/8 кГц)", description: "Больше деталей вверху", highlight: true, points: ["Для ярких голосов", "Показывает щелевые звуки", "Сжимает нижние полосы"] }
|
|
122
|
+
] },
|
|
123
|
+
{ type: 'title', text: "Корректное сравнение двух аудиозаписей", level: 3 },
|
|
124
|
+
{ type: 'paragraph', html: "Сравнение двух образцов наиболее полезно, когда обе записи содержат одинаковые гласные или фразы в схожих акустических условиях. Отображаемые различия являются физическими расстояниями между спектральными пиками. Они не составляют процент сходства и не служат биометрическим доказательством идентичности." },
|
|
125
|
+
{ type: 'list', items: ["<strong>Сравнивайте одинаковый речевой материал:</strong> повторяющиеся гласные или слова легче сравнивать.","<strong>Соблюдайте условия записи:</strong> микрофон и акустика помещения сильно влияют на спектр.","<strong>Слушайте с курсором:</strong> связывайте визуальные события с точным моментом звука.","<strong>Избегайте утверждений об идентичности:</strong> похожая спектрограмма не доказывает идентичность диктора."] },
|
|
126
|
+
{ type: 'summary', title: "Резюме анализатора", items: ["Создавайте спектрограмму локально из совместимых файлов.","Изучайте два образца на зеркальных или параллельных пластинах.","Изучайте изменения спектральной энергии и формантных областей.","Сохраняйте описательный и учебный подход."] }
|
|
127
|
+
],
|
|
128
|
+
faq,
|
|
129
|
+
bibliography,
|
|
130
|
+
howTo,
|
|
131
|
+
schemas: [
|
|
132
|
+
{ '@context': 'https://schema.org', '@type': 'SoftwareApplication', name: title, description, applicationCategory: 'MultimediaApplication', operatingSystem: 'Any' },
|
|
133
|
+
{ '@context': 'https://schema.org', '@type': 'FAQPage', mainEntity: faq.map((item) => ({ '@type': 'Question', name: item.question, acceptedAnswer: { '@type': 'Answer', text: item.answer } })) },
|
|
134
|
+
{ '@context': 'https://schema.org', '@type': 'HowTo', name: title, step: howTo.map((step) => ({ '@type': 'HowToStep', name: step.name, text: step.text })) }
|
|
135
|
+
]
|
|
136
|
+
};
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
2
|
+
import type { VoiceSpectrogramLocaleContent } from '../entry';
|
|
3
|
+
|
|
4
|
+
const slug = "rost-spektrogram-analysator-online";
|
|
5
|
+
const title = "Rost Spektrogram Analysator Online";
|
|
6
|
+
const description = "Visualisera frekvens, tid, intensitet och formanter för två ljudfiler privat i din webbläsare.";
|
|
7
|
+
|
|
8
|
+
const howTo = [
|
|
9
|
+
{
|
|
10
|
+
"name": "Välj två prov",
|
|
11
|
+
"text": "Använd lokala filer eller syntetiska exempel."
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"name": "Ställ in frekvenstak",
|
|
15
|
+
"text": "Välj 4, 6 eller 8 kHz efter rösttyp."
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"name": "Läs spektrogrammet",
|
|
19
|
+
"text": "Granska tid, frekvens och formantlinjer."
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"name": "Lyssna och jämför",
|
|
23
|
+
"text": "Jämför F1, F2 och F3 i utbildningssyfte."
|
|
24
|
+
}
|
|
25
|
+
];
|
|
26
|
+
|
|
27
|
+
const faq = [
|
|
28
|
+
{
|
|
29
|
+
"question": "Vad visar ett röstspektrogram?",
|
|
30
|
+
"answer": "Ett spektrogram visar tid horisontellt, frekvens vertikalt och ljudstyrka genom ljusstyrka."
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"question": "Laddas mina inspelningar upp?",
|
|
34
|
+
"answer": "Nej. All bearbetning sker lokalt i din webbläsare."
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"question": "Vad betyder F1, F2 och F3?",
|
|
38
|
+
"answer": "De är uppskattningar av röstkanalens resonanser."
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"question": "Kan verktyget identifiera en talare?",
|
|
42
|
+
"answer": "Nej. Visuell likhet utgör inte ett biometriskt bevis."
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"question": "Varför ändras formanter med frekvenstaket?",
|
|
46
|
+
"answer": "Skalan påverkar hur spektraltoppar separeras."
|
|
47
|
+
}
|
|
48
|
+
];
|
|
49
|
+
|
|
50
|
+
export const content: VoiceSpectrogramLocaleContent = {
|
|
51
|
+
slug,
|
|
52
|
+
title,
|
|
53
|
+
description,
|
|
54
|
+
ui: {
|
|
55
|
+
"privacyBadge": "Endast lokalt",
|
|
56
|
+
"privacyNote": "Dina inspelningar stannar på din enhet. Avkodning och analys sker i webbläsaren.",
|
|
57
|
+
"loadHeading": "Ladda två ljudfiler för analys",
|
|
58
|
+
"sampleALabel": "Prov A",
|
|
59
|
+
"sampleBLabel": "Prov B",
|
|
60
|
+
"chooseFileLabel": "Välj ljudfil",
|
|
61
|
+
"replaceFileLabel": "Byt ljudfil",
|
|
62
|
+
"dropHint": "Dra en ljudfil hit (max 25 MB). De första 20 sekunderna analyseras.",
|
|
63
|
+
"presetHint": "Testa direkt med två syntetiska vokalstudier.",
|
|
64
|
+
"presetWarmLabel": "Varm vokalstudie",
|
|
65
|
+
"presetBrightLabel": "Ljus vokalstudie",
|
|
66
|
+
"emptySampleLabel": "Väntar på ljud",
|
|
67
|
+
"readySampleLabel": "Spektralplatta klar",
|
|
68
|
+
"decodingSampleLabel": "Beräknar spektralplatta",
|
|
69
|
+
"errorSampleLabel": "Provet kunde inte analyseras",
|
|
70
|
+
"durationLabel": "Varaktighet",
|
|
71
|
+
"ceilingHeading": "Frekvenstak",
|
|
72
|
+
"ceilingFourLabel": "4 kHz",
|
|
73
|
+
"ceilingSixLabel": "6 kHz",
|
|
74
|
+
"ceilingEightLabel": "8 kHz",
|
|
75
|
+
"stageLabel": "Speglad röstspektrogram scen",
|
|
76
|
+
"mirrorViewLabel": "Speglade plattor",
|
|
77
|
+
"splitViewLabel": "Parallella plattor",
|
|
78
|
+
"playALabel": "Spela prov A",
|
|
79
|
+
"playBLabel": "Spela prov B",
|
|
80
|
+
"stopLabel": "Stoppa",
|
|
81
|
+
"timeAxisLabel": "Tid",
|
|
82
|
+
"frequencyAxisLabel": "Frekvens",
|
|
83
|
+
"intensityLegendLabel": "Ljusare färg indikerar högre energi",
|
|
84
|
+
"formantLegendLabel": "Uppskattade formantlinjer",
|
|
85
|
+
"sampleAEmptyCanvasLabel": "Ladda prov A för att visa spektrumet",
|
|
86
|
+
"sampleBEmptyCanvasLabel": "Ladda prov B för att visa spektrumet",
|
|
87
|
+
"comparisonHeading": "Analys av klangresonans",
|
|
88
|
+
"comparisonNote": "Genomsnittliga spektraltoppar. Skillnaderna är fysiska mätvärden, inte ett bevis på identitet.",
|
|
89
|
+
"formantOneLabel": "Första resonansområde (F1)",
|
|
90
|
+
"formantTwoLabel": "Andra resonansområde (F2)",
|
|
91
|
+
"formantThreeLabel": "Tredje resonansområde (F3)",
|
|
92
|
+
"averageLabel": "Genomsnitt",
|
|
93
|
+
"differenceLabel": "Skillnad",
|
|
94
|
+
"unavailableLabel": "Inte tillgänglig",
|
|
95
|
+
"statusEmptyLabel": "Ladda ett prov för att börja",
|
|
96
|
+
"statusSingleLabel": "En platta är klar",
|
|
97
|
+
"statusReadyLabel": "Båda spektralplattorna är klara",
|
|
98
|
+
"limitError": "Filen överskrider den lokala gränsen på 25 MB.",
|
|
99
|
+
"decodeError": "Webbläsaren kunde inte avkoda ljudformatet.",
|
|
100
|
+
"browserError": "Web Audio API är inte tillgängligt i denna webbläsare.",
|
|
101
|
+
"educationalNote": "Pedagogiskt verktyg. Formantlinjer ska inte användas för forensisk röstidentifiering."
|
|
102
|
+
},
|
|
103
|
+
seo: [
|
|
104
|
+
{ type: 'title', text: "Hur ett röstspektrogram förvandlar ljud till en visuell bild", level: 2 },
|
|
105
|
+
{ type: 'paragraph', html: "Ett <strong>röstspektrogram</strong> förvandlar en inspelning till en karta med tid på den horisontella axeln och frekvens på den vertikala axeln. Starkare energi visas med ljusare färg. Detta gör utdragna vokaler, övertoner, tystnad och resonanser lättare att observera än på en vanlig vågform. Visualiseringen underlättar spektralanalysen på ett mycket detaljerat och överskådligt sätt vid varje tillfälle." },
|
|
106
|
+
{ type: 'paragraph', html: "Analysatorn delar upp signalen i korta överlappande avsnitt, tillämpar ett Hamming-fönster och beräknar energifördelningen per frekvens via FFT. Ett kort avsnitt bestämmer den exakta tidpunkten, medan frekvensupplösningen visar var energin koncentreras. På grund av osäkerhetsprincipen finns det alltid en avvägning mellan tids- och frekvensupplösning. Inställningarna styr den visuella skärpan och precisionen vid analysen. Detta gör det lättare att utvärdera röstens egenskaper i detalj." },
|
|
107
|
+
|
|
108
|
+
{ type: 'diagnostic', variant: 'info', title: "Privat bearbetning i webbläsaren", html: "Visualisera frekvens, tid, intensitet och formanter för två ljudfiler privat i din webbläsare. Alla dina inspelningar stannar kvar på din enhet utan att skickas någonstans." },
|
|
109
|
+
{ type: 'stats', columns: 3, items: [
|
|
110
|
+
{ value: "Tid", label: "Läs från vänster till höger" },
|
|
111
|
+
{ value: "Hz", label: "Frekvensposition" },
|
|
112
|
+
{ value: "Energi", label: "Visas som ljusstyrka" }
|
|
113
|
+
] },
|
|
114
|
+
{ type: 'title', text: "Att tolka formanter på ett korrekt sätt", level: 3 },
|
|
115
|
+
{ type: 'paragraph', html: "Formanter är resonansområden som formas av talapparaten. F1 och F2 används inom fonetik för att i detalj beskriva vokalhöjd och artikulationsställe. Denna analysator spårar utjämnade toppar i tre frekvensområden så att användaren kan koppla synliga band till F1, F2 och F3 på ett intuitivt och tydligt sätt." },
|
|
116
|
+
{ type: 'paragraph', html: "Professionell formantmätning använder vanligtvis linjär prediktiv kodning (LPC) anpassad för talaren. Grundtonens övertoner, rumseko och bakgrundsbuller kan förskjuta enkla uppskattningar. Använd dessa linjer som pedagogiska riktlinjer och kontrollera alltid det underliggande spektrumet för visuell verifiering av frekvenserna." },
|
|
117
|
+
{ type: 'table', headers: ['Guide', 'Region', 'Meaning'], rows: [["F1","180 till 1000 Hz","Första resonansområdet, kopplat till vokalöppning"],["F2","900 till 3000 Hz","Andra resonansområdet, kopplat till tungposition"],["F3","2000 till 4500 Hz","Högre resonansområde, påverkat av talapparaten"]] },
|
|
118
|
+
{ type: 'title', text: "Frekvensinställningars påverkan på analysen", level: 3 },
|
|
119
|
+
{ type: 'comparative', columns: 2, items: [
|
|
120
|
+
{ title: "Lågt tak (4 kHz)", description: "Bättre vy för låga frekvenser", points: ["Användbart för vokaler", "Kan exkludera hög energi", "Garanterar inte högre precision"] },
|
|
121
|
+
{ title: "Högt tak (6/8 kHz)", description: "Mer övre detaljer", highlight: true, points: ["För ljusa röster", "Visar frikativor", "Komprimerar nedre band"] }
|
|
122
|
+
] },
|
|
123
|
+
{ type: 'title', text: "En ansvarsfull jämförelse av två ljudprov", level: 3 },
|
|
124
|
+
{ type: 'paragraph', html: "Att jämföra två plattor är mest användbart när båda inspelningarna innehåller samma vokal eller fras under liknande akustiska förhållanden. De visade skillnaderna är absoluta fysiska mätvärden mellan spektraltopparna. De utgör inte en procentuell likhet eller ett biometriskt bevis på identitet." },
|
|
125
|
+
{ type: 'list', items: ["<strong>Jämför samma talade innehåll:</strong> upprepade vokaler eller ord är lättare att jämföra.","<strong>Använd liknande inspelningsförhållanden:</strong> mikrofon och rumsakustik påverkar spektrumet kraftigt.","<strong>Lyssna med markören:</strong> koppla visuella händelser till det exakta ljudögonblicket.","<strong>Undvik identitetspåståenden:</strong> ett liknande spektrogram bevisar inte talaridentitet."] },
|
|
126
|
+
{ type: 'summary', title: "Sammanfattning av analysatorn", items: ["Generera ett ljudspektrogram lokalt från kompatibla filer.","Utforska två prov i speglade eller parallella plattor.","Lär dig hur spektral energi och formantområden förändras.","Behåll en beskrivande och pedagogisk ansats."] }
|
|
127
|
+
],
|
|
128
|
+
faq,
|
|
129
|
+
bibliography,
|
|
130
|
+
howTo,
|
|
131
|
+
schemas: [
|
|
132
|
+
{ '@context': 'https://schema.org', '@type': 'SoftwareApplication', name: title, description, applicationCategory: 'MultimediaApplication', operatingSystem: 'Any' },
|
|
133
|
+
{ '@context': 'https://schema.org', '@type': 'FAQPage', mainEntity: faq.map((item) => ({ '@type': 'Question', name: item.question, acceptedAnswer: { '@type': 'Answer', text: item.answer } })) },
|
|
134
|
+
{ '@context': 'https://schema.org', '@type': 'HowTo', name: title, step: howTo.map((step) => ({ '@type': 'HowToStep', name: step.name, text: step.text })) }
|
|
135
|
+
]
|
|
136
|
+
};
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
2
|
+
import type { VoiceSpectrogramLocaleContent } from '../entry';
|
|
3
|
+
|
|
4
|
+
const slug = "ses-spektrogram-analizoru-online";
|
|
5
|
+
const title = "Ses Spektrogram Analizoru Online";
|
|
6
|
+
const description = "İki ses örneğinin frekans, zaman, yoğunluk ve tahmini formant kalıplarını tarayıcınızda gizlice görselleştirin.";
|
|
7
|
+
|
|
8
|
+
const howTo = [
|
|
9
|
+
{
|
|
10
|
+
"name": "İki örnek seçin",
|
|
11
|
+
"text": "Yerel ses dosyaları veya hazır sentetik örnekler kullanın."
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"name": "Frekans tavanını ayarlayın",
|
|
15
|
+
"text": "Sese uygun olarak 4, 6 veya 8 kHz seçin."
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"name": "Spektrogramı inceleyin",
|
|
19
|
+
"text": "Zaman, frekans ve formant çizgilerini gözlemleyin."
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"name": "Dinleyin ve karşılaştırın",
|
|
23
|
+
"text": "F1, F2 ve F3 ortalamalarını eğitim amacıyla karşılaştırın."
|
|
24
|
+
}
|
|
25
|
+
];
|
|
26
|
+
|
|
27
|
+
const faq = [
|
|
28
|
+
{
|
|
29
|
+
"question": "Ses spektrogramı ne gösterir?",
|
|
30
|
+
"answer": "Spektrogram zamanı yatay eksende, frekansı dikey eksende ve ses enerjisini parlaklıkla gösterir."
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"question": "Ses kayıtlarım yükleniyor mu?",
|
|
34
|
+
"answer": "Hayır. Tüm işlemler tarayıcınızda yerel olarak yapılır."
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"question": "F1, F2 ve F3 ne anlama gelir?",
|
|
38
|
+
"answer": "Ses yolunun rezonanslarının eğitici tahminleridir."
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"question": "Bu araç konuşmacı kimliğini tespit edebilir mi?",
|
|
42
|
+
"answer": "Hayır. Görsel benzerlik adli kimlik kanıtı oluşturmaz."
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"question": "Frekans tavanı değişince formantlar neden değişir?",
|
|
46
|
+
"answer": "Frekans ölçeği spektral tepelerin ayrışmasını etkiler."
|
|
47
|
+
}
|
|
48
|
+
];
|
|
49
|
+
|
|
50
|
+
export const content: VoiceSpectrogramLocaleContent = {
|
|
51
|
+
slug,
|
|
52
|
+
title,
|
|
53
|
+
description,
|
|
54
|
+
ui: {
|
|
55
|
+
"privacyBadge": "Yalnızca yerel",
|
|
56
|
+
"privacyNote": "Ses kayıtlarınız cihazınızda kalır. Çözümleme ve analiz tarayıcı içinde çalışır.",
|
|
57
|
+
"loadHeading": "Analiz edilecek iki ses yükleyin",
|
|
58
|
+
"sampleALabel": "Örnek A",
|
|
59
|
+
"sampleBLabel": "Örnek B",
|
|
60
|
+
"chooseFileLabel": "Ses seç",
|
|
61
|
+
"replaceFileLabel": "Sesi değiştir",
|
|
62
|
+
"dropHint": "Buraya bir ses dosyası sürükleyin (maks. 25 MB). İlk 20 saniye analiz edilir.",
|
|
63
|
+
"presetHint": "Hazır sentetik ünlü çalışmalarıyla hemen test edin.",
|
|
64
|
+
"presetWarmLabel": "Sıcak ünlü çalışması",
|
|
65
|
+
"presetBrightLabel": "Parlak ünlü çalışması",
|
|
66
|
+
"emptySampleLabel": "Ses bekleniyor",
|
|
67
|
+
"readySampleLabel": "Spektral plaka hazır",
|
|
68
|
+
"decodingSampleLabel": "Spektral plaka işleniyor",
|
|
69
|
+
"errorSampleLabel": "Örnek analiz edilemedi",
|
|
70
|
+
"durationLabel": "Süre",
|
|
71
|
+
"ceilingHeading": "Frekans tavanı",
|
|
72
|
+
"ceilingFourLabel": "4 kHz",
|
|
73
|
+
"ceilingSixLabel": "6 kHz",
|
|
74
|
+
"ceilingEightLabel": "8 kHz",
|
|
75
|
+
"stageLabel": "Aynalı ses spektrogram sahnesi",
|
|
76
|
+
"mirrorViewLabel": "Aynalı plakalar",
|
|
77
|
+
"splitViewLabel": "Paralel plakalar",
|
|
78
|
+
"playALabel": "Örnek A çal",
|
|
79
|
+
"playBLabel": "Örnek B çal",
|
|
80
|
+
"stopLabel": "Durdur",
|
|
81
|
+
"timeAxisLabel": "Zaman",
|
|
82
|
+
"frequencyAxisLabel": "Frekans",
|
|
83
|
+
"intensityLegendLabel": "Daha parlak renk daha yüksek enerjiyi gösterir",
|
|
84
|
+
"formantLegendLabel": "Tahmini formant çizgileri",
|
|
85
|
+
"sampleAEmptyCanvasLabel": "Spektrumu görmek için örnek A yükleyin",
|
|
86
|
+
"sampleBEmptyCanvasLabel": "Spektrumu görmek için örnek B yükleyin",
|
|
87
|
+
"comparisonHeading": "Rezonans kalıpları analizi",
|
|
88
|
+
"comparisonNote": "Sesli bölümlerdeki ortalama spektral tepe noktaları. Farklar fiziksel ölçümlerdir, kimlik kanıtı değildir.",
|
|
89
|
+
"formantOneLabel": "Birinci rezonans bölgesi (F1)",
|
|
90
|
+
"formantTwoLabel": "İkinci rezonans bölgesi (F2)",
|
|
91
|
+
"formantThreeLabel": "Üçüncü rezonans bölgesi (F3)",
|
|
92
|
+
"averageLabel": "Ortalama",
|
|
93
|
+
"differenceLabel": "Fark",
|
|
94
|
+
"unavailableLabel": "Mevcut değil",
|
|
95
|
+
"statusEmptyLabel": "Başlamak için bir örnek yükleyin",
|
|
96
|
+
"statusSingleLabel": "Bir plaka hazır",
|
|
97
|
+
"statusReadyLabel": "Her iki spektral plaka hazır",
|
|
98
|
+
"limitError": "Dosya 25 MB yerel analiz sınırını aşıyor.",
|
|
99
|
+
"decodeError": "Tarayıcı bu ses biçimini çözemedi.",
|
|
100
|
+
"browserError": "Web Audio API bu tarayıcıda desteklenmiyor.",
|
|
101
|
+
"educationalNote": "Eğitim amaçlı görselleştirme aracı. Formant çizgileri adli konuşmacı kimlik tespiti için kullanılamaz."
|
|
102
|
+
},
|
|
103
|
+
seo: [
|
|
104
|
+
{ type: 'title', text: "Ses spektrogramı sesi detaylı bir görsel haritaya nasıl dönüştürür", level: 2 },
|
|
105
|
+
{ type: 'paragraph', html: "Bir <strong>ses spektrogramı</strong> kaydı, yatay eksende zaman ve dikey eksende frekans bulunan görsel bir haritaya dönüştürür. Daha güçlü enerji daha parlak bir renk olarak görünür. Bu durum, uzatılan ünlüleri, harmonikleri, sessizliği ve rezonansları sıradan bir dalga biçimine göre çok daha net gözlemlemeyi sağlar. Görselleştirme sinyal analizini kolaylaştırır ve ayrıntılı bir bakış sunarak ses incelemesini oldukça hızlandırır ve verimli kılar." },
|
|
106
|
+
{ type: 'paragraph', html: "Analizör sinyali kısa örtüşen parçalara böler, Hamming penceresi uygular ve FFT kullanarak frekansa göre enerji dağılımını hesaplar. Kısa bir parça olayın tam zamanını belirlerken, frekans çözünürlüğü enerjinin nerede yoğunlaştığını gösterir. Belirsizlik ilkesi nedeniyle zaman ve frekans çözünürlüğü arasında her zaman bir denge vardır. Bu ayarlar görünüm netliğini belirler ve hassasiyeti artırır. Böylece ses özelliklerini daha detaylı değerlendirmek, incelemek ve karşılaştırmak mümkün hale gelir." },
|
|
107
|
+
|
|
108
|
+
{ type: 'diagnostic', variant: 'info', title: "Tarayıcıda gizli işleme", html: "İki ses örneğinin frekans, zaman, yoğunluk ve tahmini formant kalıplarını tarayıcınızda gizlice görselleştirin. Tüm ses kayıtlarınız sunuculara yüklenmeden cihazınızda kalır." },
|
|
109
|
+
{ type: 'stats', columns: 3, items: [
|
|
110
|
+
{ value: "Zaman", label: "Soldan sağa okuyun" },
|
|
111
|
+
{ value: "Hz", label: "Frekans konumu" },
|
|
112
|
+
{ value: "Enerji", label: "Parlaklık olarak gösterilir" }
|
|
113
|
+
] },
|
|
114
|
+
{ type: 'title', text: "Formantları doğru yorumlamak", level: 3 },
|
|
115
|
+
{ type: 'paragraph', html: "Formantlar ses yolu tarafından şekillendirilen rezonans bölgeleridir. F1 ve F2 fonetikte ünlü yüksekliğini ve eklemleme yerini ayrıntılı olarak açıklamak için kullanılır. Bu analizör, kullanıcıların görünür bantları F1, F2 ve F3 davranışıyla sezgisel ve doğru bir şekilde ilişkilendirebilmesi için üç frekans bölgesindeki düzeltilmiş tepeleri takip eder." },
|
|
116
|
+
{ type: 'paragraph', html: "Profesyonel formant ölçümü genellikle konuşmacıya uyarlanmış Doğrusal Öngörümlü Kodlama (LPC) kullanır. Ana ses harmonikleri, yankı ve arka plan gürültüsü basit tahminleri kaydırabilir. Bu kılavuzları eğitici bir referans olarak kullanın ve her zaman arka plandaki görsel spektrumu doğrulamak için kontrol edin." },
|
|
117
|
+
{ type: 'table', headers: ['Guide', 'Region', 'Meaning'], rows: [["F1","180 - 1000 Hz","Birinci rezonans bölgesi, ünlü açıklığı ile ilişkili"],["F2","900 - 3000 Hz","İkinci rezonans bölgesi, dil konumu ile ilişkili"],["F3","2000 - 4500 Hz","Üst rezonans bölgesi, ses yolu geometrisinden etkilenir"]] },
|
|
118
|
+
{ type: 'title', text: "Frekans ayarlarının analize etkisi", level: 3 },
|
|
119
|
+
{ type: 'comparative', columns: 2, items: [
|
|
120
|
+
{ title: "Düşük tavan (4 kHz)", description: "Alt frekanslar için daha iyi görünüm", points: ["Ünlüler için kullanışlı", "Yüksek enerjiyi dışarıda bırakabilir", "Daha yüksek doğruluk garanti etmez"] },
|
|
121
|
+
{ title: "Yüksek tavan (6/8 kHz)", description: "Daha fazla üst detay", highlight: true, points: ["Parlak sesler için", "Sürtünmeli sesleri gösterir", "Alt bantları sıkıştırır"] }
|
|
122
|
+
] },
|
|
123
|
+
{ type: 'title', text: "İki ses örneğini sorumlulukla karşılaştırmak", level: 3 },
|
|
124
|
+
{ type: 'paragraph', html: "İki plakayı karşılaştırmak, her iki kayıt benzer akustik koşullarda aynı ünlüyü veya cümleyi içerdiğinde en faydalı olanıdır. Görüntülenen farklar spektral tepeler arasındaki mutlak fiziksel ölçümlerdir. Bir benzerlik yüzdesi veya biyometrik kimlik kanıtı oluşturmazlar." },
|
|
125
|
+
{ type: 'list', items: ["<strong>Aynı konuşma içeriğini karşılaştırın:</strong> tekrarlanan ünlüler veya kelimeler daha kolay karşılaştırılır.","<strong>Kayıt koşullarını eşitleyin:</strong> mikrofon ve oda akustiği spektrumu güçlü bir şekilde etkiler.","<strong>İmleçle dinleyin:</strong> görsel olayları tam ses anıyla ilişkilendirin.","<strong>Kimlik iddiasında bulunmayın:</strong> benzer görünen bir spektrogram konuşmacı kimliğini kanıtlamaz."] },
|
|
126
|
+
{ type: 'summary', title: "Analizör özeti", items: ["Uyumlu dosyalardan yerel olarak bir ses spektrogramı oluşturun.","İki örneği aynalı veya paralel plakalarda keşfedin.","Spektral enerjinin ve formant bölgelerinin nasıl değiştiğini öğrenin.","Açıklayıcı ve eğitici bir yaklaşım sürdürün."] }
|
|
127
|
+
],
|
|
128
|
+
faq,
|
|
129
|
+
bibliography,
|
|
130
|
+
howTo,
|
|
131
|
+
schemas: [
|
|
132
|
+
{ '@context': 'https://schema.org', '@type': 'SoftwareApplication', name: title, description, applicationCategory: 'MultimediaApplication', operatingSystem: 'Any' },
|
|
133
|
+
{ '@context': 'https://schema.org', '@type': 'FAQPage', mainEntity: faq.map((item) => ({ '@type': 'Question', name: item.question, acceptedAnswer: { '@type': 'Answer', text: item.answer } })) },
|
|
134
|
+
{ '@context': 'https://schema.org', '@type': 'HowTo', name: title, step: howTo.map((step) => ({ '@type': 'HowToStep', name: step.name, text: step.text })) }
|
|
135
|
+
]
|
|
136
|
+
};
|