Merge branch 'master' of https://github.com/worklist/hifi into shared_and_weak_pointers

This commit is contained in:
ZappoMan 2014-04-18 15:05:54 -07:00
commit 0e124eca3c
3 changed files with 21 additions and 8 deletions

View file

@ -73,15 +73,18 @@ Sound::Sound(const QUrl& sampleURL, QObject* parent) :
// QNetworkAccess manager to grab the raw audio file at the given URL
QNetworkAccessManager *manager = new QNetworkAccessManager(this);
connect(manager, SIGNAL(finished(QNetworkReply*)),
this, SLOT(replyFinished(QNetworkReply*)));
qDebug() << "Requesting audio file" << sampleURL.toDisplayString();
manager->get(QNetworkRequest(sampleURL));
QNetworkReply* soundDownload = manager->get(QNetworkRequest(sampleURL));
connect(soundDownload, &QNetworkReply::finished, this, &Sound::replyFinished);
connect(soundDownload, SIGNAL(error(QNetworkReply::NetworkError)), this, SLOT(replyError(QNetworkReply::NetworkError)));
}
void Sound::replyFinished(QNetworkReply* reply) {
void Sound::replyFinished() {
QNetworkReply* reply = reinterpret_cast<QNetworkReply*>(sender());
// replace our byte array with the downloaded data
QByteArray rawAudioByteArray = reply->readAll();
@ -110,6 +113,11 @@ void Sound::replyFinished(QNetworkReply* reply) {
}
}
void Sound::replyError(QNetworkReply::NetworkError code) {
QNetworkReply* reply = reinterpret_cast<QNetworkReply*>(sender());
qDebug() << "Error downloading sound file at" << reply->url().toString() << "-" << reply->errorString();
}
void Sound::downSample(const QByteArray& rawAudioByteArray) {
// assume that this was a RAW file and is now an array of samples that are

View file

@ -13,15 +13,18 @@
#define hifi_Sound_h
#include <QtCore/QObject>
class QNetworkReply;
#include <QtNetwork/QNetworkReply>
class Sound : public QObject {
Q_OBJECT
Q_PROPERTY(bool empty READ isEmpty)
public:
Sound(const QUrl& sampleURL, QObject* parent = NULL);
Sound(float volume, float frequency, float duration, float decay, QObject* parent = NULL);
bool isEmpty() const { return _byteArray.isEmpty(); }
const QByteArray& getByteArray() { return _byteArray; }
private:
@ -31,7 +34,8 @@ private:
void interpretAsWav(const QByteArray& inputAudioByteArray, QByteArray& outputAudioByteArray);
private slots:
void replyFinished(QNetworkReply* reply);
void replyFinished();
void replyError(QNetworkReply::NetworkError code);
};
#endif // hifi_Sound_h

View file

@ -97,13 +97,14 @@ class AvatarData : public QObject {
Q_PROPERTY(float audioLoudness READ getAudioLoudness WRITE setAudioLoudness)
Q_PROPERTY(float audioAverageLoudness READ getAudioAverageLoudness WRITE setAudioAverageLoudness)
Q_PROPERTY(QString displayName READ getDisplayName WRITE setDisplayName)
Q_PROPERTY(QString faceModelURL READ getFaceModelURLFromScript WRITE setFaceModelURLFromScript)
Q_PROPERTY(QString skeletonModelURL READ getSkeletonModelURLFromScript WRITE setSkeletonModelURLFromScript)
Q_PROPERTY(QString billboardURL READ getBillboardURL WRITE setBillboardFromURL)
Q_PROPERTY(QStringList jointNames READ getJointNames)
Q_PROPERTY(QUuid sessionUUID READ getSessionUUID);
Q_PROPERTY(QUuid sessionUUID READ getSessionUUID)
public:
AvatarData();
virtual ~AvatarData();