2016-08-23 3 views
0

Я хотел бы знать, есть ли способ указать, чтобы exoplayer играл только высокое качество потока в hls. Моя проблема в том, что для воспроизведения этого качества требуется слишком много времени, даже если у меня хорошая сеть. Итак, если бы я мог начать играть в этом качестве, а не в нижнем, было бы здорово.Android Exoplayer играет только высокое качество с HLS

Любая идея?

С уважением,

ответ

1

Пожалуйста, измените, как указано, чтобы выбрать высокий вариант.

HlsChunkSource.java

OLD:

protected int computeDefaultVariantIndex(HlsMasterPlaylist playlist, Variant[] variants, 
     BandwidthMeter bandwidthMeter) { 
    int defaultVariantIndex = 0; 
    int minOriginalVariantIndex = Integer.MAX_VALUE; 

    for (int i = 0; i < variants.length; i++) { 
     int originalVariantIndex = playlist.variants.indexOf(variants[i]); 
     if (originalVariantIndex < minOriginalVariantIndex) { 
     minOriginalVariantIndex = originalVariantIndex; 
     defaultVariantIndex = i; 
     } 
    } 

    return defaultVariantIndex; 
    } 

Chnage к:

protected int computeDefaultVariantIndex (HlsMasterPlaylist playlist, Variant[] variants,BandwidthMeter bandwidthMeter) { 

    int defaultVariantIndex = 0; 
    int minOriginalVariantIndex = Integer.MIN_VALUE; 

    for (int i = 0; i < variants.length; i++) { 
     int originalVariantIndex = playlist.variants.indexOf(variants[i]); 
     if (originalVariantIndex > minOriginalVariantIndex) { 
     minOriginalVariantIndex = originalVariantIndex; 
     defaultVariantIndex = i; 
     } 
    } 
    return defaultVariantIndex; 
} 

Но если ваше устройство с помощью Amlogic видеокодек (в основном телеприставки) , выбирая высокий вариант, вызывают зависание видео который Google закрыт как проблема с устройством.

Смежные вопросы