我目前有一个HLS视频流,我正在使用AVPlayer我的iPad播放流媒体内容.
我想要完成的是能够跳回到流的开头,暂停流,然后跳回到流的当前实时位置.有点像暂停电视与DVR电视直播电视.
我有几个问题:
1)这可能AVPlayer吗?我一直在玩seekTo和观察loadedTimeRanges,看起来这个seekTo方法在流上跳回30秒时并没有真正准确.
2)如何增加AVPlayer缓冲区大小以支持,比如说一个5分钟的滚动窗口,你可以将流回放到5分钟,或暂停流并让它在5分钟滚动窗口赶上暂停位置时播放.
任何解决这个问题的方向/指导都将受到赞赏.
谢谢!
我目前有一个带有重载函数的接口,如下所示:
export interface IEvents {
method(): boolean;
on(name: 'eventName1', listener: (obj: SomeType) => void): void;
on(name: 'eventName2', listener: (obj: SomeType) => void): void;
on(name: 'eventName3', listener: (obj: SomeType) => void): void;
on(name: 'eventName4', listener: (obj: SomeType) => void): void;
on(name: 'eventName5', listener: (obj: SomeType) => void): void;
on(name: 'eventName6', listener: () => void): void;
on(name: 'eventName7', listener: (obj: SomeType) => void): void;
on(name: 'eventName8', listener: (obj: SomeType) => void): void;
}
Run Code Online (Sandbox Code Playgroud)
我试图得到这样的联合类型的事件名称:
eventName1 | eventName2 | ...
我尝试过以下内容,但是当我推断出它的类型时,它似乎只选择了一个名称值,而不是所有这些名称的联合.
export type …Run Code Online (Sandbox Code Playgroud) 我正在尝试将库链接到我的c程序,以便我的主程序可以使用我正在创建的库中的函数,但是我收到错误.
这是我的一些库代码(请调用此文件lib.c):
#include <bfd.h>
#include <stdio.h>
static void doDump ( bfd *abfd )
{
printf (_("\n%s: file format %s\n"), bfd_get_filename (abfd), abfd->xvec->name);
doHeaders ( abfd );
}
Run Code Online (Sandbox Code Playgroud)
这是我的主程序(请将此文件称为main.c):
#include "bfd.h"
static void getFile ( char *filename, char *target )
{
bfd *file;
file = bfd_openr (filename, target);
doDump (file);
bfd_close (file);
}
int main (int argc, char **argv)
{
char *target = NULL;
bfd_init ();
getFile ("a.out", target);
}
Run Code Online (Sandbox Code Playgroud)
这些是我用来链接库的命令:
cc -Wall -c lib.c
ar -cvq libdata.a lib.o
cc -o …