当前位置: 首页 > news >正文

python --阿里云(智能媒体管理/视频点播)

智能媒体服务获取token

# alibabacloud_imm20200930==4.1.0
class Sample(object):'''智能媒体服务'''def __init__(self):self.access_key = '111'self.key_secret = '222'def weboffice_permission(self):return imm_20200930_models.WebofficePermission(rename=False,readonly=True,history=False,print=False,export=False,copy=False)def create_client(self) -> imm20200930Client:"""使用AK&SK初始化账号Client"""config = open_api_models.Config(access_key_id=self.access_key, access_key_secret=self.key_secret)config.endpoint = f'imm.cn-beijing.aliyuncs.com'return imm20200930Client(config)def get_token(self, filename):'''获取凭证'''client = self.create_client()generate_weboffice_token_request = imm_20200930_models.GenerateWebofficeTokenRequest(project_name='edg',source_uri=f'oss://fileedg/{filename}',permission=self.weboffice_permission())runtime = util_models.RuntimeOptions()try:response = client.generate_weboffice_token_with_options(generate_weboffice_token_request, runtime).bodylogger.debug(f'获取凭证:【{response}】')response = dict({'code': 0, 'msg': 'success'}, **eval(str(response)))except Exception as error:logger.error(f'{error}')response = {'code': 500, 'msg': f'{error}'}return responsedef refresh_token(self, access_token, refresh_token):'''刷新token'''client = self.create_client()refresh_weboffice_token_request = imm_20200930_models.RefreshWebofficeTokenRequest(project_name='edg',access_token=access_token,refresh_token=refresh_token)runtime = util_models.RuntimeOptions()try:response = not client.refresh_weboffice_token_with_options(refresh_weboffice_token_request, runtime).bodylogger.debug(f'刷新凭证:【{response}】')response = dict({'code': 0, 'msg': 'success'}, **eval(str(response)))except Exception as error:logger.error(f'{error}')response = {'code': 500, 'msg': f'{error}'}return response

视频点播

获取凭证

# https://help.aliyun.com/zh/vod/developer-reference/api-vod-2017-03-21-refreshuploadvideo?spm=a2c4g.11186623.0.0.5b4e3c94BxaDxH
class VideoDianBo(object):'''视频点播'''def __init__(self):self.access_key = '111'self.key_secret = '222'def create_client(self) -> vod20170321Client:'''初始化对象'''config = open_api_models.Config(access_key_id=self.access_key, access_key_secret=self.key_secret)config.endpoint = f'vod.cn-shanghai.aliyuncs.com'return vod20170321Client(config)def createuploadvideo(self, filename: str, title: str):'''获取音视频上传地址和凭证@params  filename --> 文件名;@params  title    --> 标题;'''client = self.create_client()create_upload_video_request = vod_20170321_models.CreateUploadVideoRequest(file_name=filename, title=title)runtime = util_models.RuntimeOptions()try:result = client.create_upload_video_with_options(create_upload_video_request, runtime).body.to_map()logger.debug(f'视频点播获取上传凭证:【{result}】')return resultexcept Exception as error:return {'error': error}def refreshuploadvideo(self, video_id):'''刷新音视频上传地址和凭证@params  video_id  --> 视频id;'''client = self.create_client()refresh_upload_video_request = vod_20170321_models.RefreshUploadVideoRequest(video_id=video_id)runtime = util_models.RuntimeOptions()try:result = client.refresh_upload_video_with_options(refresh_upload_video_request, runtime).body.to_map()logger.debug(f'视频点播刷新上传凭证:【{result}】')return resultexcept Exception as error:return {'error': error}def play_info(self, video_id):'''根据视频id获取播放链接'''client = self.create_client()get_play_info_request = vod_20170321_models.GetPlayInfoRequest(video_id=video_id)runtime = util_models.RuntimeOptions()try:result = client.get_play_info_with_options(get_play_info_request, runtime).body.to_map()logger.debug(f'视频点播获取播放链接:【{result}】')return resultexcept Exception as error:return {'error': error}

服务端分片上传

# 测试上传本地音视频
def testUploadLocalVideo(accessKeyId, accessKeySecret, filePath, storageLocation=None):try:# 可以指定上传脚本部署的ECS区域。如果ECS区域和视频点播存储区域相同,则自动使用内网上传,上传更快且更省公网流量。ecsRegionId ="cn-beijing"uploader = AliyunVodUploader(accessKeyId, accessKeySecret, ecsRegionId)uploadVideoRequest = UploadVideoRequest(filePath, 'exampleTitle')if storageLocation:uploadVideoRequest.setStorageLocation(storageLocation)videoId = uploader.uploadLocalVideo(uploadVideoRequest)print("file: %s, videoId: %s" % (uploadVideoRequest.filePath, videoId))except AliyunVodException as e:print(e)
accessKeyId = '111'
accessKeySecret = '22'localFilePath = r'D:\Users\11.MP4'
testUploadLocalVideo(accessKeyId, accessKeySecret, localFilePath)

相关文章:

python --阿里云(智能媒体管理/视频点播)

智能媒体服务获取token # alibabacloud_imm202009304.1.0 class Sample(object):智能媒体服务def __init__(self):self.access_key 111self.key_secret 222def weboffice_permission(self):return imm_20200930_models.WebofficePermission(renameFalse,readonlyTrue,histor…...

湖南麒麟SSH服务漏洞

针对湖南麒麟操作系统进行漏洞检测时,会报SSH漏洞风险提醒,具体如下: 针对这些漏洞,可以关闭SSH服务(前提是应用已经部署完毕不再需要通过SSH远程访问传输文件的情况下,此时可以通过VNC远程登录方法&#x…...

升级ChatGPT4.0失败的解决方案

ChatGPT 4.0科普 ChatGPT 4.0是一款具有多项出众功能的新一代AI语言模型。以下是关于ChatGPT 4.0的一些关键特点和科普内容: 多模态:ChatGPT 4.0具备处理不同类型输入和输出的能力。这意味着它不仅可以接收文字信息,还能处理图片、视频等多媒…...

常用图像滤波器,图像增强

滤波器 滤波器在图像处理中有各种各样的应用,它们可以用于去除噪声、平滑图像、增强图像特征等。以下是一些常见的滤波器及其主要应用: 均值滤波器(Mean Filter): 用于去除高斯噪声或均匀噪声。 平滑图像&#xff0…...

【PyTorch】成功解决ModuleNotFoundError: No module named ‘torch’

【PyTorch】成功解决ModuleNotFoundError: No module named ‘torch’ 🌈 个人主页:高斯小哥 🔥 高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程👈 希…...

CommandInvokationFailure: Failed to update Android SDK package list. 报错的解决方法

将Unity升级到2021.3.36f1, 再次打开项目,结果出现“CommandInvokationFailure: Failed to update Android SDK package list. ”这样的警告,查看SDK版本最高只有到30,这应该就是Unity自动升级SDK的时候出现了错误,导致…...

9.用FFmpeg测试H.264文件的解码时间

1. Essence of Method 要测试对H.264文件的解码时间,可以使用FFmpeg进行操作。FFmpeg是一个开源的多媒体处理工具,可以用来处理视频和音频文件,包括解码H.264文件。以下是使用FFmpeg的命令行来测试解码时间的方法: ffmpeg -i in…...

重建3D结构方式 | 显式重建与隐式重建(Implicit Reconstruction)

在3D感知领域,包括3D目标检测在内,显式重建和隐式重建是两种不同的方法来表示和处理三维数据。它们各自有优势和局限,适用于不同的场景和需求。 显式重建(Explicit Reconstruction) 显式重建是指直接构建场景或物体的三…...

模型的参数量、计算量、延时等的关系

模型的参数量、计算量、延时等的关系 基本概念相互关系代码计算 基本概念 1.参数量:Params 2.计算量:FLOPs,Floating Point Operations,浮点运算次数,用来衡量模型计算复杂度。 3.延时:Latency 4.内存访问…...

Java映射(含源码)

在Java中,“映射”(Map)是一个存储键值对的数据结构,允许你通过键(Key)快速访问值(Value)。映射中的每个键都是唯一的,这意味着每个键都对应一个特定的值。Java提供了几种…...

JMeter 面试题及答案整理,最新面试题

JMeter中如何进行性能测试的规划和设计? 进行JMeter性能测试的规划和设计主要遵循以下几个步骤: 1、确定测试目标: 明确性能测试的目的和目标,比如确定要测试的系统性能指标(如响应时间、吞吐量、并发用户数等&#…...

lua脚本的基础内容

官方地址:http://luajit.org/ 官方wiki地址:http://wiki.luajit.org/Home 推荐书籍: OpenResty 最佳实践:https://moonbingbing.gitbooks.io/openresty-best-practices/content/ lua基础文档:https://www.runoob.com/l…...

MySQL语法分类 DDL(1)

DDL(1)(操作数据库、表) 数据库操作(CRUD) C(Create):创建 //指定字符集创建 create database db_1 character set utf8;//避免重复创建数据库报错可以用一下命令 create database if not exists db_1 character set utf8;R(Retrieve):查询 //查询所…...

苹果Find My App用处多多,产品认准伦茨科技ST17H6x芯片

苹果发布AirTag发布以来,大家都更加注重物品的防丢,苹果的 Find My 就可以查找 iPhone、Mac、AirPods、Apple Watch,如今的Find My已经不单单可以查找苹果的设备,随着第三方设备的加入,将丰富Find My Network的版图。产…...

Lua中文语言编程源码-第三节,更改lualib.h Lua标准库, 使Lua支持中文关键词(与所有的基础库相关)

源码已经更新在CSDN的码库里: git clone https://gitcode.com/funsion/CLua.git 在src文件夹下的lualib.h,是Lua的标准库模块。 Lua标准库一共有有个10个库,base, 基本用不着改,所以没加中文名称。 函数声明宏名英文库名中文库…...

Vue | 使用 ECharts 绘制折线图

目录 一、安装和引入 ECharts 二、使用 ECharts 2.1 新增 div 盒子 2.2 编写画图函数 2.3 完整代码结构 三、各种小问题 3.1 函数调用问题 3.2 数据格式问题 3.3 坐标轴标签问题 3.4 间隔显示标签 参考博客:Vue —— ECharts实现折线图 本文是在上…...

NVENC 视频编码器 API 编程指南 ( 中文转译 )

基于 NVIDIA Kepler™ 和更高版本 GPU 架构的 NVIDIA GPU 包含基于硬件的 H.264/HEVC/AV1 视频编码器(以下简称 NVENC)。NVENC 硬件采用 YUV/RGB 作为输入,并生成符合H.264/HEVC/AV1 标准的视频比特流。可以使用 NVIDIA 视频编解码器 SDK 中提…...

媒体发稿:澳门媒体发稿7个流程

推广平台澳门是一个重要的度假旅游娱乐终点,都是媒体领域热议的话题。对于澳门的媒体发稿营销推广要求,大家提供了一个简单易用的套餐系统软件,帮助大家在澳门媒体上发表推广文章。下面我们就根据7个阶段,详解构建这一套餐推广平台…...

Spring Web MVC入门(2)

学习Spring MVC Postman介绍 在软件工程中, 我们需要具有前后端分离的思想, 以降低耦合性. 但是在测试后端代码时,我们还得写前端代码测试,这是个令人头疼的问题. 那么我们如何测试自己的后端程序呢, 这就用到了一个工具: Postman. 界面介绍: 传参的介绍 1.普通传参, 也就…...

tomcat 实现会话绑定

Tomcat 后端服务器实现 Session ID会话保持 基础架构: 7-6 代理服务器nginx配置 7-3 tomcat 服务器 7-5 同理 测试: 此时刷新,会话ID一直在变,这样不好 如何解决呢? 不好的是确定ip之后,会一直在一台机上…...

隧道裂缝剥落病害AI识别系统

我国现有公路隧道超2.5万座,总里程超2.8万公里,其中运营超过15年的老旧隧道占比达35%。据交通运输部2025年统计,年均因隧道结构病害导致的交通中断超1200次,直接经济损失超45亿元。传统检测模式暴露四大核心痛点:检测周…...

新手村任务:成为一个架构师需要哪些装备?

新手村任务:成为一个架构师需要哪些装备? 一、前言 如果你刚入行不久,想成为一名架构师,那这篇文章就是为你写的。 我们把成为架构师比作一个RPG游戏,你是主角,需要收集各种装备、刷经验、升级技能。 新手村的第一个任务就是:了解你需要哪些装备。 二、架构师技能树…...

微信小程序3D开发框架技术对比:XR-Frame与threejs-miniprogram

随着微信小程序逐步支持3D渲染与AR能力,开发者面临两个主要官方方案:自研的XR-Frame和适配Three.js的threejs-miniprogram。本文将从架构设计、渲染机制、功能集成、开发模式及适用场景等维度进行技术分析,为技术选型提供参考。一、XR-Frame&…...

ARMv8 HFGITR_EL2寄存器解析与虚拟化指令陷阱控制

1. AArch64 HFGITR_EL2寄存器架构解析HFGITR_EL2(Hypervisor Fine-Grained Instruction Trap Register)是ARMv8架构中专门用于指令级陷阱控制的系统寄存器,属于虚拟化扩展的重要组成部分。这个64位寄存器通过位映射机制实现对特定AArch64指令…...

AI圈神秘领袖Ilya一幅画引爆全网,OpenAI三件大事暗示AGI时代将至?

AI圈神秘精神领袖Ilya在Instagram上传一幅画引发疯狂解读,与此同时,OpenAI连续公布数学成果、升级Codex、筹备IPO,释放AGI到来的强烈信号。Ilya画作引猜测Ilya上传的画中,罗丹的「思考者」踩在芯片Die Shot上,右下角签…...

用Azure Kinect DK和Body Tracking SDK,5分钟实现一个实时人体骨骼点检测Demo(C++版)

5分钟实战:用Azure Kinect DK实现实时人体骨骼点追踪(C版) 当你第一次拿到Azure Kinect DK时,最令人兴奋的莫过于它强大的人体追踪能力。这款深度相机不仅能捕捉高清彩色图像,更能通过AI算法实时重建人体骨骼关节点。本…...

【C语言】C 语言为什么叫 C 语言呢?

【C语言】C 语言为什么叫 C 语言呢?笔记改自于王道训练营资料 其实是因为先有高级语言ALGOL 60,简称 A 语言,后来经过简化,变为 BCPL 语言,简称 B 语言,而 C 语言是在 B 语言的基础之上发展而来的&#xff…...

避坑指南:Unity动态加载模型时,TriLib插件材质丢失、缩放异常的5个常见问题解决

Unity动态加载模型避坑指南:TriLib插件材质丢失与缩放异常的深度解决方案当你在Unity项目中尝试使用TriLib插件动态加载外部模型时,是否遇到过这些令人抓狂的情况:模型加载后材质全部变成刺眼的粉红色,贴图神秘消失,或…...

从XAI到HXAI:构建以人为中心的可解释AI框架与实践

1. 项目概述:从“黑箱”到“白盒”,构建可信AI的演进之路在机器学习项目里摸爬滚打了十几年,我见过太多因为模型“说不清道不明”而引发的信任危机。一个在测试集上表现完美的信用评分模型,可能因为无法向风控专家解释“为什么拒绝…...

内存申请和使用的场景分析(以AP->kernal->ISP为例)

在 ISP(Image Signal Processor)系统中,AP 与 ISP 之间的内存交互本质上是一个**“AP 申请可 DMA 访问的共享内存 → 内核建立映射 → 硬件寻址读写 → 同步与回收”**的过程。下面按数据流分层详细拆解。一、ISP 内存需求的特殊性 与普通应用…...