Audiovirtojen joustava ohjaus verkkoympäristössä
Saukonoja, Timo (2017)
Saukonoja, Timo
Jyväskylän ammattikorkeakoulu
2017
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2017090414739
https://urn.fi/URN:NBN:fi:amk-2017090414739
Tiivistelmä
Opinnäytetyön tavoitteena oli toteuttaa järjestelmä, joka pystyy autonomisesti määrittämään audiolähteen lähettämälle audiovirralle määränpään, ennalta määritettyjen sääntöjen mukaisesti. Tämän tavoitteen saavuttamiseksi tuli toteuttaa myös ohjausrajapinnat, joiden avulla eri sovellukset voivat kommunikoida toistensa ja työssä toteutetun sovelluksen kanssa.
Työssä toteutettiin Qt Creatoria käyttäen palvelinsovellus sekä tämän sovelluksen ja toteutuksen tueksi luotujen testisovellusten kommunikaation mahdollistavat ohjausrajapinnat. Ohjausrajapinnat toteutettiin Combitech Oy:n tarjoamaa Websocket-teknologian päälle rakennettua ETS-järjestelmää käyttäen. Palvelinsovellus käyttää ETS-järjestelmästä löytyviä komponentteja yhteyksien hallintaan ja viestien lähettämiseen sekä vastaanottamiseen. Kaikki sääntöihin ja sovelluksen autonomiaan liittyvä on kehitetty ilman valmiita komponentteja. Toteutetun palvelinsovelluksen lisäksi työssä käydään läpi palvelinsovellusta käyttävät Combitech Oy:n asiantuntijoiden toteuttamat sovellukset. Nämä kolme sovellusta ovat Qt- ja ETS-teknologioita käyttäen testikäyttöön toteutetut audiovirtaa lähettävä sovellus ja audiovirtaa vastaanottava sovellus sekä Node.js- ja Vis.js-teknologioita käyttäen toteutettu käyttöliittymä.
Työn lopputuloksena tuotettiin prototyyppinä toimiva kokonaisuus. Kokonaisuuteen kuuluvat sovellukset käyttävät toteutettuja ohjausrajapintoja tiedonvälitykseen. Palvelinsovellus voi ohjata testisovellusten toimintaa ohjausrajapintojen avulla. Palvelinsovellus voi kertoa siihen yhdistäneiden sovellusten tila- ja metatietoja käyttöliittymälle. Käyttöliittymän avulla voidaan ohjailla palvelinsovelluksen toimintaa. Palvelinsovellus osaa päätellä mihin vastaanottavaan sovellukseen sen tulee ohjata lähettävän sovelluksen tuottama audiovirta. Päättely tapahtuu vertaamalla palvelinsovelluksen tietoja siihen yhdistäneistä sovelluksista XML-tiedostossa määriteltyihin sääntöihin. Nämä säännöt ovat myös ohjelmoinnista tai tietotekniikasta tietämättömän käyttäjän ymmärrettävissä ja määriteltävissä.
Työssä toteutettiin Qt Creatoria käyttäen palvelinsovellus sekä tämän sovelluksen ja toteutuksen tueksi luotujen testisovellusten kommunikaation mahdollistavat ohjausrajapinnat. Ohjausrajapinnat toteutettiin Combitech Oy:n tarjoamaa Websocket-teknologian päälle rakennettua ETS-järjestelmää käyttäen. Palvelinsovellus käyttää ETS-järjestelmästä löytyviä komponentteja yhteyksien hallintaan ja viestien lähettämiseen sekä vastaanottamiseen. Kaikki sääntöihin ja sovelluksen autonomiaan liittyvä on kehitetty ilman valmiita komponentteja. Toteutetun palvelinsovelluksen lisäksi työssä käydään läpi palvelinsovellusta käyttävät Combitech Oy:n asiantuntijoiden toteuttamat sovellukset. Nämä kolme sovellusta ovat Qt- ja ETS-teknologioita käyttäen testikäyttöön toteutetut audiovirtaa lähettävä sovellus ja audiovirtaa vastaanottava sovellus sekä Node.js- ja Vis.js-teknologioita käyttäen toteutettu käyttöliittymä.
Työn lopputuloksena tuotettiin prototyyppinä toimiva kokonaisuus. Kokonaisuuteen kuuluvat sovellukset käyttävät toteutettuja ohjausrajapintoja tiedonvälitykseen. Palvelinsovellus voi ohjata testisovellusten toimintaa ohjausrajapintojen avulla. Palvelinsovellus voi kertoa siihen yhdistäneiden sovellusten tila- ja metatietoja käyttöliittymälle. Käyttöliittymän avulla voidaan ohjailla palvelinsovelluksen toimintaa. Palvelinsovellus osaa päätellä mihin vastaanottavaan sovellukseen sen tulee ohjata lähettävän sovelluksen tuottama audiovirta. Päättely tapahtuu vertaamalla palvelinsovelluksen tietoja siihen yhdistäneistä sovelluksista XML-tiedostossa määriteltyihin sääntöihin. Nämä säännöt ovat myös ohjelmoinnista tai tietotekniikasta tietämättömän käyttäjän ymmärrettävissä ja määriteltävissä.