audio dùng cho nội dung âm thanh
```html
<audio src="am/thanh_mau.wav" controls></audio>
```
src chỉ tệp âm thanh. controls yêu cầu trình duyệt hiện bộ điều khiển để phát, tạm dừng, điều chỉnh âm lượng hoặc vị trí phát tùy trình duyệt. Khác img, audio có thẻ mở và thẻ đóng.
MP3, WAV và Ogg là các định dạng âm thanh thường gặp. Tệp còn cần dùng cách mã hóa được trình duyệt hỗ trợ. Mẫu ở đây là âm đơn một giây trong tệp WAV do BTVN tạo, không phải bản nhạc.
Thuộc tính boolean xét sự có mặt
controls, autoplay và muted là các thuộc tính boolean. Có thuộc tính nghĩa là bật yêu cầu tương ứng; không cần viết giá trị. Viết `controls="false"` vẫn có controls, nên không phải cách tắt bộ điều khiển.
autoplay yêu cầu tự phát, nhưng trình duyệt có thể chặn, đặc biệt với nội dung có tiếng. muted đặt trạng thái tắt tiếng ban đầu. Có autoplay không chứng minh âm thanh sẽ tự phát thành công; muốn bỏ yêu cầu tự phát, bỏ thuộc tính autoplay.
Thử phát từ bộ mẫu
Mở index.html trong bộ tệp thực hành, tìm Âm thanh mẫu và chọn nút phát. Thanh thời gian phải tiến rồi kết thúc khoảng một giây. Có thể phát lại hoặc tạm dừng. Kiểm âm lượng của trình duyệt, máy và loa nếu thời gian chạy nhưng không nghe thấy.
Để khảo sát autoplay trên bản sao, thêm autoplay vào audio, lưu rồi tải lại. Nếu không tự chạy, thử nút phát và kiểm chính sách của trình duyệt; không kết luận ngay rằng tệp hỏng. Kết quả tự phát còn tùy tương tác trước đó và cài đặt.
audio không dùng width, height hay poster để đặt khung hình như video. Dùng tệp tự tạo hoặc được phép sử dụng khi thay âm mẫu bằng nội dung khác.
Bài luyện
Vai trò của controls trong audio là gì?
Đúng. Bộ điều khiển giúp phát và tạm dừng.
Đường dẫn nằm ở src.
controls không chuyển loại media.
controls khác autoplay và không bỏ chính sách tự phát.
Lời giải
controls yêu cầu trình duyệt cung cấp bộ điều khiển âm thanh. src chọn tệp, còn autoplay chỉ yêu cầu tự phát và vẫn chịu giới hạn của trình duyệt.
Bài luyện
Muốn bỏ yêu cầu tự phát của audio, cách nào đúng?
Thuộc tính vẫn có mặt nên yêu cầu vẫn bật.
Đúng. Bỏ thuộc tính boolean sẽ bỏ yêu cầu tương ứng.
alt không điều khiển autoplay của audio.
poster không dùng cho audio và không tắt autoplay.
Lời giải
autoplay là boolean: sự có mặt của thuộc tính mới là điều quyết định yêu cầu, không phải chuỗi false. Bỏ hẳn autoplay sẽ bỏ yêu cầu tự phát từ thuộc tính này.
Bài luyện
Tệp phát được bằng nút phát nhưng không tự phát khi tải trang có autoplay. Kết luận nào phù hợp?
Tệp đã phát được bằng nút phát.
Không thể kết luận cấm WAV từ dữ kiện này.
Đúng. Tự phát còn chịu chính sách trình duyệt.
Tệp âm thanh đã phát được nên kết luận này không có căn cứ.
Lời giải
autoplay là yêu cầu, không bảo đảm tự chạy. Việc phát được khi người dùng chọn nút cho thấy cần xem giới hạn tự phát và cài đặt, thay vì mặc định tệp hỏng.
Đang học