Данный проект представляет собой бэкенд-сервис для приложения коротких видео Tencent Cloud. Сервис разработан с использованием Nodejs и MySQL и предоставляет следующие функции:
Пользователи могут загрузить исходный код проекта и быстро настроить собственный бэкенд для коротких видео.
Зарегистрируйте учётную запись на Tencent Cloud и получите API ключи.
Обратите внимание, что требуется версия 8.x или выше.
curl -sL https://deb.nodesource.com/setup_9.x | sudo -E bash -
sudo apt-get install -y nodejs
sudo apt update
sudo apt install mariadb-server
sudo mysql --version
sudo service mysql start
sudo mysql -u root -p
create user 'litvideo'@'localhost' identified by 'litvideo';
create database db_litvideo default charset utf8 collate utf8_general_ci;
grant all privileges on `db_litvideo`.* to 'litvideo'@'%';
use db_litvideo;
CREATE TABLE IF NOT EXISTS tb_account(
userid VARCHAR(50) NOT NULL,
password VARCHAR(255),
nickname VARCHAR(100),
sex INT DEFAULT -1,
avatar VARCHAR(254),
frontcover varchar(255) DEFAULT NULL,
create_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY(userid)
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE IF NOT EXISTS tb_ugc (
userid varchar(50) NOT NULL,
file_id varchar(150) NOT NULL,
title varchar(128) DEFAULT NULL,
status tinyint(4) not NULL DEFAULT 0,
review_status tinyint(4) not NULL DEFAULT 0,
frontcover varchar(255) DEFAULT NULL,
location varchar(128) DEFAULT NULL,
play_url varchar(255) DEFAULT NULL,
create_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (file_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE IF NOT EXISTS tb_token(
token VARCHAR(32) NOT NULL,
userid VARCHAR(50) NOT NULL,
expire_time DATETIME NOT NULL DEFAULT '1970-01-01',
refresh_token VARCHAR(32) NOT NULL,
PRIMARY KEY(token),
KEY(userid),
KEY(expire_time)
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE IF NOT EXISTS tb_queue(
task_id VARCHAR(150) NOT NULL,
file_id VARCHAR(150) NOT NULL,
owner VARCHAR(50),
create_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
mark_time timestamp DEFAULT '1971-01-01 00:00:00',
review_data longtext,
PRIMARY KEY(task_id)
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE IF NOT EXISTS tb_review_record(
task_id VARCHAR(150) NOT NULL,
file_id VARCHAR(150) NOT NULL,
reviewer_id VARCHAR(50) NOT NULL,
review_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
review_status VARCHAR(50) NOT NULL,
PRIMARY KEY(task_id)
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
# Быстрый старт
## Настройка проекта
Перейдите в рабочую директорию и клонируйте проект:
git clone https://github.com/tencentyun/vod-xiaoshipin-server.git cd vod-xiaoshipin-server
В рабочей директории установите зависимости проекта:
npm install
Скопируйте файл config_template.json в папку conf и переименуйте его в localconfig.json. В этом файле настройте параметры Tencent Cloud API, базы данных и COS хранилища. **Конфигурация надёжного обратного вызова**
В консоли Tencent Cloud Video Platform в разделе «Настройки видеопроцессинга» установите режим обратного вызова «Надёжный», а в разделе «Настройка событийного обратного вызова» выберите «Обратный вызов после загрузки». Подробнее см. в документации Tencent Cloud [1].
**Запуск сервиса**
Запустите сервис из корневого каталога проекта:
npm start
После запуска сервиса в другом терминале проверьте работу интерфейса для получения списка пользовательского генерируемого контента (UGC):
curl -l -H "Content-type: application/json" -X POST -d '' http://localhost:8001/get_ugc_list
Если сервис работает нормально, вы должны получить следующий ответ:
{"code":200,"message":"OK","data":{"list":[],"total":0}}
**Создание клиента**
См. документацию [2].
**Опыт использования функционала**
* **Загрузка видео.** После запуска сервиса откройте приложение для создания коротких видео и нажмите кнопку «Добавить» внизу экрана. Вы можете выбрать способ загрузки видео: запись, редактирование видео или редактирование изображения. После успешной загрузки видео появится в списке видеозаписей.
* **Проверка контента.** Tencent Cloud проверяет загруженные видео на соответствие требованиям. Видео, прошедшие проверку, можно сразу воспроизводить в приложении. Если проверка выявила проблемы с контентом, видео отправляется на ручную модерацию. Чтобы протестировать процесс проверки, запустите сервер, затем загрузите тестовое видео из папки source/video.mp4 в приложение и опубликуйте его.
* **Управление медиаконтентом.** После загрузки видео приложение автоматически отправляет запрос на проверку контента. Сервер получает результаты проверки и обновляет информацию о видео в приложении. В списке видео отображаются следующие статусы: «Пройдено» — видео прошло проверку; «Проверить» и «Заблокировать» — требуется ручная проверка.
После ручной модерации сервер получает решение модератора и изменяет статус видео. Статус «Заблокировано» означает, что видео не может быть воспроизведено. Статусы «Пройдено» и «Проверено» позволяют воспроизводить видео.
**Ссылки**
1. Документация Tencent Cloud по настройке надёжного обратного вызова.
2. Документация по созданию клиента.
3. Документация по использованию подписи при загрузке видео на платформу Tencent Cloud.
4. Документация по событийному обратному вызову платформы Tencent Cloud.
5. Документация по управлению медиаконтентом платформы Tencent Cloud.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )