-
Notifications
You must be signed in to change notification settings - Fork 17
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
关于vite和avPlayer的一些讨论 #5
Comments
上面这个错应该是 vite 没有设置包的 alias 路径;但是即便设置了也是不能编译的。libmedia 只能使用 webpack 来编译,不仅仅是 cheap 的编译插件目前只有 webpack,还用到了一些 webpack 打包的特性。你这边我建议你通过本项目编译出 avplayer ,在拷贝到你的 vite 工程里面使用。 |
不能设置,chunk 需要和 avplayer 主文件打包之后的文件在同一个目录下;要么使用 script 标签引入,所有 avplayer 文件放同一个目录下;要么编译打包 avplayer 的时候去掉所有的动态 import 全打包成一个文件;我对 vite 不太熟悉,你可以看一下有没有可以处理这种依赖关系的配置。 |
我有个问题,这个库应该是跟随时代的潮流的,那为什么不使用ESModule的方式导入呢 |
1、webpack构建决定了最终的产物的格式(commonjs、amd),由于libmedia底层的插件目前仅支持了webpack,所以只能用webpack去构建产物 解决方案:fork此仓库的代码,将avplayer中动态导入的代码全替换为静态(import("xxx")这种代码),然后使用vite再做一层封装,将avplayer的产物构建为es |
你这个视频可以发上来看一下吗 |
你有IPV6吗,我可以给你临时链接 |
应该可以,给出来试一下 |
???????链接已失效???????? |
试了一下官网的示例也是这个问题,播放了一段时间后就停止了,但是只发生在GPU无法硬解的时候
3个BUG
|
这个修复了 |
解码失败的视频发一下吧,需要看看 seek 我知道什么问题了,已修复; 软解 av1 hevc 需要支持多线程才能提高体验 |
给一下你这个视频的链接 |
就是之前给的那个 [src/avplayer/AVPlayer.ts][line 714] [info] |
我觉得吧,要是libmedia可以修改活动音轨或者视频轨道、提取字幕轨道(不是解码渲染)会更好 |
解码是大头,渲染开销很少,解码要丢帧需要视频是时域分层的,一般的视频都不是 |
抱歉,我现在又去翻了一下定义,才发现 |
我看了很久,知道
请告诉我,codecpar该怎么解析呢,我想要知道 |
指针访问属性只能在 cheap 这个框架下使用,最终由 cheap 的编译插件将其编译成对应的 js 代码。想在外面访问要么外面的代码也在 cheap 框架下然后用 cheap 编译;要么抛给外层的数据把指针变成结构体实例,结构体实例是一个 Proxy 代理,就可以通过 js 访问里面的属性。 |
可不可以改进一下 |
你是想做什么功能呢,这个开发模式建议将有关的逻辑另起一个项目然后依赖 libmedia 来开发,使用 cheap 来编译,结构体里面的数据有很多枚举类型,直接拿出去也不太好用。 |
用来判断轨道类型,视频/音频/字幕,便于切换轨道 你说的很有道理,vite虽然可以正常导入libmedia的enum类型但是不能成功打包 |
这个现在还不支持呢,你现在判断了也还是不能切换,现在只能切 hls 和 dash 里面的 |
这样啊...可惜了还以为可以正常使用了,看起来还是该等等 public getStreams() {
return this.formatContext.streams.map(item => ({...item,
type: item.codecpar.codecType
}));
} |
今天又发现一个问题,随着播放音画不同步越来越大,反复暂停播放也不能解决
我觉得应该时间对齐一下,不然音视频错位听着很难受 |
和这里没关系,现在本身就有同步逻辑。出现这种情况是视频解码跟不上了,能支持多线程就支持多线程,优先使用 simd 的解码器。 |
这个avPlayer是不能复用吗,第二次 Error: [src\avplayer\AVPlayer.ts][line 605] [fatal]: register io task failed, ret: -5, taskId: 456770e6-8060-4089-9d28-6b003cf51c06 |
先调 stop 之后才能继续 load |
的确... |
请问能否添加这几个功能,真的很需要
|
这些后面有计划,这个 issues 先关了,太长了,有问题再新建一个吧。 |
我是忠实的vite用户,然后想要libmedia与vue+vite集成,于是在npm里写上了
然后在项目里引用
然后vite就报错了
但是VSCode没有报错。请问该怎么解决呢
The text was updated successfully, but these errors were encountered: