Lost in Narration: Difference between revisions
(20 intermediate revisions by 2 users not shown) | |||
Line 2: | Line 2: | ||
"Language refracts meaning as it moves across mediums. In this performance, a live script flows through multiple phases of narration and musical transformation, each filter subtly altering the narrative before it's turned into a fixed, printed record. Viewers are invited to experience the tension, misinterpretation, and elasticity of language as the narrative shifts and the original is forgotten." | "Language refracts meaning as it moves across mediums. In this performance, a live script flows through multiple phases of narration and musical transformation, each filter subtly altering the narrative before it's turned into a fixed, printed record. Viewers are invited to experience the tension, misinterpretation, and elasticity of language as the narrative shifts and the original is forgotten." | ||
longer version and drafts can be found → https://pad.xpub.nl/p/Speech_to_project_description | |||
drafts | |||
==Cookbook== | ==Cookbook== | ||
Line 9: | Line 8: | ||
https://pad.xpub.nl/p/Speech_to_project_ <br> | https://pad.xpub.nl/p/Speech_to_project_ <br> | ||
Thinking about the structure of the performance, timetable and spacing.<br> | Thinking about the structure of the performance, timetable and spacing.<br> | ||
Now Zuhui is writing the first draft of the description. | Now Zuhui is writing the first draft of the description.<br> | ||
'''[Meeting-02]''' 11/11/2024<br> | |||
Actually deciding on the floor plan, material needed and description on the project.<br> | |||
Handing the info over to Logistics | |||
===Kiara trying to make the python process work=== | |||
<p>First step was to make the <code>sounddevice</code> python library work through [vosk].</p> | |||
<ul> | |||
<li>How to install and run the speech recognition (windows recipe)</li> | |||
<ul> | |||
<li>create a dedicated folder on the computer, where you want to store the scripts and written files</li> | |||
<li>install souddevice with <code>pip install sounddevice</code></li> | |||
<li>install vosk with <code>pip install vosk</code></li> | |||
<li>download [https://github.com/alphacep/vosk-api/blob/master/python/example/test_microphone.py this file] and put it in the folder</li> | |||
<li>cd in your folder through the terminal</li> | |||
<li>run <code>python test_microphone.py</code> <br> | |||
<span style="text-indent: 10px; font-style: italic;">You can now see the text being printed in the console while you speak!!! The program is stopped with <code>CTRL+C</code></span>.</li> | |||
<li>(optional) you can go modify the <code>test_microphone.py</code> by commenting lines 80 and 81. This prevents the program to print the partial result of it trying to recognise what's being said</li> | |||
<li>if you want to print the content being recorder into a text file, run <code>python test_microphone.py ›› stderrout.txt</code>. The <code>››</code> means that it will append the new data in the file if you stop the program. If you want to overwrite everytime, simply use <code>›</code>. <br> | |||
<span style="text-indent: 10px; font-style: italic;">Printing in a file makes the terminal output invisible</span></li> | |||
</ul></ul> | |||
This is now working, and we can choose to either stop there or print the result with the thermal printer The aim being to send it to the thermal printer, let's try to do this.<br> | |||
<ul> | |||
<li>How to install the thermal printer</li> | |||
<ul> | |||
<li style="font-style: italic;">obviously connect the thermal printer to the laptop and turn it on</li> | |||
<li>install [https://github.com/walac/pyusb?tab=readme-ov-file pyusb] with <code>pip install pysub</code> and download the libusb-win32 packages [https://sourceforge.net/projects/libusb-win32/ here]</li> | |||
<li>install lib-usb and all the drivers through [https://zadig.akeo.ie/ Zadig]: in Options select ''List All Devices'' and from the dropdown select the printer device. Then, go through the list of drivers with the arrows and install the WCID Driver for each. '''IMPORTANT''': Replace the printer's driver with the <code>libusb-win32</code> driver, this is what allows the connection. Zadig will also give you the printer's id, which are needed in the <code>script.py</code> file we're creating later. | |||
<gallery widths="200" style="text-align: center;"> | |||
File:Zadig-og.png | |||
File:Zadig-01.png | |||
File:Zadig-02.png | |||
File:Zadig-param-og.png | |||
</gallery></li> | |||
<li>install ESC/POS with <code>pip install python-escpos</code></li> | |||
<li>create a new .py file in your folder, via the code editor, call it <code>script.py</code> and put the code below, don't forget to change the ids in the parenthesis. Now you can run <code>python script.py</code> to see the magic happening! | |||
<source lang=python> | |||
from escpos.printer import Usb | |||
iprinter = Usb(0x0483, 0x811E, in_ep=0x81, out_ep=0x02) #here you replace 0483 and 811E with the ids provided by Zadig | |||
iprinter.text("hello world") | |||
iprinter.qr("https://xpub.nl") | |||
</source></li> | |||
</ul></ul> | |||
Okay. We have the sounddevice recording, and the printer printing. Now, we want to have the printer printing what the microphone is getting. | |||
*How to merge the scripts | |||
**Ask ChatGPT (not proud about this one...) to merge <code>test_microphone.py</code> and <code>script.py</code> | |||
<p style="background-color: pink; font-size: 24pt; padding: 0 5px; width: fit-content; font-weight: bold; font-style: italic;">M A G I C</p><gallery mode="packed-hover" widths="200" heights="400"> | |||
File:Try01 speakFrench.png|On the first try of the script working, I tried speaking French to it, not working but amusing. | |||
File:Try01 print.jpg|The print!!!! | |||
</gallery> | |||
==Refs and resources== | ==Refs and resources== | ||
; Stranger than fiction (movie) | ;Stranger than fiction (movie) | ||
; Lost in translation (movie) | ;Lost in translation (movie) | ||
; curl -v | ;[https://youtu.be/atcqMWqB3hw?si=t7vMCGAfetBS-0Qx curl -v https://google.com] | ||
*Bunch of links for the python process (Kiara) | |||
:;[https://zadig.akeo.ie/ Zadig] | |||
:;[https://github.com/walac/pyusb PyUSB] | |||
:; [https://stackoverflow.com/questions/77680842/notimplementederror-using-pyusb-on-windows10 Debugging PyUSB] | |||
:;[https://github.com/alphacep/vosk-api/blob/master/python/example/test_microphone.py test_microphone.py file] | |||
:;[https://github.com/libusb/libusb/wiki/Windows#How_to_use_libusb_on_Windows How to use libusb on Windows] | |||
:;[https://github.com/python-escpos/python-escpos/issues/384#issuecomment-607456362 What was '''actually''' the solution to get the printer to work] | |||
:;[https://superuser.com/questions/1411312/is-there-an-equivalent-to-linuxs-lsusb-in-windows For when I was still looking into the printer errors] | |||
:;[https://stackoverflow.com/questions/69709241/how-can-i-get-the-full-instance-id-using-a-substring-of-the-deviceid That too] | |||
:;[https://pypi.org/project/python-escpos/ Python ECP/POS official page] | |||
<!-- ==Additional info== --> | <!-- ==Additional info== --> | ||
==Event Rider== | == Event Rider== | ||
===Items=== | ===Items=== | ||
* Laptop x2 | * Laptop x2 | ||
* Screen + stand (maybe the one in the studio but it can't turn vertical) | *Screen + stand (maybe the one in the studio but it can't turn vertical) | ||
* Microphones x2 + mixer | *Microphones x2 + mixer | ||
* Thermal printer + lots of paper | *Thermal printer + lots of paper | ||
* Tables x1 (2 by 1) | * Tables x1 (2 by 1) | ||
* Chairs x5 | *Chairs x5 | ||
===Space=== | ===Space=== | ||
* X x Xm | *X x Xm | ||
* Internet needed | * Internet needed | ||
* Power plugs - at least 2 or 3 | *Power plugs - at least 2 or 3 | ||
===Time=== | ===Time=== | ||
Line 36: | Line 99: | ||
Sound output is working live and also after<br> | Sound output is working live and also after<br> | ||
<br> | <br> | ||
(After | (After 30 minutes to an hour into the performance, audience is invited to approach the microphone and read the script aloud.) | ||
===Floor plan=== | ===Floor plan=== | ||
A piece of wall is needed to sit the two livescripters. |
Latest revision as of 12:51, 12 November 2024
Short description
"Language refracts meaning as it moves across mediums. In this performance, a live script flows through multiple phases of narration and musical transformation, each filter subtly altering the narrative before it's turned into a fixed, printed record. Viewers are invited to experience the tension, misinterpretation, and elasticity of language as the narrative shifts and the original is forgotten."
longer version and drafts can be found → https://pad.xpub.nl/p/Speech_to_project_description
Cookbook
[Meeting-01] 08/11/2024
https://pad.xpub.nl/p/Speech_to_project_
Thinking about the structure of the performance, timetable and spacing.
Now Zuhui is writing the first draft of the description.
[Meeting-02] 11/11/2024
Actually deciding on the floor plan, material needed and description on the project.
Handing the info over to Logistics
Kiara trying to make the python process work
First step was to make the sounddevice
python library work through [vosk].
- How to install and run the speech recognition (windows recipe)
- create a dedicated folder on the computer, where you want to store the scripts and written files
- install souddevice with
pip install sounddevice
- install vosk with
pip install vosk
- download this file and put it in the folder
- cd in your folder through the terminal
- run
python test_microphone.py
You can now see the text being printed in the console while you speak!!! The program is stopped withCTRL+C
. - (optional) you can go modify the
test_microphone.py
by commenting lines 80 and 81. This prevents the program to print the partial result of it trying to recognise what's being said - if you want to print the content being recorder into a text file, run
python test_microphone.py ›› stderrout.txt
. The››
means that it will append the new data in the file if you stop the program. If you want to overwrite everytime, simply use›
.
Printing in a file makes the terminal output invisible
This is now working, and we can choose to either stop there or print the result with the thermal printer The aim being to send it to the thermal printer, let's try to do this.
- How to install the thermal printer
- obviously connect the thermal printer to the laptop and turn it on
- install pyusb with
pip install pysub
and download the libusb-win32 packages here - install lib-usb and all the drivers through Zadig: in Options select List All Devices and from the dropdown select the printer device. Then, go through the list of drivers with the arrows and install the WCID Driver for each. IMPORTANT: Replace the printer's driver with the
libusb-win32
driver, this is what allows the connection. Zadig will also give you the printer's id, which are needed in thescript.py
file we're creating later. - install ESC/POS with
pip install python-escpos
- create a new .py file in your folder, via the code editor, call it
script.py
and put the code below, don't forget to change the ids in the parenthesis. Now you can runpython script.py
to see the magic happening!from escpos.printer import Usb iprinter = Usb(0x0483, 0x811E, in_ep=0x81, out_ep=0x02) #here you replace 0483 and 811E with the ids provided by Zadig iprinter.text("hello world") iprinter.qr("https://xpub.nl")
Okay. We have the sounddevice recording, and the printer printing. Now, we want to have the printer printing what the microphone is getting.
- How to merge the scripts
- Ask ChatGPT (not proud about this one...) to merge
test_microphone.py
andscript.py
- Ask ChatGPT (not proud about this one...) to merge
M A G I C
Refs and resources
- Stranger than fiction (movie)
- Lost in translation (movie)
- curl -v https://google.com
- Bunch of links for the python process (Kiara)
Event Rider
Items
- Laptop x2
- Screen + stand (maybe the one in the studio but it can't turn vertical)
- Microphones x2 + mixer
- Thermal printer + lots of paper
- Tables x1 (2 by 1)
- Chairs x5
Space
- X x Xm
- Internet needed
- Power plugs - at least 2 or 3
Time
start at 3pm and run the whole day (not constant), people relaying
Sound output is working live and also after
(After 30 minutes to an hour into the performance, audience is invited to approach the microphone and read the script aloud.)
Floor plan
A piece of wall is needed to sit the two livescripters.