2013-05-12 12 views
6

Sto creando un Video Sniffing Framework in cui devo annusare la capacità di riproduzione di video HTML5 di diversi browser. Per questo ho usato il metodo canPlayType() che mi sta dando tre risultati possibili:Differenza tra canPlayType forse e probabilmente output

  1. la stringa vuota (quando non è possibile eseguire il video)
  2. "forse"
  3. "probabilmente"

Devo conoscere la differenza esatta tra "forse" e "probabilmente". Per favore, fammi sapere se qualcuno può risolvere la mia confusione. Grazie in anticipo.

risposta

-2

Fonte: http://www.w3schools.com/tags/av_met_canplaytype.asp

Il metodo canPlayType() può restituire uno dei seguenti valori:

  • "probabilmente" - il browser più probabile supporta questo tipo di audio/video
  • "forse" - il browser potrebbe supportare questo tipo di audio/video
  • "" - (stringa vuota) il browser non supporta questo audio/video tipo
2

Affermare la specifica W3: http://www.w3.org/TR/2011/WD-html5-20110113/video.html#mime-types

media.canPlayType(type) restituisce la stringa vuota (una risposta negativa), "forse", o "probabilmente" in base a quanta fiducia l'user agent è che può giocare a risorse multimediali del tipo dato

Maggiori dettagli sono riportati sul MDN: https://developer.mozilla.org/en/docs/Web/API/HTMLMediaElement#Methods

  • "probabilmente": se il tipo specificato sembra essere giocabile.
  • "forse": se è impossibile stabilire se il tipo è riproducibile senza riprodurlo.
  • La stringa vuota: se il tipo specificato non può essere riprodotto definitivamente.

Inoltre, in alcuni casi (anche se questo sembra avvenire solo per <audio> elementi), il valore restituito è "no" invece che la stringa vuota:

http://24ways.org/2010/the-state-of-html5-audio

http://diveintohtml5.info/everything.html

5

probably significa che il browser può riprodurre il tipo di supporto descritto. maybe significa che il tipo potrebbe essere riproducibile. Di solito, questo è perché il tipo di media descritto non è abbastanza specifico per prendere una decisione.

Ad esempio, il tipo audio/ogg può essere riprodotto o meno, poiché Ogg è un tipo di contenitore che potrebbe contenere diversi codec diversi. Vorbis e Opus sono due codec Ogg-contenibili. La capacità di un browser di riprodurre file Ogg in generale non dice nulla sulla capacità del browser di riprodurre codec Vorbis o Opus, quindi non può dire se può riprodurre il tuo file Ogg.

Se si chiede un codec specifico con audio/ogg; codecs=vorbis, il browser può dire con certezza se può riprodurre quel tipo.

Per fare un'analogia: supponiamo che tu mi chieda se sono in grado di guidare la tua barca. Sono bravo a guidare piccoli motoscafi, ma non posso guidare una massiccia barca da crociera. Devo rispondere alla domanda "Puoi guidare la mia barca?" con "Forse", perché non mi hai detto esattamente quale tipo di barca sia.