Wasm初上手

总之也是为了扩宽技术面吧。。。我也不知道为什么就想试试了,就酱。
参考阅读:极客时间《WebAssembly入门课》
安装wasm的编译器Emscripten。Emscripten 是一个“源到源”语言编译器工具集,这个工具集可以将 C/C++ 代码编译成对应 JavaScript 代码。
参考:Emscripten在Windows上安装
https://www.cnblogs.com/8335IT/p/17693076.html

按照网上的教程git下载完后,执行emsdk.bat update 这些命令,只返回一个空行,没有任何反馈的,或者报错:emsdk.bat : 无法将“emsdk.bat”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。
看下有木有安装python,以及环境变量里有木有Python
python安装:https://zhuanlan.zhihu.com/p/623374236?utm_id=0
然后重新开一个命令窗口,如果执行不了就使用管理员权限开。
执行: emsdk install --global latest
emsdk activate latest
设置环境变量 emsdk_env.bat
emcc -v 可以看到版本号了
在这里插入图片描述

在这里插入图片描述

实践一个视频滤镜处理

嗯。。是的,就直接开始实践了。
先简单地复习一下线性代数,然后了解几个基本概念

当我们说到“为视频添加滤镜”时,这一操作里的“滤镜”,主要是指什么?这是 DIP(Digital Image Processing数字图像处理)领域中的一个基本概念 —— “卷积”。
从一个直观的角度来看,对图像进行卷积的过程,其实就是通过一个具有固定尺寸的矩阵(也可以理解为二维数组),来对该图像中的每一个像素点的值进行重新计算的过程。这个过程通常也被称为“滤波”。
而我们现在需要使用一个固定尺寸的矩阵去处理像素点,这个矩阵一般被称为“卷积核”。每一种类型的卷积核都会对图像产生不同的滤镜效果。
卷积的计算过程也十分简单,主要分为以下几个步骤。

  1. 首先将卷积核矩阵翻转 180 度。然后将图像上除最外一圈(考虑到“边缘效应”,我们选择直接忽略边缘像素)的其他各像素点的灰度值,与对应的卷积核矩阵上的数值相乘。
  2. 然后对所有相乘后得到的值求和,并将结果作为卷积核中间像素点对应图像上像素的灰度值。(这里提到的“灰度值”也可以由每个像素点的各 RGB 分量值来进行代替)。
  3. 重复上述步骤,直至图像中所有其他像素点均完成此计算过程。
    RGB分量的最低为0,最高为255,如低于0则相当于=0,255同理。

上手。。上不了一点,线代什么的头大,当年只考了64分的我竟然在这里看线代(挠头),c++更是已经还给老师了,啊。。。
好吧这个初上手就到这里。

  • 17
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
WebAssembly(Wasm)可以与FFmpeg集成,以在网页中进行视频处理和编解码操作。通过结合Wasm和FFmpeg,您可以在浏览器中实现强大的视频处理功能,如转码、剪辑、水印添加等。 以下是使用Wasm和FFmpeg进行视频处理的一般步骤: 1. 获取FFmpeg的Wasm版本:首先,您需要获取FFmpeg的Wasm版本。有一些目在GitHub上提供了编译好的Wasm版本,您可以从这些目中获取FFmpeg的Wasm文件。 2. 加载Wasm模块:将FFmpeg的Wasm文件加载到您的网页中。您可以使用JavaScript的WebAssembly API来加载和实例化Wasm模块。 3. 初始化FFmpeg:在Wasm模块加载完成后,您需要通过调用FFmpeg的初始化函数来初始化FFmpeg环境。这通常涉及到设置输入输出流、注册解码器和编码器等操作。 4. 执行视频处理操作:一旦FFmpeg成功初始化,您可以使用FFmpeg提供的各种函数执行视频处理操作。例如,您可以调用解码函数将视频解码为原始帧数据,然后对帧数据进行处理,最后调用编码函数将处理后的帧数据编码为目标视频格式。 5. 输出处理结果:根据您的需求,您可以将处理后的视频保存到本地文件或直接在网页上播放。 注意,在使用Wasm和FFmpeg进行视频处理时,考虑到性能和资源的限制是非常重要的。视频处理通常是一计算密集型任务,可能会对浏览器的性能产生一定的影响。因此,您应该仔细考虑处理的复杂性,并评估在特定设备和浏览器上的性能表现。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值