2013-06-07 58 views
13

Tôi đang tạo âm thanh của riêng mình mà không có điều khiển của trình duyệt.Phát trực tiếp âm thanh html5

<audio src="http://50.7.98.194:8081/~dl3/cgi-bin/dl.cgi/bqmu5mltxcqy43mxecgo4gnw743qr7fd7io22q5xj4/gl1mwvp6b326.mp3" id="audio"> 
</audio> 

tôi có các chức năng này, gọi khi nhấp một số nút:

function play() 
{ 
    audio.play(); 
} 

function play() 
{ 
    audio.pause 
} 

function stop() 
{ 
    audio.pause(); 
    audio.src = audio.src; 
} 

Nhưng bây giờ, tôi chỉ có thể tái tạo mp3 hoặc file ogg, nhưng không phải là một đài phát thanh live stream. Tôi đã đọc về một số plugin nhưng tôi cần thực hiện với html5 thuần túy.

Bạn có thể giúp tôi không? Cảm ơn rất nhiều,

Trả lời

12

Thật không may, vẫn không có codec video và âm thanh duy nhất, được hỗ trợ bởi tất cả các trình duyệt! Các lập trình viên phải đảm bảo rằng có dự phòng được cung cấp cho các trường hợp sử dụng khi trình duyệt A không hỗ trợ codec B và ngược lại.

Bạn có thể xem bảng tương thích này, cho cả trình duyệt trên máy tính để bàn và thiết bị di động.

Desktop:

  • Internet Explorer codec (9.0+) hỗ trợ MP3 và AAC
  • Chrome (6.0+) hỗ trợ Ogg Vorbis, MP3, WAV +
  • Firefox (3.6+) hỗ trợ Ogg Vorbis, WAV
  • Safari (5.0 trở lên) hỗ trợ MP3, AAC, WAV
  • Opera (10.0+) hỗ trợ Ogg Vorbis, WAV

thoại di động:

  • Opera Mobile (11.0+) được hỗ trợ codec là thiết bị phụ thuộc vào
  • Android (2.3 +) được hỗ trợ codec là thiết bị phụ thuộc vào
  • Mobile Safari (iDevices với iOS 3.0 +) hỗ trợ MP3, AAC
  • Blackberry (6.0+) hỗ trợ MP3, AAC

Kể từ khi flash là stil l đủ rộng rãi, nó có lẽ là dự phòng an toàn nhất.

Ngoài ra, tôi muốn lưu ý rằng không có gì tệ hơn khi sử dụng một số thư viện, một số trong số đó (ví dụ: jPlayer) cung cấp giao diện rất mạnh và điều này chỉ có thể giúp bạn tạo mã tốt hơn!

Tôi nghĩ bạn có thể tìm thấy mọi thứ bạn muốn biết trong bài viết sau: HTML5 Audio Radio Player by Opera Devs

+0

Xin chào, cảm ơn câu trả lời của bạn. Có vẻ như một vấn đề với đài phát thanh url của tôi, mà tôi không thể nghe được ... Tôi đã thử với đài phát thanh này http://listen.radionomy.com/abc-jazz và tôi cũng nghe nó !! Chuyện gì có thể? Có thể là một vấn đề với cổng? –

+0

Bộ giải mã âm thanh tôi nhận được là aacp –

+0

Tôi nghĩ đó là lý do tại sao nó không bắt đầu, bạn có thể thử với một nguồn khác (ví dụ: phát trực tuyến mp3/ogg) không? – vitozev

11

Chơi âm thanh từ một "nguồn sống" dường như được hỗ trợ bởi các trình duyệt hiện đại. Về cơ bản chỉ cần sử dụng các thẻ bình thường HTML 5 âm thanh, và nhập "dòng sống" URL như nguồn, ví dụ:

<audio controls> 
    <source src="http://audio-mp3.ibiblio.org:8000/wcpe.mp3" type="audio/mpeg"> 
    <source src="http://audio-ogg.ibiblio.org:8000/wcpe.ogg" type="audio/ogg"> 
</audio> 

Và dòng "chỉ hoạt động" như nó là, mặc dù cố gắng tìm kiếm với các điều khiển mặc định Không lam gi cả. Vì vậy, cuối cùng bạn có thể muốn thay thế các điều khiển bằng các tùy chọn "tùy chỉnh", theo kiểu phương tiện HTML 5 bình thường.Để tương thích ngược với các trình duyệt không phải HTML 5, dự án này có thể hữu ích: https://github.com/etianen/html5media/wiki/Embedding-audio (chưa thử nghiệm nó với phát trực tiếp nhưng có thể/nên hoạt động). Mp3 codec dường như được hỗ trợ trong các trình duyệt chính (có thể chặn firefox trên Linux [?]). Opus có thể là một lựa chọn nền tảng độc đáo khác, tôi không chắc chắn codec khôn ngoan lựa chọn "tốt nhất" như nó được.

Với một số luồng (shoutcast tôi đoán) Tôi đã phải thêm đóng ';' vào URL, xem https://stackoverflow.com/a/3182814/32453 để ghi chú ở đó, nhưng về cơ bản chỉ để có được url "đúng".

+0

Mỗi bài kiểm tra của tôi, tính đến hôm nay (2017-03-05), Firefox, Edge có thể bắt đầu phát luồng âm thanh trực tiếp khá nhanh (với thời gian trễ từ 1 đến 3 giây) và thời gian trễ cho Opera là khoảng 10 giây. Các thử nghiệm được thực hiện với "audio/wav". – Hong

Các vấn đề liên quan