Expression Encoder는 다양한 미디어 파일을 인코딩하여 서버로 배포하기 위한 다양한 기능을 제공하는데요, 특히 실버라이트를 위해 인코딩된 결과물을 곧바로 Silverlight Streaming 서버에 올릴 수 있는 플러그인이 마련되어 있어요.

먼저 Expression Encoder 2Encoder Service Pack 1을 설치한 후 Silverlight Streaming Publishing Plug-In for Expression Encoder v2가 설치되어 있어야 해요. 그리고 당연하겠지만 Silverlight Streaming에 동영상 올리기#1에서 설명했던 것처럼 live 계정으로 streaming에 가입되어 있어야 하고요.

1. 우선 http://streaming.live.com/에 가서 Manage Account 메뉴를 클릭하면 자신의 Account ID와 Key를 볼 수 있어요. 이걸 잘 복사해 놓으시고 다음을 진행하세요.

image

2. 인코더를 실행하고 Import 버튼을 클릭해서 인코딩할 동영상 파일을 선택하거나 탐색기에서 드래그&드랍하여 인코딩할 동영상 파일을 Items에 올려놓으세요. 이 글은 인코더의 기능을 설명하고자 하는게 아니라서 다른 탭에 있는 여러가지 옵션과 기능들은 설명하지 않아요.

image

(인코딩 데모때마다 혹사당하는 Bear.wmv^^)

3. Silverlight Streaming에 게시하기 위해서는 먼저 출력 템플릿을 정해줘야 해요. 템플릿은 인코딩된 결과물로 자동으로 재생 가능한 실버라이트 미디어 플레이어 프로젝트와 웹 애플리케이션을 생성해주죠. 템플릿은 반드시 Silverlight 2에 있는 것 중 하나를 선택하세요.

image

템플릿을 선택하면 템플릿의 preview를 볼 수 있어요.

image

4. Output 탭의 하단에 있는 Publish 패널에서 Publish To를 Silverlight Streaming으로 선택하세요. 만약 Silverlight Streaming이 나오지 않는다면 플러그인을 제대로 설치하지 않아서 그렇겠죠?

image

5. Silverlight Streaming을 선택하면 다음과 같은 옵션들이 나올거에요. Publish after encode에 체크하고, 앞에서 얻었던 Account ID와 Account Key를 입력하세요. 접혀있는 패널을 열어보면 해당 계정의 남은 공간과 상태를 확인할 수 있어요.

image

6. 이제 Encode를 눌러 인코딩을 진행해보죠. 인코딩이 끝나면 다음과 같이 업로드가 시작돼요.

image

업로드가 완료되면 다음과 같이 자동으로 가상 서버가 하나 뜨면서 선택한 템플릿의 실버라이트 미디어 플레이어 애플리케이션을 볼 수 있죠.

image

7. 그럼 Silverlight Streaming에 어떻게 올라갔는지 볼까요? Streaming 페이지에서 Manage Account를 클릭하면 앞에서 인코딩할 때 설정했던 이름으로 애플리케이션이 올라가 있는 것을 볼 수 있어요.

image

클릭해 보면… 여러가지 옵션을 확인할 수 있죠. Launch Application Test Page를 클릭해서 업로드된 미디어 플레이어 및 동영상 파일을 확인해 보세요.

8. 이렇게 올린 애플리케이션은 두 가지 방법으로 퍼갈 수 있는데요, 아쉽게도 <object>로 곧바로 올리는 방법은 아직 지원되지 않고 iframe을 사용하거나 LiveControl을 이용해서 올리는 두 가지 방법만 지원해요. 그리고 한가지 또 아쉬운 점은 동영상 파일의 절대 URL을 알 수 없다는 점이죠.

Silverlight Streaming은 나름 활용할 여지가 많은데요, 기회가 되면 다른 활용 방법을 소개하도록 하지요.

저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo

실버라이트로 미디어 플레이어를 만들다보면 가끔 소스를 올려놓을 적당한 곳이 없을 때가 있는데요, 이럴 때 Silverlight Streaming이라는 좋은 서비스를 잘 활용해 보세요.

Silverlight Streaming은 live.com에서 제공하는 서비스 중 하나로 개인 live계정에 대해 무료로 제공해줘요. 구체적으로,

  • 10GB의 저장 공간
  • 한달에 5TB의 트래픽
  • 실버라이트와 호환되는 WMV/VC-1 코덱의 동영상 하나당 104M까지
  • 또는 하나당 최대 1.4Mbps의 프레임 레이트와 최대 10분 길이의 동영상

이 정도면 꽤나 멋진 조건이죠. 특히 WMV 또는 VC-1 코덱으로 인코딩된 영상은 사이즈 제한 등이 없어서 쓸만해요. 게다가 Expression Encoder에서 곧바로 Silverlight Streaming에 인코딩된 영상을 올리는 기능을 지원해서 편리하죠. 이 외에도 광고 등의 조건에 따라 몇 가지 옵션이 더 있는데 여기에서는 가장 기본적인 계정만 만들어보도록 하죠.

http://streaming.live.com/에 가서 다음 순서에 따라 등록해 보세요.

 

1. live 계정으로 sign-in. 당연하겠지만 없으면 만들어야죠?^^

image

2. Sign-in 했으면 왼쪽에 Manage Videos를 클릭하고 Upload a video를 클릭. 오른쪽 아래에 보면 사용 가능한 공간도 나와 있죠.

image 

3. 파일을 선택하고 업로드. 이 때 "The video is a Silverlight-compliant WMV file."을 체크하면 업로드하는 파일이 실버라이트에서 재생 가능한 형식일 경우 별도의 인코딩 작업 없이 올라가요. 제목은 나중에 URL에서 접근할 때 사용하니 적당히 이름 지으면 되고요.

image

Upload를 클릭하면 파일이 업로드 되는데, 물론 시간대에 따라 다르지만 생각보다 업로드 속도가 괜찮아요. 지금 14MB에 2분25초라고 표시되어 있지만 실제로는 2분이 안걸렸어요. 처음 이 서비스가 나왔을 때에는 진짜 모뎀에 필적하는 속도였는데 이 정도면 별 불편없이 쓸 수 있을 듯.

image

4. 업로드가 끝나면 다음과 같이 업로드된 동영상의 목록과 재생된 회수, 그리고 남은 Streaming 공간 등이 표시돼요.

image

5. 업로드한 동영상 제목을 클릭해 보면 다음과 같이 해당 영상을 곧바로 재생할 수 있는 기본 미디어 플레이어가 하나 제공되고 그 플레이어를 퍼갈 수 있는 <iframe>태그와 동영상을 직접 링크할 수 있는 URL도 제공돼요.

사실 이 외에도 내가 만든 실버라이트 애플리케이션도 올리는 서비스도 있는데 그건 다음 기회에.^^

저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo

약간의 경험이 있으시다면 곧바로 팀 스니쓰의 Uploading Silverlight 2 Content to Silverlight Streaming를 참조하시면 되고요^^

먼저 Windwos Live의 실버라이트 스트리밍이 뭔지 짚고 넘어가죠.
실버라이트 스트리밍은 Windows Live 서비스의 하나로 http://dev.live.com/silverlight/에서 제공되는 실버라이트를 위한 무료 호스팅 서비스에요.

Windows Live에서 정의하는 실버라이트 스트리밍은, 무료로 실버라이트 애플리케이션을 배포하기 위한 애플리케이션 호스팅 및 스트리밍 솔루션이죠.

여기에서 무료의 범위는 현재(Beta)상태에서는 한 계정당 10GB의 호스팅 용량인데요, 이정도면 웬만한 웹 애플리케이션은 다 올릴 수 있겠죠. 이용 조건은 호스트에 올릴 수 있는  비디오의 전송 속도는 1.4Mbps이내 그리고 비디오의 길이가 10분을 넘기지 않아야 하고요, 한달 동안의 트래픽은 5TB로 제한되어 있다는군요. 베타 서비스가 종료되면 무제한인 대신 광고가 붙는 호스팅 또는 광고가 없는 수수료 방식의 유료 서비스로 전환되죠. 언제 그렇게 될지는 아직 알 수 없고요.

이미 SDK도 나와 있는데요, http://msdn2.microsoft.com/en-us/library/bb851621.aspx여기를 참고하세요.

자, 그럼 실버라이트 스트리밍을 시작해보죠.

 

먼저 http://silverlight.live.com 에 가서 새 계정을 만들어야죠(Get it free 클릭). 이미 있다면 다음으로...

모든 Windows Live 서비스는 Live ID를 요구하는데요, 실버라이트 스트리밍도 마찬가지죠.

로그인 하면 별다른 과정 없이 곧바로 위와 같은 인증 키가 발급이 되죠. 이것은 향후 API를 이용하거나 할 때 필요하니 꼭 어딘가에 적어두세요. 나중에라도 왼쪽에 보이는 [Manage Account]메뉴를 통해서 재발급 받을 수 있긴 해요.

자 이것만으로도 실버라이트 스트리밍 준비는 끝났습니다. 이제 업로드를 해보죠.

먼저 업로드할 실버라이트 애플리케이션을 만들어야겠죠? 저는 전에 세미나 데모로 사용했던 DeepZoomBase를 골랐어요. 해당 실버라이트 애플리케이션 구동에 필요한 XAP파일과 XAP파일과 함께 배포할 이미지, 미디어 등의 리소스 폴더 그리고 가장 중요한 Manifest.xml 파일을 하나의 ZIP 파일로 압축하면 돼요. Manifest.xml은 다음과 같은 형식으로 만들면 되고요.

<SilverlightApp>
  <version>2.0</version>
  <source>DeepZoomBase.xap</source>
  <width>640</width>
  <height>480</height>
  <background>white</background>
  <isWindowless>false</isWindowless>
</SilverlightApp>

이렇게 모아서 하나의 ZIP으로 압축해두고 다음으로 진행.

Silverlight.live.com에서 [Manage Applciations]를 선택하면 위와 같은 업로드된 Application 목록이 나오는데요, 여기에서 [Upload an application]을 클릭하여 다음으로...

아까 묶어둔 ZIP파일을 선택하고 Upload하고 기다리면 되는데요, 업로드 속도... 장난아니게 느립니다. -_-; 대략 60kbps쯤 나오는 것 같더군요. 인내심을 길러야 겠네요 ㅠ.ㅜ 참고로 한번에 업로드할 수 있는 용량은 105MB가 한계에요.(동영상 파일도 동일)

 

업로드가 완료되면 위와 같이 업로드된 애플리케이션에 대한 관리를 수행할 수 있고 아래쪽에는 이 애플리케이션을 퍼가는 방법에 대한 안내가 나와 있어요. 예를 들어 제가 테스트로 올린 애플리케이션은 http://silverlight.services.live.com/invoke/59546/DeepZoomBase/iframe.html 라는 주소로 접근할 수 있죠.

아쉬운 점은 우선 속도가 그닥 빠르지 않다는 점이고요. 그런데 이 점은 해외에서는 빠르다는 얘길 들었어요(물론 확인은 못했습니다만 -_-)
다음으로 위의 경로로 접속하면 msbluelight-0.agappdom.net/e1/d/59546/1353527/63341546400/0.PLOueqf6XALqnUkPHslm5smtDVQ/zziframehtml2zz.html#%2f%2fappId%2fDeepZoomBase.xap%2fwhite%2ffalse%2f%2f%2f%2f%2ftrue%2f2.0%2f0와 같이 '더러운' 이름의 URL로 redirect되는데요, 이래서야 원 업로드된 XAP파일의 경로를 안다고 해도 XAP파일만 따로 링크를 거는 것은 불가능해지겠죠.

애초에 실버라이트 스트리밍에 올려놓은 애플리케이션은 javascript나 iframe으로 올릴 수 있게 되어 있는데요, 실버라이트 2를 지원하는 김에 XAP파일을 직접 접근할 수 있는 방법을 마련해줬으면 좋겠어요.

그럼에도 불구하고 실버라이트 스트리밍 서비스는 정말로 유용하다고 생각해요. 예전에 저도 실버라이트 1을 할 때 마땅히 올려놓을 계정이 없어서 불안한 무료 계정을 썼었는데요, 만약 실버라이트 데모 저장이나 공유를 목적으로 한다면 실버라이트 스트리밍이 탁월한 선택이 될 것 같네요.

한번 써보시고 멋진 데모들을 만들어서 다른 사람과 공유해보시죠! :D

신고
Posted by gongdo


티스토리 툴바