1

是)我有的

  • PHP 5.3
  • JW 播放器 6.4

这是给谁的

  • 我只是用它来验证视频,而不是为播放列表编写代码。我将所有视频放在一个文件夹中,它们会显示在播放列表中,非常简单。

问题

代码的第一部分:

 <?php
$path ="./webvideos/test/";
$path2="./webvideos/test/";
$folder = opendir($path);
$start="<asx version='3.0'>n<title>Example ASX playlist</title>";
$Fnm = "$path./playlist.xml";
$inF = fopen($Fnm,"w");
fwrite($inF,$start."n");
while( $file = readdir($folder) ) {
     if (($file != '.')&&($file != '..')&&($file != 'index.htm')){
     $result="<entry>n<title>$file</title>n<ref href='$path2$file'/>n<param name='image' value='preview.jpg'/>n</entry>n";
         fwrite($inF,$result);
     }
}
fwrite($inF,"</asx>");
closedir($folder);
fclose($inF);
?>

我已经在“test”文件夹中检查了 XML 文件,它就在那里,所以那里没有问题。

下面的这部分代码允许您下载视频,(右键单击并保存)。这也有效。

<?php
$dir = opendir("$path");
while($file = readdir($dir)) {
if(($file == "index.htm") || ($file == ".") || ($file == "..")){} else {
echo
"<a title='".$file."' href='".$path.$file."'>".$file."</a><br/>";
}
}
closedir($dir);
?>

下面的代码是针对自己的播放器的。

<div class="video" id="player"></div><!--/video-->
<script>
    jwplayer("player").setup({
    height: 550,
    listbar: {
    position: 'bottom',
    size: 200
    },
    width: 768,
    playlist:'playlistfile=playlist.xml&image=preview.jpg&playlist=bottom',             

});
</script>

在这里我不确定,我尝试了各种不同的可能性,但没有解决方案。即无法加载播放列表是我得到的常见错误,一旦我无法加载 RSS 提要。我不是 PHP 专家,但它似乎是播放器部分,因为我已经测试了 XML 读取并且我也能够下载视频。我已经发送了一封支持电子邮件,但仍在等待,无论哪种方式,我发现这对我来说是一个无价的工具,我相信它会帮助视频制作中的其他人。

4

2 回答 2

1

在我看来,正在生成的播放列表是一个 ASX 播放列表。JW6 仅支持 mRSS。

于 2013-04-21T20:34:30.973 回答
1

工作脚本:

<?php
$path ="videos/test/";
$xmlfile = "$path/playlist.rss";
$path2="http://".$_SERVER['SERVER_NAME'].dirname($_SERVER["PHP_SELF"])."$path";
$folder = scandir($path);
$files = array();
foreach($folder as $file){
    if($file == '.' OR $file == '..' OR $file == 'index.htm'){}else{
        $files[$file] = filemtime($path.'/'.$file);     
    }
}
ksort($files);
//use asort to sort from old to new
$output="<rss version='2.0' xmlns:jwplayer='http://rss.jwpcdn.com/'><channel>";
foreach($files as $file => $date){
$output .= "" . PHP_EOL . 
"<item>" . PHP_EOL . "<title>$file</title>" . PHP_EOL . "<description>$file</description>" . PHP_EOL . "<jwplayer:image>./preview.jpg</jwplayer:image>" . PHP_EOL . "<jwplayer:source file='$path/$file' />" . PHP_EOL . "</item>" . PHP_EOL . "" . PHP_EOL;
}
$output .= "</channel>
</rss>";
file_put_contents($xmlfile,$output);
?>
于 2013-04-21T23:38:36.293 回答