Creating a Virtual Instrument with Qt
-
@mrjj said in Creating a Virtual Instrument with Qt:
@Annabelle
Hi
Yes it's a very good idea to write manual first.
It gives a overview of the components needed and what functions they must have.After completing the manual, how would I post it for anyone to read? Is there a way to post attachments on this forum?
@Annabelle
Yes there is but it only likes images and .c files.
Maybe we can cheat and rename it doc to say .cpp
and people can just rename it back. -
I could try that, but I still wonder how I would post it? Is there a button on the message page that is designed for posting attachments?
@Annabelle
Hi
it only allows images and not doc or pdf.
So to post here you would have to use some other site and post the link here so people can download and watch. -
@Annabelle
Only if it gives a link and not want email.
https://wetransfer.com/ can do it but you have to click on a blue button to make it show
the option. not sure how well that works with screen reader.Alternatively, you can use free dropbox and put file there and right click to get link.
-
Someone on the forum said there's a new Qt Application, or maybe it's a Template. QTextToSpeech. I think that's what it's called. When I looked at the documentation
for this application, it didn't say anything about whether screenreaders could speak things like "Buttons", "Checkboxes", "Combo Boxes", etc. It said something about making a text-to-speech application. I'm confused
on which way to go with this, whether to use "QAccessibleInterface" or "QTextToSpeech". If there's a possibility, you can check out Strum Acoustic and Strum Electric, virtual instruments made by Applied Acoustics
of Canada. http://www.applied-acoustics.com. It's programmed in C++, and it responds really well to screenreaders like JAWS. I wonder what template is
used in that one? Is it QAccessible? QTextToSpeech? I'm confused on that one! I want to use the C++ Programming Language for all my programs that I will
make. But I want to make them accessible to people of all abilities, whether sighted, blind, visually challenged, etc. -
Hi
QTextToSpeech is a technology that can speak written text.
Like reading out loud emails. However, it contains no extra function for
discovery of user interfaces and reading out loud its layout and buttons text with more.QAccessibleInterface is a way for a Qt program to make more information available
to screen readers. Its not a reader in it self but helps make Qt programs better for that.So QAccessibleInterface could make information available to QTextToSpeech so it could read the buttons and help navigate the application. But normally QAccessibleInterface is used to help existing screen readers with information.
-
@Annabelle Hi A. I'm presuming you visited http://doc.qt.io/qt-5/qtmultimedia-index.html
It may not be exactly what you want, I have a feeling you might be interested in the JUCE libs. I tried integrating it into Qt and got it working on a very basic level. https://juce.com/ But don't take my word for it, I'm a gnoblar.@Guest said in Creating a Virtual Instrument with Qt:
@Annabelle Hi A. I'm presuming you visited http://doc.qt.io/qt-5/qtmultimedia-index.html
It may not be exactly what you want, I have a feeling you might be interested in the JUCE libs. I tried integrating it into Qt and got it working on a very basic level. https://juce.com/ But don't take my word for it, I'm a gnoblar.How did you get JUCE to work in Qt? Is there a specific code I should try for the JUCE libraries to work for the virtual instrument I'm wanting to create?
-
Hi
QTextToSpeech is a technology that can speak written text.
Like reading out loud emails. However, it contains no extra function for
discovery of user interfaces and reading out loud its layout and buttons text with more.QAccessibleInterface is a way for a Qt program to make more information available
to screen readers. Its not a reader in it self but helps make Qt programs better for that.So QAccessibleInterface could make information available to QTextToSpeech so it could read the buttons and help navigate the application. But normally QAccessibleInterface is used to help existing screen readers with information.
@mrjj said in Creating a Virtual Instrument with Qt:
Hi
QTextToSpeech is a technology that can speak written text.
Like reading out loud emails. However, it contains no extra function for
discovery of user interfaces and reading out loud its layout and buttons text with more.QAccessibleInterface is a way for a Qt program to make more information available
to screen readers. Its not a reader in it self but helps make Qt programs better for that.So QAccessibleInterface could make information available to QTextToSpeech so it could read the buttons and help navigate the application. But normally QAccessibleInterface is used to help existing screen readers with information.
So I'm guessing that the first part of my code should have lines that say:
#include QAccessibleInterface.h #include QAccessibleActionInterface.h #include QAccessibleValueInterface.h
-
@mrjj said in Creating a Virtual Instrument with Qt:
Hi
QTextToSpeech is a technology that can speak written text.
Like reading out loud emails. However, it contains no extra function for
discovery of user interfaces and reading out loud its layout and buttons text with more.QAccessibleInterface is a way for a Qt program to make more information available
to screen readers. Its not a reader in it self but helps make Qt programs better for that.So QAccessibleInterface could make information available to QTextToSpeech so it could read the buttons and help navigate the application. But normally QAccessibleInterface is used to help existing screen readers with information.
So I'm guessing that the first part of my code should have lines that say:
#include QAccessibleInterface.h #include QAccessibleActionInterface.h #include QAccessibleValueInterface.h
Hi
yes
but it seems to miss < and >
like
#include <QAccessibleInterface.h>
not sure it read them :) -
Hi
yes
but it seems to miss < and >
like
#include <QAccessibleInterface.h>
not sure it read them :)The best way to include a Qt class is to just write the class name inside angular brackets.
#include <QAccessibleInterface>
#include <QAccessibleActionInterface>
#include <QAccessibleValueInterface> -
I remember a while back, a guest posted on this topic, telling me that they got the JUCE libraries to work with Qt. How did they do that, I wonder? Also, would those libraries respond to the accessible classes like QAccessibleInterface, QAccessibleActionInterface, QAccessibleValueInterface, etc.?
-
I remember a while back, a guest posted on this topic, telling me that they got the JUCE libraries to work with Qt. How did they do that, I wonder? Also, would those libraries respond to the accessible classes like QAccessibleInterface, QAccessibleActionInterface, QAccessibleValueInterface, etc.?
@Annabelle said in Creating a Virtual Instrument with Qt:
I remember a while back, a guest posted on this topic, telling me that they got the JUCE libraries to work with Qt. How did they do that, I wonder?
Qt and JUCE are both C++ libraries. In theory, you can combine any number of C++ libraries within a C++ project.
Having said that, JUCE and Qt seem to serve quite similar use-cases, so there is little point in combining these two. I don't have experience with JUCE, but from a quick read through their documentation I get the impression that Qt has more features overall while JUCE is stronger when it comes to audio applications.
You asked if JUCE would respond to QAccessibleInterface etc. I'm not sure; you'll need to ask someone who has used both libraries.
-
@Annabelle said in Creating a Virtual Instrument with Qt:
I remember a while back, a guest posted on this topic, telling me that they got the JUCE libraries to work with Qt. How did they do that, I wonder?
Qt and JUCE are both C++ libraries. In theory, you can combine any number of C++ libraries within a C++ project.
Having said that, JUCE and Qt seem to serve quite similar use-cases, so there is little point in combining these two. I don't have experience with JUCE, but from a quick read through their documentation I get the impression that Qt has more features overall while JUCE is stronger when it comes to audio applications.
You asked if JUCE would respond to QAccessibleInterface etc. I'm not sure; you'll need to ask someone who has used both libraries.
@JKSH said in Creating a Virtual Instrument with Qt:
@Annabelle said in Creating a Virtual Instrument with Qt:
I remember a while back, a guest posted on this topic, telling me that they got the JUCE libraries to work with Qt. How did they do that, I wonder?
Qt and JUCE are both C++ libraries. In theory, you can combine any number of C++ libraries within a C++ project.
Having said that, JUCE and Qt seem to serve quite similar use-cases, so there is little point in combining these two. I don't have experience with JUCE, but from a quick read through their documentation I get the impression that Qt has more features overall while JUCE is stronger when it comes to audio applications.
You asked if JUCE would respond to QAccessibleInterface etc. I'm not sure; you'll need to ask someone who has used both libraries.
Do you know someone on the forum who has done this task?
-
@JKSH said in Creating a Virtual Instrument with Qt:
@Annabelle said in Creating a Virtual Instrument with Qt:
I remember a while back, a guest posted on this topic, telling me that they got the JUCE libraries to work with Qt. How did they do that, I wonder?
Qt and JUCE are both C++ libraries. In theory, you can combine any number of C++ libraries within a C++ project.
Having said that, JUCE and Qt seem to serve quite similar use-cases, so there is little point in combining these two. I don't have experience with JUCE, but from a quick read through their documentation I get the impression that Qt has more features overall while JUCE is stronger when it comes to audio applications.
You asked if JUCE would respond to QAccessibleInterface etc. I'm not sure; you'll need to ask someone who has used both libraries.
Do you know someone on the forum who has done this task?
@Annabelle said in Creating a Virtual Instrument with Qt:
You asked if JUCE would respond to QAccessibleInterface etc. I'm not sure; you'll need to ask someone who has used both libraries.
Do you know someone on the forum who has done this task?
I don't know anyone personally, but Gixxer at this JUCE forum thread mentioned using Qt: https://forum.juce.com/t/juce-accessibility/15968
-
@Annabelle said in Creating a Virtual Instrument with Qt:
You asked if JUCE would respond to QAccessibleInterface etc. I'm not sure; you'll need to ask someone who has used both libraries.
Do you know someone on the forum who has done this task?
I don't know anyone personally, but Gixxer at this JUCE forum thread mentioned using Qt: https://forum.juce.com/t/juce-accessibility/15968
@JKSH said in Creating a Virtual Instrument with Qt:
@Annabelle said in Creating a Virtual Instrument with Qt:
You asked if JUCE would respond to QAccessibleInterface etc. I'm not sure; you'll need to ask someone who has used both libraries.
Do you know someone on the forum who has done this task?
I don't know anyone personally, but Gixxer at this JUCE forum thread mentioned using Qt: https://forum.juce.com/t/juce-accessibility/15968
I've just now searched there, and I've found nothing regarding Juce and Qt.
-
@JKSH said in Creating a Virtual Instrument with Qt:
@Annabelle said in Creating a Virtual Instrument with Qt:
You asked if JUCE would respond to QAccessibleInterface etc. I'm not sure; you'll need to ask someone who has used both libraries.
Do you know someone on the forum who has done this task?
I don't know anyone personally, but Gixxer at this JUCE forum thread mentioned using Qt: https://forum.juce.com/t/juce-accessibility/15968
I've just now searched there, and I've found nothing regarding Juce and Qt.
@Annabelle said in Creating a Virtual Instrument with Qt:
@JKSH said in Creating a Virtual Instrument with Qt:
@Annabelle said in Creating a Virtual Instrument with Qt:
You asked if JUCE would respond to QAccessibleInterface etc. I'm not sure; you'll need to ask someone who has used both libraries.
Do you know someone on the forum who has done this task?
I don't know anyone personally, but Gixxer at this JUCE forum thread mentioned using Qt: https://forum.juce.com/t/juce-accessibility/15968
I've just now searched there, and I've found nothing regarding Juce and Qt.
That forum uses lazy-loading, so you need to scroll down to load all the messages. Gixxer mentioned Qt on 29 June 2018.
-
@Annabelle said in Creating a Virtual Instrument with Qt:
@JKSH said in Creating a Virtual Instrument with Qt:
@Annabelle said in Creating a Virtual Instrument with Qt:
You asked if JUCE would respond to QAccessibleInterface etc. I'm not sure; you'll need to ask someone who has used both libraries.
Do you know someone on the forum who has done this task?
I don't know anyone personally, but Gixxer at this JUCE forum thread mentioned using Qt: https://forum.juce.com/t/juce-accessibility/15968
I've just now searched there, and I've found nothing regarding Juce and Qt.
That forum uses lazy-loading, so you need to scroll down to load all the messages. Gixxer mentioned Qt on 29 June 2018.
@JKSH said in Creating a Virtual Instrument with Qt:
@Annabelle said in Creating a Virtual Instrument with Qt:
@JKSH said in Creating a Virtual Instrument with Qt:
@Annabelle said in Creating a Virtual Instrument with Qt:
You asked if JUCE would respond to QAccessibleInterface etc. I'm not sure; you'll need to ask someone who has used both libraries.
Do you know someone on the forum who has done this task?
I don't know anyone personally, but Gixxer at this JUCE forum thread mentioned using Qt: https://forum.juce.com/t/juce-accessibility/15968
I've just now searched there, and I've found nothing regarding Juce and Qt.
That forum uses lazy-loading, so you need to scroll down to load all the messages. Gixxer mentioned Qt on 29 June 2018.
I found his post, but he didn't say how he got the Juce libraries to work with Qt. He did, however, say that Qt has more accessibility options than Juce. He's absolutely right. Even I've corresponded with Juce, and their head administrators say it would take years for them to incorporate accessibility into their libraries. I'm not entirely sure I believe that fully. I'm going to put the message he says in block quotes. Note that I had to correct some spelling errors he made.
<blockquote>a good example for accessiblity in a cross-plattform framework is
qt.io 1i use qt for long time, but i would change to JUCE because it is more audio related than qt. but in JUCE i have no accessibility support, and then all what
i do is not accessible.from qt: Qt supports Microsoft Active Accessibility (MSAA) and IAccessible2 on Windows, macOS Accessibility on macOS, and AT-SPI via DBus on Unix/X11. The
platform specific technologies are abstracted by Qt, so that applications do not need any platform specific changes to work with the different native APIs.
Qt tries to make adding accessibility support to your application as easy as possible, only a few changes from your side may be required to allow even
more users to enjoy it.It would be really nice if JUCE would support it out of the box, with no need of hotspot clickers or something like that.
it is 2018 now, and in lots of countries you have e.g. section 508 and EN 301, that makes the support for Accessibility mandatory, otherwise you cant sell
any product to e.g. schools or offical offices…It would be nice to hear that MSAA or IAccessible2 … are in the dev roadmap of JUCE? because that can help me with the question what framework i take for
my next projects.Thanks
</blockquote>