当前位置:网站首页>Music player development example (can be set up)

Music player development example (can be set up)

2022-07-01 14:38:00 Ah yuan

One 、 Development infrastructure

          Recently, many college students are finishing their graduation thesis and graduation works , In fact, you can start to think about it in your junior year and communicate with your tutor in advance , Let your work directly become the topic of the thesis , Developing a simple music player on the domestic operating system is a good and tall topic ?( It was like this when I was in College , When I was a junior, my graduation project was already done , Then I told the teacher to revise the optional topic of the paper , The teacher helped me to add my topic for the thesis ), Read the graduation design topic sent by fans , Developed a simple music player ( Domestic operating system ).

          Most graduation topics are usually XXX Management system , Music player development requires more knowledge than XXX There should be more management systems , It will involve network communication ,SSL agreement , Database management , File read and write , Multimedia play , Multithreading and thread pool , Design patterns and other related knowledge points , After reading this article, I hope , You can make a simple music player by yourself .

Two 、 software design

        Software design is generally based on requirements , Before developing or designing software, you must understand the requirements . Especially at work , Requirements are generally determined by The product manager Send out , You need to fully understand the requirements before you start developing ( Sharpening a knife never misses a woodcutter ). One of the more human aspects of our company is , It's not that the demand put forward by the product manager must be reasonable , Technical evaluation is required , Test evaluation ( From user 、 technology 、 Consider the rationality of demand from various aspects such as operation and maintenance ). If you have been talking about the rationality of requirements when developing , Then there are only two possibilities .1、 You are nothing in the company .2、 What are you , But you don't know the customer . 

2.1 demand

        1、 Develop a music player , Be able to search relevant song titles or singers' songs through keywords , Songs are displayed in the list , The list is displayed on one page 20 strip , If you can't show it, you need to turn the page , You can enter numbers to make the page number bar

        2、 You can download songs you are interested in , You can play the downloaded song directly this time or next time you open it .

        3、 It can control the playing progress of music , Pause and play music , Click the previous song and the next song to switch .

        4、  You can control the volume of music .

The design interface is as follows :

 

2.2 Outline design

The frame design drawing is shown in the figure below :( In fact, most of them )

  The module specification

UI modular : It includes two parts: search interface and playback interface .

Database module : Users store local databases , Use it as cached data , Prevent repeated network downloads, etc .

Network module : For processing network requests , Including interface access and request .

Local files : Read and write local files , After downloading the file, save it locally . Cache , When playing, read the local file directly to play .

3、 ... and 、 The development of preparation

        Develop software in domestic operating system , I recommend using QT Development , Of course, readers can also choose their favorite development libraries .

        3.1 Operating system installation

                 Click on : Domestic unified operating system uos How to install ?uos Operating system installation steps

        3.2 QT install

                Click on :  install QT development environment

        3.3 Dependency library installation

              rely on openssl, involves https Network access , So you need to install openssl Development library file , The installation command is as follows :

sudo apt install libssl-dev

Four 、 Module details

4.1 UI Interface

UI Directory structure

 

4.2 database

The database table is designed as follows :

Due to small databases , Therefore, the index is not set .

Field type remarks If required
idint Automatically add yes
namechar(50) The name of the music yes
pathchar(255) The local path yes
imgchar(255) Music cover yes
urlchar(255) Network path yes
ridchar(100) Network identity ID yes
remarkchar(100) remarks no
create_timeint Insert time stamp yes

4.3 The Internet

The network module provides two important interfaces .

1 .API Interface specification : Online music player interface

2. File download .

5、 ... and 、 Source code

Source code address : Ah yuan / QT Blog case

原网站

版权声明
本文为[Ah yuan]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/182/202207011435401276.html