android


NameError: name 'numpydata' is not defined


I'm trying to stream audio from an android application to a python server, I have both codes here.
The client:
public class MainActivity extends AppCompatActivity {
private Button startButton,stopButton;
public byte[] buffer;
public static DatagramSocket socket;
private int port=4100;
AudioRecord recorder;
private int sampleRate = 44100 ; // 44100 for music
private int channelConfig = AudioFormat.CHANNEL_IN_MONO;
private int audioFormat = AudioFormat.ENCODING_PCM_16BIT;
int minBufSize = AudioRecord.getMinBufferSize(sampleRate, channelConfig, audioFormat);
private boolean status = true;
#Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
startButton = (Button) findViewById (R.id.start_button);
stopButton = (Button) findViewById (R.id.stop_button);
startButton.setOnClickListener (startListener);
stopButton.setOnClickListener (stopListener);
}
private final OnClickListener stopListener = new OnClickListener() {
#Override
public void onClick(View arg0) {
status = false;
recorder.release();
Log.d("VS","Recorder released");
}
};
private final OnClickListener startListener = new OnClickListener() {
#Override
public void onClick(View arg0) {
status = true;
startStreaming();
}
};
public void startStreaming() {
Thread streamThread = new Thread(new Runnable() {
#Override
public void run() {
try {
DatagramSocket socket = new DatagramSocket();
Log.d("VS", "Socket Created");
byte[] buffer = new byte[minBufSize];
Log.d("VS","Buffer created of size " + minBufSize);
DatagramPacket packet;
Log.d("VS", "Address retrieved");
final InetAddress destination = InetAddress.getByName("192.168.43.71");
Log.d("VS", "Address retrieved");
recorder = new AudioRecord(MediaRecorder.AudioSource.MIC,sampleRate,channelConfig,audioFormat,minBufSize*10);
Log.d("VS", "Recorder initialized");
recorder.startRecording();
while(status == true) {
//reading data from MIC into buffer
minBufSize = recorder.read(buffer, 0, buffer.length);
//putting buffer in the packet
packet = new DatagramPacket (buffer,buffer.length,destination,port);
socket.send(packet);
System.out.println("MinBufferSize: " +minBufSize);
}
} catch(UnknownHostException e) {
Log.e("VS", "UnknownHostException",e);
} catch (IOException e) {
e.printStackTrace();
Log.e("VS", ""+ e);
}
}
});
streamThread.start();
}
}
The python server:
import pyaudio
import socket
from threading import Thread
import numpy as np
from matplotlib import pyplot as plt
frames = []
def udpStream(CHUNK):
udp = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
udp.bind(("192.165.43.72", 4100))
while True:
# soundData, addr = udp.recvfrom(CHUNK)
soundData, addr = udp.recvfrom(CHUNK * CHANNELS * 2)
frames.append(soundData)
print (numpydata)
plt.plot(numpydata)
plt.show()
udp.close()
def play(stream, CHUNK):
BUFFER = 10
while True:
if len(frames) == BUFFER:
while True:
try:
stream.write(frames.pop(0), CHUNK)
except:
pass
if __name__ == "__main__":
FORMAT = pyaudio.paInt16
CHUNK = 1024
CHANNELS = 2
RATE = 44100
p = pyaudio.PyAudio()
stream = p.open(format=FORMAT,
channels = CHANNELS,
rate = RATE,
output = True,
input=True,
frames_per_buffer = CHUNK,
)
Ts = Thread(target = udpStream, args=(CHUNK,))
Tp = Thread(target = play, args=(stream, CHUNK,))
Ts.setDaemon(True)
Tp.setDaemon(True)
Ts.start()
Tp.start()
Ts.join()
Tp.join()
This is not my code, I found it here Noise in Audio Streaming from Android to PC using UDP with Python Server.
I'm not getting any errors on the client, but when I try to run the python server (after installing pyaudio, numpy and matplotlib), I get this error and I don't know why.
Exception in thread Thread-1:
Traceback (most recent call last):
File "C:\Python34\lib\threading.py", line 920, in _bootstrap_inner
self.run()
File "C:\Python34\lib\threading.py", line 868, in run
self._target(*self._args, **self._kwargs)
File "C:\Users\Eric\Desktop\Servidor\Servidor.py", line 18, in udpStream
print (numpydata)
NameError: name 'numpydata' is not defined
I don't know how to fix this, could you help me please?
Thank you all!

Related Links

strange broken simbol rendered in mobile chrome
Android consumable in app purchase flow called twice launchPurchaseFlow()
Mobile network 3g/4g randomly disconnects from the server
Binding several views to a Listener with multiple methods in Butterknife
Different display interface on the same devices
Encountered unregistered class ID: 12 SnappyDB
React native listview does not show all the rows
No view found error for a fragment with a ListView with a custom Adapter
android app crash since fab change
Android Studio Search View DatabaseTable can't be applied
GCM receiver in separate module
how not to close a dialog after a button has been pressed [duplicate]
how to add and remove hashmap key/value pair from view-pager fragment
Google Play Services GCM 10.0.1 asks to “update” back to 9.0.0
Android ADB not detecting device in Mac OS X although device is detected by Android File Transfer
How I want to display 2 child node in one firebaserecycleradapter?

Categories

HOME
sonarqube
httparty
cobalt
checkstyle
swt
spring-data-redis
alsa
settings
frontend
crystal-lang
flume
enthought
activecollab
cmdb
jsonpath
flash-player
atlassian
searchview
aws-sdk
easyphp
sencha-touch
selinux
blade
ksh
ios10.2
inno-download-plugin
pchart
zxing
dynamically-generated
xunit
ckfinder
android-sharedpreferences
android-things
livelink
powershell-ise
paragraph
card.io
dsx-desktop
sammy.js
login-script
html-encode
magento-1.9.2.4
openproject
wurfl
google-data-api
lpsolve
double-click
jquery-ui-draggable
configurationmanager
reshape
py2neo
swingworker
testrail
meteor-packages
builtins
async.js
spring-cloud-feign
cfchart
ikiwiki
cortex-m
lazybones
.bash-profile
slash
j-security-check
infosphere-spl
dbaccess
showdialog
android-cookiemanager
uncaught-typeerror
cocos3d
cancellation
file-not-found
gae-quotas
bin
mysql-error-1044
embedded-fonts
model-driven-development
flex++
octal
twisted.web
booksleeve
infobright
apache-commons-dbutils
clrstoredprocedure
msr
interprocess
tabpanel
scrollbars
spread
lxr
build-environment
lobo-cobra
sun
dojo-dnd
flvplayback
pnrp

Resources

Encrypt Message



code
soft
python
ios
c
html
jquery
cloud
mobile