1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/ekber-GSYVideoPlayer

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

На основе IJKPlayer (совместимого с системами MediaPlayer и EXOPlayer2) был создан многофункциональный видеоплеер.

Пожалуйста, внимательно прочитайте следующие инструкции, большинство вопросов можно найти ниже.

Если клонирование происходит слишком медленно, вы можете попробовать загрузить его с адреса кодового облака.

Тип Функция
Кэширование Постепенное кэширование во время воспроизведения, используется AndroidVideoCache; ExoPlayer использует SimpleCache.
Протокол h263\4\5, Https, concat, rtsp, hls, rtmp, crypto, mpeg и т. д. (поддерживаются форматы IJK).
Фильтры Простые фильтры (зернистость, чёрно-белое изображение, цветокоррекция, размытие, размытие по Гауссу и т.д., более 20 видов), анимация (водяные знаки, многослойное воспроизведение и т.д.).
Кадры Первый кадр видео, функция кадрирования видео, функция создания GIF из видео.
Воспроизведение Список воспроизведения, непрерывное воспроизведение списка, воспроизведение с гравитационным вращением и ручным вращением, скорость сетевого видео.
Экран Регулировка соотношения сторон экрана: по умолчанию 16:9, 4:3, заполнение; поворот угла экрана во время воспроизведения (0, 90, 180, 270); зеркальное вращение.
Ядро IJKPlayer, EXOPlayer, переключение MediaPlayer, настраиваемое ядро.
Макет Полноэкранный и не полноэкранный макет, два макета для переключения, поддержка чистого воспроизведения без каких-либо элементов управления, поддержка субтитров, наследование любого макета.
Воспроизведение Одиночное воспроизведение, одновременное воспроизведение нескольких видео, автоматическое воспроизведение при прокрутке списка видео, бесшовное воспроизведение при переключении списка.
Окно Маленькое окно, несколько маленьких окон (включая рабочий стол).
Реклама Рекламные ролики в начале видео, пропуск рекламных роликов, вставка рекламы в середине.
Субтитры Поддержка пользовательских внешних субтитров в режиме exo2.
Другое Приостановка перед и после переключения на задний план без затемнения экрана; поддержка регулировки различной чёткости; бесшовные переходы; блокировка/разблокировка полноэкранного щелчка; предварительный просмотр прогресса в маленьком окне (тестирование).
Настройка Можно настроить слой рендеринга, слой управления, слой воспроизведения (слой управления), слой кэша.

Download Download Build Status

GitHub stars GitHub forks GitHub issues GitHub license

-----------------微信赞赏链接-----------------

--------------Demo APK 下载地址---------------

Использование зависимостей

Версия 7.0 использует androidx, пожалуйста, обратитесь к версии 6.x.x для поддержки версий, см.: --- версия обновления - вход.

1. Метод JCenter (рекомендуется)

Вы можете выбрать один из следующих трёх методов и добавить их в файл build.gradle в модуле.

A、Прямое введение

//Полная версия введения
implementation 'com.shuyu:GSYVideoPlayer:7.1.2'

B、Добавить java и нужные вам so-файлы:

implementation 'com.shuyu:gsyVideoPlayer-java:7.1.2'

//Нужно ли поддерживать режим ExoPlayer
implementation 'com.shuyu:GSYVideoPlayer-exo2:7.1.2'

//В соответствии с вашими потребностями, so-файл режима IJK
implementation 'com.shuyu:gsyVideoPlayer-armv5:7.1.2'
implementation 'com.shuyu:gsyVideoPlayer-armv7a:7.1.2'
implementation 'com.shuyu:gsyVideoPlayer-arm64:7.1.2'
implementation 'com.shuyu:gsyVideoPlayer-x64:7.1.2'
implementation 'com.shuyu:gsyVideoPlayer-x86:7.1.2'

C、Поддержка других форматов протоколов (mpeg, rtsp, concat, crypto протокол)

A, B поддерживают 263/264/265 и другие форматы, но могут возникнуть проблемы со звуком без изображения при использовании формата mpeg. C вводит so-файлы, которые поддерживают формат mpeg и другие дополнительные протоколы, но размер пакета становится больше.

implementation 'com.shuyu:gsyVideoPlayer-java:7.1.2'

//Нужно ли поддерживать режим ExoPlayer
implementation 'com.shuyu:GSYVideoPlayer-exo2:7.1.2'

//Больше поддержки формата IJK (so-файлы)
implementation 'com.shuyu:gsyVideoPlayer-ex_so:7.1.2'

Код в глобальном переключателе (дополнительную информацию см. в документации и демо ниже)


//EXOPlayer ядро, поддерживает больше форматов
PlayerFactory.setPlayManager(Exo2PlayerManager.class);
//Системное ядро
PlayerFactory.setPlayManager(SystemPlayerManager.class);
//IJK ядро, режим по умолчанию
PlayerFactory.setPlayManager(IjkPlayerManager.class);


//Режим кэширования Exo, поддерживает только Exo
CacheFactory.setCacheManager(ExoPlayerCacheManager.class);
//Режим прокси-кэша, поддерживает все режимы, не поддерживает m3u8 и т.д., режим по умолчанию КэчФабрик.сетКэшМенеджер(ПроксиКэшМенеджер.класс);  

// переключение режима рендеринга  
ГСЮВидеоТип.сэтШоуТайп(ГСЮВидеоТип.СКРИНМАТЧФУЛЛ);  
// соотношение сторон по умолчанию  
ГСЮВидеоТип.СКРИНТАЙПДЕФАУЛТ = 0;  
// 16:9  
ГСЮВидеоТип.СКРИНТАЙП16_9 = 1;  
// 4:3  
ГСЮВидеоТип.СКРИНТАЙП4_3 = 2;  
// полноэкранное кадрирование, рекомендуется использовать FrameLayout в качестве родительского макета для отображения нормального CoverImageView  
ГСЮВидеоТип.СКРИНТИПФУЛЛ = 4;  
// полноэкранное масштабирование, при использовании этого свойства рекомендуется использовать Surface_container в качестве FrameLayout  
ГСЮВидеоТип.скринМатчФулл = -4;  
/***  
 * СКРИНТАЙПКЭСТМ — пользовательское соотношение сторон  
 * @param screenScaleRatio соотношение сторон, например 16: 9  
 */  
публичный статический метод сэтскринскейлератио(поплавок скринскейлератио)  


// переключение режимов рисования  
ГСЮВидеоТип.сэтрэндэртайп(ГСЮВидеоТип.СУФРЭЙС);  
ГСЮВидеоТип.сэтрэндэртайп(ГСЮВидеоТип.ГЛСФРЭЙС);  
ГСЮВидеоТип.сэтрэндэртайп(ГСЮВидеоТип.ТЭКСЧУРЭ);  


//ijk отключить журнал  
АйджКейПлейерМенеджер.сэтЛогЛевел(АйджКейМедиаПлейер.АЙК_ЛОГ_СИЛЭНТ);  


//экспоулер пользовательский медиаисточник  
ЭксоСорсМенеджер.сэтЭкспоМедиаСорсИнтерсептЛистенер(новый ЭксоМедиаСорсИнтерсептЛистенер() {  
    @переопределить  
    общедоступный медиасорс получаетмедиасорс(строка данныхсорс, логическое значение предварительного просмотра, логическое значение кэшэнэйбл, логическое значение ислопинг, файл кэшдир) {  
        // можно настроить медиаисточник  
        вернуть ноль;  
    }  
});

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Видеоплеер (IJKplayer, ExoPlayer, MediaPlayer) с поддержкой HTTPS, поддерживает субтитры, фильтры, водяные знаки, GIF-снимки экрана, превью, промежуточные рекламные вставки, множественное одновременное воспроизведение, базовое перетаскивание, регулировку звука и яркости, а также буферизацию во время воспроизведения. Развернуть Свернуть
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/ekber-GSYVideoPlayer.git
git@api.gitlife.ru:oschina-mirror/ekber-GSYVideoPlayer.git
oschina-mirror
ekber-GSYVideoPlayer
ekber-GSYVideoPlayer
master