Định dạng nội dung nghe nhìn được hỗ trợ

Tài liệu này mô tả khả năng hỗ trợ giao thức mạng, vùng chứa và bộ mã hoá nội dung đa phương tiện do nền tảng Android cung cấp.

Các bảng dưới đây mô tả việc hỗ trợ định dạng nội dung nghe nhìn tích hợp sẵn trong nền tảng Android. YES có nghĩa là định dạng này có trên các thiết bị cầm tay và máy tính bảng chạy mọi phiên bản Android. Khi một nền tảng Android cụ thể được chỉ định, định dạng này sẽ có trên điện thoại di động và máy tính bảng chạy phiên bản đó và tất cả các phiên bản mới hơn. Định dạng này cũng có thể có trong các phiên bản trước đó, nhưng điều này không được đảm bảo. Trên các kiểu dáng khác ngoài điện thoại di động và máy tính bảng, khả năng hỗ trợ định dạng nội dung nghe nhìn có thể khác nhau.

Lưu ý rằng một thiết bị di động cụ thể có thể hỗ trợ các định dạng hoặc loại tệp bổ sung không được liệt kê trong các bảng này. Ngoài ra, nếu sử dụng trực tiếp MediaCodec, bạn có thể truy cập vào mọi định dạng nội dung nghe nhìn có sẵn, bất kể loại tệp và định dạng vùng chứa được hỗ trợ.

Hỗ trợ âm thanh

Định dạng Bộ mã hoá Bộ giải mã Thông tin chi tiết Loại tệp
Định dạng vùng chứa
AAC LC NÊN NÊN Hỗ trợ nội dung đơn âm/âm thanh nổi/5.0/5.1 với tốc độ lấy mẫu tiêu chuẩn từ 8 đến 48 kHz. • 3GPP (.3gp)
• MPEG-4 (.mp4, .m4a)
• ADTS thô AAC (.aac, giải mã trong Android 3.1+, mã hoá trong Android 4.0 trở lên, không hỗ trợ ADIF)
• MPEG-TS (.ts, not searchable, Android 3.0+)
HE-AACv1 (AAC trở lên) Android 4.1 trở lên NÊN
HE-AACv2 (AAC nâng cao trở lên)   NÊN Hỗ trợ nội dung âm thanh nổi/5.0/5.1 với tốc độ lấy mẫu tiêu chuẩn từ 8 đến 48 kHz.
xHE-AAC   Android 9 trở lên Hỗ trợ nội dung lên đến 8 kênh với tốc độ lấy mẫu tiêu chuẩn từ 8 đến 48 kHz
AAC ELD (AAC độ trễ thấp nâng cao) Android 4.1 trở lên Android 4.1 trở lên Hỗ trợ nội dung đơn âm/âm thanh nổi với tốc độ lấy mẫu tiêu chuẩn từ 16 đến 48 kHz
AMR-NB NÊN NÊN Lấy mẫu từ 4,75 đến 12,2 Kb/giây @ 8kHz • 3GPP (.3gp)
• AMR (.amr)
AMR-WB NÊN NÊN 9 tốc độ từ 6,60 kbit/s đến 23,85 kbit/s được lấy mẫu @ 16kHz
FLAC Android 4.1 trở lên Android 3.1 trở lên Đơn kênh/Âm thanh nổi (không có đa kênh). Tốc độ lấy mẫu lên đến 48 kHz (nhưng nên dùng tối đa 44,1 kHz trên các thiết bị có đầu ra 44,1 kHz, vì bộ lấy mẫu xuống từ 48 đến 44,1 kHz không có bộ lọc thông thấp). Nên dùng phiên bản 16 bit; không áp dụng tính năng phối màu cho phiên bản 24 bit. • FLAC (.flac)
• MPEG-4 (.mp4, .m4a, Android 10 trở lên)
MIDI   NÊN Loại MIDI 0 và 1. DLS phiên bản 1 và 2. XMF và XMF trên thiết bị di động. Hỗ trợ các định dạng nhạc chuông RTTTL/RTX, OTA và iMelody • Loại 0 và 1 (.mid, .xmf, .mxmf)
• RTTTL/RTX (.rtttl, .rtx)
• OTA (.ota)
• iMelody (.imy)
MP3   NÊN Hằng số đơn âm/âm thanh nổi 8-320Kbps (CBR) hoặc tốc độ bit có thể thay đổi (VBR) • MP3 (.mp3)
• MPEG-4 (.mp4, .m4a, Android 10 trở lên)
• Matroska (.mkv, Android 10 trở lên)
Opus Android 10 trở lên Android 5.0 trở lên • Ogg (.ogg)
• Matroska (.mkv)
PCM/SÓNG Android 4.1 trở lên NÊN PCM tuyến tính 8 và 16 bit (tốc độ lên đến giới hạn phần cứng). Tốc độ lấy mẫu cho các bản ghi PCM thô ở 8000, 16000 và 44100 Hz. SÓNG (.wav)
Vorbis   NÊN   • Ogg (.ogg)
• Matroska (.mkv, Android 4.0 trở lên)
• MPEG-4 (.mp4, .m4a, Android 10 trở lên)

Hỗ trợ video

Định dạng video

Định dạng Bộ mã hoá Bộ giải mã Thông tin chi tiết Loại tệp
Định dạng vùng chứa
H.263 NÊN NÊN Không bắt buộc phải hỗ trợ H.263 trong Android 7.0 trở lên • 3GPP (.3gp)
• MPEG-4 (.mp4)
• Matroska (.mkv)
H.264 AVC
Hồ sơ cơ sở (BP)
Android™ 5.0 ® NÊN • 3GPP (.3gp)
• MPEG-4 (.mp4)
• MPEG-TS (.ts, chỉ âm thanh AAC, không thể tua, Android 3.0 trở lên)
• Matroska (.mkv)
H.264 AVC
Cấu hình chính (MP)
Android 6.0 trở lên NÊN Bạn cần có bộ giải mã và bộ mã hoá là bắt buộc.
HEVC 265 Android 5.0 trở lên Hồ sơ chính Cấp 3 đối với thiết bị di động và Hồ sơ chính Cấp 4.1 đối với Android TV • MPEG-4 (.mp4)
• Matroska (.mkv)
MPEG-4 SP   NÊN   3GPP (.3gp)
VP8 Android 4.3 trở lên Android 2.3.3 trở lên Chỉ có thể phát trực tuyến trên Android 4.0 trở lên WebM (.webm)
• Matroska (.mkv, Android 4.0 trở lên)
VP9 Android 4.4 trở lên WebM (.webm)
• Matroska (.mkv)
AV1 Android 14 trở lên Android 10 trở lên Bộ mã hoá và bộ giải mã là bắt buộc kể từ Android 14. • MPEG-4 (.mp4)
• Matroska (.mkv)

Đề xuất mã hoá video

Bảng dưới đây liệt kê các tham số và hồ sơ mã hoá video khung nội dung đa phương tiện Android nên dùng để phát bằng bộ mã hoá và giải mã Hồ sơ cơ sở H.264. Các đề xuất tương tự cũng áp dụng cho bộ mã hoá và giải mã Hồ sơ chính (chỉ có trong Android 6.0 trở lên).

  SD (Chất lượng thấp) SD (Chất lượng cao) HD 720p (Không áp dụng trên tất cả các thiết bị)
Độ phân giải video 176 x 144 pixel 480 x 360 pixel 1280 x 720 pixel
Tốc độ khung hình của video 12 khung hình/giây 30 fps 30 fps
Tốc độ bit của video 56 Kb/giây 500 Kbps 2 Mb/giây
Bộ giải mã audio AAC-LC AAC-LC AAC-LC
Kênh âm thanh 1 (đơn âm) 2 (âm thanh nổi) 2 (âm thanh nổi)
Tốc độ bit âm thanh 24 Kb/giây 128 Kb/giây 192 Kb/giây

Bảng dưới đây liệt kê các tham số và cấu hình mã hoá video khung nội dung đa phương tiện Android nên dùng để phát lại bằng bộ mã hoá và giải mã nội dung nghe nhìn VP8.

  SD (Chất lượng thấp) SD (Chất lượng cao) HD 720p (Không áp dụng trên tất cả các thiết bị) HD 1080p (Không áp dụng trên tất cả các thiết bị)
Độ phân giải video 320 x 180 pixel 640 x 360 pixel 1280 x 720 pixel 1.920 x 1.080 pixel
Tốc độ khung hình của video 30 fps 30 fps 30 fps 30 fps
Tốc độ bit của video 800 Kb/giây 2 Mb/giây 4 Mb/giây 10 Mb/giây

Đề xuất giải mã video

Quá trình triển khai thiết bị phải hỗ trợ chuyển đổi độ phân giải video động và tốc độ khung hình thông qua các API Android tiêu chuẩn trong cùng một luồng đối với tất cả các bộ mã hoá và giải mã VP8, VP9, H.264 và H.265 theo thời gian thực và tới độ phân giải tối đa mà mỗi bộ mã hoá và giải mã trên thiết bị hỗ trợ.

Các quy trình triển khai hỗ trợ bộ giải mã Dolby Vision phải tuân theo các nguyên tắc sau:

  • Cung cấp bộ trích xuất hỗ trợ Dolby Vision.
  • Hiển thị đúng nội dung Dolby Vision trên màn hình thiết bị hoặc trên cổng đầu ra video tiêu chuẩn (ví dụ: HDMI).
  • Đặt chỉ mục kênh âm thanh của(các) lớp cơ sở tương thích ngược (nếu có) giống với chỉ mục kênh kết hợp của lớp Dolby Vision.

Yêu cầu đối với việc phát video trực tuyến

Đối với nội dung video được phát trực tuyến qua HTTP hoặc RTSP, cần có thêm các yêu cầu:

  • Đối với vùng chứa 3GPP và MPEG-4, nguyên tử moov phải đứng trước bất kỳ nguyên tử mdat nào nhưng phải thành công với nguyên tử ftyp.
  • Đối với vùng chứa 3GPP, MPEG-4 và WebM, các mẫu âm thanh và video tương ứng với cùng một mức chênh lệch thời gian có thể cách nhau không quá 500 KB. Để giảm thiểu hiện tượng trôi âm thanh/video, hãy cân nhắc việc lồng ghép âm thanh và video trong các đoạn có kích thước nhỏ hơn.

Hỗ trợ hình ảnh

Định dạng Bộ mã hoá Bộ giải mã Thông tin chi tiết Loại tệp
Định dạng vùng chứa
BMP   NÊN   BMP (.bmp)
GIF   NÊN   Ảnh GIF (.gif)
JPEG NÊN NÊN Cơ sở+cấp tiến JPEG (.jpg)
PNG NÊN NÊN   PNG (.png)
WebP Android 4.0 trở lên
Không tổn hao: Android 10 trở lên
Tính minh bạch: Android 4.2.1 trở lên
Android 4.0 trở lên
Không tổn hao: Android 4.2.1 trở lên
Tính minh bạch: Android 4.2.1 trở lên
Bạn có thể mã hoá không tổn hao trên Android 10 với chất lượng 100. WebP (.webp)
HEIF   Android 8.0 trở lên   HEIF (.heic; .heif)
AVIF (hồ sơ cơ sở) Android 14 trở lên Android 14 trở lên Bộ mã hoá và bộ giải mã là bắt buộc kể từ Android 14. AVIF (.avif)

Giao thức mạng

Các giao thức mạng sau đây được hỗ trợ để phát âm thanh và video:

  • RTSP (RTP, SDP)
  • Truyền liên tục HTTP/HTTPS
  • Giao thức nháp phát trực tiếp HTTP/HTTPS:
    • Chỉ các tệp đa phương tiện MPEG-2 TS
    • Giao thức phiên bản 3 Android 4.0 trở lên
    • Giao thức phiên bản 2 Android 3.x
    • Không được hỗ trợ trước Android 3.0

Lưu ý: HTTPS không được hỗ trợ trước Android 3.1.

Định dạng video HDR

OEM (Nhà sản xuất thiết bị gốc) có thể bật mọi định dạng HDR mà họ chọn nhờ cấu trúc Android HDR, cung cấp các nhu cầu cốt lõi của các định dạng HDR: vùng đệm 10 bit, siêu dữ liệu (tĩnh, động và không có), chức năng chuyển và xử lý không gian màu.

Để đảm bảo tính nhất quán cho nhà phát triển và giải quyết các trường hợp sử dụng chính của nội dung HDR, chúng tôi yêu cầu nhà sản xuất thiết bị gốc phải hỗ trợ một số định dạng cơ sở trên các thiết bị hỗ trợ HDR:

  • Để phát nội dung chuyên nghiệp, chẳng hạn như phát trực tuyến phim, chúng tôi yêu cầu HDR10.
  • Đối với tính năng chụp và phát nội dung do người dùng tạo, chúng tôi yêu cầu HLG10 phải cung cấp trải nghiệm nhất quán trên các thiết bị Android.

Các nhà sản xuất thiết bị gốc có thêm tính năng hỗ trợ HDR phải hỗ trợ các định dạng này, nhưng cũng có thể hỗ trợ các định dạng khác như HDR10+ hoặc Dolby Vision.

Định dạng Hàm chuyển Metadata Bộ mã hoá và giải mã Độ sâu bit
HLG10 HLG (Nhóm địa điểm toàn cầu) Không Hệ thống âm thanh hình ảnh (HVEC) 10 bit
HDR10 PQ Tĩnh Hệ thống âm thanh hình ảnh (HVEC) 10 bit
HDR10+ PQ Tĩnh Hệ thống âm thanh hình ảnh (HVEC) 10 bit
Dolby Vision 8.4 HLG (Nhóm địa điểm toàn cầu) Động Hệ thống âm thanh hình ảnh (HVEC) 10 bit

Đề xuất xử lý định dạng

Định dạng chụp Định dạng tải lên Định dạng phân phối
HLG (Nhóm địa điểm toàn cầu) Phần phụ trợ ứng dụng hỗ trợ HLG HDR Các thiết bị hỗ trợ HDR (HLG):

HLG (Nhóm địa điểm toàn cầu)

Các thiết bị hỗ trợ HDR (không có HLG chỉ hỗ trợ PQ):

SDR (Bản đồ tông từ HLG đến SDR trong phần phụ trợ)

Các thiết bị không hỗ trợ HDR: SDR (Bản đồ sắc độ từ HLG đến SDR trong phần phụ trợ)

Trường hợp sử dụng 2: Chụp hoặc nhập máy ảnh gốc từ thư viện của người dùng (Phần phụ trợ ứng dụng hỗ trợ HDR)

Định dạng chụp Định dạng tải lên Định dạng phân phối
HLG (Nhóm địa điểm toàn cầu) HLG (Nhóm địa điểm toàn cầu) Giống như trường hợp sử dụng chụp trong ứng dụng
HDR10+ HLG (Nhóm địa điểm toàn cầu)

Ánh xạ tông từ HDR10+ (PQ) sang HLG trước khi tải lên bằng API biến áp

Giống như trường hợp sử dụng chụp trong ứng dụng
DV8,4 HLG (Nhóm địa điểm toàn cầu)

(DV8.4 sử dụng HLG và luồng bit sẽ hoạt động như HLG do đó không cần ánh xạ âm)

Giống như trường hợp sử dụng chụp trong ứng dụng

Trường hợp sử dụng 3: Phần phụ trợ ứng dụng không hỗ trợ HDR

Định dạng chụp Định dạng tải lên Định dạng phân phối
Mọi định dạng SDR

Ánh xạ âm từ HLG sang SDR trước khi tải lên bằng API biến áp

SDR