安装LssClient

音视频直播 LSS

  • 播放器SDK
  • Demo体验
  • 产品动态
  • 产品描述
    • 功能特性
    • 产品概述
    • 产品优势
    • 应用场景
    • 核心概念
  • 控制台操作指南
    • 多用户访问控制
    • LSS概览
    • 标签管理
    • 黄反审核
    • 安全策略
    • 开通LSS
    • 日志管理
    • 质量监控
    • 操作指引
    • 统计分析
      • 用量查询
      • 直播域名
      • 用户行为
    • 模板管理
      • 缩略图模板
      • 水印模板
      • 通知模板
      • 转码模板
      • 录制模板
    • 域名管理
      • 配置HTTPS
      • 时移&回看功能
      • 配置CNAME
      • 关闭域名
      • 添加域名
      • 删除域名
      • 开启域名
      • 配置转推功能
    • 流管理
      • 查询流信息
      • 新建流
  • 入门指南
    • 开始使用LSS
    • 创建推流和播放域名
    • 快速入门流程
  • 第三方工具使用指南
    • OBS推流工具使用指南
  • 服务等级协议SLA
    • LSS服务等级协议SLA
  • API参考
    • 日志下载接口
    • 统计接口
    • 模板接口
    • 文档更新记录
    • 通知接口
    • Stream接口
    • 轮播接口
    • 错误返回
    • 录制视频裁剪
    • 使用须知
    • 公共头域
    • 概述
  • 常见问题
    • API、SDK使用类问题
    • 计费类问题
    • 使用类问题
    • 常见问题总览
    • 性能类问题
    • 安全类问题
  • 视频专区
    • 操作指南
    • 开通直播服务
    • 新手入门
    • 产品简介
  • 低延时直播
    • 低延时直播概述
    • Demo和SDK接入说明
    • 低延时直播RTL SDK隐私政策
    • 低延时直播和标准直播区别
    • 低延时直播RTL SDK开发者个人信息保护合规指引
    • 低延时直播快速入门
    • SDK集成指南
      • SDK集成指南
      • 低延时传输层SDK
        • SDK接口说明
        • iOS端SDK集成指引
        • Android端SDK集成指引
      • 低延时全功能SDK
        • Android 端集成指引
  • 产品定价
    • 余额不足提醒和欠费处理
    • 账单
    • 购买流程
    • 计费方式变更
    • 计费概述
    • 预付费资源包
    • 退款说明
    • 直播增值服务费用
      • 直播录制
      • 直播审核
      • 直播转推
      • 直播转码
      • 直播时移
      • 直播截图
    • 直播基础服务费用
      • 标准直播服务费用
      • 低延时直播服务费用
  • 服务端SDK
    • 服务端PHP-SDK
      • 异常处理
      • 安装LSS-PHP-SDK
      • 安装LssClient
      • LSS开发指南
    • 服务端Java-SDK
      • 录制功能
      • 统计功能
      • 通知功能
      • Java-SDK-文档
      • 安装LSS-Java-SDK
      • stream管理
      • LssClient
  • 推流端SDK
    • iOS端推流SDK
      • 简介
      • 推流-SDK-开发指南
    • Android端推流SDK
      • 简介
      • 推流-SDK-开发指南
所有文档
menu
没有找到结果,请重新输入

音视频直播 LSS

  • 播放器SDK
  • Demo体验
  • 产品动态
  • 产品描述
    • 功能特性
    • 产品概述
    • 产品优势
    • 应用场景
    • 核心概念
  • 控制台操作指南
    • 多用户访问控制
    • LSS概览
    • 标签管理
    • 黄反审核
    • 安全策略
    • 开通LSS
    • 日志管理
    • 质量监控
    • 操作指引
    • 统计分析
      • 用量查询
      • 直播域名
      • 用户行为
    • 模板管理
      • 缩略图模板
      • 水印模板
      • 通知模板
      • 转码模板
      • 录制模板
    • 域名管理
      • 配置HTTPS
      • 时移&回看功能
      • 配置CNAME
      • 关闭域名
      • 添加域名
      • 删除域名
      • 开启域名
      • 配置转推功能
    • 流管理
      • 查询流信息
      • 新建流
  • 入门指南
    • 开始使用LSS
    • 创建推流和播放域名
    • 快速入门流程
  • 第三方工具使用指南
    • OBS推流工具使用指南
  • 服务等级协议SLA
    • LSS服务等级协议SLA
  • API参考
    • 日志下载接口
    • 统计接口
    • 模板接口
    • 文档更新记录
    • 通知接口
    • Stream接口
    • 轮播接口
    • 错误返回
    • 录制视频裁剪
    • 使用须知
    • 公共头域
    • 概述
  • 常见问题
    • API、SDK使用类问题
    • 计费类问题
    • 使用类问题
    • 常见问题总览
    • 性能类问题
    • 安全类问题
  • 视频专区
    • 操作指南
    • 开通直播服务
    • 新手入门
    • 产品简介
  • 低延时直播
    • 低延时直播概述
    • Demo和SDK接入说明
    • 低延时直播RTL SDK隐私政策
    • 低延时直播和标准直播区别
    • 低延时直播RTL SDK开发者个人信息保护合规指引
    • 低延时直播快速入门
    • SDK集成指南
      • SDK集成指南
      • 低延时传输层SDK
        • SDK接口说明
        • iOS端SDK集成指引
        • Android端SDK集成指引
      • 低延时全功能SDK
        • Android 端集成指引
  • 产品定价
    • 余额不足提醒和欠费处理
    • 账单
    • 购买流程
    • 计费方式变更
    • 计费概述
    • 预付费资源包
    • 退款说明
    • 直播增值服务费用
      • 直播录制
      • 直播审核
      • 直播转推
      • 直播转码
      • 直播时移
      • 直播截图
    • 直播基础服务费用
      • 标准直播服务费用
      • 低延时直播服务费用
  • 服务端SDK
    • 服务端PHP-SDK
      • 异常处理
      • 安装LSS-PHP-SDK
      • 安装LssClient
      • LSS开发指南
    • 服务端Java-SDK
      • 录制功能
      • 统计功能
      • 通知功能
      • Java-SDK-文档
      • 安装LSS-Java-SDK
      • stream管理
      • LssClient
  • 推流端SDK
    • iOS端推流SDK
      • 简介
      • 推流-SDK-开发指南
    • Android端推流SDK
      • 简介
      • 推流-SDK-开发指南
  • 文档中心
  • arrow
  • 音视频直播LSS
  • arrow
  • 服务端SDK
  • arrow
  • 服务端PHP-SDK
  • arrow
  • 安装LssClient
本页目录
  • 配置LssClient
  • 新建LssClient
  • 参数说明
  • 相关说明
  • 录制模板Recording
  • 查询录制模板
  • 录制模板列表
  • 安全策略SecurityPolicy
  • 查询安全策略
  • 安全策略列表
  • 通知Notification
  • 创建通知
  • 通知列表
  • 查询通知
  • 删除通知
  • 水印Watermark
  • 图片水印
  • 创建图片水印
  • 查询指定图片水印
  • 查询图片水印列表
  • 删除图片水印
  • 时间戳水印
  • 创建时间戳水印
  • 查询指定时间戳水印
  • 时间戳水印列表
  • 删除时间戳水印

安装LssClient

更新时间:2025-08-21

配置LssClient

LssClient是LSS服务的PHP客户端,为开发者与LSS服务进行交互提供了一系列的方法。

在新建LssClient前,您需要先创建配置文件对LssClient进行配置,以下将此配置文件命名为YourConf.php,具体配置信息如下:

Plain Text
1// 报告所有 PHP 错误
2error_reporting(-1);
3
4define('__LSS_CLIENT_ROOT', dirname(__DIR__));
5
6// 设置LssClient的Access Key ID、Secret Access Key和ENDPOINT
7$LSS_TEST_CONFIG =
8    array(
9        'credentials' => array(
10            'ak' => '<AK>',
11            'sk' => '<SK>',
12        ),
13        'endpoint' => 'http://lss.bj.baidubce.com', 
14    );
15
16// 设置log的格式和级别
17$__handler = new \Monolog\Handler\StreamHandler(STDERR, \Monolog\Logger::DEBUG);
18$__handler->setFormatter(
19    new \Monolog\Formatter\LineFormatter(null, null, false, true)
20);
21\BaiduBce\Log\LogFactory::setInstance(
22    new \BaiduBce\Log\MonoLogFactory(array($__handler))
23);
24\BaiduBce\Log\LogFactory::setLogLevel(\Psr\Log\LogLevel::DEBUG);

新建LssClient

在完成上述配置之后,参考如下代码新建一个LssClient:

Plain Text
1//使用PHP SDK,并且使用自定义配置文件
2include 'BaiduBce.phar';
3require 'YourConf.php';
4
5use BaiduBce\Services\Lss\LssClient;
6
7//调用配置文件中的参数
8global $LSS_TEST_CONFIG;
9//新建LssClient
10$client = new LssClient($LSS_TEST_CONFIG);

参数说明

PHP SDK在\BaiduBce\Bce.php中默认设置了一些基本参数,如需修改参数值,可参考此文件自定义参数配置函数,并在构造LssClient的时候传入,传入代码参考如下:

Plain Text
1public function CustomizedConfig() {
2    $customizedConfig = array(
3        BceClientConfigOptions::PROTOCOL => 'http',
4        BceClientConfigOptions::CONNECTION_TIMEOUT_IN_MILLIS => 120 * 1000,
5        BceClientConfigOptions::SOCKET_TIMEOUT_IN_MILLIS => 300 * 1000, 
6        BceClientConfigOptions::SEND_BUF_SIZE => 5 * 1024 * 1024,
7        BceClientConfigOptions::RECV_BUF_SIZE => 5 * 1024 * 1024,
8        BceClientConfigOptions::CREDENTIALS => array(
9            'ak' => '<AK>',
10            'sk' => '<SK>',
11        ),
12        'endpoint' => 'http://lss.bj.baidubce.com', 
13    );
14    
15    //利用自定义配置创建LssClient
16    $customizedClient = new LssClient($customizedConfig);
17
18    //通过自定义配置调用方法
19    $options = array('config'=>$customizedConfig);
20    $this->client->listSessions($options);
21}

参数说明如下:

参数 说明 默认值
PROTOCOL 协议 http
CONNECTION_TIMEOUT_IN_MILLIS 请求超时时间(单位:毫秒) 50 * 1000
SOCKET_TIMEOUT_IN_MILLIS 通过打开的连接传输数据的超时时间(单位:毫秒) 0(表示无限等待,
若设置非0数值需要对文件大小和网速进行评估,否则上传大文件时会产生超时)
SEND_BUF_SIZE 发送缓冲区大小 1024 * 1024
RECV_BUF_SIZE 接收缓冲区大小 10 ** 1024 1024

相关说明

LssClient将可选的参数封装到$options中,每一个方法具有的可选参数详见具体的接口使用方法介绍,以createSession方法为例,请参考如下代码设置可选参数:

Plain Text
1//创建Session无任何必选参数,通过$options传入可选参数
2$options = array(
3    'description' => 'This is a test session',
4    'preset' => '<Preset_Name>',
5    'notification' => '<Notification_Name>',
6);
7$client->createSession($options);

注意:请不要将null传入$options中,否则调用时会抛出异常。

录制模板Recording

录制模板是对直播过程中音视频进行录制的参数配置集合,包括录制文件存储模式、录制文件格式、录制文件切割时长等。

目前API仅支持查询指定录制模板和查询模板列表接口,用户如需新建录制模板,请在控制台创建。

查询录制模板

下述代码示例用于查询指定的Recording:

PHP
1$name = '<Recording_Name>';
2$response = $client->getRecording($name);
3print json_encode($response);

录制模板列表

下述代码示例用于查询所有的Recording:

PHP
1$response = $client->listRecordings();
2foreach ($response->recordings as $recording) {
3    print json_encode($recording);
4}

安全策略SecurityPolicy

安全策略是直播过程中安全配置参数的集合,包括推流认证、播放认证、内容加密、防盗链(Referer/IP 黑白名单)三类安全配置。

目前LSS为每个用户创建了一个默认安全策略,尚不支持创建自定义安全策略。

查询安全策略

下述代码示例用于查询指定的SecurityPolicy:

PHP
1$name = 'default';
2$response = $client->getSecurityPolicy($name);
3print json_encode($response);

安全策略列表

下述代码示例用于查询所有的SecurityPolicy:

PHP
1$response = $client->listSecurityPolicies();
2foreach ($response->securityPolicies as $securityPolicy) {
3    print json_encode($securityPolicy);
4}

通知Notification

您可以通过提供通知接口名称和接口地址来创建Notification,然后在创建直播会话时配置直播通知。LSS会在直播会话状态改变,直播过程中HLS直播m3u8文件等生成时主动向您推送消息。

创建通知

下述代码示例用于创建一个Notification:

PHP
1//指定notification name & endpoint
2$name = '<Notification_Name>';
3$endpoint = 'http://notification.domain.com';
4$client->createNotification($name, $endpoint);

通知列表

下述代码示例用于查询所有的Notification:

PHP
1$response = $client->listNotifications();
2foreach ($response->notifications as $notification) {
3    print json_encode($notification);
4}

查询通知

下述代码示例用于查询指定的Notification:

PHP
1//指定notification name
2$name = '<Notification_Name>';
3$response = $client->getNotification($name);
4print json_encode($response);

删除通知

下述代码示例用于删除Notification:

PHP
1//指定notification name
2$name = '<Notification_Name>';
3$client->deleteNotification($name);

注意:不能删除使用中的Notification。

水印Watermark

LSS支持为直播会话添加水印,包括图片水印和时间戳水印两种类型。

图片水印

为直播会话添加图片水印需要您先创建图片水印,然后在创建直播会话时配置图片水印。

创建图片水印

通过定义水印的详细参数集合(大小、位置等)来创建图片水印。代码示例如下:

PHP
1$path = '<Image_Path>';
2$fp = fopen($path, 'rb');
3$content = fread($fp, filesize($path));
4fclose($fp);
5$content = base64_encode($content);
6$options = array(
7    'maxWidthInPixel' => <Image_Width_Limit>,
8    'maxHeightInPixel' => <Image_Height_Limit>,
9    'sizingPolicy' => '<Sizing_Policy>',
10);
11$name = '<Image_Watermark_Name>';
12$client->createImageWatermark($name, $content, $options);

查询指定图片水印

通过指定水印名称查询特定图片水印的详细信息,包括图片URL、大小、位置、创建时间等。代码示例如下:

PHP
1//指定ImageWatermark name
2$name = '<Image_Watermark_Name>';
3$response = $client->getImageWatermark($name);;
4print json_encode($response);

查询图片水印列表

查询用户的所有图片水印的详细信息。代码示例如下:

PHP
1$resp = $client->listImageWatermarks();
2foreach ($response->imageWatermarks as $imageWatermark) {
3    print json_encode($imageWatermark);
4}

删除图片水印

通过指定水印名称删除特定图片水印。代码示例如下:

PHP
1//指定ImageWatermark name
2$name = '<Image_Watermark_Name>';
3$client->deleteImageWatermark($name);

注意:不能删除使用中的图片水印。

时间戳水印

为直播会话添加时间戳水印需要您先创建时间戳水印,然后在创建直播会话时配置时间戳水印。

创建时间戳水印

通过定义水印的详细参数集合(时区、文字、背景、位置等)来创建时间戳水印。代码示例如下:

PHP
1$options = array(
2    'timezone' => '<Timezone>',
3    'alpha' => <Alpha>,
4    'fontFamily' => '<Font_Family>',
5    'fontSizeInPoint' => <Font_Size>,
6    'fontColor' => '<Font_Color>',
7    'backgroundColor' => '<Background_Color>',
8);
9$name = '<Timestamp_Watermark_Name>';
10$client->createTimestampWatermark($name, $options);

查询指定时间戳水印

通过指定水印名称查询特定时间戳水印的详细信息,包括时间戳的时区、文字、位置、创建时间等。代码示例如下:

PHP
1//指定TimestampWatermark name
2$name = '<Timestamp_Watermark_Name>';
3$response = $client->getTimestampWatermark($name);
4print json_encode($response);

时间戳水印列表

查询用户的所有时间戳水印的详细信息。代码示例如下:

PHP
1$resp = $client->listTimestampWatermarks();
2foreach ($response->timestampWatermarks as $timestampWatermark) {
3    print json_encode($timestampWatermark);
4}

删除时间戳水印

通过指定水印名称删除特定时间戳水印。代码示例如下:

PHP
1//指定TimestampWatermark name
2$name = '<Timestamp_Watermark_Name>';
3$client->deleteTimestampWatermark($name);

注意:不能删除使用中的时间戳水印。

上一篇
安装LSS-PHP-SDK
下一篇
LSS开发指南