DMusicPlayer

Thư viện nhạc

Chọn bài để nghe, xem thông tin tệp hoặc phát nhạc đã lưu offline. Xem hướng dẫn sử dụng ↓

Hướng dẫn sử dụng

1Thêm nhạc vào thư viện
  1. Chép các tệp nhạc vào cùng thư mục với DMusicPlayer.php (có thể để trong thư mục con, ví dụ album/bai-hat.mp3).
  2. Nếu nhạc nằm ở nơi khác, mở DMusicPlayer.php và sửa dòng define('MEDIA_DIR', __DIR__); sang đường dẫn thư mục nhạc của bạn.
  3. Tải lại trang, danh sách ở tab Thư viện sẽ tự cập nhật.

Định dạng hỗ trợ: mp3 m4a flac wav ogg oga opus wma aac.

Trang chủ quét tối đa 6 cấp thư mục và 2000 bài, bỏ qua tệp/thư mục có tên bắt đầu bằng dấu chấm (ví dụ .cache). Trình duyệt có phát được hay không còn tùy định dạng (ví dụ wma thường không phát được trên nhiều trình duyệt).
2Nghe nhạc và tìm bài
  • Bấm nút ▶ bên trái mỗi bài để phát ngay. Trình phát nhỏ sẽ hiện cố định ở cuối màn hình, có đủ nút phát/tạm dừng, tua và âm lượng.
  • Khi một bài kết thúc, app tự phát bài kế tiếp trong danh sách đang hiển thị. Nếu bạn đang lọc bằng ô tìm kiếm, chỉ các bài khớp mới nằm trong hàng đợi.
  • Gõ vào ô Tìm theo tên bài hoặc thư mục để lọc danh sách; tìm không phân biệt hoa thường.
  • Bài đang phát được tô viền màu cam trong danh sách.
3Xem chi tiết bài hát

Bấm vào tên bài để mở trang chi tiết, gồm ảnh bìa, tiêu đề, nghệ sĩ, album, năm phát hành, tốc độ bit, tần số lấy mẫu, định dạng, thời lượng, kích thước và thời gian sửa đổi.

Dùng nút ← Trang chủ ở đầu trang chi tiết để quay lại.

Thông tin thẻ (ID3), bitrate và ảnh bìa cần máy chủ cài sẵn ffprobe và ffmpeg. Nếu thiếu, trang chi tiết vẫn phát được nhạc nhưng chỉ hiện kích thước và ngày sửa đổi.
4Nghe nhạc từ URL
  1. Dán đường dẫn trực tiếp tới tệp nhạc vào ô đầu trang, ví dụ https://example.com/song.mp3.
  2. Bấm Nghe từ URL (hoặc nhấn Enter). App sẽ mở trang phát của bài đó.
URL phải bắt đầu bằng http:// hoặc https:// và kết thúc bằng một định dạng được hỗ trợ. Máy chủ sẽ tải toàn bộ tệp về rồi phát lại cho bạn nên bài dài có thể mất vài giây để bắt đầu; với nhạc từ URL, trang chi tiết không đọc được thẻ ID3 và ảnh bìa.
5Lưu nhạc để nghe offline
  1. Mở trang chi tiết của bài muốn lưu (bấm tên bài hoặc dùng Nghe từ URL).
  2. Bấm Tải về offline. Khi nút đổi thành Đã lưu offline là bài đã nằm trong trình duyệt của bạn.
  3. Quay lại trang chủ, mở tab Offline để xem, phát (▶) hoặc Xóa các bài đã lưu. Trong trang chi tiết, nút Offline Music cũng mở danh sách này.
Nhạc được lưu trong bộ nhớ của trình duyệt trên thiết bị này, không đồng bộ giữa các máy và sẽ mất nếu bạn xóa dữ liệu trang web. Bài lớn (như tệp flac/wav) chiếm nhiều dung lượng. Hãy mở trang chủ ít nhất một lần khi còn mạng (và đã cài service worker qua HTTPS): app sẽ lưu bản trang chủ, sau đó dù mất mạng vẫn mở được và phát các bài trong tab Offline. Danh sách ở tab Thư viện lúc đó là bản đã lưu lần cuối.
6Cài như một ứng dụng (PWA)
  • Android / Chrome: menu ⋮ → Cài đặt ứng dụng hoặc Thêm vào màn hình chính.
  • iPhone / Safari: nút Chia sẻ → Thêm vào Màn hình chính.
  • Máy tính / Chrome, Edge: bấm biểu tượng cài đặt ở thanh địa chỉ.

Sau khi cài, app mở toàn màn hình và vào thẳng trang chủ này.

Tính năng cài đặt và lưu cache offline cần trang chạy trên HTTPS (hoặc localhost khi thử trên máy).
7Gặp sự cố?
  • Thư viện trống: kiểm tra nhạc có nằm trong MEDIA_DIR không, và PHP có quyền đọc thư mục đó.
  • "Không tìm thấy tệp" / "Định dạng không được hỗ trợ": kiểm tra tên tệp, đuôi tệp và đường dẫn trong URL.
  • Không có ảnh bìa hoặc thông tin bitrate: máy chủ chưa có ffmpeg/ffprobe, hoặc tệp không nhúng sẵn ảnh bìa.
  • Không lưu được offline: trình duyệt đang ở chế độ ẩn danh hoặc chặn IndexedDB; thử cửa sổ thường.
  • Chrome báo "Không thể cài đặt ứng dụng này": trang phải chạy trên HTTPS, không ở chế độ ẩn danh và app chưa được cài. Sau khi cập nhật file, tải lại trang vài lần (hoặc xóa dữ liệu trang trong Cài đặt trang web) để Chrome nhận manifest và icon mới. Nếu vẫn chưa được, dùng Tạo lối tắt để thêm biểu tượng ra màn hình chính.
  • Danh sách chưa cập nhật sau khi thêm nhạc: tải lại trang (Ctrl+F5 / kéo để làm mới) vì app có service worker.
—