5D Library › Acoustic Persuasion, Prosodic Information Theory and Interpersonal Physiological Synchrony · 中文
Chapter 8 Practice and a Pre-registered Trial
Part 1 A four-step acoustic checklist before speaking or recording
The first seven chapters can be reduced to a checklist for use before a formal talk, a course recording or a live stream. It needs only a two- or three-minute rehearsal recording and free speech-analysis software such as Praat.
- Final pitch movement. Do statements (especially those stating facts, figures and commitments) end with a fall? Genuine questions and invitations need not fall. (Chapter 3)
- Silent pauses before key points. Is each key piece of information preceded by a silent pause of at least about 0.3 seconds, rather than a filler? (Chapter 2)
- Speech rate and its variation. How many syllables a minute on average? Does the rate vary between sentences, and slow down on key sentences? (Chapters 1 and 2)
- Microphone distance and noise floor. How far is the microphone from the mouth? How many decibels separate the voice from the noise floor in the recording? Is there obvious room echo? (Chapter 6)
Calculation
The checklist applied to a fictional two-minute rehearsal recording: one row per phrase, recording the type of ending, the pitch at the last accent peak and at the end, syllables, duration, whether it is a key point, and the silent pause before it.
# The four-step acoustic checklist applied to a (fictional) 2-minute rehearsal recording, annotated by
# hand or with a tool such as Praat: one row per phrase.
# (end of phrase: 'decl' declarative / 'q' genuine question; f0 at last peak and at end, Hz;
# syllables; phrase duration s; is a key point; silent pause before it, s)
import math, statistics
phrases = [("decl", 132, 118, 14, 2.6, False, 0.0), ("decl", 128, 131, 11, 1.9, True, 0.1),
("decl", 135, 120, 16, 3.0, False, 0.4), ("q", 125, 150, 8, 1.6, False, 0.3),
("decl", 140, 122, 12, 2.1, True, 0.7), ("decl", 130, 134, 18, 2.8, False, 0.2),
("decl", 138, 119, 10, 2.0, True, 0.6), ("decl", 127, 129, 15, 2.2, True, 0.0),
("decl", 133, 117, 13, 2.5, False, 0.3), ("decl", 136, 120, 9, 1.9, True, 0.8)]
st = lambda a, b: 12 * math.log2(a / b)
decl = [p for p in phrases if p[0] == "decl"]
falls = [st(p[1], p[2]) for p in decl]
print(f"1 final f0 falls: {sum(f > 1.0 for f in falls)}/{len(decl)} declaratives end with a fall > 1 semitone "
f"(median fall {statistics.median(falls):.1f} st); the question ends rising, as it should")
keys = [p for p in phrases if p[5]]
print(f"2 key points with a silent pause >= 0.3 s before them: {sum(p[6] >= 0.3 for p in keys)}/{len(keys)}")
rates = [p[3] / p[4] for p in phrases]
print(f"3 syllable rate: mean {statistics.mean(rates):.1f} syl/s ({statistics.mean(rates) * 60:.0f} per minute), "
f"coefficient of variation {statistics.pstdev(rates) / statistics.mean(rates):.0%} across phrases")
# 4 microphone distance and noise floor: speech peaks and noise floor read from the recording (dBFS)
for dist_cm, speech_dbfs, floor_dbfs in ((40, -24.0, -58.0), (10, -12.0, -58.0)):
print(f"4 microphone at {dist_cm} cm: speech {speech_dbfs} dBFS, noise floor {floor_dbfs} dBFS"
f" -> signal-to-noise {speech_dbfs - floor_dbfs:.0f} dB")
# 1 final f0 falls: 6/9 declaratives end with a fall > 1 semitone (median fall 2.0 st); the question ends rising, as it should
# 2 key points with a silent pause >= 0.3 s before them: 3/5
# 3 syllable rate: mean 5.5 syl/s (332 per minute), coefficient of variation 11% across phrases
# 4 microphone at 40 cm: speech -24.0 dBFS, noise floor -58.0 dBFS -> signal-to-noise 34 dB
# 4 microphone at 10 cm: speech -12.0 dBFS, noise floor -58.0 dBFS -> signal-to-noise 46 dBIn this fictional recording, 6 of the 9 statements end with a fall of more than 1 semitone and the other 3 end level or slightly rising; the one question ends rising, as is fitting. Only 3 of the 5 key points are preceded by a pause of 0.3 seconds or more. The mean rate is about 5.5 syllables a second (about 330 a minute), with a coefficient of variation between sentences of about 11 %, not much variation. Moving the microphone from 40 cm to 10 cm raises the voice level by 12 dB and the signal-to-noise ratio from 34 to 46 dB.
Note
This checklist is not a scoring tool. Its purpose is to help you notice in rehearsal habits you may not be aware of, not to grade a talk. The target values above (a fall of more than 1 semitone, pauses of 0.3 seconds or more) are conventions for record-keeping, not validated “best values”. The effect of a talk depends first of all on whether its content is true, clear and useful to the audience.
Part 2 A protocol for a pre-registered double-blind randomised controlled trial
Question
Does the same business-proposal text, delivered with “final falls + 0.6-second silent pauses before key high-information words”, raise blind listeners’ willingness to invest compared with a delivery of “final rises + no pauses + faster speech”? And how does it affect perceived persuasiveness and credibility?
Stimuli
A fictional business proposal of about 90 seconds (the funding pitch of a fictional company) is recorded in a natural reading by each of four voice actors (two women, two men). An open-source voice-transformation tool such as CLEESE (Burred et al. 2019) is then used to make two versions of each actor’s recording:
- Version A: every statement ends with a pitch fall of at least 2 semitones; a 0.6-second silent pause is inserted before each of 6 pre-marked high-information words (figures, key conclusions); rate unchanged.
- Version B: every statement ends with a pitch rise of at least 2 semitones; no pauses inserted; rate increased by 15 %.
The two versions differ in total length (version B is shorter); this is a property of the combination itself. Before the experiment, a research assistant who is not involved in recruiting listeners checks by acoustic measurement that every stimulus meets these conditions (the manipulation check).
Design
| Element | Specification |
|---|---|
| Participants | Adults aged 21 or over with experience of investment or business decisions, recruited through an independent online professional survey panel; not recruited from students, clients or followers of the author’s websites |
| Randomisation | Each participant is randomly assigned one voice actor and one version (stratified by voice actor, with equal numbers for each actor’s two versions) and hears only that version |
| Blinding | Double blind: participants are told only that they will “evaluate a funding pitch” and do not know that there are two versions or that the study concerns prosody; the experiment runs fully online and automatically, with no experimenter in contact with participants; analysts do not know which code corresponds to which version until unblinding |
| Primary outcome | Willingness to invest: the share of a hypothetical budget of 10,000 units the participant would allocate to the company (0–100 %) |
| Secondary outcomes | Perceived persuasiveness and credibility (7-point ratings each); rating of the speaker’s confidence; recall of the 6 key figures after listening (testing the pause hypothesis of Chapter 2); whether participants noticed that the voice had been processed |
| Analysis | Linear regression on version, with voice actor as a fixed stratification factor; two-sided |
Sample size
Calculation
# Sample size for the double-blind randomised trial. Listeners hear ONE version of the same
# 90-second business pitch, read by one of four voice actors (2 women, 2 men) and processed so that
# only prosody differs:
# A: falling final contours + a 0.6-s silent pause before each high-information word
# B: rising final contours + no added pauses + 15 % faster speech
# Primary outcome: willingness to invest, the share of a hypothetical 10,000-unit budget allocated
# to the venture (0-100 %). Effect in SD units; normal approximation; two-sided alpha 0.05.
import math
from statistics import NormalDist
N = NormalDist()
def n_per_arm(d, alpha=0.05, power=0.90):
return math.ceil(2 * (N.inv_cdf(1 - alpha / 2) + N.inv_cdf(power)) ** 2 / d ** 2) + 1
for d in (0.20, 0.25, 0.30, 0.40):
print(f"standardised effect {d:.2f}: {n_per_arm(d, power=0.8)} per arm for 80 % power, {n_per_arm(d)} for 90 %")
n = n_per_arm(0.25)
# Randomisation is stratified by voice (each voice reads both versions, equally often in each arm),
# and voice enters the analysis as a fixed blocking factor, so it costs no extra sample. The price:
# with only 4 voices the result generalises to other voices only weakly.
print(f"chosen: 0.25 SD, 90 % power -> {n} per arm ({n // 4 + 1} per voice and arm); recruit"
f" {math.ceil(n / 0.85)} per arm allowing 15 % exclusions, {2 * math.ceil(n / 0.85)} in all")
# standardised effect 0.20: 394 per arm for 80 % power, 527 for 90 %
# standardised effect 0.25: 253 per arm for 80 % power, 338 for 90 %
# standardised effect 0.30: 176 per arm for 80 % power, 235 for 90 %
# standardised effect 0.40: 100 per arm for 80 % power, 133 for 90 %
# chosen: 0.25 SD, 90 % power -> 338 per arm (85 per voice and arm); recruit 398 per arm allowing 15 % exclusions, 796 in allWith a smallest effect of interest of 0.25 standard deviations and 90 % power, each arm needs 338 analysable participants (about 85 per voice actor and version); allowing for about 15 % to be excluded for failing attention checks, each arm recruits 398, 796 in all. Because randomisation is stratified by voice actor and voice actor enters the analysis as a fixed factor, the actors themselves cost no extra sample; the price is that with only four actors the results generalise only weakly to other voices.
Decision rule
Calculation
# Decision rule, fixed before data collection. d = version A (falling + pauses) minus version B
# (rising + no pauses + faster) in willingness to invest, standardised, with its 95 % CI.
SESOI = 0.25
def verdict(d, lo, hi, manip_ok):
if not manip_ok:
return f"effect {d:+.2f}: NOT INTERPRETABLE - the stimuli failed the acoustic manipulation check"
if lo >= SESOI: v = "version A raises willingness to invest by at least the smallest effect of interest"
elif lo > 0: v = "version A raises it; size not shown to reach 0.25 SD"
elif hi < 0: v = "version A LOWERS willingness to invest"
elif lo >= -SESOI and hi <= SESOI: v = "no difference worth acting on"
else: v = "unclear"
return f"effect {d:+.2f} ({lo:+.2f} to {hi:+.2f}): {v}"
# Manipulation check on the stimuli themselves (measured before listeners are recruited): every
# version-A sentence must end with a fall of at least 2 semitones and every version-B declarative
# with a rise of at least 2 semitones; pauses must be 0.6 +/- 0.05 s.
for r in ((0.41, 0.27, 0.55, True), (0.12, -0.03, 0.27, True), (0.05, -0.10, 0.20, True), (0.30, 0.15, 0.45, False)):
print(verdict(*r))
print("Credibility and persuasiveness ratings are secondary: reported with intervals, never decisive.")
# effect +0.41 (+0.27 to +0.55): version A raises willingness to invest by at least the smallest effect of interest
# effect +0.12 (-0.03 to +0.27): unclear
# effect +0.05 (-0.10 to +0.20): no difference worth acting on
# effect +0.30: NOT INTERPRETABLE - the stimuli failed the acoustic manipulation check
# Credibility and persuasiveness ratings are secondary: reported with intervals, never decisive.The example results are invented. If the stimuli fail the acoustic manipulation check, the report says “not interpretable” whatever the results, and the trial is rerun with corrected stimuli. Only when the lower limit of the confidence interval reaches 0.25 standard deviations will the report say that “version A raised willingness to invest by at least the smallest effect of interest”.
What this trial cannot show
First, versions A and B change three features at once (final movement, pauses, rate), in order to test a “package” of prosodic advice; even a positive result cannot show which feature did the work, and a 2×2×2 factorial design would be needed to separate them. Second, willingness to invest is an allocation of a hypothetical budget, not a real investment, and participants know they are in a study. Third, with four voice actors, one text and one language (English and Chinese versions must be run separately), the results generalise only weakly to other voices, texts and languages. Fourth, research discussed in Chapters 1 and 3 suggests that a rise may be judged more trustworthy in some contexts, so version B is not necessarily the “worse” version; the trial may find no difference in credibility, or even higher credibility for version B, and the decision rule reports such results just as faithfully.
Ethics and conflicts of interest
The trial requires approval from an independent ethics committee and informed consent, and the protocol and analysis plan are to be registered before the first participant is enrolled (Nosek et al. 2018). After the study, participants are told its true purpose (that the prosody of the voice had been altered) and may ask for their data to be withdrawn. Voice actors agree in advance that their recordings may be digitally processed and used for research.
Disclosure
The author runs the voice-teaching websites vocal.guru and singingasia.com, the media-production website xmediaasia.com and the influencer-marketing agency website asiainfluencerx.com, and works in voice teaching, content production and live-streaming training; he therefore has a direct commercial interest in the subject of this book. The book promotes no course or service; the Chapter 8 trial is designed to be run and analysed by researchers independent of the author’s business; all the code and the study protocol are published openly for anyone to check. To limit the influence of this interest: participants are not recruited from students, clients or followers of the author’s websites; the stimulus materials and analysis code are published before enrolment; and the results, data and code will be published whatever they show.
References
Fan, Y. (2026). Acoustic Persuasion, Prosodic Information Theory and Interpersonal Physiological Synchrony: Pitch Contours, Pause Entropy and Listener Autonomic Coupling in Public Speaking and Leadership [声音说服力、韵律信息论与人际生理同步] (Version 1.0.0). 5D Library. https://doi.org/10.5281/zenodo.23753267 · Licensed under Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International (CC BY-NC-ND 4.0).