Le note sulla versione TVSDK 1.4 per Android descrivono le novità o le modifiche, i problemi risolti e noti e i problemi del dispositivo in TVSDK Android 1.4.
Versione 1.4.43
Caricamento sicuro degli annunci tramite HTTPS
Adobe Primetime fornisce un'opzione per richiedere la prima chiamata al server ad primetime e a CRS su HTTPS.
alwaysUseAudioOutputLatency(valore booleano) nella classe MediaPlayer
Quando questo parametro è impostato, utilizza la latenza di uscita audio nel calcolo della marca temporale audio.
Accetta un valore di parametri booleani. Se il suo valore è True
, il client utilizza la latenza di uscita audio nel calcolo della marca temporale audio.
Versione 1.4.42
Inserimento parziale di annunci:
esperienza simile a quella televisiva di partecipare nel mezzo di un annuncio senza attivare il tracciamento per l’annuncio parzialmente guardato.
Esempio: L'utente si unisce al centro (a 40 secondi) di un'interruzione pubblicitaria di 90 secondi costituita da tre annunci da 30 secondi. Questo è a 10 secondi dal secondo annuncio dell'interruzione.
Versione 1.4.41
Nessuna nuova funzionalità.
Versione 1.4.40
Nessuna nuova funzionalità.
Se utilizzi una versione precedente alla 1.4.39, non sarà necessario apportare modifiche all’API.
Versione 1.4.39
TVSDK è certificato con VHL 2.0.1 e con VHL 2.0.1 con Nielsen.
Android TVSDK viene aggiornato per effettuare richieste CRS dal nuovo host Akamai primetime-a.akamaihd.net
.
La nuova configurazione del nome host fornisce la distribuzione delle risorse CRS tramite HTTP e HTTPS (SSL) su larga scala.
TVSDK supporta la versione Android Oreo.
Viene aggiunta una nuova funzione alla classe AdClientFactory
per supportare la registrazione di più rilevatori opportunità:
public List<PlacementOpportunityDetector> createOpportunityDetectors(MediaPlayerItem item);
Dovrebbe restituire un array di PlacementOpportunityDetector. Ora è possibile registrare più rilevatori opportunità. Ad esempio, per la funzione di individuazione rapida e in uscita, erano necessari due rilevatori opportunità, uno per l’inserimento di annunci e un altro per l’uscita anticipata dall’annuncio. È necessario implementare questa nuova funzione solo se hai implementato la tua AdvertisingFactory (e non utilizzando DefaultAdvertisingfactory). Per ottenere il comportamento esistente, è necessario creare un singolo rilevatore opportunità, come nella funzione createOpportunityDetector() e inserirlo in un array e restituire:
public class MyAdvertisingFactory extends AdvertisingFactory {
…
@Override
public List<PlacementOpportunityDetector> createOpportunityDetectors(MediaPlayerItem mediaPlayerItem) {
List<PlacementOpportunityDetector> opportunityDetectors = new ArrayList<PlacementOpportunityDetector>();
opportunityDetectors.add(createOpportunityDetector(mediaPlayerItem));
return opportunityDetectors;
} }
Se utilizzi una versione precedente alla 1.4.39, non sarà necessario apportare modifiche all’API.
Versione 1.4.36
Correzione di bug per Salta contenuto su Android.
Versione 1.4.35
Informazioni sugli annunci in rete
Le API TVSDK ora forniscono informazioni aggiuntive sulle risposte VAST di terze parti. Gli Ad ID, il sistema di annunci e le estensioni VAST Ad sono forniti nella classe NetworkAdInfo accessibile tramite la proprietà networkAdInfo su una Ad Asset. Queste informazioni possono essere utilizzate per l'integrazione con altre piattaforme di Ad Analytics come Analytics principale.
Versione 1.4.31
Supporto multi-CDN per annunci CRS
La versione 1.4.18
Primetime Android TVSDK ora supporta i creativi JavaScript VPAID 2.0 per abilitare un’esperienza pubblicitaria interattiva ricca. Per ulteriori informazioni su VPAID 2.0, consulta Supporto di annunci VPAID.
Versione 1.4.17
AC-3 5.1 è supportato solo su Amazon FireTV.
Versione 1.4.11
Per ulteriori informazioni, consulta Fallback per annunci VAST e VMAP.
Versione 1.4.7
Versione 1.4.6
Versione 1.4.2
Aggiornamento della Video Heartbeat Library (VHL) alla versione 1.4.0.1
SDK Nielsen IntegrazioneTVSDK ora supporta l’invio di informazioni di tracciamento degli utenti all’SDK Nielsen senza alcuna integrazione personalizzata.
Versione 1.4.0
Segnalazione blackout con sostituzione di contenuti alternativiNell’ambito dell’aggiornamento TVSDK 1.4, TVSDK supporta ora anche l’accesso e il ritorno da blackout regionali rispetto a contenuti lineari. Il TVSDK può ora elaborare due file manifest in parallelo, principale e alternativo, per monitorare i segnali di blackout anche quando viene mostrata una programmazione alternativa al posto della programmazione originale.
Rimuovi/sostituisci C3 AdsNow, non è necessario alcun lavoro di preparazione aggiuntivo per inserire dinamicamente nuovi annunci nelle risorse video-on-demand (VOD) che escono dalla finestra C3. Il TVSDK fornisce ora un’API per rimuovere intervalli di contenuto personalizzati e inserire nuovi annunci in modo dinamico. Questa nuova potente funzionalità è utile anche nei casi in cui i contenuti live/lineari vengono trasmessi durante la trasmissione e immediatamente disattivati per l’utilizzo come contenuti on demand senza il tempo necessario per "pulire" la risorsa.
L'interfaccia PlaybackEventListener dispone di un nuovo metodo chiamato onReplaceMediaPlayerItem, che è possibile utilizzare per ascoltare un nuovo evento, ITEM_REPLACED
. Questo evento viene inviato ogni volta che un'istanza MediaPlayeritem viene sostituita su MediaPlayer. L'applicazione client che implementa questo PlaybackEventListener deve implementare o ignorare questo nuovo metodo.
AdClientFactory ha una nuova funzione aggiunta alla classe per la registrazione per più rilevatori opportunità:
public List<PlacementOpportunityDetector> createOpportunityDetectors(MediaPlayerItem item);
For example for early ad exit feature, you need two Opportunity Detectors - one for ad insertion and another for early exit from `ad`.
To override this new function create a single Opportunity Detector, and put into an array and return:
@Override
public List<PlacementOpportunityDetector> createOpportunityDetectors(MediaPlayerItem mediaPlayerItem) {
List<PlacementOpportunityDetector> opportunityDetectors = new ArrayList<PlacementOpportunityDetector>();
opportunityDetectors.add(createOpportunityDetector(mediaPlayerItem));
return opportunityDetectors;
}
}
L'interfaccia PlaybackEventListener ha un nuovo metodo chiamato onReplaceMediaPlayerItem, che è possibile utilizzare per ascoltare un nuovo evento, ITEM_REPLACED. Questo evento viene inviato ogni volta che un'istanza MediaPlayeritem viene sostituita su MediaPlayer. L'applicazione client che implementa questo PlaybackEventListener deve implementare o ignorare questo nuovo metodo.
AdClientFactory ha una nuova funzione aggiunta alla classe per la registrazione per più rilevatori opportunità:
public List`<PlacementOpportunityDetector>` createOpportunityDetectors(MediaPlayerItem item);
Ad esempio, per la funzione di individuazione rapida e in uscita, sono necessari due rilevatori opportunità, uno per l’inserimento di annunci e un altro per l’uscita anticipata dall’annuncio.
Per ignorare questa nuova funzione, crea un singolo rilevatore opportunità e inserisci in un array e restituisce:
@Override
public List`<PlacementOpportunityDetector>` createOpportunityDetectors(MediaPlayerItem mediaPlayerItem) {
List`<PlacementOpportunityDetector>` opportunityDetectors = new ArrayList`<PlacementOpportunityDetector>`();
opportunityDetectors.add(createOpportunityDetector(mediaPlayerItem));
return opportunityDetectors;
}
}
Le seguenti funzioni sono non supportate nel TVSDK :
Versione 1.4.43
TVSDK 1.4.43 è stato certificato con dispositivi Android con Android 6.0.1/ 7.0 e 8.1 (Oreo).
Versione 1.4.23:
Versione 1.4.18:
Tutti i clienti TVSDK che utilizzano CRS sono invitati ad effettuare l’aggiornamento a TVSDK 1.4.39 o versione più recente su iOS e Android. Questo aggiornamento sostituisce l’implementazione dell’app esistente. Dopo l'aggiornamento, controlla le richieste CRS creative URL in uno strumento proxy (ad esempio, Charles) per verificare che la versione nel percorso rifletta la versione 3.1. Ad esempio:
https://primetime-a.akamaihd.net/assets/3p/v3.1/222000/167/d77/ 167d775d00cbf7fd224b112sf5a4bc7d_0e34cd3ca5177fbc74d66d784bf3586d.m3u8
Versione 1.4.43
Biglietto #27143 - Impossibile riprodurre la traccia audio 5.1 sui dispositivi FireTV
Ticket #33902 - Consegna sicura degli annunci tramite HTTPS
Biglietto #34493 - Ritardo audio Bluetooth
alwaysUseAudioOutputLatency
nella classe MediaPlayer che, se impostata, si traduce in uso della latenza di uscita audio nel calcolo della marca temporale audio.Biglietto #34949 - Nuova versione della libreria heartbeat video (VHL) integrata.
Versione 1.4.42 (1791)
Versione 1.4.41 (1776)
Versione 1.4.40 (1764)
[Hotlist]
. Aggiornato alle ultime OpenSSL-1.1.0 e curl-7.55.1.Versione 1.4.39 (1744)
Versione 1.4.38 (1722)
Integrazione e certificazione di VHL 2.0 in TVSDK per ridurre la barriera nell’implementazione di VideoHeartbeatLibrary riducendo la complessità delle API.
Supporto TVSDK per la nuova versione Android Beta.
Versione 1.4.36 (1713)
Per adattarsi alla decrittografia, Android TVSDK stava ampliando erroneamente l'intervallo di byte del contenuto non iframe di 16 byte. L'ampliamento è necessario per i flussi Iframe, ma non per i flussi non iframe.
Versione 1.4.34 (1702)
L'oggetto POsix cURL INet si verificava una perdita mentre si teneva in share manager e nella cache DNS utilizzata nelle connessioni cURL.
Questo problema è stato risolto eliminando l'oggetto POsix cURL INet dal decostruttore INet.
Versione 1.4.33 (1694)
La libreria OpenSSL è stata aggiornata con la versione 1.0.2j di OpenSSL.
Zendesk #21701 - Invia l'URL creativo originale per la richiesta CRS 1401 invece dell'URL normalizzato.
Questo problema viene risolto inviando gli URL creativi originali.
Zendesk #25023 - Riproduzione video a lunga durata: fermo video, sfarfallii dello schermo
Questo problema è stato risolto impostando le dimensioni massime del formato video per i dispositivi set-top box CenturyLink.
Zendesk #27460 - Il nuovo account Akamai non è in grado di gestire una richiesta cdn di POST.
Il codice è stato aggiornato per fare in modo che la richiesta di annuncio cdn.auditude.com
sia GET invece di POST.
Zendesk #28245 - Lo stato di riproduzione non viene notificato correttamente quando l'app va dallo sfondo al primo piano
Questo problema è stato risolto ripristinando correttamente lo stato di riproduzione per la riproduzione o la pausa quando l'applicazione torna in primo piano.
Versione 1.4.32 (1682)
Zendesk #25779 - Vulnerabilità di sicurezza trovata con TVSDK
Android 4.2 e versioni precedenti presenta una vulnerabilità di sicurezza quando JavaScript è abilitato in una WebView. L'utilizzo di WebView da TVSDK è stato disattivato per i dispositivi con sistema operativo 4.2 o inferiore. In questo modo viene disabilitato l’uso degli annunci VPAID in TVSDK su questi dispositivi.
Zendesk #26890 - Problema nello stato dello schermo (ON/OFF) Manipolazione Ref. Lettore
Quando il motore video di Adobe (AVE) riprende da uno stato SOSPESO, DefaultMediaPlayer non ne aggiorna lo stato. Di conseguenza, DefaultMediaPlayer rimane in uno stato SOSPESO anche se l'AVE è in uno stato di riproduzione. Questo problema è stato risolto impostando lo stato DefaultMediaPlayer su PLAYING quando si riceve uno stato PLAY dall'AVE, anche se lo stato corrente di DefaultMediaPlayer è SOSPESO.
Versione 1.4.31 (1675)
Zendesk #21974 - Eccezioni dovute a oggetti nulli
Zendesk #24714 - Disattivare il logging estraneo
Zendesk #24488 - Problemi di sincronizzazione AV su Fire TV
Zendesk #26551 - Correggere gli errori CRS
Zendesk #26696 Eccezione Null Pointer quando si accede a TrickPlayManager
Versione 1.4.30 (1659)
Zendesk #22675 La durata delle risorse non viene aggiornata per i flussi live/lineari
Questo problema è stato risolto fornendo una nuova API, assetDuration, in PTVideoAnalyticsTrackingMetadata che fornisce la durata della risorsa per i flussi in tempo reale e in tempo reale.
Zendesk #25853 Perdita di memoria in TVSDK quando si cambiano i canali
È stato risolto il problema relativo alla perdita di un buffer di lettura del file quando MediaPlayer viene reimpostato o rilasciato durante il download di un file.
Versione 1.4.29 (1653)
Zendesk #21200 - Il giocatore non si riprende dallo stato sospeso quando l'applicazione era in background
Quando il lettore è stato sospeso dopo che l'interruttore del flusso è stato segnalato, la risoluzione consente al lettore di eseguire l'interruttore del flusso durante il ripristino dello stato di sospensione, invece di tornare alla posizione precedente.
Zendesk #23412 - Il giocatore è bloccato con una scatola nera se si clicca su qualsiasi Ads entro gli ultimi 3 s dell'interruzione annuncio
Questo problema è lo stesso di Zendesk #21200.
Zendesk #23616 - Saltato annuncio break cerca troppo lontano in futuro
A seconda del tipo di inserimento dell’annuncio (inserimento/sostituzione), TVSDK determina se la durata dell’annuncio viene utilizzata nel calcolo per determinare il punto finale dell’interruzione dell’annuncio.
Zendesk #25078 - Perdita di memoria TVSDK DRM su Android TV STB
La perdita di memoria per l'oggetto adattatore DRM è stata individuata e fissata.
Zendesk #25067 - Arresto anomalo in VideoEngineTimeline
Questo accade perché gli oggetti non sono stati puliti correttamente e gli eventi sono stati chiamati dopo la distruzione degli oggetti. Il problema è stato risolto aggiungendo controlli per impedire eccezioni nulle.
Zendesk #25352 - Imposta intestazione HTTP personalizzata
Questo problema è stato risolto aggiungendo una nuova intestazione personalizzata all’elenco consentiti su TVSDK.
Zendesk #25617 - Il rollover Live Stream PTS causa discontinuità del lettore e crash di memoria
Questo problema è stato risolto aggiungendo una gestione di rollover PTS in FragmentalHTTPStreamer quando si verifica un rollover nel mezzo di un segmento.
Versione 1.4.28 (1637)
Versione 1.4.27 (1631)
Zendesk #23174 - Problema di prestazioni durante il ridimensionamento del video
Questo problema è stato risolto dimostrando una nuova API, MediaPlayerView.setSurfaceFixedSize, che consente a TVSDK di accedere a SurfaceHolder.setFixedSize() da MediaPlayerView.
Zendesk #24450 - TVSDK effettua richieste di annunci duplicate
Questo problema si verificava quando il tempo trascorso veniva convertito in lungo e non doppio e questo problema era stato risolto.
Versione 1.4.26 (1627)
Versione 1.4.25 (1620)
Zendesk #22900 - Lo streaming DRM di Adobe Primetime Live non viene riprodotto sul lettore di riferimento Android
Il problema di allocazione della memoria è stato risolto.
Zendesk #23176 - Arresto anomalo dell'applicazione quando si sta tentando di riprodurre annunci VPAID
L'arresto anomalo si è verificato perché l'applicazione non crea una visualizzazione annunci personalizzata per il rendering di un annuncio VPAID. Questo problema è stato risolto ignorando gli annunci VPAID nella risposta del server di annunci quando non è presente una visualizzazione di annunci personalizzata.
Zendesk #23153 - SampleAES DRM Stream - Stallo della riproduzione nel lettore di riferimento TVSDK
Questo problema è lo stesso di Zendesk #22900.
Versione 1.4.24 (1612)
Zendesk #20784 - Analytics: Attivazione di contenuti completi per transizioni video in tempo reale
Questo problema è stato risolto aggiungendo un’API (trackVideoComplete) per attivare manualmente il completamento del contenuto durante una sessione di tracciamento video in tempo reale/lineare.
Arresto anomalo della timeline di VideoEngine #21977 durante il funzionamento di placeAdBreak/acceptAd
Questo problema è stato risolto aggiungendo un controllo null prima di aggiungere annunci all’elenco di annunci accettati.
Zendesk #22313 Il bitrate per gli STB con chipset Amilogico non va oltre 1,2M
Questo problema è stato risolto precaricando le funzionalità del codec multimediale e disabilitando l'interruttore senza soluzione di continuità per i dispositivi del chipset Amilogic.
Zendesk #19520 Esempio di risorsa AES HLS non in esecuzione nei lettori TVSDK
Questo problema è stato risolto gestendo più descrittori PMT per i flussi HLS crittografati AES di esempio.
Versione 1.4.23 (1602)
Zendesk #18852 - Aggiorna la logica di selezione creativa in base alle regole CRS
Questo problema è stato risolto aggiungendo un file di configurazione JSON per specificare la priorità di selezione creativa.
Zendesk #20861 - Android N
Questa versione fornisce supporto per Android N rimuovendo la possibilità di utilizzare direttamente le librerie native della piattaforma Android che non sono più accessibili per le applicazioni che vengono eseguite su Android N.
Zendesk #21018 - Android N crash
Stessa risoluzione di ZD# 20861.
Zendesk #21266 - VideoEngineAdapter si blocca in caso di errore Invalid_Key
L'errore Invalid_Key non include una descrizione da AVE, quindi l'analisi del testo è risultato in NPE. Il problema è stato risolto aggiungendo un controllo null per la descrizione durante onError prima di analizzare la descrizione.
Zendesk #22286 - La libreria nativa sta continuando ad allocare la chiave/frammento di lettura della memoria causando crash
Questo arresto anomalo che si è verificato su Android quando si tenta di caricare un manifesto con più chiavi contemporaneamente è stato corretto.
Versione 1.4.22 (1581)
Zendesk #17236 - Tempo di testa di riproduzione inaffidabile per i video HLS con DRM
È stato corretto il salto temporale con i flussi LBA, dove l’ora di inizio del segmento audio non corrisponde all’ora di inizio del segmento video.
Zendesk #17680 - La riproduzione video si sta congelando nella casella Selevision Andredo
Il decodificatore video su questo dispositivo a volte restituisce un significativo salto del tempo di uscita quando si depone il fotogramma video dal buffer di output, e questo timestamp di output rimane alto. Questo problema è stato risolto restituendo un errore profilo video non supportato che non obbliga il lettore a ripetere lo stesso profilo o a scegliere un profilo diverso.
Zendesk #19074 - Il fermo video durante il gioco di trucco FFWD e REW
Questo problema è stato risolto aggiungendo un nuovo avviso TRICKPLAY_ENDED_DUE_TO_ERROR per notificare all'applicazione che trickplay è uscito e che il video è stato messo in pausa a causa di un errore irreversibile.
Zendesk #19574 - TVSDK non restituisce i dati di risposta M3U8 per contenuti DRM o non DRM
Questo problema è stato risolto nei seguenti modi:
Zendesk #19986 - Comportamento OP rotto per alcuni dispositivi come Android TV
Aggiunta di un errore FILE_NOT_FOUND alla condizione.
Quando l'errore proviene da un errore file non trovato, separando l'URL e la risposta dalla descrizione dell'errore se la risposta è disponibile.
L'errore logico introdotto dal supporto OP di NVidia è stato corretto. Sui dispositivi di protezione non NVidia, fidarsi dei flag di protezione del display anche quando il tipo di visualizzazione è sconosciuto.
Zendesk #20549 - Gestione di playlist datate. Questo problema è stato risolto riducendo l’intervallo tra l’aggiornamento del manifesto live a metà della durata del segmento prevista, se il recupero precedente non riceve nuovi segmenti.
Zendesk #20742 - L'utilizzo della memoria sembra continuare ad aumentare durante la riproduzione di contenuti live su FireTV.L'arresto anomalo è causato dalla tabella di riferimento degli oggetti JNI che ha raggiunto il limite. Questo problema è stato risolto eliminando il riferimento all'oggetto MediaFormat creato durante il riavvio del decoder.
Zendesk #21125 - Ritorno dall'annuncio live/lineare all'inizio (CSAI). È stata aggiunta una funzione che consente al lettore di tornare al contenuto principale durante un’interruzione pubblicitaria se il lettore registra la giunzione nei segnali pubblicitari utilizzando la giunzione nel rilevatore di opportunità.
Zendesk #21334 - Valore di timeout della richiesta di annunci TVSDK per richiesta di annunci di terze parti. È stata aggiunta un’impostazione adRequestTimeout a AdvertisingMetadata che abilita un timeout globale per la chiamata dell’annuncio.
Versione 1.4.21 (1566)
Zendesk #17781 - La schermata ADB non funziona più
Questo problema è stato risolto aggiungendo l'API DefaultMediaPlayer.create(Context context, boolean secureSurface), che consente l'acquisizione dello schermo.
Per consentire le acquisizioni dello schermo, passare false per secureSurface.
Importante: È consigliabile non abilitare questa funzione di acquisizione dello schermo in un’impostazione di produzione.
Zendesk #19074 - Il fermo video durante il gioco di trucco FFWD e REW
Sono stati risolti i seguenti problemi che si verificavano durante il blocco del playback da parte di trickPlay:
Zendesk #19532 - Chiudi didascalia appare fuori ordine
Zendesk #19574 - Il TVSDK non restituisce i dati di risposta M3U8 per il contenuto DRM o non DRM
Nel caricamento iniziale del file manifesto in PTMediaPlayerItem.PrepareToPlay, se il caricamento non riesce, il TVSDK non segnala il corpo della risposta di errore all'applicazione.
Questo problema è stato risolto consentendo al TVSDK di segnalare la risposta di errore come un errore all’applicazione.
Zendesk #19701 - Blocco della riproduzione con SAP/Discontinuità
Il lettore si blocca quando l'audio e il video non sono allineati a discontinuità è stato risolto.
Bug #PTPLAY-11162 - È stato risolto l'aggiornamento della libreria OpenSSL alla versione 1.0.2f.
Versione 1.4.20 (1546)
Zendesk #17384 - Richiesta di funzioni: Supporto dei metadati ID3 per la riproduzione AAC
Il supporto per i tag ID3 nei file multimediali AAC è stato fornito nel TVSDK per Android a partire dalla versione 1.4.20.
Zendesk #18358 - Il lettore blocca l'interruttore del bitrate con discontinuità fuori sincrono
Questo problema è stato risolto gestendo in modo appropriato i casi limite di unione ABR.
Zendesk #19232 - L'app che utilizza TVSDK 1.4.18 si comporta stranamente sul vecchio sistema operativo Amazon versione 4
Questo problema è stato risolto rimuovendo la creazione della visualizzazione web nascosta nel processo di inizializzazione del lettore TVSDK per evitare conflitti con i dispositivi che non supportano Android Webview.
Zendesk #19585 - Riproduzione slow-motion in caso di transizione a bitrate adattivo.
Durante lo switch ABR, se il nuovo profilo ha una frequenza di campionamento audio diversa dal profilo corrente, la riproduzione diventa veloce o slow motion. Questo perché al presentatore video non viene notificato che il formato audio è cambiato.
Questo problema è stato risolto assicurandosi che il flag di notifica sia impostato nel punto corretto.
Zendesk #19683 - Riproduzione SAP DAI - Nessun audio per pochi secondi.
Per diversi casi nella logica di TVSDK, quando la marca temporale di due segmenti di rendering è stata confrontata, RENDITION_TIMEOUT_THRESHOLD è stato utilizzato come intervallo di valore accettabile, perché alla marca temporale non può sempre corrispondere una differenza di 0 ms. Se l'intervallo è compreso nell'intervallo di RENDITION_TIMEOUT_THRESHOLD, si presume che si tratti di una corrispondenza.
RENDITION_TIMEOUT_THRESHOLD è stato impostato a 100 ms, ma è risultato insufficiente per alcuni flussi. Questo problema è stato risolto aumentando il RENDITION_TIMEOUT_THRESHOLD a 200 ms.
Zendesk #19699 - Il TVSDK non riesce a passare tra le tracce dei sottotitoli VTT
Questo problema è stato risolto creando il dump del lettore e ricaricando il manifesto quando un brano cambia e correggendo il problema di conversione delle stringhe UTF8 che influenzava i nomi dei brani della didascalia WebVTT a doppio byte.
Zendesk #19717 - Problema di visualizzazione delle opzioni CC
Questo problema è stato risolto gestendo correttamente la stringa Unicode.
Zendesk #19910 - I tag TIT2 ID3 non vengono rilevati
Questo problema è stato risolto fornendo supporto più completo per le codifiche di stringhe ID3 v2.4 e per il supporto per ID3 v2.3.
Zendesk #20135 - Il TVSDK sta attivando più eventi onComplete per il contenuto VOD.
Questo problema è stato risolto aggiungendo il listener di eventi post_roll_complete al posto giusto, anziché al caso completo dell'evento di modifica dello stato.
Versione 1.4.19 (1521)
Zendesk #4180 - Il TVSDK non applica HDCP.
Zendesk #18358 - Il TVSDK si blocca su switch bitrate con discontinuità fuori sincrono.
Zendesk #19038 - Nessun flusso dal vivo su Asus Zenpad 10.
Questo problema è stato risolto precaricando le informazioni del codec multimediale in modo da non eseguire query sulla funzione in fase di esecuzione.
I seguenti problemi sono gli stessi di Zendesk #19038:
Versione 1.4.18 (1503)
Zendesk #3324 - Il reporting degli annunci Primetime non tiene traccia delle interruzioni pubblicitarie quando non vi sono annunci multimediali in un VMAP.
Quando un'interruzione pubblicitaria è vuota, gli eventi di inizio e fine dell'annuncio non venivano inseriti in un ping. Questo problema è stato risolto inviando ping di inizio dell'interruzione pubblicitaria su interruzioni pubblicitarie vuote, come VMAP AdBreak, con un nodo AdSource valido.
Zendesk #18229 - SetCCVisiblity(VISIBLE) viene ignorato dopo la chiamata a MediaPlayer.reset()
Questo problema è stato risolto aggiungendo setCCVisibility(Visibility.INVISIBLE); alla funzione reset() nella classe MediaPlayer.
Zendesk #18328 - Problema di frame saltato su dispositivi Amazon Fire TV di seconda generazione per i contenuti con 60FPS
Questo problema è stato risolto applicando il FPS codificato per il processo decisionale del tempo di sonno e con una logica di previsione FPS meglio codificata.
Versione 1.4.17 (1472)
Zendesk #2231 - Errore restituito dal recupero del manifesto non disponibile in MediaPlayerNotification
Questo problema è stato risolto includendo il corpo della risposta del manifesto in caso di errore di analisi.
Zendesk #17703 - VideoEngineView non impedisce le schermate durante la riproduzione del video
Il metodo setSecure è disponibile dall’API 17, ma poiché l’API 17 copre le versioni 4.2, 4.2.1 e 4.2.2, non è noto quale genererà un’eccezione o se è specifico per il dispositivo. Questo problema è stato risolto racchiudendo VideoEngineView.setSecure nella clausola try catch.
Zendesk #17919 - La ricerca del contenuto causa un errore di battito cardiaco
Errore di posizione dei dati di input non valido a causa della chiamata heartbeat generata quando la ricerca è stata avviata dopo il pre-roll. Questo problema è stato risolto.
1.4.16a (1454a)
Versione 1.4.16 (1454)
Zendesk #3875 - Tab S Arresto anomalo durante la riproduzione
Ripristino della dipendenza di OKHTTP su Auditude per CRS perché TVSDK ora utilizza direttamente httpurlconnection anziché curl. Il problema è stato risolto cancellando le eccezioni prima di effettuare qualsiasi altra chiamata JNI.
Zendesk #4487 - Tracciamento del canale lineare dei contenuti
Il problema è stato risolto consentendo la riinizializzazione del tracciatore heartbeat video durante una sessione di riproduzione del flusso lineare.
Zendesk #17919 - Android - la ricerca del contenuto causa l'errore heartbeat
Il problema quando l'heartbeat si trova in uno stato di errore quando si verifica una ricerca in un capitolo è stato risolto.
Zendesk #18053 - Adobe Primetime si blocca su Marshmallow
Il TVSDK si bloccava su Android M OS quando la libreria TVSDK utilizzava il codice neon che esegue la conversione del colore YUV -> RGB. Il problema è stato risolto aggiornando le funzioni che causano questo problema utilizzando la versione non neon del codice.
Zendesk #18072 - Android M - Arresto anomalo dell'applicazione
Quando si controlla se il profilo e il livello sono supportati, si verifica un arresto anomalo durante la chiamata delle API MediaCodecList e MediaCodecInfo . Il problema è stato risolto caricando anticipatamente tutte le informazioni sul codec per evitare di chiamare queste API solo quando sono necessarie informazioni sul codec.
Zendesk #18074 - Sottotitoli arabi non funzionanti su Nexus con Android 6.0
Il problema è stato risolto fornendo il supporto per la mappa dei font CTS per Android.
Aggiornamento versione 1.4.15 (1438)
Versione 1.4.15 (1435)
Zendesk #4278 - Glitches su Android set top box quando il bitrate adattivo cambia (ABR).
La correzione era di aggiungere il supporto per switch ABR senza soluzione di continuità con il codec multimediale Android più recente.
Zendesk #17063 - Chiamando mediaPlayer.reset() si verifica un errore di reimpostazione del motore video.
La correzione consisteva nell'includere il codice MediaErrorCode originale da VideoEngineExceptions durante l'invio di ErrorEvents.
Zendesk #17130 - Una pausa breve ma notevole quando si cambia il bit rate visto su FireTV.
(Come #4278 precedente) La correzione era quella di aggiungere il supporto per lo switch ABR senza soluzione di continuità con il codec multimediale Android più recente.
Zendesk #17666 - Annunci aggiuntivi, Inaspettati o No Ads durante la ripresa del contenuto.
La correzione si è verificato un problema durante l'esecuzione del contenuto PreparatoToPlay su video-on-demand (VOD), la ricerca iniziale viene eseguita sull'ora locale anziché sull'ora virtuale.
Zendesk #17437 - Ritardo lungo nell'avvio dei contenuti VOD con alcuni flussi AES.
La correzione era di scaricare tutte le chiavi AES in parallelo quando più chiavi sono elencate nel manifesto.
Zendesk #17851 - Android TV - Black Frame durante ABR
La correzione era di specificare KEY_MAX_WIDTH e KEY_MAX_HEIGHT per abilitare la riproduzione adattiva.
Versione 1.4.14 (1415)
Zendesk #3875 - Tab S Arresto anomalo durante la riproduzione.
Per evitare l'arresto anomalo era necessaria un'ulteriore correzione.
Zendesk #17245 - Fallback su Android TV non funziona.
È stato risolto un problema aggiuntivo per cui la riproduzione si blocca quando il fallback è abilitato e la risposta VMAP ha un'interruzione pubblicitaria vuota.
Versione 1.4.14 (1412)
Versione 1.4.13 (1388)
Zendesk #3502 - Supporto di failover basato su client HLS durante un'interruzione pubblicitaria
Consenti il failover al manifesto principale durante l'aggiornamento dell'errore del profilo attivo durante il periodo di interruzione degli annunci.
Zendesk #3875 - Tab S Arresto anomalo durante la riproduzione
Per risolvere il conflitto tra HttpUrlConnection e cURLm, utilizza una libreria di terze parti.
Zendesk #4450 - problema di impostazione di metadati personalizzati per un singolo posizionamento in un risolutore di contenuti
Aggiungi un setter alle impostazioni Opportunità.
Versione 1.4.12 (1388)
Zendesk #2751 - CSAI e CRS | Miglioramento: Gestisci gli elementi dinamici in determinati URL di file multimediali.
È stato aggiornato Creative Repackaging Service per gestire correttamente gli annunci con URL creativi dinamici.
Zendesk #3965 - Il passaggio alla riproduzione normale dal trickplay comporta un salto in avanti un po' prima di avviare la riproduzione.
Zendesk #3978 - Trickplay a 8x e 16x spesso si congela.
Zendesk #3992 - Velocità aggiuntive di Trickplay.
TrickPlay è stato aggiornato per accettare tassi superiori a 16x; Sono ora consentiti anche +/- 32, +/-64 e +/-128.
Zendesk #4007 - Interpretazione dell'oggetto GEOB come parte dei metadati della timeline (Android e Web).
Sono state aggiunte le API setByteArray e getByteArray.
PTPLAY-7301 - Avvio istantaneo al punto di accesso casuale.
Instant On è stato aggiornato per consentire un punto iniziale diverso da zero.
Versione 1.4.11 (1363)
Zendesk #2076 - Otturatore frequente durante la riproduzione di video su Motorola Xoom con Android 4.0.3
Sono stati aggiunti dispositivi ad elenco consentiti per impedire che tentassero di riprodurre contenuti di alto profilo.
Zendesk #2197 - [Ads]
Tracciamento degli errori di annuncio
invia OperationFailedEvent con notifica di avviso.
La macro Zendesk #3304 - VAST 3.0 [ERRORCODE]
non viene compilata
[ERRORCODE]
macro sarà codificata in URLVersione 1.4.10 (1354)
Zendesk #2941 - Le risorse live non hanno "0" nell'intervallo ricercabile
Precedentemente c'era un buffer di 3 segmenti quando si cercava l'inizio di un flusso live, ora è possibile cercare all'inizio di un flusso live (cioè l'inizio del primo segmento).
Zendesk #3169 - Aggiorna il lettore di riferimento con l'integrazione Adobe AnalyticsIl lettore di riferimento è stato aggiornato con la libreria Adobe Analytics come impianto di esempio.
Zendesk #3299 - Comportamento inspiegabile del gioco di trucco
Zendesk #3433 - Android e Flash - Problemi con i sottotitoli
GetLine per WebVTT non rispettava una lunghezza <CR><LF> regolata per un pacchetto; l’ultima didascalia può contenere caratteri provenienti da didascalie precedenti.
I lettori di riferimento di esempio Android sono stati migliorati con un'opzione per attivare i registri di debug e inviare i risultati via e-mail. Questa opzione si trova nel menu Log del lettore di riferimento.
Versione 1.4.9 (1332)
Dopo una ricerca, possibile caso in cui il motore video imposta lo stato su PLAYING prima che il presentatore video sia pronto per la riproduzione. Si verifica quando lo stato del buffer è alto prima della ricerca. Correggere il problema notificando al motore video lo stato del buffer basso. Con il motore video a basso stato di buffer, la chiamata a Play causa la modifica dello stato a BUFFERING invece di PLAYING. La riproduzione riprende quando lo stato cambia in PLAYING.
È stata aggiunta una nuova API per impostare l’agente utente per le chiamate correlate agli annunci, auditudeSettings.setUserAgent("user/agent"). Se non è impostato alcun agente utente, verrà utilizzato il valore predefinito. Questo influisce solo sull’agente utente per le chiamate correlate all’annuncio, l’agente utente per le chiamate multimediali rimane invariato, che è "Adobe Primetime"+<agente utente predefinito>.
Versione 1.4.8 (1324)
Versione 1.4.7 (1311)
Versione 1.4.6 (1282)
Questo problema è stato risolto aggiungendo la latenza tra i download dei segmenti video nel calcolo della larghezza di banda e avendo la logica di calcolo del tempo di download utilizzato il tempo di ciclo di richiesta completo.
Versione 1.4.5 (1248)
Versione 1.4.4 (1195)
Versione 1.4.3 (1173)
Versione 1.4.2
Versione 1.4.1 (1121)
Versione 1.4.0
Versione 1.4.31
Versione 1.4.23
La funzione Didascalia chiusa non funziona con contenuto solo audio, perché il sistema di didascalie richiede il funzionamento di un video. Senza video, non esiste una dimensione di visualizzazione e senza una dimensione di visualizzazione, non è possibile visualizzare alcun elemento grafico per i sottotitoli.
A partire dalla versione 1.4.23, TVSDK non supporterà Gingerpane OS 2.3. Questo perché il TVSDK ha utilizzato le seguenti librerie Android private per raccogliere informazioni hardware sui dispositivi con Gingerpane OS:
libstagefright.so
libcutils.so
Nella versione Android N, Google ha rimosso l’accesso a queste librerie private. Il sistema operativo Gingerpane attualmente rappresenta meno dell'1% della quota di mercato del sistema operativo Android a livello globale, quindi dopo la versione 1.4.23, il sistema operativo Gingerpane non sarà più supportato dal TVSDK.
Quando utilizzi la versione 1.4.23 (che include il supporto per Android N) o successiva:
Se aggiorni minSdkVersion:
Versione 1.4.22
Versione 1.4.2
Media Player invia in modo errato MediaPlayer Player PlayerState.Completato durante l'operazione di riavvolgimento di Trick Play quando raggiunge un limite pubblicitario. In caso contrario, l’SDK gestisce correttamente lo stato.
Versione 1.4.0 (1086)
Dispositivo | Chipset | Problema | Causa | Soluzione alternativa |
---|---|---|---|---|
Droid X | TI OMAP3 | È previsto un ritardo ABR poiché sta riavviando il decodificatore. | ||
Desiderio HTC (diverso da HTC Desire HD) | QSD8250 | Impossibile riprodurre il video. Restituisce l'errore VIDEO_PROFILE_NOT_SUPPORTED. | Desire non fornisce un decodificatore HW corretto. Fornisce il decodificatore SW di Stagefright. | Riavvia il dispositivo. |
HTC EVO 4G | QSD8650 | Nessun decodificatore HW. | Qualcomm non ha un decodificatore HW. | Aggiornamento a Android 4.x. |
Kindle FireSystem versione 6.0 | IT OMAP4 | Non riproduce flussi HLS. Il video su AIR non funziona. | Aggiornamento alla versione 6.3 del sistema. | |
Kindle Fire HD | IT OMAP4 | Può entrare in uno stato in cui non può riprodurre video. Restituisce gli errori VIDEO_PROFILE_NOT_SUPPORTED e UNRECOVERABLE_ERROR . | Il decodificatore HW si trova in uno stato irrecuperabile quando l’app non arresta completamente il decodificatore HW, ad esempio dopo un arresto anomalo. Si verifica anche sulle app native sul dispositivo. | Riavvia il dispositivo. |
Kindle Fire HD 8.9 | Snapdragon 800 | L'AVE si blocca dopo più interruttori ABR. | ||
Motorola Atrix | Tegra2 | Problemi generali di prestazioni con AVE rispetto a AIR. Audio/video fuori sincronia, la riproduzione video si blocca dopo la riproduzione tra 9 e 15 minuti. Arresti anomali. | Possibilmente collegato a openGLES che attiviamo su AIR. Essere indagati. | |
Nexus 7 (2a generazione) | S4Pro APQ8064 (Qualcomm) | Il dispositivo si blocca quando un filmato viene messo in pausa per più di 30 minuti. | Problema del dispositivo segnalato a Google. | L'app dovrebbe timeout per non consentire uno stato di pausa lungo. |
Nexus S (GB) | Uccello Umanitario | Non è possibile riprodurre alcun video utilizzando il decodificatore HW. | Non esiste un decodificatore HW basato su Stagefright in Nexus S, quindi per Android 2.3 stiamo utilizzando un decoder SW. | Aggiornamento a ICS. |
Nexus S (ICS) | Uccello Umanitario | I video di tanto in tanto lampeggiano. | Dati errati possono causare uno stato errato del decodificatore. | Riavvia il dispositivo. |
Sistema operativo tablet Android Nook: 2.3. | IT OMAP 4 | Il video non viene riprodotto e l'app si blocca. | Stagefright entra in uno stato instabile dopo aver eseguito l’app per alcune volte. Chiamate a mediaplayer::QueryCodecs appeso. | Riavvia il dispositivo per ripristinare lo stato. |
Samsung Galaxy ACE | Qualcomm MSM7227 | Impossibile installare l'app SampleMediaPlayer. | Utilizza ARM v6 invece del chipset ARM v7 più comune. FP/AIR non supporta questo dispositivo. | |
Samsung Galaxy ACE2Android OS: 2.3.6 | NovaThor U8500 | Impossibile riprodurre il video. | Questo chipset è un decodificatore sconosciuto per Android pre-ICS in AVE. | |
Samsung Galaxy S2 (GT-I9100) | Exynos | Le prestazioni video non sono all'altezza di questo dispositivo. | Il decodificatore HW restituisce fotogrammi decodificati con PTS errato. Il decodificatore utilizza il tempo di decodifica anziché il tempo di presentazione. | |
Samsung Galaxy S2 GAndroid OS: 2.3.6 | IT OMAP4 | Arresto anomalo all’avvio del video. | Aggiornamento a Android 2.3.7 o 4.x. | |
Samsung Galaxy S3 (I747) | Qualcomm MSM8960 | A intermittenza, il video si blocca e solo l'audio riproduce, quindi diventa non reattivo. | ||
Samsung Galaxy S3 I747M | SAMSUNG_M2ATT | Il video si congela. | Indagare. | |
Samsung Galaxy Tab 1 v10.1 | Tegra 2 | La transizione MBR potrebbe richiedere fino a tre secondi. | Come correzione per gli arresti anomali di MBR, riavviamo il decodificatore per ogni interruttore di flusso, che può richiedere fino a tre secondi. | |
Samsung Galaxy Y | Impossibile installare l'app SampleMediaPlayer. | Utilizza ARM v6 invece del chipset ARM v7 più comune. FP/AIR non supporta questo dispositivo. | ||
Xoom | Tegra | Alcuni fotogrammi vengono eliminati per il passaggio. Il decodificatore non viene riavviato. | Limitazione OMXAL. |