Microsoft Stream 영상 다운로드 방법

Pilgyeong_G·2020년 5월 30일
1


팀즈(Teams)에 내장되어 있는 모임 녹화 기능은 마이크로소프트 스트림(Microsoft Stream)으로 업로드된다.

그래서 강의가 끝나고 녹화된 영상을 돌려보려면 Stream에서 봐야 한다.

근데 문제는 이 Stream이 좀 버벅대고 느리다는 것이다....;

공식적으로는 Stream에 업로드된 영상은 그 영상의 소유자만이 다운로드할 수 있다. 이 말인즉슨 교수님이 녹화를 시작해서 녹화를 끝냈을 때, 영상의 소유자는 교수님이 되므로 다른 학생들은 영상을 다운로드할 수는 없다.

하지만 비공식적으로 다운로드할 수 있는 방법이 있는데...
https://github.com/snobu/destreamer
바로 요놈을 쓰면 된다.

모임 영상 다운로드해서 모임 주최자의 동의 없이 다른 곳에 업로드하는 것은 안됩니다. 개인적인 용도로만 사용하시기 바랍니다.

툴을 사용하기 전 사전에 설치해야 하는 것들이 있다.

  • Node.js랑 npm
  • ffmpeg
  • git

먼저 Node.js를 다운받아보자.
Node.js 다운로드 링크: https://nodejs.org/en/download/
링크로 들어가 자신의 OS에 맞는 인스톨러를 다운로드하고 설치한다.

설치가 완료됐으면 제대로 설치가 되었는지 확인을 해봐야 한다.
우선 Windows + X 단축키 입력 후 i 키를 눌러 PowerShell을 열자.
PowerShell이 열렸으면 다음 명령어를 입력한다.

node -v

node.js의 버전이 제대로 나오면 설치가 제대로 된것이다. 만약 존재하지 않는 명령어라고 뜬다면 설치가 되지 않은 것이니 한번 확인해보자.

Node.js를 설치했다면 npm도 같이 설치되었을 것이다. 다음의 명령어로 설치가 되었는지 확인해보자.

npm -v

이제 ffmpeg를 설치해보자.
ffmpeg 다운로드 링크: https://www.ffmpeg.org/download.html
사이트로 들어가서 아래의 Get packages & executable files 항목에서 자기 OS에 맞게 다운로드한다.

zip 파일로 다운로드가 될 텐데, 적당한 곳에 압축 해제하자. (C드라이브 루트나 문서 폴더 등등..)

이 폴더를 환경변수 PATH에 등록해야 한다.
Windows10 기준으로 환경변수를 설정하는 방법은 다음과 같다.
제어판 -> 시스템 및 보안 -> 시스템 창에서 고급 시스템 설정 버튼을 누르면 아래 창이 뜰 것이다.

환경 변수 버튼을 누르면 아래와 같이 환경 변수를 편집할 수 있는 창이 뜬다.

'000에 대한 사용자 변수' 칸에서 스크롤을 내려 Path 변수를 찾고 더블클릭하자.

이제 새로 만들기 버튼을 눌러 압축해제하고 나온 ffmpeg\bin폴더의 위치를 넣어주면 끝난다.

환경변수에 잘 등록되었는지 확인해보기 위해 PowerShell을 종료하고 다시 실행한 후 다음의 명령어를 입력해보자.

ffmpeg -version

git도 설치하자. 그냥 인스톨러 다운받고 설치하면 끝이다.
git 다운로드 링크: https://git-scm.com/downloads

제대로 설치되었는지 확인해보려면

git --version

이제 필요한 것들은 모두 설치가 끝났다.
이제 PowerShell이나 다른 터미널에서 아래 명령어를 입력해서 프로젝트를 빌드 하자.

git clone https://github.com/snobu/destreamer
cd destreamer
npm install
npm run build

빌드를 완료했으면 이제 실행만 하면 된다.

# PowerShell의 경우
.\destreamer.ps1

# Linux의 경우
./destreamer.sh

참고) 만약 PowerShell에서 명령어를 실행했는데 UnauthorizedAccess 오류가 발생하는 경우 아래 링크를 참고하여 해결할 수 있다.

https://blog.naver.com/pid011/221795316159


사용방법은 간단하다.
영상을 다운로드할 때는 -i 옵션에 영상 링크를 인수로 주면 된다.

.\destreamer.ps1 -i "https://web.microsoftstream.com/video/VIDEO-1"

여러 영상을 다운로드할 때는 여러 개의 영상 링크를 추가하면 된다.
근데 너무 많이 지정할 경우 다운로드 시간이 1시간을 넘어가면 access token이 만료되어 중간에 에러 뿜고 중지될 거다. 적당히 끊어서 명령어를 사용하자.

./destreamer.ps1 -i "https://web.microsoftstream.com/video/VIDEO-1" "https://web.microsoftstream.com/video/VIDEO-2"

다운로드 링크가 너무 많으면 링크들을 txt파일에 쓰고 그 txt파일을 사용하는 방법도 있다. 자세한건 destreamer레포의 README.md를 참고하자.

영상을 내보낼 경로를 따로 지정하고 싶으면 -o 옵션을 사용하면 된다.

./destreamer.sh -i "https://web.microsoftstream.com/video/VIDEO-1" -o /Users/hacker/Downloads

명령어의 더 자세한 사용방법은 아래 링크에서 확인할 수 있다.
https://github.com/snobu/destreamer#usage

명령어를 실행하면 크로미움 브라우저가 실행되고, 로그인을 하라는 창이 뜬다. Stream 영상을 볼 수 있는 권한이 있는 계정으로 로그인을 완료하면 영상 다운로드가 시작된다.

다운로드가 좀 느리니 인내심을 가지고 기다리면 끝!

다시 한번 말하지만 개인적인 용도로 자신의 컴퓨터에만 다운로드하고 보자. 인터넷에 업로드해서 발생하는 문제의 책임은 당신에게 있다.

10개의 댓글

comment-user-thumbnail
2020년 6월 13일

안녕하세요
환경변수 적용까진 잘 마쳤는데 git설치부터 문제가 생긴 것 같습니다.
win10 64비트 인스톨러 설치해서 next쭉 누르고 설치 마쳤습니다. Powershell에 git --version입력하면 아래와 같은 붉은 문구가 뜨네요..

git--version : 'git--version' 용어가 cmdlet, 함수, 스크립트 파일 또는 실행할 수 있는 프로그램 이름으로 인식되지 않습니
다. 이름이 정확한지 확인하고 경로가 포함된 경우 경로가 올바른지 검증한 다음 다시 시도하십시오.
위치 줄:1 문자:1

  • git--version
  •   + CategoryInfo          : ObjectNotFound: (git--version:String) [], CommandNotFoundException
      + FullyQualifiedErrorId : CommandNotFoundException

해결방법이 있을까요?

2개의 답글
comment-user-thumbnail
알 수 없음
2020년 6월 29일
수정삭제

삭제된 댓글입니다.

1개의 답글
comment-user-thumbnail
2020년 7월 11일

정말 감사합니다. 큰 도움 얻었네요

답글 달기
comment-user-thumbnail
2020년 11월 4일

안녕하세요
.\destreamer.ps1 -i "https://web.microsoftstream.com/video/~까지는 진행을 완료하였는데 이 문장을 치면 아래와 같은 오류가 뜨는데 원인을 아실까요?? 한글 번역에서는 찾을수가 없네요 ㅜ
Destreamer cannot run in an elevated (Administrator/root) shell.
Please run in a regular, non-elevated window.

1개의 답글
comment-user-thumbnail
2021년 4월 8일

2번째거 다운받으려는데 종류가 너무많은데 제일 상단에 있는거인가요?

답글 달기