Tillägg:Wikispeech
Wikispeech Utgivningsstatus: beta |
|
---|---|
Genomförande | Sidhandling , Ajax, API , Speciasida , Databas |
Beskrivning | Läser upp sidtext med hjälp av talsyntes |
Författare | Sebastian Berlin, André Costa, Karl Wettin and Igor Leturia |
Senaste versionen | 0.1.10 (2023-03-08) |
MediaWiki | >= 1.39 |
Förändringar i databasen | Ja |
Tabeller | wikispeech_utterance |
Licenser | GNU General Public License 2.0 eller senare |
Ladda ner | |
Hjälp | Help:Extension:Wikispeech/sv |
Exempel | |
|
|
|
|
Kvartalsnedladdningar | 6 (Ranked 128th) |
Översätt tillägget Wikispeech om det finns tillgängligt på translatewiki.net | |
Vagrant-roll | wikispeech |
Ärenden | Öppna ärenden · Rapportera en bugg |
Projektet Wikispeech har som målsättning att skapa ett text till tal-verktyg för att göra Wikimedias projekt mer tillgängliga för folk som har svårt att läsa av olika orsaker. Wikispeech kommer tillgängliggöras som ett MediaWiki-tillägg. Mer information finns på projektsidan; sidan handlar endast om själva Wikispeech-tillägget.
Speechoid
Instruktioner för installering
Tillägget använder en tjänst för talsyntesuppgifter, så som Speechoid, som skapar ljud till yttranden. Speechoid består av en huvudserver, en lexikonserver, talsyntesmotorer och ytterligare vissa komponenter som kan krävas för vissa språk.
För att förbereda ett yttrande för uppläsning, skickar tillägget en begäran till tjänsten. Denna begäran innehåller yttrandet som text, vilket språk det är och vilket röst som ska användas. Tjänsten bearbetar texten med ett lexikon och en av de installerade talsyntesmotorerna, beroende på vilken röst som används. När ljudet har genererats, returneras ett svar med ljuddata tillsammans med viss information som kommer göra det möjligt att markera och hoppa över. Detta används då av tillägget för att faktiskt spela upp yttranden för användaren och processen upprepas för följande yttrande.
Wikispeech huvudserver
Huvudservern har en webb-API som inkluderar en slutpunkt för att generera tal. Den hanterar intern kommunikation mellan de underliggande servrarna, listade nedan.
Pronlex
En lexikonserver med sin egen API. Innehåller information om lexikonposter och har ändpunkter för sökning och hantering av dem. När ett yttrande bearbetas söks ord upp i lexikonet och om det finns en matchande post används den för uttalet.
Talsyntesmotorer
Servern kan ha flera talsyntesmotorer. Vilken som används för vilket yttrande beror på vilken röst som angetts i begäran.
MaryTTS
Kommer med stöd för arabiska, engelska och svenska.
Ytterligare komponenter
Mishkal
Används för att vokalisera arabisk text.
Symbolset
Symbolset är ett förvar för att hantera fonetiska symboluppsättningar och kartlägga/konvertera mellan olika symboluppsättningar och språk.
Installation
- Ladda ner och placera filen/filerna i en katalog som heter
Wikispeech
i dinextensions/
-mapp.
Utvecklare och personer som bidrar med kod borde istället installera tillägget från Git, med:cd extensions/
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/Wikispeech - Lägg till följande kod längst ner i din LocalSettings.php -fil:
wfLoadExtension( 'Wikispeech' );
- Klart – Ta dig till Special:Version på din wiki för att bekräfta att tillägget har installerats ordentligt.
Konfigurera Speechoid
Tillägget Wikispeech kräver Speechoid för att generera ljud. Detaljerade instruktioner för att installera Speechoid finns på Installera Speechoid.
Grundläggande konfigurering
För att Wikispeech-tillägget ska kunna kommunicera med Speechoid behöver du ange tjänstens URL. Du kan göra detta genom att lägga till följande rad på LocalSettings.php :
$wgWikispeechSpeechoidUrl = 'URL';
där URL
är URL:n till din Speechoid-instans.
Running as producer
If you want use your wiki to enable Wikispeech on other wikis you can enable "producer mode". One use case for this is to run Wikispeech as a gadget on other wikis.
Normally Wikispeech gets the text to synthesise from pages on the wiki it's installed on.
If WikispeechProducerMode
is true
the wikispeech-listen
action can take the parameter consumer-url
.
consumer-url
should be set to the script path of the consumer wiki, e.g. for this wiki https://www.mediawiki.org/w
.
When the request is made Wikispeech will get the content from the consumer wiki and synthesise as normal.
The utterance is stored with the extra parameter wsu_remote_wiki_hash
in the database to keep track of which wiki it was generated from.
To enable Wikispeech with a gadget or user script see Help:Extension:Wikispeech#As gadget or user script.
Fullständig lista över konfigureringsalternativ
Alternativ | Standardvärde | Dokumentation |
---|---|---|
WikispeechSpeechoidUrl | ""
|
URL:n som ska användas för tjänsten Speechoid. |
WikispeechSymbolSetUrl | ""
|
URL:n som ska användas för symboluppsättningstjänsten. |
WikispeechSpeechoidResponseTimeoutSeconds | null
|
Standard antal sekunder för att invänta HTTP-respons från Speechoid. Felaktiga standardvärden i standard MediaWiki. |
WikispeechListenMaximumInputCharacters | 2048
|
Högsta antalet tecken i inmatningen (ett segment) som skickades till Speechoid-tjänsten. |
WikispeechRemoveTags | {
"span": "mw-editsection",
"table": true,
"sup": "reference",
"div": [
"thumb",
"toc"
]
}
|
Karta över HTML-taggar som borde tas bort helt, dvs. inkludera något innehåll. Nycklar är taggnamn och värdet som definierar om en tagg borde tas bort, som följer:
|
WikispeechSegmentBreakingTags | [
"h1",
"h2",
"h3",
"h4",
"h5",
"h6",
"p",
"br",
"li"
]
|
HTML-taggar som kommer bryta text i segment. Detta ser till så att till exempel rubriktext utan skiljeteckenssuffix inte kommer slås ihop med samma segment som textinnehållet hos föregående paragraf. |
WikispeechNamespaces | [
0
]
|
Lista över namnrymdsindexen som Wikispeech aktiverats för. |
WikispeechKeyboardShortcuts | {
"playStop": {
"key": 13,
"modifiers": [
"alt",
"shift"
]
},
"skipAheadSentence": {
"key": 39,
"modifiers": [
"alt",
"shift"
]
},
"skipBackSentence": {
"key": 37,
"modifiers": [
"alt",
"shift"
]
},
"skipAheadWord": {
"key": 40,
"modifiers": [
"alt",
"shift"
]
},
"skipBackWord": {
"key": 38,
"modifiers": [
"alt",
"shift"
]
}
}
|
Genvägar för Wikispeech-kommandon. Varje genväg definierar tangenten som trycks (som tangentkod[1]) och alla modifieringstangenter (ctrl, alt eller shift). |
WikispeechSkipBackRewindsThreshold | 3.0
|
Om ett yttrande har spelats längre än detta (i sekunder), kommer det hoppa tillbaka spola tillbaka till början av yttrandet, istället för att hoppa till föregående yttrande. |
WikispeechHelpPage | "Help:Wikispeech"
|
Hjälpsida för Wikispeech. Om den definierats läggs en knapp till som tar användaren hit bredvid spelarens knappar. |
WikispeechFeedbackPage | "Wikispeech feedback"
|
Återkopplingssida för Wikispeech. Om den definierats läggs en knapp till som tar användaren hit bredvid spelarens knappar. |
WikispeechContentSelector | "#mw-content-text"
|
Väljaren för elementen som innehåller sidans text. Används internt, men kan ändras med MediaWiki-version. |
WikispeechVoices | {
"ar": [
"ar-nah-hsmm"
],
"en": [
"dfki-spike-hsmm",
"cmu-slt-hsmm"
],
"sv": [
"stts_sv_nst-hsmm"
]
}
|
Registrerade röster per språk. Systemets standardröst faller tillbaka på den först registrerade rösten för ett språk om inget angetts av Speechoid. |
WikispeechMinimumMinutesBetweenFlushExpiredUtterancesJobs | 30
|
Minsta antalet minuter mellan köade jobb som automatiskt spolar utgångna yttranden från yttrandelagret. Jobbet kommer köas medan ett nytt yttrande skapas, förutsatt att tillräckligt många minuter passerat sedan den förra jobbas köades. Inaktivera automatisk spolning genom att ange värdet till att felaktigt värde (0, false, null, osv.). För att undvika att jobb spolas för ofta, läs MW jobbdokumentation. |
WikispeechUtteranceTimeToLiveDays | 31
|
Minsta antalet dagar som ett yttrande kan leva innan det automatiskt spolas från yttrandelagret. Mer eller mindre cachespolarinställningen för syntetiserad text. Sätter du det här värdet lågt spar du diskutrymme men ser till att ofta begärda textsegment återsyntetiseras oftare på bekostnad av CPU:n. Sätts värdet för högt blockeras förbättringar av röstsyntetiseringen. Sätts värdet som 0 påverkas i sin tur cachen och alla yttranden spolas så fort som möjligt. |
WikispeechUtteranceFileBackendName | ""
|
FileBackend-gruppen, definierad i LocalSettings.php, används för yttrandeljud och metadatafiler. Har den inte definierats i LocalSettings.php skapas en FSBackend som arbetar mot en tillfällig katalog. Läs loggvarningar för exakt sökväg. |
WikispeechUtteranceFileBackendContainerName | "wikispeech_utterances"
|
Behållarnamn som används i FileBackend för yttrandeljud och metadatafiler. |
WikispeechUtteranceUseSwiftFileBackendExpiring | false
|
Ifall filbackend är Swift och värdet har angetts som true kommer Wikispeech ange rubriken "X-Delete-After" när den skapar filer i Swift och yttrandets spolningsmekanism kommer inte infoga raderingskommandot i Swift. Dvs. själva spolningen av yttrandet flyttas till Swift-lagret. För att få detta att fungera måste Swifts filbackend angetts acceptera dessa rubriker. För mer information om hur man gör detta, läs https://docs.openstack.org/swift/latest/overview_expiring_objects.html. Denna funktion kommer stödjas officiellt av Wikispeech som den första LTS-utgåvan av MediaWiki efter 1.35 (i.e. probably 1.39). |
WikispeechPronunciationLexiconConfiguration | "Wiki+Speechoid"
|
Kontrollera uttallexikonets framhärdning och åtkomst. "Speechoid" måste vara en del av kedjan för att kunna påverka talsyntesen. Möjliga värden är: "Speechoid", kommer bara åt underliggande lexikon i Speechoid. Ingen revideringshistorik. "Wiki+Speechoid", kommer åt lexikonet som lagras som artiklar i NS_PRONUNCIATION_LEXICON för versionshistorik och passeras ner till Speechoid. "Wiki", kommer bara åt lexikon som lagras som artiklar i NS_PRONUNCIATION_LEXICON. "Cache", övergående lagring i MediaWikis WAN-cache. Endast för utveckling. "Cache+Speechoid", övergående lagring i WAN-cache, passeras ner till Speechoid. Endast för utveckling. |
WikispeechProducerMode | false
|
Run Wikispeech in producer mode. This allows other wikis (consumers) to use this wiki to generate utterances. When an API requests includes the parameter `consumer-url`, page content is retrieved from the consumer wiki on that URL. |
CSS
Detta är en delmängd av CSS-regler som mest är intressanta för icke-utvecklare.
Väljare | Standardvärden | Dokumentation |
---|---|---|
.ext-wikispeech-highlight-sentence
|
background-color: rgb( 200, 170, 255 );
|
Den visuella markeringen av meningen som för tillfället citeras. |
.ext-wikispeech-highlight-word
|
background-color: rgb( 255, 200, 140 );
|
Den visuella markeringen av ordet som för tillfället citeras. |