昱唯商城

产品分类
  • 腾讯
    腾讯云
    计算
    存储
    网络
    CDN与加速
    数据库
    视频服务
    云通信
    Serverless
    移动开发
    中间件
    数据处理
    量子技术
    网络安全
    终端安全
    应用安全
    业务安全
    安全管理
    数据安全
    安全服务
    云智大数据平台
    云智大数据可视化
    云智大数据应用
    人脸识别
    人脸特效
    人体识别
    文宇识别
    图像识别
    语音技术
    AI 平台服务
    自然语言处理
    智能机器人
    域名与网站
    物联网
    区块链
    企业应用
    企业通信
    办公协同
    金融服务
    教育服务
    游戏服务
    零售服务
    移动服务
    建筑服务
    政务服务
    汽车服务
    云资源管理
    开发者工具
    监控与运维
    管理与审计
    通用解决方案
    行业解决方案
    云智大数据与AI解决方案
    微信解决方案
    教育解决方案
    音视频解决方案
    物联网解决方案
    安全与运维解决方案
    极光产品
    开发者工具
    腾讯企业邮
    腾讯企业邮箱
    企业微信
    企业微信
    腾讯广告
    微信广告
    QQ广告
    腾讯视频广告
    腾讯新闻广告
    腾讯信息流广告
    优量广告
    腾讯音乐广告
    腾讯企点
    企业QQ
    企点客服
    企点营销
    企点电话
    腾讯安全
    终端安全
    主机安全
    安全管理
    数据安全
    数据安全
    网络安全
    金融风控
    内容安全
    业务安全
    营销风控
    安全组件
    应用安全
  • 知道创宇
    技术安全
    抗D保-DDoS流量清洗服务
    游戏高防
    创宇盾 - Web应用防火墙
    加速乐(CDN内容分发)
    漏洞扫描
    创宇监控 · 智能云监控服务
    猎风 - 威胁感知系统
    业务安全
    羊毛盾-知道创宇业务反欺诈
    数据盾(机器流量管控)
    海外CN2专线防护
    IPv6安全改造
    业务安全舆情监测服务
    云防御态势感知指挥平台
    商业安全
    创宇信用
    SSL证书
    盾牌座
    安全服务
    渗透测试
    代码审计
    风险评估
    应急响应
    信息安全对抗演习服务
    网络信息安全意识培训服务
    黑客入侵救援
    等级保护2.0安全解决方案
    安全定制
    区块链定制安全研发
    云计算产品
    御点终端安全管理系统
    网络资产普查和风险感知系统
    浑天智鉴
    创宇鹰眼 - 知道创宇反电话诈骗系统
    创宇监控-关键字监控做您的“第三只眼”
    服务
    智能设备安全检测
    区块链安全
    智能合约审计
    公链安全审计
    钱包安全审计
    安全产品
    ZoomEye网络空间雷达系统
    在线漏洞扫描
    ScanV安全检测管理平台
    威胁和日志管理系统
    安全事件监控
    政务云防御平台
    御点终端安全管理系统
    ZoomEye BE 网络空间资产安全管理系统
    技术安全
    解决方案
    政府行业解决方案
    金融行业解决方案
    电信行业解决方案
    大型企业集团行业解决方案
    中小企业行业解决方案
    电商行业安全解决方案
    棋牌游戏解决方案
    直播行业安全解决方案
    大数据反诈骗解决方案
    Web系统远程监控解决方案
    全网态势感知解决方案
    全网资源侦测解决方案
    云安全解决方案
    金融安全解决方案
    区块链安全解决方案
    教育类网站安全解决方案
    公安机关互联网安全监督检查规定解决方案
    创宇信用
    内容安全
    创宇大数据
    SSL证书
    短视频运营
    秘信聊
    实名认证
    行业认证
    搜狗认证
    官网认证
    权威认证
    品牌宝
    短视频运营
  • 昱唯系列
    昱唯云建站
    昱唯网站设计
    昱唯网站优化
    昱唯企业邮箱
    昱唯微传单
    昱唯公众号助手
    昱唯门店系统
    昱唯游戏营销
    昱唯销售系统
    昱唯小程序
    昱唯商城
    昱唯建站
    昱唯400
    昱唯ABC
    昱唯ABC企业邮箱
    APP开发
    昱唯小票打印机
  • 得力
  • 企信认证
    APP安全可信认证
    品牌官网实名验证
    诚信经营示范网站
    诚信经营示范单位
    诚信经营龙头单位
    网上315金牌认证
    诚信经营金牌认证
    教育行业金牌认证
    金融行业诚企认证
    可信网站安全验证
    企信认证
    医疗行业认证
    AAA级信用企业
    金盾官网认证
    AISIT网信APP安全认证
    诚信示范网店
    互联网3.15金盾认证
    AISIT网信认证
    移动APP安全检测
    企业诚信示范网站(单位)
    诚信经营行业龙头示范单位
    网上交易3.15金牌认证
    医疗行业诚信经营示范单位
    金融行业诚信示范网站(单位)
  • 法大大
    电子合同
短视频SDK
产品详情

短视频_01.jpg短视频_02.jpg短视频_03.jpg短视频_04.jpg短视频_05.jpg短视频_06.jpg短视频_07.jpg短视频_08.jpg






近年来,短视频行业发展极为迅速,凭借其创意玩法以及新鲜的视频内容成为继直播之后的新风口。为了满足开发者快速创建短视频应用的需求,腾讯云点播推出了短视频一站式解决方案,覆盖了视频生成、上传、处理、分发和播放在内的各个环节,帮助用户以最快速度实现短视频应用的上线。

短视频(User Generated Short Video,UGSV)基于腾讯云强大的上传、存储、转码、分发的云点播能力,提供集成了采集、剪辑、拼接、特效、分享、播放等功能的客户端 SDK,并整合腾讯的 IM、社交、用户画像数据以及 AI 人脸识别和图像检测技术,帮助用户聚焦业务本身,快速轻松实现基于移动端的短视频应用。

本文档旨在帮助客户以最快速、最简单的方式体验、开通、购买和对接腾讯云短视频服务。

功能体验

iOS 版Android 版

功能列表

功能模块功能项功能简介精简版基础版商业版商业版 Pro
界面自定义 UI开发者自定义 UI。小视频 App 提供了一套完整的 UI 交互源码,可复用或自定义。
采集拍摄屏比支持16:9、4:3、1:1多种屏比拍摄。
清晰度支持标清、高清、超清拍摄,支持自定义码率、帧率、GOP。
拍摄控制拍摄前后摄像头切换、灯光的控制。
时长设置自定义拍摄的最短和最长时长。
水印拍摄支持添加水印。×
焦距拍摄支持调节焦距。
对焦模式支持手动对焦和自动对焦。
分段录制拍摄过程中可以暂停分段并且可以回删。
拍照支持拍摄照片。×
变速录制拍摄时支持慢速和快速录制。×
背景音乐拍摄前可以选择本地的 MP3 作为背景音。×
变声和混响拍摄前对录制的声音变声(如萝莉、大叔)和混响效果(如 KTV、会堂)。×
滤镜支持实时预览滑动切换滤镜的效果,支持自定义滤镜及设置滤镜程度。
基础美颜拍摄设置人脸的磨皮、美白、红润,并调节强度。
高级美颜拍摄设置大眼、瘦脸、V 脸、下巴调整、短脸、小鼻效果,并支持调节强度。×××
动效贴纸人脸识别,然后添加变形、覆盖贴纸挂件等效果。××
AI 抠图识别出人的轮廓,把背景抠除,替换成其他的元素,如动态背景或 PPT 等。×××
绿幕抠像将画面中的绿色元素(如纯绿背景)抠除,替换成其他的元素,如动态背景或 PPT 等。×××
特效编辑快速导入Android 支持快速导入视频。
视频裁剪按照给定的时间范围精确裁剪视频。
码率设置可以指定码率生成视频。
获取封面根据时间获取帧图像。
按帧预览移动时间线时,在预览窗口显示基准游标停留的帧图像。
滤镜给视频添加滤镜,并支持设置滤镜的强度。×
时间特效给视频添加倒放、反复、慢动作的时间特效。×
滤镜特效给视频添加灵魂出窍、动感光波、分裂、幻影等特效。×
背景音乐选择自带声音文件或用户手机本地的 MP3 作为背景音,支持背景音乐的裁剪和设置音量大小。×
动态或者静态贴纸添加动态或者静态贴纸,支持设置在视频画面中显示位置和起始时间。×
字幕添加字幕,可以选择字幕边框背景的样式(如气泡等),支持设置在视频画面中显示位置和起始时间。×
图片转场导入多张图片,并选择旋转、淡入淡出等转场效果,并生成视频。×
视频拼接多视频拼接支持多视频前后拼接。×
跟拍支持根据播放的视频进行跟拍,生成双画面视频。×
视频上传上传至云点播云点播支持媒资管理、内容审核等功能。
点播播放超级播放器基于点播播放器实现的集视频信息拉取、横竖屏切换、清晰度选择、弹幕、直播时移等功能于一体的解决方案,且完全开源。

LICENSE

  • 精简版 LICENSE
    您可以登录 云点播控制台 在线申请为期一个月的基础版试用 LICENSE,该 LICENSE 可以在精简版和基础版 SDK 上使用。
    购买云点播流量资源包精简版,可以获取短视频精简版 SDK 为期一年的 LICENSE 使用权限。云点播资源包请参见 资源包(预付费),购买成功后,登录 云点播控制台 获取精简版 LICENSE。

  • 基础版 LICENSE
    购买云点播流量资源包旗舰版2、旗舰版3,可以获取短视频基础版 SDK 为期一年的 LICENSE 使用权限。云点播资源包请参见 资源包(预付费),购买成功后,登录 云点播控制台 获取基础版 LICENSE。

  • 商业版和商业版 Pro LICENSE
    如果您已经在使用云点播服务,可以拨打腾讯云95716服务热线,联系我们的商务团队,以云点播资源带宽或流量置换的方式,获得短视频商业版 SDK 或者商业版 Pro SDK 的折扣价格。仅使用短视频商业版 SDK,LICENSE 授权费用为350000元/年,商业版 Pro SDK,LICENSE 授权费用为500000元/年。

什么是客户端视频上传?

客户端视频上传,是指 App 用户将本地视频直接上传到云点播。

视频上传功能 TXUGCPublish 找不到?

视频上传模块已经从 SDK 中独立出来,并开源到 Demo 中,需要用户自己集成短视频上传,步骤如下:

  1. 下载 Demo

  2. app\libs\upload目录下上传的 jar 包拷贝到您的项目..\app\libs\upload目录下。

  3. 将短视频上传源码目录Demo\app\src\main\java\com\tencent\liteav\demo\videoupload拷贝到您自己的工程目录下,并修改源码里的 package 名称。

  4. 在工程 App 目录下的 build.gradle 中,添加引用 jar 包的代码。

    dependencies {compile fileTree(include: ['*.jar'], dir: 'libs/upload')}


  5. AndroidManifest.xml中配置 App 的权限。

    <uses-permissionandroid:name="android.permission.INTERNET"/><uses-permissionandroid:name="android.permission.ACCESS_WIFI_STATE"/><uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE"/><uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE" /><uses-permissionandroid:name="android.permission.READ_EXTERNAL_STORAGE"/>


上传失败,报1000的内部错误?

请检查是否开启云点播服务。

短视频上传参数类错误?

请检查视频文件地址和图片地址是否正确,该路径下是否能找到相应文件。

短视频上传签名错误?

客户端在发起上传前,需要向 App 服务器请求上传签名,如果 App 服务器允许客户端上传,则会按照 签名规则 为客户端生成一个上传签名,客户端必须携带该签名,让云点播验证客户端上传是否被授权。

客户端上传签名的步骤如下:

  1. 获取 API 密钥。

  2. 拼接明文串。

  3. 将明文串转为最终签名。

  4. 服务搭建完毕之后,开发者可以通过云点播提供的工具来校验签名的正确性:


更多请参见 客户端上传签名

集成遇到异常怎么办?


如果您使用的是 商用企业版,那么您只能使用 armeabi 架构,关闭其他架构,例如 armeabi-v7a。如果您使用的是其他版本,那么您可以使用 armeabi 和 armeabi-v7a 架构。

如上图所示,请在app的 build.gradle 中指定 abiFilters 为“armeabi”。

同时集成两款以上 LiteAV 体系的 SDK 出现冲突怎么办?

如果您的项目中同时集成了两款以上的 LiteAV 体系的 SDK,就会出现符号冲突(symbol duplicate)的问题,这是由于 LiteAV 体系的 SDK 都使用了相同的基础模块。

要避免符号冲突问题,正确的做法是不要同时集成两个 SDK,而是集成一个具备完整功能的专业版 SDK:

所属平台ZIP 包Github64位支持安装包增量安装包瘦身
iOSDOWNLOADGithub支持4.08M(arm64)DOC
AndroidDOWNLOADGithub支持jar:1.5M
so(armeabi):6.5M
so(armv7):6.1M
so(arm64):7.3M
DOC

SDK 升级后,短视频的功能不能使用?

  1. 如果使用的是 androidstudio,在替换新的 aar 后,请修改app的 build.gradle 中的 aar 引用,是否与您放入工程下 /libs 目录下的 aar 文件名称是否一致。然后重新 clean 并且 build 一下您的工程。

  2. 确认 SDK 版本,短视频 SDK 4.5 版本之后需要 License 支持。

请先申请 License,SDK 有两种版本和两种授权 License。

  • SDK 版本分为基础版和商业版,区别在于 AI 特效的有无。

  • License 分为基础版和商用版,基础版需要申请基础功能的 License;商业版除了要申请基础功能的 License 外,还需要申请 AI 动效的 License;两种都可申请试用版的 License。

  • 详细价格请参考 价格文档

目前短视频录制生成的分辨率支持自定义吗?有哪些可定制化的输出?

短视频录制可定制参数包括 fps(每秒钟有多少帧画面),GOP(多少秒编出一个关键I帧)大小,视频码率(每秒钟编码器产生的音视频数据的多少),录制最大/最小时长,录制的分辨率以常量方式提供了三种分辨率供您选择:360 x 640、540 x 960、720 x 1280。

录制为什么以常量方式而不是用户自定义大小,原因如下:

  • 以上三种是主流的录制分辨率。

  • Android 手机兼容问题,不支持一些非主流的分辨率,会产生一些花屏、绿屏、马赛克。

通过调用 TXUGCRecord 类的 startCameraCustomPreview 接口,将自定义录制的参数传入,代码如下所示:

// 自定义配置TXRecordCommon.TXUGCCustomConfig customConfig = new TXRecordCommon.TXUGCCustomConfig();customConfig.videoResolution =   TXRecordCommon.VIDEO_RESOLUTION_540_960;customConfig.minDuration = mMinDuration;   // 最小时长customConfig.maxDuration = mMaxDuration;   // 最大时长customConfig.videoBitrate = mBiteRate;    // 视频码率customConfig.videoGop = mGop;             // GOP 大小customConfig.videoFps = mFps;             // FPScustomConfig.isFront = mFront;            // 是否前置摄像头mTXCameraRecord.startCameraCustomPreview(customConfig, mVideoView);

Android 短视频录制结束,为什么没有收到 onRecordComplete 回调?

开始录制短视频前,请先通过调用 TXUGCRecord 类的 setVideoRecordListener() 接口设置录制回调的监听器
结束时,需要调用 TXUGCRecord 类的 stopRecord() 接口结束录制。

// 录制前mTXCameraRecord = TXUGCRecord.getInstance(this.getApplicationContext());mTXCameraRecord.setVideoRecordListener(this);...// 结束录制mTXCameraRecord.stopRecord();

短视频退出录制,开启第二次录制,如何继续接着上一次内容录制?

Demo 在 onRecordComplete 回调之后,调用了 mTXCameraRecord.getPartsManager().deleteAllParts(),用于清除分片文件,因为 stopRecord 已经将分片文件合成完成。

如果录制退出,继续上次录制,不需要删除分片,不要调用 mTXCameraRecord.getPartsManager().deleteAllParts()。

@OverridepublicvoidonRecordComplete(TXRecordCommon.TXRecordResult result){    TXCLog.i(TAG, "onRecordComplete, result retCode = " + result.retCode + ", descMsg = " + result.descMsg + ", videoPath + " + result.videoPath + ", coverPath = " + result.coverPath);    if (mTXRecordResult.retCode < 0) {        Toast.makeText(TCVideoRecordActivity.this.getApplicationContext(), "录制失败,原因:" + mTXRecordResult.descMsg, Toast.LENGTH_SHORT).show();    } else {        mDuration = mTXCameraRecord.getPartsManager().getDuration(); //录制的总时长if (mTXCameraRecord != null) {            mTXCameraRecord.getPartsManager().deleteAllParts();   //删除多次录制的分片文件        }        startPreview(); //进去预览界面    }

为什么短视频录制设置背景音没有生效?

设置背景音乐一定要在启动录制(TXUGCRecord 的 startRecord)接口之前设置才能生效。代码调用顺序参照下面示例:

TXRecordCommon.TXUGCSimpleConfig simpleConfig = new TXRecordCommon.TXUGCSimpleConfig();simpleConfig.videoQuality = TXRecordCommon.VIDEO_QUALITY_MEDIUM;simpleConfig.minDuration = mMinDuration;simpleConfig.maxDuration = mMaxDuration;// 1、首先开启预览mTXCameraRecord.startCameraSimplePreview(simpleConfig, mVideoView);// 2、再设置背景音乐的路径并播放背景音乐mBGMDuration = mTXCameraRecord.setBGM(mBGMPath);mTXCameraRecord.playBGMFromTime(0, mBGMDuration);// 3、启动录制(customVideoPath:录制后视频路径,customPartFolder:录制视频的文件夹,customCoverPath:录制后视频的封面路径)int result = mTXCameraRecord.startRecord(customVideoPath, customPartFolder, customCoverPath);

录制是否有拍照功能?

短视频 SDK 有拍照功能,调用 TXUGCRecord 类的 snapshot 接口,以 TXRecordCommon.ITXSnapshotListener 回调异步返回拍照的图片,代码示例如下:

privatevoidsnapshot(){    if (mTXCameraRecord != null) {        mTXCameraRecord.snapshot(new TXRecordCommon.ITXSnapshotListener() {            @OverridepublicvoidonSnapshot(Bitmap bmp){                // 拍照的图片                saveBitmap(bmp);            }        });    }}

变速录制速度的倍数是多少?

变速录制不支持自定义速度

定义TXRecordCommon 中对应常量倍数
极慢速RECORD_SPEED_SLOWEST0.5倍
慢速RECORD_SPEED_SLOW0.8倍
标准RECORD_SPEED_NORMAL1倍
快速RECORD_SPEED_FAST1.25倍
极快速RECORD_SPEED_FASTEST1.5倍

变速录制通过调用 TXUGCRecord 的 setRecordSpeed(record),设置不同的录制速度

mTXCameraRecord.setRecordSpeed(TXRecordCommon.RECORD_SPEED_FAST);

导入视频的格式要求?是否支持导入分辨率大于720P(例如2K,4K)的视频?导入文件限制有具体大小吗?

导入视频目前 Android 端仅支持 MP4,分辨率没有做限制,导入文件不限制大小。

  • 导入视频的分辨率没有做限制,不管原视频多大,经过预处理后最大是720P。

  • 为了快速的导入视频,SDK4.7后可以不经过预处理(一些功能收到限制,倒放,单针预览等),对于分辨率大于720P的视频,建议需要加上预处理,因为预览是将每一帧解码,一些手机的性能不好,导致解码一帧并渲染到界面的时间过长,导致卡顿。

目前短视频编辑支持哪种格式的背景音乐?

目前仅支持 MP3 和 M4A 类型。

目前短视频编辑有哪些可定制化的输出?

短视频编辑可定制视频码率(SDK4.5及以上)、音频码率(SDK4.7及以上)、分辨率以常量方式提供了四种分辨率供您选择:360 x 640、480 x 640、540 x 960、720 x 1280。

分辨率TXVideoEditConstants 中对应常量
360x640VIDEO_COMPRESSED_360P
480x640VIDEO_COMPRESSED_480P
540x960VIDEO_COMPRESSED_540P
720x1280VIDEO_COMPRESSED_720P
//设置输出视频码率mTXVideoEditer.setVideoBitrate(3600);   //设置输出分辨率mTXVideoEditer.generateVideo(TXVideoEditConstants.VIDEO_COMPRESSED_720P, mVideoOutputPath);

通过短视频录制功能录制的视频,其中的音频是可以剥离出来的吗?

目前短视频录制不支持同时录制 BGM 和人声,所以进入编辑后,重新设置 BGM,可以将原声音量设为0,达到替换 BGM 的目的,代码如下所示:

// 设置视频原声音量大小(设为0,去掉录制的 BGM)mTXVideoEditer.setVideoVolume(0.0f); // 设置本地的背景音乐路径String bgmPath = getBGMPath();mTXVideoEditer.setBGM(bgmPath);// 设置背景音乐音量大小,范围0.0f-1.0fmTXVideoEditer.setBGMVolume(1.0f);

预览画面在同一个 Activity 窗口和全屏模式如何切换?

动态修改传入 SDK 视频预览 View 父布局的大小,SDK 内部会根据父布局的大小,根据视频宽高动态调整视频的大小。
SDK 接口的调用顺序:
先进行 stopPlay,在修改传入 SDK 的 FrameLayout 的宽高,调用 initWithPreview(parm),将新的 FrameLayout 承载播放组建的 layout 传入,再次 startPlay。

// 停止播放mTXVideoEditer.stopPlay();if (isFullScreen) {    // 如果是全屏模式,则下面切换成窗口模式    FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, 1500);    mVideoPlayerLayout.setLayoutParams(params);    initPlayerLayout(false);    isFullScreen = false;} else {    // 如果是窗口模式,则下面切换成全屏模式    FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);    mVideoPlayerLayout.setLayoutParams(params);    initPlayerLayout(false);    isFullScreen = true;}// 开始播放mTXVideoEditer.startPlayFromTime(startTime, endTime);// 重新设置预览ViewprivatevoidinitPlayerLayout(boolean isFullScreen) {    TXVideoEditConstants.TXPreviewParam param = new TXVideoEditConstants.TXPreviewParam();    param.videoView = mVideoPlayerLayout;    if (isFullScreen) {        param.renderMode = TXVideoEditConstants.PREVIEW_RENDER_MODE_FILL_SCREEN;    } else {        param.renderMode = TXVideoEditConstants.PREVIEW_RENDER_MODE_FILL_EDGE;    }    mTXVideoEditer.initWithPreview(param);}

短视频编辑时,腾讯云短视频 Demo 是把“剪辑”和“滤镜”等功能放在一个页面处理。不过,我们公司产品是把“剪辑”功能和“滤镜”分成两个页面?

可以先进行裁剪(setCutTimeFrom)+ 预处理(processVideo)同时执行,结果生成一个裁剪后的视频预处理完的视频,再进行各种编辑的操作,将裁剪设置成整个时长(setCutTimeFrom),最后调用 generateVideo 生成视频,防止压缩两次导致画质降低。

注意:

在预处理进行裁剪了,生成完的预处理视频,在最后生成前,一定要将裁剪时长设置为整个视频时长,不然还会再次进行裁剪。

//裁剪页面mTXVideoEditer = new TXVideoEditer(mContext);mTXVideoEditer.setCutFromTime(mTCVideoEditView.getSegmentFrom(), mTCVideoEditView.getSegmentTo());mTXVideoEditer.processVideo();// 将裁剪设置成整个时长 (setCutTimeFrom)mTXVideoEditer.setCutFromTime(0, mVideoDuration);//跳转到特效页面,进行生成mTXVideoEditer.generateVideo(TXVideoEditConstants.VIDEO_COMPRESSED_720P, mVideoOutputPath);

关于 License 的问题?

短视频 SDK 分基础版和商业版,从4.5版本开始需要 License,基础版只需要短视频的 License(TXUgcSDK.licence),商业版还同时需要 Pitu 的 License(YTFaceSDK.licence),把 License 放到工程目录,并修改为对应的名字即可。

4.9版本开始 License 使用方式有改变,可以选择是否把 License 打包到项目中。使用时需要调用 setLicenceURL:key:接口设置 License 的 url 和 key。

注意:

4.5 - 4.7版本的 SDK 不支持 License 自动续期,4.9版本开始才支持自动续期。4.9的 SDK 可以兼容之前的 Licence(url 和 key 不能传 null,可以随便传个字符串),但是新的 License 无法在4.9之前的 SDK 上使用。

关于 TXUGCPublish.h 的问题?

从4.5版本开始,TXUGCPublish相关的类从 SDK 上移到了 Demo 层,开发者如果需要使用,使用时直接把VideoUpload目录整个拖入自己的工程即可。

Xcode 中直接运行 Demo 报错?

需要选择对应的 Target,如下图:

连接 Xcode 调试,短视频录制报错?

连接 Xcode 调试,短视频录制报错,报错信息:Main Thread Checker: UI API called on a background thread

原因是某些 API(一般是 UI 相关的)需要在主线程调用,如果在非主线程调用,同时有勾选Main Thread Checker的话,就会报错。

解决办法:Product>Scheme>Edit Scheme>Run>Diagnostics,取消勾选Main Thread Checker

说明:

该问题在4.9版本已经修复。

使用 SDK 时报找不到头文件?

  • Build Settings>Search Paths>Header Search Paths中添加头文件搜索路径。

  • 使用"TXLiteAVSDK_UGC/XXX.h"方式引用 SDK 的头文件。

  • 使用@import TXLiteAVSDK_UGC;方式引用 SDK (5.0及之后的版本)。

以上几种方法选其一。

运行工程时报找不到类别方法或者 crash?

SDK 用到了一些类别的方法,加载类别方法需要在工程配置:Build Settings>Linking>Other Linker Flags添加-ObjC

录制短视频时设置背景音乐无效?

  1. 确定传的 BGM path 下有没有文件,以及是否可以正常播放。

  2. 确定接口的调用顺序:startCameraSimple:preview:>setBGM:>startRecord

注意:

很多接口调用有时序要求,不然会无效。一般在注释上会有说明。
例如短视频录制的
setVideoResolution:setVideoBitrate:setAspectRatio:等接口都需要在 startRecord 之前设置才有效。

录制设置 BGM 不能循环播放?

目前逻辑暂未支持循环播放。

录制设置 BGM,endTime时没有完成回调?

如果设置的endTime小于音乐文件总时长,4.6及之前的版本是在 BGM 播放完后才会触发完成回调,从4.7版本开始在endTime时触发完成回调。

为什么录制时第一次打开摄像头比较慢?

苹果手机摄像头第一次打开时(冷启动)耗时相对较长,通过系统接口打开摄像头也是如此。

因为摄像头打开的操作不适合放在子线程去做,经过测试在子线程中进行打开摄像头操作耗时会更大,并且在主线程连续打开/关闭摄像头的时候,子线程的响应延迟会更高,体验不好。

返回继续录制怎么实现?

在第一次录制完成的时候,不要调用stopRecordstopCameraPreview(调用之后不能再继续录制,只能重新录制),可以调用pauseRecord,然后通过TXUGCPartsManager.getVideoPathList获取已经录取的视频片段,通过TXVideoJoiner.joinVideo合成最终视频(4.5之前版本),还可以直接调用TXUGCPartsManager.joinAllParts合成最终视频,这个方法合成速度更快(4.5以后版本支持),这样当返回继续录制的时候,所有的录制状态都在,可以继续录制。

短视频录制完成时收不到完成回调?

  • 确定有没有调用 stopRecord,只有调用 stopRecord 后才会有完成回调。

  • 确定函数的调用是否都在主线程。

录制过程中用其他播放器播放视频,返回继续录制,声音录制不了?

iOS 中的 AudioSession 是所有音视频应用共用的,使用其他播放器播放的时候,AudioSession 会被占用,播放结束时如果 AudioSession 没有让出或者让出不及时,会导致录制模块的 AudioSession 失效,SDK 提供了-(void) pauseAudioSession-(void) resumeAudioSession两个接口,在去其他播放器预览的时候先调用pauseAudioSession,返回继续录制前调用resumeAudioSession

为什么录制出来的视频不清晰?

码率和分辨率不匹配,录制出来的视频就会不清晰。可以通过适当增大码率、开启B帧来提升画质。

视频编辑时退后台再回到前台,视频生成失败?

生成视频默认采用的是硬编码(编码效率高,编码出来的图像效果好),硬编码器在程序进后台后会停止工作,从而导致视频生成失败。SDK 提供了两个接口pauseGenerateresumeGenerate,App 进后台时可以调用pauseGenerate暂停视频生成,App 回到前台后再调用resumeGenerate继续视频生成。

注意:

调用resumeGenerate,SDK 将重启硬编码器,有一定的概率重启失败,或重启后前几帧数据编码失败。此时,SDK 内部会在TXVideoGenerateListener抛出错误事件,收到错误事件后需要重新生成视频。

文件上传失败?

文件上传状态码:

  1. 确定上传的文件是否在本地沙盒,如果上传媒体库的文件,需要先 copy 到本地沙盒。

  2. 返回错误码1002:签名有问题、时间戳过期、点播服务问题(未开通或停服)。

  3. 返回错误码1003:请求参数问题、上传文件格式不支持。

短视频录制是否有拍照功能?

短视频 SDK 可以实现拍照功能,开始预览后调用TXUGCRecord类的snapshot接口获取图片即可。


品质认证
全国包邮
官方授权代理商
24小时售后服务
企业专属特权
服务保障
正品保证
官方授权代理商
24小时售后
关于我们
支付方式
公司转账
对私付款
支付宝付款
微信支付
商家服务
商家服务
培训中心
广告服务
服务市场
物流配送
免运费
海外配送
京东快递
211限时达
website qrcode

扫描查看手机版网站

会员登录
登录
其他帐号登录:
我的资料
购物车
0
留言
回到顶部