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

Error with DefaultOAuthProvider in Android
What is good way to pick good matches in Android OpenCV 2.4.4
Scale scrollview contents to fill screen
How to design Activity to use camera for retrieving image properly
How to show a specific location on map in android using Google Map Android API v2?
Getting Content from Imageview in CustomListViewAdapter to share via Facebook
How turning off animation of system operation android programmatically
listView does not refresh with new values
Couldn't connect to MySQL on Android
Cannot reference an android library project in Eclipse
Build Date object with a date and a time
Creating Tile UI Like windows phones [closed]
No repeated contact from content://sms/inbox
Android Emulator: Calendar application will not synchronize with google calendar
Android Transform3d Hides Text (z axis positioning)
Good Servers to use with app

Categories

HOME
phpword
google-cloud-platform
adal
github-for-windows
3d
rsa
rendering
replace
database-normalization
google-cloud-datalab
missing-data
jtextpane
okhttp
augeas
openpyxl
mautic
filechannel
endpoint
onedrive-api
bitnami
sse
sigma.js
blade
pagespeed
zxing
direct3d11
xcode-ui-testing
datastax-enterprise-graph
userdefaults
event-flow
volatile
sql-server-2000
cart
jmockit
jbutton
simplecv
card.io
sammy.js
activexobject
slacktextviewcontroller
reason
connection-pool
mongoose-schema
oracle-service-bus
tcc
avcapturedevice
oim
openal
automapper-5
reportservice2010
tf
lightning
skin
quicktime
vibrate
branch-prediction
cudd
simplepie
grails-plugin
qtplugin
jboss-tools
delta
lean
android-wake-lock
lua-telegram-bot
riot
cda
dbamp
cortex-m
state-restoration
vhosts
file-move
flock
morton-number
typemock
teamcity-9.1
jquery-forms-plugin
cakephp-2.7
public-html
qtwebengine
crowd
contrast
metatrader5
entry-point
parallel-testing
dct
spring-remoting
conditionaltagsupport
ecslidingviewcontroller
beaker-testing
chart-director
curb
onmousemove
vfs
extconf.rb
multiplexing
agility.js
convention
node-redis
entity-attribute-value
automationelement
umra
burndowncharts
wordprocessingml
windows-identity
escrow
online-storage
pnrp

Resources

Database Users
RDBMS discuss
Database Dev&Adm
javascript
java
csharp
php
android
javascript
java
csharp
php
python
android
jquery
ruby
ios
html
Mobile App
Mobile App
Mobile App