playlist-example.xml


JW Player는 Playlist를 제공을 합니다. JW Player에서 Playlist를 이용을 하기 위해서는 두 가지 방법이 있는데 하나는 playlist 파일을 xml 형식으로 만들어서 JW Player에서 불러오는 방법이고, 다른 하나는 JW Embedder에서 직접 Playlist를 코딩해주는 방법입니다.. JW Embedder에서 코딩을 하는 방법은 직접 테스트를 해 보았는데 어쩐 일인지 잘 동작을 하지 않았습니다.. 그래서 이 방법은 소개를 못 해 드리겠고.. 가장 일반적으로 사용하는 playlist xml 파일을 만들어서 playlist 를 만드는 방법을 한 번 보도록 하겠습니다..

먼저 한 가지 말씀을 드릴 것은 Playlist를 만들 때에 파일의 이름을 꼭 Playlist.xml로 할 필요는 없습니다. 파일 이름은 한글이 아니라면 어떤 것이 되어도 상관이 없고.. 확장자만 xml이면 되는 것 같습니다.. 그러면 아래 기본적인 예를 한 번 보도록 하겠습니다.

1. XSPF 방식을 사용한 예

<?xml version="1.0" encoding="UTF-8"?>
<playlist version="1" xmlns="http://xspf.org/ns/0/">
<title>BGM playlist</title>
<tracklist>

<track>
<title>숫자송 (by Entoi)</title>
<location>http://www.youtube.com/watch?v=-Tl9G8LZKgk</location>
<annotation>Entoi에서 만든 숫자송</annotation>
<duration>1:16</duration>
</track>

<track>
<title>원츄송 (by Entoi)</title>
<location>http://www.youtube.com/watch?v=Dn2o7jHxx_Y</location>
<annotation>Entio에서 만든 원츄송</annotation>
<duration>1:20</duration>
</track>

</tracklist>
</playlist>

 

위의 것이 실제 예제가 되겠습니다.. 사용자가 바꾸어 주어야 할 내용은 <track>과 </track> 사이의 내용들인데 그 의미는 다음과 같습니다.

<location> : 플레이할 미디어 파일의 주소
<title> : 플레이 할 미디어 파일의 제목
<annotation> : 플레이 할 미디어 파일에 대한 간단한 설명     
<duration> : 플레이 할 미디어 파일의 플레이 시간을 나타냅니다.

 

 

annotation은 Playlist에 항상 나오는 것은 아닙니다. 사용자가 선택을 한 스킨에 따라서 나올 수도 있고 나오지 않을 수도 있습니다. Playlist 출력 부분이 넉넉하다면 이 모든 내용을 출력을 하겠지만, Playlist 출력 부분이 넉넉하지 않다면 일부만 출력이 될 수도 있습니다.

Loading the player ...

위의 예는 playlist의 공간이 넉넉한 스킨의 예로 제목이 있는 title과 아울러 설명을 적은 annotation까지 출력이 되었음을 알 수가 있습니다.

 

Loading the player ...

반면 위의 예는 playlist의 영역이 좁은 스킨의 예로 annotation은 출력이 되지 않고 title만 출력이 되었음을 볼 수가 있습니다.

 

위와 같이 만들어서 적당한 영문 이름을 주고 확장자는 xml로 한 후에 반드시 UTF-8 형식으로 저장을 합니다. 그냥 ANSI 형태로 저장을 하시면 한글이 깨져서 알아볼 수 없게 되어 나옵니다. 혹시 UTF-8과 UTF-8 BOM 이렇게 두 가지의 UTF-8  형식이 있다면 UTF-8 BOM 형식으로 저장을 합니다.

&amp;quot;K-1.jpg&amp;quot;


&amp;quot;K-2.jpg&amp;quot;

 

 

또 플레이 리스트를 만들어서 사용을 하실 때에는 역시 주의할 점이 한 가지가 있는데.. skin과 마찬가지로 Playlist 파일도 크로스 도메인(Cross Domain) 정책의 영향을 받습니다. 따라서 플레이어 파일(Player.swf)이 있는 도메인에 업로드를 해야 합니다. 저장 경로가 Player.swf 파일과 같을 필요는 없습니다만 도메인은 같은 도메인을 사용을 해야 합니다.. 즉 Player.swf 파일을 티스토리에 올리셨다면 Playlist 파일도 티스토리에 올리셔야 하고, Player.swf 파일을 Dropbox에 올리셨다면 Playlist 파일도 Dropbox에 올리셔야 합니다.

 

2. RSS, Media 방식을 사용한 예

  <?xml version="1.0" encoding="UTF-8"?>
  <rss version="2.0" xmlns:media="http://search.yahoo.com/mrss/">
  <channel>
  <title>BGM playlist</title>

  <item>
  <title>숫자송 (by Entoi)</title>
  <media:content url="http://www.youtube.com/watch?v=-Tl9G8LZKgk"  duration="1:16"/>
  <description> Entio에서 만든 숫자송</description> 
  </item>

  <item>
  <title>원츄송 (by Entoi)</title>
  <media:content url="http://www.youtube.com/watch?v=sNFqHeU6YOw" duration="1:20" />
  <description>Entio에서 만든 원츄송</description>
  </item>

</channel>
</rss>

RSS, Media 방식을 사용을 하면 JW Player에서 HTML5 방식을 지원을 한답니다.. 뭐 테스트 결과 저는 성공을 하지 못했지만, 어쨋든 지원을 한다니까 이 방식도 한 번 소개를 해 봅니다..

<title> : 제목입니다.
<media:content>: 이 안에 미디어 파일의 인터넷 주소와 시간을 넣어줍니다..
주소는 url="주소" 와 같이 넣어주고 플레이 시간은 duration="시간" 과 같이 넣어주면 됩니다.
<description>: 간단한 설명을 넣어줍니다.

 

 

*기타 고급정보

Playlist를 지원하는 xml 에는 몇 가지 포맷이 있습니다. XSPF, RSS, itunes, media, ASX, ATOM 등의 포맷이 있는데, 우리가 사용을 한 포맷은 이 중 XSPF 포맷입니다. 각 포맷마다 사용법도 다르고 또 지원하는 형식도 달라서 XSPF 포맷이 아닌 다른 포맷을 사용을 하면 원하는 결과가 나오지 않을 수도 있습니다..

가령 XSPF 에서는 <location> 이라는 태그를 사용을 하지만 RSS에서는 <enclosure> 라는 태그를 사용을 해야 합니다. RSS 포맷에서는 <location> 이라는 태그가 없는 것이지요. XSPF에서는 <annotation>이라는 태그를 사용하지만 RSS에서는 <description> 이라는 태그를 대신 사용해야 합니다. XSPF와 RSS에는 <title>이 있지만 iTunes에는 아예 이 <title> 이라는 태그가 없기도 합니다.. 이렇게 각 포맷마다 서로 다른 점들이 존재하고 따라서 자신이 선택한 포맷의 문법에 맞도록 사용을 하셔야 합니다..

또 개중에는 위의 어떠한 포맷도 지원하지 않는 JW Player만의 태그도 존재합니다. <provide>라든가 <streamer>와 같은 태그는 JW Player만 사용하는 태그입니다.. 이 두 태그들은 스트리밍 서비스를 위해서 사용되는 태그들인데 이런 JW Player에만 있는 태그를 사용하기 위해서는 아래와 같이 추가해 줍니다.

<?xml version="1.0" encoding="UTF-8"?>
  <playlist version="1" xmlns="http://xspf.org/ns/0/" xmlns:jwplayer="http://developer.longtailvideo.com/">
  <title>Example XSPF playlist</title>
  <trackList>

  <track>
    <title>Video Title</title>
    <creator>Video Author</creator>
    <annotation>Big Buck Bunny is a short animated film by the Blender Institute, part of the Blender Foundation.</annotation>
    <location>Video</location>
    <jwplayer:type>rtmp</jwplayer:type>
    <info>http://www.domain.com/</info>
  </track>

  </trackList>
</playlist>

 

XSPF에 없는 태그는 위와 같이 xmlns:jwplayer="http://developer.longtailvideo.com/"> 이라는 Namespace를 추가해 준 후 <jwplayer:type> <jwplayer:streamer> <jwplayer:provider> 와 같이 사용을 하시면 됩니다.

더 자세한 내용은 아래 사이트를 참고해 주세요.
http://www.longtailvideo.com/support/jw-player/jw-player-for-flash-v5/12537/xml-playlist-support

Posted by yyht
,