Find Jobs
Hire Freelancers

Write a music streaming server and a client that connects and plays the music.

€30-250 EUR

Скасований
Опублікований over 4 years ago

€30-250 EUR

Оплачується при отриманні
The base requirements for the server and client are as follows: 1. The client and server components must be capable of running on separate machines. 2. The client must be able to play .WAV files. 3. All audio tracks must only exist on the server. 4. The client and server must communicate and transfer data using sockets. The client must NOT read audio data from the server using any file-handling functions. 5. The server must be able to accept connections from and process requests from multiple clients concurrently. 6. The user of the client must be able to request a list of audio tracks from the server and the user must be able to select one for playback. 7. The user of the client must be able to start and stop playback of the selected track. 8. The server should be a console application that does not require any user input during execution. The server may access a configuration file or the registry for sufficient startup information required to establish communication with clients (such as IP port number to use, etc.). All other configuration of the server should be done via the client. The server may output logging or diagnostic messages to the console. 9. The server must be written in unmanaged (native code) C++. You may not use Microsoft’s managed or universal application extensions to C++. 10. The part of the client application that communicates with the server and plays the audio must be written in unmanaged (native code) C++. 11. The audio content must be played by the client using the DirectSound API. 12. The size of any individual buffer used in the client to receive data from the server can be no larger than 128KB. 13. The size of the secondary buffer used in DirectSound to hold the section of audio to be played can be no larger than that required to hold approximately four seconds of music. The above list contains the base features that must be present in any solution in order for you to pass this assessment. It is important to note that, even if you implement additional features as described below, if the base functionality is not implemented correctly, then you will not be able to pass this assessment. In particular, the audio must play cleanly, without any clipping or gaps between sections of the audio track (except those caused by any network latency if the client and server are on different machines). You must demonstrate the appropriate use of modern C++ features, including smart pointers. Any use of raw pointers should be justified using comments in your source code. If the client only provides a console (character-based) user interface, then it will not be possible to obtain a grade higher than 55% or higher for this assessment. Your client will need to provide a graphical user interface. In order to do this, the C++ code that communicates with the server and plays the audio must be packaged into a dynamic link library (DLL) and a suitable API exposed by the DLL that can be called from any suitable high-level language. You may write the user interface in any language of your choice using any suitable user interface API, but it must use the C++ DLL for all communication with the server and all audio playback. Your code must contain additional evidence of independent learning. Examples of this may include, but is not restricted to, the following: Creation of a playlist of tracks that automatically play one after another with the ability to fade out one track and fade in another. The user interface shows the progress of the playback of the audio file. The user interface allows control of the volume of the playback.
ID проекту: 22747296

Про проект

3 пропозицій(-ї)
Дистанційний проект
Активність 4 yrs ago

Хочете заробити?

Переваги подання заявок на Freelancer

Вкажіть свій бюджет та терміни
Отримайте гроші за свою роботу
Опишіть свою пропозицію
Реєстрація та подання заявок у проекти є безкоштовними
3 фрілансерів(-и) готові виконати цю роботу у середньому за €140 EUR
Аватарка користувача
• 20+ years’ experience Software Development - Since 1997 • 15+ years’ experience C#/.NET software development - Since 2004 • 17+ years’ experience ASP.NET Web Form ASPX - Since 2002 • 5+ years’ experience ASP.NET MVC , ASP.NET CORE ,LINQ , EF , SQL, Python - Since 2014 • 3+ years’ experience AngularJS 1.7 - Start Since 2016 • 2+ years’ experience AngularCLI 7-8 - Since 2017 • 18+ years’ experience PHP/MySQL - Since 2000 • 8+ years’ experience App development Android, iOS Xamarin and Java Platform - Since 2011 • 3+ years’ experience Cryptocurrency and Ethereum smart contract development - Since 2017 • 5+ years’ experience UI/UX Design and graphic Design Photoshop, Adobe XD - Since 2015 • 20+ years’ experience C, C++, Pascal, QBasic , FoxPro, dos programming - Since 1998 • 2+ years’ experience Web Scrap and undefined data parsing - Since 2016 • 20+ years’ experience web technologies like HTML5, CSS3, Bootstrap, JavaScript - Since 1999 • 19+ years’ experience Graphic Design Logo , Printing , Branding , banner - Since 2000 • 15+ years’ experience Animation design Flash + Actionscript 2/3 - Since 2005 • 1+ Vue • Fluency in English;
€140 EUR за 7 дні(-в)
5,0 (5 відгуки(-ів))
4,4
4,4
Аватарка користувача
And what is budget for this ?
€140 EUR за 7 дні(-в)
5,0 (2 відгуки(-ів))
3,8
3,8
Аватарка користувача
HI I am experienced in C Programming Software Architecture C++ Programming etc I can start right now but i have few doubts and questions lets have a quick chat and get it started waiting for your reply
€140 EUR за 7 дні(-в)
0,0 (0 відгуки(-ів))
0,0
0,0

Про клієнта

Прапор GREECE
Thessaloniki, Greece
5,0
3
Спосіб оплати верифіковано
На сайті з січ. 24, 2019

Верифікація клієнта

Дякуємо! Ми надіслали на вашу електронну пошту посилання для отримання безкоштовного кредиту.
Під час надсилання електронного листа сталася помилка. Будь ласка, спробуйте ще раз.
Зареєстрованих користувачів Загальна кількість опублікованих робіт
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Завантажуємо для перегляду
Дозвіл на визначення геолокації надано.
Ваш сеанс входу закінчився, і сеанс було закрито. Будь ласка, увійдіть знову.