1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Xây dựng website nghe nhạc trực tuyến hỗ trợ tìm kiếm bài hát bằng giọng nói (Đồ Án môn học Đồ Án 1)

64 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Xây Dựng Website Nghe Nhạc Trực Tuyến Hỗ Trợ Tìm Kiếm Bài Hát Bằng Giọng Nói (Đồ Án môn học Đồ Án 1)
Tác giả Nguyễn Khoa Quân, Trần Thị Kim Yến
Người hướng dẫn TS. Đỗ Thị Thanh Tuyền
Trường học Đại học Quốc gia TP. Hồ Chí Minh
Chuyên ngành Khoa Công nghệ Thông tin
Thể loại đồ án
Năm xuất bản 2024
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 64
Dung lượng 18,73 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Cấu trúc

  • Chương 1. GIỚI THIỆU ĐỀ TÀI (0)
    • 1.1. Tên đề tài (13)
    • 1.2. Lý do chọn đề tài (13)
    • 1.3. Mục đích đề tài (0)
      • 1.3.1. Khách quan (14)
      • 1.3.2. Chủ quan (14)
    • 1.4. Đối tượng nghiên cứu (15)
      • 1.4.1. Các công nghệ nghiên cứu (15)
      • 1.4.2. Đối tượng sử dụng đề tài hướng đến (0)
    • 1.5. Phạm vi nghiên cứu (15)
      • 1.5.1. Phạm vi môi trường (15)
      • 1.5.2. Phạm vi chức năng (15)
    • 1.6. Phương pháp nghiên cứu (16)
  • Chương 2. CƠ SỞ LÝ THUYẾT (0)
    • 2.1. Phân tích các nghiên cứu đã có trên thị trường (17)
      • 2.1.1. Spotify (17)
      • 2.1.2. Zing MP3 (18)
    • 2.2. Các vấn đề được tập trung giải quyết trong đồ án (18)
      • 2.2.1. Xây dựng cơ sở dữ liệu âm nhạc (18)
      • 2.2.2. Tích hợp tìm kiếm bằng giọng nói (18)
      • 2.2.3. Trải nghiệm người dùng (UX/UI) (19)
      • 2.2.5. Hạ tầng và hiệu suất website (19)
      • 2.2.6. Bảo mật và quyền riêng tư (19)
      • 2.2.7. Khả năng mở rộng và tính cộng đồng (20)
    • 2.3. Công nghệ sử dụng (20)
      • 2.3.1. Tổng quan về Figma (20)
      • 2.3.2. Tổng quan về ReactJS (20)
      • 2.3.3. Tổng quan về Express.js (21)
      • 2.3.4. Tổng quan về Firebase (21)
      • 2.3.5. Tổng quan về Jamendo API (22)
      • 2.3.6. Tổng quan về Web Speech API (22)
      • 2.3.7. Tổng quan về Cloudinary (23)
  • Chương 3. PHÂN TÍCH, THIẾT KẾ HỆ THỐNG (0)
    • 3.1. Sơ đồ lớp (24)
    • 3.2. Sơ đồ Use-case (28)
    • 3.3. Sơ đồ tuần tự (30)
      • 3.3.1. Sơ đồ đăng ký (30)
      • 3.3.2. Sơ đồ đăng nhập (31)
      • 3.3.3. Sơ đồ đăng xuất (31)
      • 3.3.4. Sơ đồ xem thông tin cá nhân (32)
      • 3.3.5. Sơ đồ thay đổi thông tin cá nhân (32)
      • 3.3.6. Sơ đồ phát hoặc ngưng phát nhạc (33)
      • 3.3.7. Sơ đồ chọn mở bài tiếp theo hoặc phát bài trước đó (34)
      • 3.3.8. Sơ đồ chế độ phát trộn hoặc lặp lại (35)
      • 3.3.9. Sơ đồ chế độ hiển thị lời bài hát hoặc không (35)
      • 3.3.10. Sơ đồ chọn chế độ xem thông tin bài hát (36)
      • 3.3.11. Sơ đồ tìm kiếm bằng keywords (36)
      • 3.3.12. Sơ đồ tìm kiếm bằng giọng nói (37)
      • 3.3.13. Sơ đồ tạo danh sách phát (37)
      • 3.3.14. Sơ đồ xóa danh sách phát (38)
      • 3.3.15. Sơ đồ cập nhật thông tin danh sách phát (38)
      • 3.3.16. Sơ đồ thêm bài hát vào danh sách phát (Từ thanh nghe nhạc). .28 3.3.17. Sơ đồ xóa bài hát khỏi danh sách phát (39)
      • 3.3.18. Sơ đồ đánh giá bài hát (41)
  • Chương 4. XÂY DỰNG ỨNG DỤNG (0)
    • 4.1. Môi trường cài đặt (42)
      • 4.1.1. Cấu hình cài đặt (42)
      • 4.1.2. Môi trường phát triển và triển khai hệ thống (43)
    • 4.2. Màn hình giao diện (44)
      • 4.2.1. Màn hình bắt đầu (44)
      • 4.2.2. Màn hình đăng ký – Email (45)
      • 4.2.3. Màn hình đăng ký – Password (46)
      • 4.2.4. Màn hình đăng ký – Thông tin (47)
      • 4.2.5. Màn hình đăng nhập (48)
      • 4.2.6. Màn hình chính (49)
      • 4.2.7. Màn hình chính – Mở lời bài hát (50)
      • 4.2.8. Màn hình chính – Tìm kiếm bài hát (51)
      • 4.2.9. Màn hình chính – Danh sách phát (52)
      • 4.2.10. Màn hình hồ sơ (53)
      • 4.2.11. Màn hình chính – Mở thông tin bài hát (54)
      • 4.2.12. Màn hình chính – Mở thông tin bài hát – Mở lời bài hát (55)
      • 4.2.13. Màn hình chính – Mở thông tin bài hát – Tìm kiếm (56)
      • 4.2.14. Màn hình chính – Mở thông tin bài hát – Danh sách phát (57)
      • 4.2.15. Màn hình hồ sơ – Mở thông tin bài hát (58)
      • 4.2.16. Box đánh giá (59)
      • 4.2.17. Box tạo danh sách phát mới (60)
      • 4.2.18. Box tìm kiếm giọng nói (61)
  • KẾT LUẬN (12)
  • TÀI LIỆU THAM KHẢO (64)

Nội dung

Vấn đề nghiên cứu Hiện nay, việc tìm kiếm bài hát trên các nền tảng nghe nhạc chủ yếu dựa vào vănbản, gây khó khăn cho người dùng khi không nhớ tên bài hát hoặc nghệ sĩ.. Để khắcphục hạn

GIỚI THIỆU ĐỀ TÀI

Tên đề tài

Tên tiếng Việt: XÂY DỰNG WEBSITE NGHE NHẠC TRỰC TUYẾN HỖ TRỢ TÌM KIẾM BÀI HÁT BẰNG GIỌNG NÓI.

Tên tiếng Anh: BUILDING AN ONLINE MUSIC WEBSITE SUPPORTINGSONG SEARCH BY VOICE.

Lý do chọn đề tài

Nhịp sống của xã hội hiện đại đang trở nên ngày càng nhanh Và ở đó, con người ngày càng phải đối mặt với sự căng thẳng đến từ nhiều phía: học tập, công việc, tình cảm, các mối quan hệ xã hội… khiến con người ta trở nên mệt mỏi và kiệt quệ Vì thế, sau khoảng thời gian phải đương đầu với cuộc sống xô bồ đó, con người cần tìm đến một cái gì đó để có thể giải trí và thư giãn, giúp họ giải tỏa những cảm xúc tiêu cực tích tụ sau một ngày dài Và âm nhạc hiển nhiên là một lựa chọn được đông đảo mọi người nhất trí Âm nhạc có thể phản ánh trí tuệ, tư tưởng, cũng như tác động mạnh mẽ và sâu sắc đến cảm xúc của con người Giúp thư giãn, giảm căng thẳng hay rộng hơn là mang tính kết nối về mặt cảm xúc và cả mặt cộng đồng, nó mang trong mình một khả năng kết nối quần chúng mạnh mẽ Vì thế, nhằm mục tiêu tạo ra một không gian cho người

Mục đích đề tài

Chúng tôi đã chọn đề tài “Xây dựng website nghe nhạc trực tuyến hỗ trợ tìm kiếm bài hát bằng giọng nói” nhằm mang đến trải nghiệm tiện lợi cho người dùng Người dùng có thể dễ dàng tìm kiếm bài hát yêu thích bằng cách sử dụng tính năng nhận diện giọng nói, có thể đọc tên bài hát hoặc ngân nga giai điệu quen thuộc trong trí nhớ khi không thể nhớ chính xác tên bài hát Tính năng này giúp nâng cao trải nghiệm người dùng, tiết kiệm thời gian và tăng tính tiện dụng của nền tảng nghe nhạc trực tuyến.

Tổng kết, đề tài này nhằm tối ưu hóa trải nghiệm người dùng bằng cách đáp ứng các yêu cầu cơ bản của một trang web nghe nhạc Website cung cấp tiện ích tìm kiếm bài hát bằng giọng nói, giúp người dùng dễ dàng truy cập và tìm kiếm nhạc yêu thích Đồng thời, hệ thống đề xuất bài hát nổi bật hỗ trợ cá nhân hóa trải nghiệm nghe nhạc, thúc đẩy sự hài lòng và gắn kết của người dùng.

Xây dựng website nghe nhạc trực tuyến là một giải pháp tối ưu để cung cấp trải nghiệm âm nhạc tiện ích và dễ dàng truy cập Một nền tảng nghe nhạc trực tuyến cần có giao diện thân thiện, thiết kế dễ sử dụng để thu hút và giữ chân người dùng Việc tối ưu hóa trải nghiệm người dùng giúp nâng cao khả năng tương tác và tăng lượt truy cập cho website Đồng thời, tích hợp các tính năng như tìm kiếm nhanh, duyệt danh sách bài hát phong phú cũng là yếu tố quan trọng để thành công trong thị trường cạnh tranh cao này.

Ứng dụng tích hợp chức năng tìm kiếm bằng giọng nói, giúp người dùng dễ dàng tìm kiếm bài hát nhanh chóng Công nghệ nhận diện giọng nói tiên tiến cho phép truy cập nhanh chóng vào thư viện âm nhạc mà không cần nhập thủ công Tính năng này nâng cao trải nghiệm người dùng bằng cách cung cấp phương thức tìm kiếm tiện lợi và chính xác hơn.

Để cải thiện hiệu suất tìm kiếm, cần đảm bảo tính chính xác và tốc độ xử lý trong quá trình tích hợp khả năng tìm kiếm bằng giọng nói Điều này giúp người dùng dễ dàng và nhanh chóng tìm kiếm bài hát mong muốn, nâng cao trải nghiệm người dùng.

Cải thiện trải nghiệm người dùng là mục tiêu hàng đầu nhằm mang lại dịch vụ nghe nhạc trực tuyến thân thiện và dễ sử dụng Điều này giúp người dùng tiết kiệm thời gian và thao tác, từ đó nâng cao sự hài lòng và trải nghiệm chung khi thưởng thức âm nhạc trực tuyến.

Chúng tôi đóng góp tích cực vào lĩnh vực phát triển website nghe nhạc thông minh bằng cách mở rộng nghiên cứu và ứng dụng công nghệ trí tuệ nhân tạo, học máy và phân tích dữ liệu lớn để cung cấp trải nghiệm nghe nhạc trực tuyến tối ưu Việc tích hợp các công nghệ tiên tiến giúp nâng cao chất lượng dịch vụ, đề xuất bài hát phù hợp với sở thích người dùng và cải thiện khả năng tìm kiếm nội dung âm nhạc một cách nhanh chóng và chính xác Nhờ đó, chúng tôi góp phần thúc đẩy sự đổi mới và phát triển bền vững của ngành công nghiệp nghe nhạc trực tuyến.

Đối tượng nghiên cứu

1.4.1 Các công nghệ nghiên cứu

- Đối với thiết kế hệ thống: Client – server, sử dụng Firebase Admin SDK để kết nối website với database.

- Đối với Database: Firebase, Jamendo API.

- Đối với Website: NodeJs, ReactJS, Npm.

- Đối với server: Node.js (ExpressJS), Npm.

1.4.2 Đối tượng sử dụng đề tài hướng đến Đối tượng hướng đến của đề tài là cộng đồng những người yêu âm nhạc nói chung, ở mọi lứa tuổi, thuộc mọi ngành nghề, từ những người không rành về công nghệ, đến những người có hướng thú với công nghệ hiện đại, miễn là có thiết bị thích hợp và có internet, đều có thể trở thành người dùng của website.

Đề tài nhắm đến đối tượng sử dụng rộng rãi, bao gồm tất cả những người có nhu cầu nghe nhạc trực tuyến Công nghệ được tích hợp nhằm tối ưu hóa trải nghiệm giải trí của người dùng một cách hiệu quả Điều này giúp đáp ứng nhu cầu đa dạng của khách hàng, từ những người yêu thích thưởng thức âm nhạc đến các tín đồ công nghệ.

Phạm vi nghiên cứu

Đề tài tập trung vào phạm vi người dùng trực tuyến, nhấn mạnh rằng bất kỳ người dùng nào đã đăng ký tài khoản đều có khả năng thực hiện các thao tác Việc này giúp mở rộng khả năng tương tác và nâng cao trải nghiệm người dùng trên nền tảng số Chính sách này thúc đẩy sự tham gia của cộng đồng trực tuyến, đồng thời đảm bảo an toàn và bảo mật cho người dùng đã đăng ký Tối ưu hóa trải nghiệm người dùng dựa trên khả năng truy cập và thao tác của các tài khoản đã đăng ký là yếu tố cốt lõi của chiến lược phát triển nền tảng trực tuyến.

1.5.1 Phạm vi môi trường Đề tài được thực hiện trên phạm vi website trực tuyến

1.5.2 Phạm vi chức năng: Đối với công cụ tìm kiếm bằng giọng nói:

- Có khả năng tìm kiếm bài hát thông qua tên bài hát.

- Có khả năng nhận biết âm thanh, tìm kiếm được bài hát thông qua một đoạn lời bài hát. Đối với website:

- Chức năng tạo tài khoản người dùng.

- Chức năng nghe, tải nhạc.

- Chức năng tìm kiếm bài hát thông qua keyword và giọng nói.

- Chức năng tạo danh sách phát phát các bài hát của nghệ sĩ.

- Chức năng bình luận và đánh giá bài hát.

- Chức năng tạo và quản lý danh sách phát cá nhân.

- Chức năng đề xuất bài hát.

- Chức năng quản lý hồ sơ của người dùng.

- Chức năng báo cáo lỗi thông qua email.

Phương pháp nghiên cứu

- Phân tích các giải pháp của các ứng dụng tương tự trên thị trường.

- Phân tích các bảng xếp hạng âm nhạc lớn của thể giới và trong nước.

- Phân tích xu hướng người nghe hiện nay.

- Tìm hiểu về các trí tuệ nhân tạo phù hợp với chức năng sản phẩm.

- Tìm hiểu và phân tích các phương pháp đề xuất âm nhạc.

CƠ SỞ LÝ THUYẾT

Phân tích các nghiên cứu đã có trên thị trường

Hình CƠ SỞ LÝ THUYẾT.1: Logo Spotify

Spotify là một dịch vụ phát nhạc trực tuyến hàng đầu thế giới, ra mắt vào năm

2008 tại Thụy Điển Nền tảng này cung cấp hàng triệu bài hát, podcast và sách nói từ nhiều thể loại và nghệ sĩ khác nhau Người dùng có thể nghe nhạc miễn phí với quảng cáo hoặc sử dụng gói trả phí để trải nghiệm không quảng cáo, tải nhạc offline, và chất lượng âm thanh cao Spotify nổi bật với khả năng cá nhân hóa danh sách phát, đề xuất bài hát dựa trên sở thích nghe nhạc, và tính năng kết nối cộng đồng.

Hình CƠ SỞ LÝ THUYẾT.2: Logo ZingMP3

Zing MP3, ứng dụng nghe nhạc trực tuyến phổ biến tại Việt Nam thuộc sở hữu của VNG Corporation, ra mắt từ năm 2007, chuyên cung cấp các bài hát và album của nghệ sĩ Việt Nam cùng với nhạc quốc tế Người dùng có thể nghe nhạc miễn phí, tải nhạc về thiết bị, tạo danh sách phát cá nhân, và tận hưởng các tính năng như nghe offline, xem MV, và hiển thị lời bài hát Đây là nền tảng âm nhạc phù hợp với sở thích của người Việt Nam, giúp thưởng thức âm nhạc dễ dàng mọi lúc mọi nơi.

Các vấn đề được tập trung giải quyết trong đồ án

2.2.1 Xây dựng cơ sở dữ liệu âm nhạc

Tạo một kho âm nhạc đa dạng về thể loại và ngôn ngữ đòi hỏi quản lý chặt chẽ về bản quyền và nguồn dữ liệu Đảm bảo hệ thống quản lý cơ sở dữ liệu mở rộng, ổn định và có khả năng đáp ứng nhu cầu truy cập lớn là thách thức lớn cần vượt qua để duy trì dịch vụ hiệu quả.

Việc sử dụng âm nhạc cần tuân thủ luật bản quyền và yêu cầu có giấy phép từ các nghệ sĩ cũng như nhà sản xuất âm nhạc Các dịch vụ lớn như Spotify và Apple Music đã đầu tư hàng triệu đô la để mua bản quyền, điều này có thể tạo ra rào cản đáng kể cho các dự án sinh viên Việc nắm rõ quy định về quyền sử dụng âm nhạc là cần thiết để đảm bảo pháp lý và tránh vi phạm bản quyền trong quá trình sáng tạo.

2.2.2 Tích hợp tìm kiếm bằng giọng nói

Tính năng tìm kiếm bằng giọng nói yêu cầu xây dựng hệ thống nhận diện giọng nói (ASR - Automatic Speech Recognition) chính xác để mang lại trải nghiệm tốt nhất cho người dùng Tuy nhiên, việc nhận diện giọng nói có thể gặp nhiều khó khăn khi người dùng có giọng địa phương, phát âm không chuẩn hoặc gặp phải tiếng ồn xung quanh Các yếu tố này ảnh hưởng đến độ chính xác của hệ thống ASR, đòi hỏi các giải pháp công nghệ phù hợp để nâng cao hiệu quả nhận diện giọng nói.

2.2.3 Trải nghiệm người dùng (UX/UI) Đảm bảo website nghe nhạc trực tuyến có giao diện dễ sử dụng, trực quan và hấp dẫn là một yếu tố quan trọng Một trải nghiệm không tốt có thể khiến người dùng nhanh chóng rời bỏ nền tảng

Khi tối ưu hóa nội dung, cần chú ý đến cả máy tính để bàn và thiết bị di động, vì phần lớn người dùng nghe nhạc trên điện thoại di động Thiết kế giao diện phải đảm bảo thao tác nhanh chóng, dễ dàng và mượt mà trên cả hai nền tảng để nâng cao trải nghiệm người dùng.

Các dịch vụ nghe nhạc hàng đầu như Spotify và Apple Music nổi bật với khả năng cá nhân hóa và đề xuất âm nhạc phù hợp với sở thích của người dùng Để đạt được điều này, hệ thống phân tích hành vi và thói quen nghe nhạc của người dùng một cách chính xác là yếu tố then chốt, giúp tạo ra trải nghiệm âm nhạc cá nhân hóa tối ưu.

2.2.5 Hạ tầng và hiệu suất website

Website nghe nhạc trực tuyến cần xử lý lượng dữ liệu lớn để đảm bảo hoạt động mượt mà, tránh tình trạng tải chậm hoặc ngừng phát nhạc khi có nhiều người truy cập cùng lúc Để đạt được điều này, hệ thống yêu cầu cơ sở hạ tầng mạnh mẽ bao gồm máy chủ lưu trữ, hệ thống phân phối nội dung (CDN), và các giải pháp tối ưu hóa hiệu suất nhằm nâng cao trải nghiệm người dùng và duy trì khả năng hoạt động ổn định.

Quản lý băng thông là vấn đề lớn, đặc biệt với các tệp âm thanh có chất lượng cao.

2.2.6 Bảo mật và quyền riêng tư

Bảo mật thông tin người dùng và dữ liệu cá nhân là yếu tố vô cùng quan trọng khi xây dựng website để đảm bảo quyền riêng tư của khách hàng Việc xử lý dữ liệu giọng nói và thông tin cá nhân đòi hỏi các biện pháp bảo vệ chặt chẽ nhằm hạn chế các rủi ro về quyền riêng tư Thu thập dữ liệu người dùng để cá nhân hóa trải nghiệm cần tuân thủ các quy định về bảo mật thông tin, giúp tăng sự tin tưởng của khách hàng và đảm bảo an toàn dữ liệu.

Ngăn chặn các cuộc tấn công mạng như tấn công từ chối dịch vụ (DDoS) hoặc xâm nhập trái phép cũng là một trong những vấn đề quan trọng.

2.2.7 Khả năng mở rộng và tính cộng đồng

Một trang web nghe nhạc trực tuyến cần có khả năng mở rộng theo thời gian để đáp ứng sự gia tăng về số lượng người dùng và dữ liệu Kiến trúc hệ thống linh hoạt giúp dễ dàng nâng cấp và tích hợp các tính năng mới như cộng đồng người dùng, bình luận, và chia sẻ playlist, đảm bảo trải nghiệm người dùng luôn được cải thiện và phù hợp với xu hướng phát triển của ngành công nghiệp âm nhạc trực tuyến.

Công nghệ sử dụng

Hình CƠ SỞ LÝ THUYẾT.3: Logo Figma

Figma là công cụ thiết kế giao diện trực tuyến phổ biến, hỗ trợ thiết kế UI/UX và thúc đẩy sự hợp tác theo thời gian thực Nhờ tính năng dựa trên đám mây, Figma cho phép nhiều người cùng làm việc trên một dự án, dễ dàng chia sẻ, nhận phản hồi và quản lý phiên bản hiệu quả Đây là công cụ lý tưởng cho việc tạo prototype và mockup cho ứng dụng hoặc website, được ưa chuộng trong ngành thiết kế hiện nay.

Hình CƠ SỞ LÝ THUYẾT.4: Logo ReactJS

ReactJS là thư viện JavaScript mã nguồn mở do Facebook phát triển, chuyên xây dựng giao diện người dùng (UI) cho các ứng dụng web Với tính năng component-based, React cho phép tái sử dụng mã dễ dàng, giúp giảm thiểu lỗi và tiết kiệm thời gian phát triển Công nghệ virtual DOM của React tối ưu hóa hiệu suất, mang lại trải nghiệm mượt mà cho người dùng React phù hợp để phát triển các ứng dụng web đơn trang (SPA), nhờ khả năng tạo giao diện tối ưu và đồng bộ cao Ngoài ra, cộng đồng lập trình viên lớn và hoạt động sôi nổi hỗ trợ mạnh mẽ trong việc học hỏi và cập nhật công nghệ mới.

2.3.3 Tổng quan về Express.js

Hình CƠ SỞ LÝ THUYẾT.5: Logo Express JS

Express là framework web nhẹ và linh hoạt cho Node.js, giúp xây dựng ứng dụng web và API một cách dễ dàng Với cú pháp đơn giản và khả năng mở rộng cao, Express hỗ trợ quản lý tuyến đường (routes), middleware, và xử lý yêu cầu HTTP hiệu quả Đây là lựa chọn phổ biến cho các dự án backend nhờ tính nhanh gọn và khả năng tích hợp linh hoạt.

Hình CƠ SỞ LÝ THUYẾT.6: Logo Firebase

Firebase là nền tảng phát triển ứng dụng di động và web do Google cung cấp, tích hợp các dịch vụ như cơ sở dữ liệu thời gian thực, Firebase Firestore, Firebase Authentication và lưu trữ đám mây Firebase giúp các nhà phát triển tăng tốc quá trình xây dựng ứng dụng, quản lý người dùng dễ dàng, và triển khai nhanh chóng mà không cần phải thiết lập các cấu hình phức tạp Đây là công cụ mạnh mẽ hỗ trợ phát triển ứng dụng hiệu quả và tối ưu, phù hợp cho cả dự án nhỏ lẫn doanh nghiệp lớn.

2.3.5 Tổng quan về Jamendo API

Hình CƠ SỞ LÝ THUYẾT.7: Logo Jamendo Music

Jamendo API là giao diện lập trình ứng dụng của Jamendo, một nền tảng cung cấp nhạc miễn phí bản quyền từ các nghệ sĩ độc lập API này cho phép truy cập danh mục bài hát, album, nghệ sĩ và playlist, hỗ trợ tìm kiếm nhạc theo thể loại, tên bài hát, hoặc nghệ sĩ Nó phù hợp cho các ứng dụng phát nhạc hoặc tìm kiếm nhạc sử dụng nguồn dữ liệu bản quyền mở.

2.3.6 Tổng quan về Web Speech API

Hình CƠ SỞ LÝ THUYẾT.8: Logo MDN Web Docs – nơi cung cấp tài liệu

Web Speech API là công cụ mạnh mẽ giúp tích hợp khả năng nhận dạng và tổng hợp giọng nói vào các ứng dụng web API này gồm hai thành phần chính là Speech Recognition, cho phép chuyển đổi giọng nói thành văn bản, và Speech Synthesis, giúp chuyển đổi văn bản thành giọng nói Nhờ đó, các ứng dụng web có thể cung cấp trải nghiệm người dùng đa dạng hơn, hỗ trợ điều khiển bằng giọng nói và phản hồi âm thanh, nâng cao tính tiện lợi và mức độ tương tác cho người dùng.

Hình CƠ SỞ LÝ THUYẾT.9: Logo Cloudinary

Cloudinary là nền tảng quản lý hình ảnh và video dựa trên đám mây, cung cấp API mạnh mẽ để tải lên, chỉnh sửa, chuyển đổi và phân phối nội dung đa phương tiện API của Cloudinary hỗ trợ tải hình ảnh và video từ nhiều phương thức như trình duyệt, URL từ xa hoặc API phía máy chủ, giúp tích hợp dễ dàng vào các ứng dụng Management API cho phép quản lý tài nguyên hiệu quả với các chức năng tìm kiếm, liệt kê, cập nhật và xóa nội dung nhanh chóng Các dịch vụ của Cloudinary giúp tối ưu hóa quá trình quản lý nội dung đa phương tiện, nâng cao trải nghiệm người dùng và tối ưu hóa hiệu suất website.

PHÂN TÍCH, THIẾT KẾ HỆ THỐNG

Sơ đồ lớp

Hình PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.10: Sơ đồ lớp

- Tổng quan các lớp trong sơ đồ

Bảng PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.1: Bảng tổng quan các lớp có trong sơ đồ

STT Tên lớp Ghi chú

1 NguoiDung Lưu trữ thông tin người dùng.

2 DanhSachPhat Lưu trữ thông tin danh sách phát.

3 DanhGia Lưu trữ thông tin các đánh giá của bài hát.

4 BaiHat Lưu trữ thông tin bài hát.

5 NhacSi Lưu trữ thông tin nhạc sĩ sáng tác nên bài hát đó.

6 TheLoai Lưu trữ thông tin thể loại của bài hát.

7 NgheSi Lưu trữ thông tin nghệ sĩ hát bài hát đó.

Bảng PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.2: Các thuộc tính bảng

STT Tên thuộc tính Kiểu dữ liệu Chú thích

1 MaNguoiDung Text Mã ID của tải khoản người dùng.

2 TenNguoDung Text Tên người dùng.

3 NgaySinh Date Ngày tháng năm sinh của người dùng.

4 GioiTinh Text Giới tính của người dùng

5 Email Text Địa chỉ Email của người dùng.

6 AvatarUrl String ref Linh URL lưu trữ ảnh đại diện của người dùng.

Bảng PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.3: Các thuộc tính bảng

STT Tên thuộc tính Kiểu dữ liệu Chú thích

1 MaDanhSach Text Mã ID của danh sách phát.

2 MaNguoiDung Text Mã người dùng đã tạo danh sách phát.

3 TenDanhSach Text Tên danh sách phát.

4 AvatarUrl String ref Link URL của avatar danh sách phát.

5 NgayDang Date Ngày tạo danh sách phát.

6 ListMaBaiHat Array Mảng gồm mã các bài hát thuộc danh sách phát.

Bảng PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.4: Các thuộc tính bảng DanhGia

STT Tên thuộc tính Kiểu dữ liệu Chú thích

1 MaDanhGia Text Mã ID của đánh giá.

2 MaNguoiDung Text Mã người dùng đã thực hiện đánh giá.

3 MaBaiHat Text Mã bài hát được đánh giá.

4 MucDanhGia Int Mức độ đánh giá từ 1 đến 5.

5 BinhLuan Text Bình luận đi kèm.

Bảng PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.5: Các thuộc tính bảng BaiHat

STT Tên thuộc tính Kiểu dữ liệu Chú thích

1 MaBaiHat Text Mã ID của bài hát.

2 MaNhacSi Text Mã nhạc sĩ dáng tác bài hát.

3 MaTheLoai Text Mã thể loại bài hát.

4 MaNgheSi Text Mã nghệ sĩ biểu diễn bài hát.

5 TenBaiHat Text Tên bài hát.

6 FilBaiHat String ref Đường đã file bài hát.

7 AvatarUrl String ref Đường dẫn ảnh đại diện bài hát.

8 LoiBaiHat Text Lười bài hát.

9 NgayDang Date Ngày đăng tải bài hát.

10 LuotNghe Text Lượt nghe của bài hát.

Bảng PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.6: Các thuộc tính bảng NhacSi

STT Tên thuộc tính Kiểu dữ liệu Chú thích

1 MaNhacSi Text Mã ID của nhạc sĩ.

2 TenNhacSi Text Tên của nhạc sĩ.

Bảng PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.7: Các thuộc tính bảng TheLoai

STT Tên thuộc tính Kiểu dữ liệu Chú thích

1 MaTheLoai Text Mã ID của thể loại nhạc.

2 TenTheLoai Text Tên của thể loại nhạc.

Bảng PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.8: Các thuộc tính bảng NgheSi

STT Tên thuộc tính Kiểu dữ liệu Chú thích

1 MaNgheSi Text Mã ID của nghệ sĩ.

2 TenNgheSi Text Tên của nghệ sĩ.

3 SoNguoiTheoDoi Int Số người theo dõi của nghệ sĩ.

Sơ đồ Use-case

Hình PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.11: Sơ đồ Use-case tổng quát Các thành phần chính trong sơ đồ:

User: Đại diện cho người dùng hệ thống, có thể thực hiện tất cả các chức năng được liệt kê trong sơ đồ.

- Các trường hợp sử dụng (Use cases):

+ Đăng ký, Đăng nhập, Đăng xuất:

Cho phép người dùng tạo tài khoản mới, đăng nhập vào hệ thống và đăng xuất khi không sử dụng.

+ Nghe nhạc: Bao gồm nhiều chức năng mở rộng liên quan:

 Phát hoặc ngừng nhạc: Điều khiển bài hát đang phát.

 Next hoặc back bài hát: Chuyển sang bài kế tiếp hoặc bài trước đó.

 Phát trộn bài hoặc phát lặp lại: Điều chỉnh chế độ phát nhạc.

 Hiển thị lời bài hát: Hiển thị phần lời cho bài hát đang phát.

 Xem thông tin bài hát: Hiển thị thông tin chi tiết như tên bài hát, nghệ sĩ, nhạc sĩ, thể loại, v.v.

 Tăng/giảm âm lượng: Điều chỉnh âm lượng khi phát nhạc.

 Đánh giá bài hát: Cho phép người dùng đánh giá hoặc để lại bình luận.

+ Quản lý danh sách phát:

 Tạo danh sách phát: Người dùng có thể tạo playlist mới.

 Cập nhật thông tin danh sách phát: Sửa đổi thông tin (tên, ảnh đại diện, v.v.) của playlist.

 Xóa danh sách phát: Xóa playlist khi không cần thiết.

 Thêm bài hát vào danh sách phát: Chọn bài hát và thêm vào playlist.

 Xóa bài hát khỏi danh sách phát: Loại bỏ bài hát khỏi playlist.

 Xem thông tin tài khoản: Xem chi tiết tài khoản cá nhân.

 Thay đổi thông tin cá nhân: Cập nhật thông tin như tên, email, ảnh đại diện, v.v.

+ Tìm kiếm: Cho phép người dùng tìm kiếm bài hát, nghệ sĩ, hoặc thể loại nhạc.

Sơ đồ tuần tự

Hình PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.12: Sơ đồ đăng ký

Hình PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.13: Sơ đồ đăng nhập

Hình PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.14: Sơ đồ đăng xuất

3.3.4 Sơ đồ xem thông tin cá nhân

Hình PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.15: Sơ đồ xem thông tin cá nhân

3.3.5 Sơ đồ thay đổi thông tin cá nhân

Hình PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.16: Sơ đồ thay đổi thông tin cá

3.3.6 Sơ đồ phát hoặc ngưng phát nhạc

Hình PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.17: Sơ đồ phát hoặc ngưng phát nhạc

3.3.7 Sơ đồ chọn mở bài tiếp theo hoặc phát bài trước đó

Hình PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.18: Sơ đồ chọn mở bài hát tiếp theo hoặc trước đó

3.3.8 Sơ đồ chế độ phát trộn hoặc lặp lại

Hình PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.19: Sơ đồ chọn chế độ trộn hoặc lặp lại

3.3.9 Sơ đồ chế độ hiển thị lời bài hát hoặc không

Hình PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.20: Sơ đồ chọn chế độ hiển thị lời bài hát hoặc không

3.3.10.Sơ đồ chọn chế độ xem thông tin bài hát

Hình PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.21: Sơ đồ chọn chế độ xem thông tin bài hát

3.3.11.Sơ đồ tìm kiếm bằng keywords

Hình PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.22: Sơ đồ tìm kiếm bằng keywords

3.3.12.Sơ đồ tìm kiếm bằng giọng nói

Hình PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.23: Sơ đồ tìm kiếm bằng giọng nói

3.3.13.Sơ đồ tạo danh sách phát

Hình PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.24: Sơ đồ tạo danh sách phát

3.3.14.Sơ đồ xóa danh sách phát

Hình PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.25: Sơ đồ xóa danh sách phát

3.3.15.Sơ đồ cập nhật thông tin danh sách phát

Hình PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.26: Sơ đồ cập nhật thông tin danh

3.3.16.Sơ đồ thêm bài hát vào danh sách phát (Từ thanh nghe nhạc)

Hình PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.27: Sơ đồ thêm bài hát vào danh sách phát (Từ thanh nghe nhạc)

3.3.17.Sơ đồ xóa bài hát khỏi danh sách phát

Hình PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.28: Sơ đồ xóa bài hát khỏi danh sách phát

3.3.18.Sơ đồ đánh giá bài hát

Hình PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.29: Sơ đồ đánh giá bài hát

XÂY DỰNG ỨNG DỤNG

Môi trường cài đặt

- Hệ điều hành: Không yêu cầu cố định (vì website sử dụng Firebase và máy chủ Node.js không yêu cầu hệ điều hành cố định).

- Cơ sở dữ liệu: Firebase Firestore và Jamedo API đảm nhận vai trò lưu trữ dữ liệu bài hát, thông tin bài hát, và metadata liên quan.

- Hệ điều hành: Windows 10 trở lên, macOS 10.13 trở lên.

- Trình duyệt: Google Chrome, Firefox, hoặc Microsoft Edge (phiên bản mới nhất).

- Bộ nhớ RAM: Tối thiểu 4GB.

- Bộ xử lý: Tối thiểu CPU 2.0 GHz hoặc tương đương.

- Kết nối mạng: Kết nối ổn định để phát trực tuyến nhạc và truy cập dữ liệu từFirebase.

4.1.2 Môi trường phát triển và triển khai hệ thống

4.1.2.1 Môi trường phát triển Để xây dựng website âm nhạc, nhóm sử dụng các công nghệ và phần mềm sau:

- Công cụ phát triển: Visual Studio Code.

- Ngôn ngữ lập trình: JavaScript (ReactJS ở phía Client, ExpressJS ở phía Server)

- Cơ sở dữ liệu: Firebase Firestore kết hợp với Jamedo API để lưu trữ thông tin và dữ liệu.

- Giao diện người dùng: Sử dụng các component của ReactJS với Material-UI để xây dựng giao diện hiện đại và tương tác.

- Windows hoặc macOS với trình duyệt (Google Chrome, Edge).

Ngày đăng: 12/07/2025, 14:19

HÌNH ẢNH LIÊN QUAN

3.2. Sơ đồ Use-case - Xây dựng website nghe nhạc trực tuyến hỗ trợ tìm kiếm bài hát bằng giọng nói (Đồ Án môn học Đồ Án 1)
3.2. Sơ đồ Use-case (Trang 28)
3.3. Sơ đồ tuần tự - Xây dựng website nghe nhạc trực tuyến hỗ trợ tìm kiếm bài hát bằng giọng nói (Đồ Án môn học Đồ Án 1)
3.3. Sơ đồ tuần tự (Trang 30)
3.3.2. Sơ đồ đăng nhập - Xây dựng website nghe nhạc trực tuyến hỗ trợ tìm kiếm bài hát bằng giọng nói (Đồ Án môn học Đồ Án 1)
3.3.2. Sơ đồ đăng nhập (Trang 31)
3.3.8. Sơ đồ chế độ phát trộn hoặc lặp lại - Xây dựng website nghe nhạc trực tuyến hỗ trợ tìm kiếm bài hát bằng giọng nói (Đồ Án môn học Đồ Án 1)
3.3.8. Sơ đồ chế độ phát trộn hoặc lặp lại (Trang 35)
Hình PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.29: Sơ đồ đánh giá bài hát - Xây dựng website nghe nhạc trực tuyến hỗ trợ tìm kiếm bài hát bằng giọng nói (Đồ Án môn học Đồ Án 1)
nh PHÂN TÍCH, THIẾT KẾ HỆ THỐNG.29: Sơ đồ đánh giá bài hát (Trang 41)
Hình XÂY DỰNG ỨNG DỤNG.30: Giao diện màn hình bắt đầu - Xây dựng website nghe nhạc trực tuyến hỗ trợ tìm kiếm bài hát bằng giọng nói (Đồ Án môn học Đồ Án 1)
nh XÂY DỰNG ỨNG DỤNG.30: Giao diện màn hình bắt đầu (Trang 44)
Hình XÂY DỰNG ỨNG DỤNG.31: Giao diện màn hình đăng ký – Nhập - Xây dựng website nghe nhạc trực tuyến hỗ trợ tìm kiếm bài hát bằng giọng nói (Đồ Án môn học Đồ Án 1)
nh XÂY DỰNG ỨNG DỤNG.31: Giao diện màn hình đăng ký – Nhập (Trang 45)
Hình XÂY DỰNG ỨNG DỤNG.34: Giao diện màn hình đăng nhập - Xây dựng website nghe nhạc trực tuyến hỗ trợ tìm kiếm bài hát bằng giọng nói (Đồ Án môn học Đồ Án 1)
nh XÂY DỰNG ỨNG DỤNG.34: Giao diện màn hình đăng nhập (Trang 48)
Hình XÂY DỰNG ỨNG DỤNG.37: Giao diện màn hình tìm kiếm bài hát - Xây dựng website nghe nhạc trực tuyến hỗ trợ tìm kiếm bài hát bằng giọng nói (Đồ Án môn học Đồ Án 1)
nh XÂY DỰNG ỨNG DỤNG.37: Giao diện màn hình tìm kiếm bài hát (Trang 51)
Hình XÂY DỰNG ỨNG DỤNG.38: Giao diện màn hình danh sách phát - Xây dựng website nghe nhạc trực tuyến hỗ trợ tìm kiếm bài hát bằng giọng nói (Đồ Án môn học Đồ Án 1)
nh XÂY DỰNG ỨNG DỤNG.38: Giao diện màn hình danh sách phát (Trang 52)
Hình XÂY DỰNG ỨNG DỤNG.39: Giao diện màn hình hồ sơ - Xây dựng website nghe nhạc trực tuyến hỗ trợ tìm kiếm bài hát bằng giọng nói (Đồ Án môn học Đồ Án 1)
nh XÂY DỰNG ỨNG DỤNG.39: Giao diện màn hình hồ sơ (Trang 53)
Hình XÂY DỰNG ỨNG DỤNG.40: Giao diện màn hình mở thông tin bài hát - Xây dựng website nghe nhạc trực tuyến hỗ trợ tìm kiếm bài hát bằng giọng nói (Đồ Án môn học Đồ Án 1)
nh XÂY DỰNG ỨNG DỤNG.40: Giao diện màn hình mở thông tin bài hát (Trang 54)
Hình XÂY DỰNG ỨNG DỤNG.44: Giao diện màn hình hồ sơ khi mở thông - Xây dựng website nghe nhạc trực tuyến hỗ trợ tìm kiếm bài hát bằng giọng nói (Đồ Án môn học Đồ Án 1)
nh XÂY DỰNG ỨNG DỤNG.44: Giao diện màn hình hồ sơ khi mở thông (Trang 58)
Hình XÂY DỰNG ỨNG DỤNG.45: Giao diện box đánh giá - Xây dựng website nghe nhạc trực tuyến hỗ trợ tìm kiếm bài hát bằng giọng nói (Đồ Án môn học Đồ Án 1)
nh XÂY DỰNG ỨNG DỤNG.45: Giao diện box đánh giá (Trang 59)

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w