我在一个非常简单的实现中将JW Player(7.9.3)嵌入到页面中:
int main(){
char *input = malloc(sizeof(char*) * BUFFERSIZE);
char *token;
char **token_array;
int i;
int return_status;
printf("%s", BOILERPLATE);
if (input == NULL){
printf("JASH: Buffer Allocation Failed");
return 1;
}
// Shell Loop
while(1){
i = 0;
printf("JASH:> ");
fgets(input, BUFFERSIZE, stdin);
token_array = malloc(sizeof(char)*strlen(input));
token = strtok(input, " \n()<>|&;");
while(token != NULL){
token_array[i] = token;
token = strtok(NULL, " \n()<>|&;");
i++;
}
// print tokens to confirm correct parsing of input
printf("%s : %s\n", token_array[0], token_array[1]);
//printf("%s\n", token_array[0]);
if(exec_args(token_array) == 0){
// programm exit successfully
free(token_array);
free(input);
return 0;;
}
} // Loop End
// free input buffer before exit
free(token_array);
free(input);
return 0;
}
int exec_args(char ** t){
int i;
if(strcmp(t[0], "exit") == 0
|| strcmp(t[0], "quit") == 0
|| strcmp(t[0], "logout") == 0){
// call built in function for exit
exit(0);
}
if (strcmp(t[0], "cd") == 0){
// call built in function for chdir
if(chdir(t[1]) == 0){
printf("Successfully changed directories to %s\n", t[1]);
return 1;
} else {
printf("-JASH: cd: %s: No such file or directory\n", t[1]);
return 1;
}
}
if (strcmp(t[0], "pwd") == 0) {
char * p = malloc(sizeof(char*) * 100);
getcwd(p, 100);
printf("%s\n", p);
free(p);
return 1;
}
if(strcmp(t[0], "help") == 0){
printf("\n%s\n Help Documentation Coming soon!\n\n", BOILERPLATE);
return 1;
}
if(fork() == 0){
if(execvp(t[0], t)){
perror("JASH");
}
} else {
int status;
wait(&status);
printf("%d", status);
}
return 1;
}
在Chrome和Edge中,它按预期工作,但在Firefox(52.0.2,32位)中,视频为黑色,只播放声音。只有当我寻找视频开始显示的剪辑的不同部分时才会出现。
有人知道这个问题和潜在的解决方法吗?
答案 0 :(得分:0)
Firefox绝对受到支持。即使使用免费帐户,您也可以将视频上传到JW仪表板,并查看JW转码是否更有效。否则,你可能想通过Handbrake运行mp4,然后再试一次。