| |
|
|
Job Summary:
|
| |
| Job Type: |
Project |
| Budget: |
$ 20-100 |
| Required
Skills: |
,
,
,
|
| Attached
Files: |
(None) |
| |
|
| Status: |
Closed for bidding
|
| |
|
|
|
Buyer Summary:
|
| |
| Username: |
|
| Feedback Score: |
Rating: (No Feedback Yet)
|
| Award Reliability: |
1 posted 0 paid |
| |
|
| Location: |
Pullman, WA, United States
|
| Member Since: |
November 14, 2008 |
| |
|
|
|
| Invited Users: |
There are no invited users
|
Description
I need a C++ class written. The project should be a very simple one for someone with the right knowledge. I'm guessing it could be as simple as a single day project. There is a lot of example code out there that does what I want (see links below), but I just don't know how to put it together.
I need a fairly simple OpenAL 1.1 based audio player class with a real-time EQ filter built in. It should take streaming samples of data from a stereo OpenAL source (i.e. a wav file) and apply up to 100 bands of active "bandpass" equalization in real-time. Then it should feed the new "filtered" samples into alSourceQueueBuffer().
The EQ is essentially a 100 band parametric EQ, yet there are no graphics to it.
The player should play a stereo wave file, thus disabling the 3D spatialization effects of OpenAL.
SoundSource.cpp
I want to be able to make a call to play the sound and just pass the following parameters:
1. wave file path
2. volume level
example call:
SoundSource1.playSound("c:\test.wav", 0.95);
I also need a function within the class that I can call to continuously update the frequency values. I will pass this function a 3D array of values representing the required EQ parameters for playback
- 100 frequency values in Hz- i.e. 100, 300, 500, 700 ...
- 100 db Gain setpoints that correspond to the desired volume level of each frequency band - i.e.: -3.00, 4.50, 0.76, 12.81 ... - 100 "Q" values for the width of each individual filter
example call:
freqValues[100][100][100];
SoundSource1.EqUpdate(freqValues);
_________________________
Internally the class should do the following:
- instantiate an openAL sound source and start streaming playback immediately
- Apply real-time EQ to the buffered audio samples just before they are being queued for playback (i.e. just prior to the alSourceQueueBuffer() call)
- The function that applies the EQ will take the freqValues[100][100][100] array and manipulate the buffer of sampled audio data (I'm guessing through convolution) such that up to 100 narrow bands of EQ are applied.
- handle memory management properly
__________________________
The winning bidder will be someone who has a good understanding of the following:
- C and C++ - OpenAL - digital signal processing - digital filtering
I need extensive code commenting that explains exactly what the code is doing, in case I need to modify anything.
Misc. notes: Due to the number of filters applied, I'm concerned about the processor burden, so some of the specs might have to be adjusted to balance functionality with the processor (i.e. less frequency values). I don't think it's possible or efficient to do real-time FFTs to the signal, so the winning bidder should know how to avoid that approach. I'm assuming that convolution will be the solution.
Here are some links to example code:
http://www.devmaster.net/articles/openal-tutorials/lesson5.php
http://www.musicdsp.org/files/biquad.c
http://musicdsp.org/archive.php?classid=3
Reminder
You may not start working in this and any request before
your bid is accepted. Users who violate this policy
may have their accounts permanently suspended.
|
| Shortlist |
| Decline Bid |
|
|
NOIDA,
IN
location |
US$150
bid amount
|

(No Feedback
Yet)
feedback |
1 day(s)
delivery time |

|
| |
Dear Mr.Freeballs ,
We are ready to start up with your Project with our excellent team of programmers, Designers & Project Managers. We are 100% confident for a successful delivery of your Project. We are providing our Services to many Big Client Across Globe & are looking for an Excellent Long term Business Relationship with your Esteemed Organization. Please Check your PMB for our company Profile & Our Portfolio.
Warm regards
Bid Time: 11-18-2008 12:13
|
|
|
|
|
|
|
|
| |
| Get the Free
Step-by-Step Guide on How to Use GetACoder |
The act of
outsourcing jobs has become easy in the past few years
thanks to GetACoder. However, our team aims at making the
whole process even easier. So, it has now come the time to
provide you with a step-by-step guidance on how to use this
service and succeed in the outsourcing world totally for
FREE.
It doesn't matter if you are a more experienced user or a
novice; using GetACoder will become even simpler with the
help of this E-book. There are two major sections: a Buyers
section and a Coders section.
Buyers will learn:
- How to outsource safely
- How to pick the best freelancers
- How to manage time and money
Coders will learn:
- How to get the best jobs
- How to secure their payments
- How to build a long-lasting relationship with buyers
...and MUCH MORE
Clear examples and pictures illustrating key situations,
great tips and real testimonies of some of our best users...
all in this Outsourcing Guide. So don't loose the
outstanding opportunity to download GetACoder FREE E-book.
|

 |
|
GetACoder is a leading Global Services Marketplace doing business in more than 200 countries. Our unique system accelerates your time to market and provides your business with key competitive advantages. When you use GetACoder you are stretching your budget and saving as much as 60% over traditional outsourcing. GetACoder is changing business, now it's no longer about what you own or build but which resources and talent you can access. With GetACoder you reduce expenses, increase efficiencies, aggressively grow your business, and create a sustainable competitive advantage. GetACoder makes outsourcing to any part of the world an easy task! With GetACoder it's simple to outsource any business request, gain access to global talent and manage jobs online. One of the main advantages of GetACoder is the low labor cost. The typically rates are about seven times lower than the ones in the US or Europe. Posting a request at GetACoder allows the right professional or company to find you and to bid for your work. We are building a reputation for exceeding our customers' expectations and for becoming an extremely cost effective way to outsource work. Use GetACoder when you want to save money, increase efficiency or accelerate the development of your request. With GetACoder you focus on growing your business and let others do the tedious work. Post your request on GetACoder for free. Find out why people outsource jobs with us day after day. Thousands of Satisfied Customers - Submit/View Quotes
| - | Support people are excellent and honest. I really recommend doing business via this website. - | | - | Used this site and the time response was just great. - | | - | Getacoder is very nice. - |
|
|
| |
© 2004-2012 GetACoder. All rights reserved. |
|