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

OSCHINA-MIRROR/hms-core-hms-video-editor-demo

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README_ZH.md 13 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 30.11.2024 12:11 b4cbb3e

华为视频剪辑服务示例代码

中文 | English

目录

介绍

Видеоредактор (Video Editor Kit) — это сервис от компании Huawei, который позволяет быстро создавать возможности для редактирования видео. Он предлагает два способа интеграции:

  • Видеоредактор UI SDK предоставляет простой в использовании интерфейс пользовательского уровня.
  • Видеоредактор Atomic Capabilities SDK предлагает более 100 функций нижнего уровня, включая несколько интерфейсов алгоритмов искусственного интеллекта, которые можно гибко выбирать в зависимости от бизнес-сценария.
  • SDK для записи экрана предоставляет базовые методы записи, такие как запуск/остановка записи и связанные с этим методы настройки.
  • SDK для создания шаблонов предоставляет функции создания и загрузки шаблонов.

Оба метода обеспечивают комплексные возможности редактирования видео «всё в одном», включая импорт, редактирование, рендеринг, экспорт и управление мультимедийными ресурсами. Они предоставляют высокопроизводительные, простые в использовании и хорошо совместимые интерфейсы, помогая легко создавать приложения.

Вы можете выбрать подходящий способ интеграции в соответствии с вашим сценарием использования. Однако вы можете использовать только один из них, а не оба одновременно.

Цель этого примера кода — продемонстрировать использование Video Editor Kit SDK и предоставить примеры кода для обоих способов интеграции.

Инженерная структура каталогов

|-- com.huawei.videoeditorkit.videoeditdemo
    |--sdkdemo 原子能力SDK集成demo
    |--uidemo UI SDk集成demo
    |--screenrecorddemo  屏幕录制SDK集成demo 
    |--templatetooldemo  模板制作SDK集成demo

Шаги выполнения

  1. Клонируйте этот код на свой компьютер.
  2. Если вы ещё не зарегистрировались в качестве разработчика, зарегистрируйтесь на сайте AppGalleryConnect и создайте приложение.
  3. Файл agconnect-services.json можно получить на веб-сайте Huawei Developer Alliance.
  4. Скопируйте файл agconnect-services.json в корневой каталог приложения.
  5. Если вам нужно использовать облачные сервисы, вам необходимо использовать значение api_key в файле agconnect-services.json. Вы можете вызвать MediaApplication.getInstance().setApiKey(String apiKey) при инициализации приложения.
  6. Скомпилируйте и запустите на устройстве Android или эмуляторе.

Примечание:

Название пакета в этом проекте нельзя использовать для запроса файла agconnect-services.json. Вместо этого вы можете запросить файл agconnect-services.json, используя собственное название пакета. Просто измените applicationId в build.gradle на уровне приложения на то же название пакета, что и в запрошенном файле agconnect-services.json, чтобы воспользоваться услугами Video Editor Kit.

Требования к среде

Рекомендуется использовать версию AndroidSDK 24 или выше и JDK версии 1.8 или выше.

Техническая поддержка

Если вы всё ещё оцениваете HMS Core, вы можете узнать последние новости о HMS Core на Reddit и пообщаться с другими разработчиками.

Если у вас есть вопросы о том, как использовать пример кода HMS, попробуйте следующее:

  • Если у вас возникли проблемы во время разработки, задайте вопрос на Stack Overflow, выбрав тег [huawei-mobile-services]. Эксперты Huawei по разработке ответят на ваши вопросы один на один.
  • Посетите форум разработчиков Huawei, чтобы обсудить HMS Core с другими разработчиками.

Если у вас возникнут проблемы при попытке примера кода, отправьте сообщение об ошибке в репозиторий GitHub или отправьте запрос на вытягивание (Pull Request).

Лицензия

Этот пример кода лицензирован под Apache 2.0 license.

Индекс ключевых функций кода

|-- HomeActivity:приложение запускается на главной странице, где можно перейти на главную страницу создания (MainActivity) и использовать различные открытые функции AI.
    |--Обработчик для каждой функции AI на домашней странице:
        |--Динамическое фото: faceReenact(String imagePath)
        |--Однократная улыбка: faceSmile(String imagePath)
        |--AI раскраска: aiColor(String filePath)
        |--Эффект замедленной съёмки: timeLapse(String imagePath)
        |--Выбор интересных моментов: videoSelection(String videoPath)
        |--Разделение объектов: objectSeg(String photoPath)
        |--Сегментация головы: headSeg(String photoPath)
        |--Окраска волос одним касанием: откройте HairDyeingFragment, после успешного скачивания выбранного цвета краски вызовите hairDying(Bitmap colormapBitmap) для обработки
        |--Макияж: откройте CameraActivity и CameraPreviewFragment

|-- MainActivity:главная страница создания, которая может переключаться между страницей обрезки (ClipFragment) и страницей шаблона (TemplateHomeFragment)
|-- MediaPickActivity:страница выбора материалов, которая открывается при необходимости выбора материалов из галереи
|-- VideoClipsActivity:страница редактирования видео, доступ к которой осуществляется через начало создания или импорт существующих материалов или черновиков; верхняя половина страницы представляет собой область предварительного просмотра, средняя часть — проигрыватель и временную шкалу, а нижняя часть — двухуровневую панель меню
|-- MaterialEditFragment:область предварительного просмотра на странице редактирования, где вы можете редактировать выбранные материалы, дважды нажав на них, перетаскивая их, вращая их и т. д.
|-- MenuClickManager:менеджер кликов меню, который обрабатывает события кликов пользователя на страницах редактирования в методе handlerClickEvent, каждое событие клика открывает соответствующий фрагмент, эти фрагменты наследуют абстрактный класс BaseFragment и реализуют методы initView, initObject, initData и initEvent, где initView используется для макета и инициализации элементов управления, в методе initEvent создаются слушатели для соответствующих элементов управления, реагирующие на события кликов пользователей в различных фрагментах и выполняющие соответствующую логику обработки бизнеса

|-- Функции редактирования:
    |--Обрезка длительности: AssetCropFragment
    |--Разделение материалов: AssetSplitFragment
    |--Изменение скорости видео: GeneralSpeedFragment
    |--Анимация: AnimationPanelFragment
    |--Наклейки: StickerPanelFragment
    |--Текст: EditPanelFragment
    |--Стиль текста: EditTextStyleFragment
    |--Текстовая анимация: EditTextAnimateFragment
    |--Пузыри текста: EditTextBubblesFragment
    |--Цветы текста: EditTextFlowerFragment
    |--Фильтры: FilterPanelFragment
    |--Эффекты: EffectPanelFragment
    |--Регулировка: FilterAdjustPanelView
    |--Маски: MaskEffectFragment
    |--Блокировка лиц: FaceBlockingFragment
    |--Отслеживание лиц: PersonTrackingFragment
    |--Непрозрачность: TransparencyPanelFragment
    |--Соотношение холста: VideoProportionFragment
    |--Фон холста: CanvasBackgroundFragment
    |--Аудио-добавление музыки: AudioPickActivity, MusicLocalFragment
    |--Аудиоэффекты: SoundEffectFragment
    |--Скорость звука: AudioSpeedFragment
    |--Громкость: VolumePanelFragment
    |--Ключевые кадры: KeyFrameFragment
    |--Обрезка: CropNewActivity
|-- Функции шаблонов:
    |--Страница шаблонов: TemplateHomeFragment, отображает список всех шаблонов

**Примечание**: некоторые фрагменты кода могут быть переведены не полностью корректно, поскольку они содержат специальные термины и конструкции, характерные для разработки программного обеспечения. |— Шаблон детализации: TemplateDetailActivity, после выбора шаблона отображается конкретный эффект шаблона
|— Страница выбора материалов шаблона: VideoModulePickFragment, после выбора шаблона появляется при нажатии кнопки «Начать использовать»
|— Страница редактирования шаблона: VideoModuleEditFragment
|— Страница замены материалов шаблона: VideoModuleReplaceFragment
|— Экспорт:
|— Главная страница экспорта: VideoExportActivity
|— ExportFragment: настройка параметров перед экспортом, отображение прогресса во время экспорта, обработка ошибок при экспорте
|— PageExportSuccessFragment: отображение страницы успешного экспорта

Опубликовать ( 0 )

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

1
https://api.gitlife.ru/oschina-mirror/hms-core-hms-video-editor-demo.git
git@api.gitlife.ru:oschina-mirror/hms-core-hms-video-editor-demo.git
oschina-mirror
hms-core-hms-video-editor-demo
hms-core-hms-video-editor-demo
master