무료 체험
← 블로그로 돌아가기

영상은 재생 중인데 미디어 목록은 비어 있다. 감지는 요청을 듣는다

도구를 설치했고 영상은 분명히 재생되는데, 오른쪽 미디어 목록에는 하나도 뜨지 않는다. 페이지를 바꿔도, 앱을 다시 켜도, 다른 컴퓨터에서도 마찬가지다. 이 목록은 요청을 듣고 채워지는 것이지 파일을 찾아서 채워지는 것이 아니다. 플레이어가 실제로 스트림을 가져오지 않으면 도구 쪽이 아무리 멀쩡해도 들을 것이 없다. 아래에서 들리지 않는 경우를 나눠 본다.

도구가 영상을 찾지 못하는 건 파일이 아니라 요청을 듣기 때문이다

도구가 영상을 찾아내는 방식은 페이지의 네트워크 출구에 붙어서, 플레이어가 데이터를 가져올 때마다 그 요청을 기록하는 것이다. 목록은 그 기록을 모은 것에 지나지 않는다. 페이지 전체를 훑어서 영상 파일을 찾는 게 아니다. 스트리밍 페이지에는 그런 파일이 애초에 놓여 있지 않다. 목록이 비어 있다는 건 소리가 들리지 않았다는 뜻이지, 찾지 못했다는 뜻이 아니다.

목록에 항목이 뜨려면 두 가지가 동시에 성립해야 한다.

  • 플레이어가 실제로 스트림을 가져오기 시작한다: 썸네일에서 멈춰 있거나, 커서를 올렸을 때 살짝 움직이거나, 자동 재생이 차단된 경우는 해당하지 않는다.
  • 요청이 도구가 들을 수 있는 위치에서 나간다: 플레이어가 다른 프레임에 중첩되어 있으면 들리지 않는다.

둘 중 하나만 빠져도 목록은 비어 있다. 스트리밍 페이지에 바로 쓸 수 있는 영상 파일이 없는 이유는 스트리밍 영상을 내려받을 수 없는 이유에서 풀어 두었고, 여기서는 듣는 쪽 이야기를 이어 간다.

플레이어가 아직 실제로 가져오지 않으면 목록은 계속 비어 있다

가장 흔한 빈 목록은 사실 아무것도 고장 나지 않은 상태다. 화면은 움직이지만 플레이어가 데이터를 가져오지 않는다. 썸네일 전환, 커서를 올렸을 때의 미리보기, 음소거 상태로 저절로 켜지는 작은 창은 모두 재생 중이라는 착각을 만든다.

  • 커서를 올렸을 때의 미리보기와 썸네일 전환: 커서가 지나갈 때 움직이는 몇 초는 대부분 이미지 전환이나 아주 짧은 미리보기 영상이다.
  • 자동 재생이 브라우저에서 차단됨: 페이지를 클릭하기 전에는 소리가 있는 자동 재생이 대개 거부된다. MDN 자동 재생 가이드에 자세히 나온다. 거부된 뒤 많은 사이트는 다시 시도하지 않고, 화면은 클릭을 기다리며 멈춰 있는다.
  • 플레이어가 아직 만들어지지 않음: 피드형 페이지는 스크롤해서 그 위치에 도달해야 플레이어를 만든다. 그 전에는 가져올 대상이 없다.
  • 앞에 문이 막혀 있음: 로그인이나 연령 확인이 끝나지 않으면 요청이 나가지 않는다.

네 가지 모두 같은 행동으로 이어진다. 영상을 진짜로 재생시켜 5초 이상 충분히 돌린 다음에 목록을 보라. 새로고침을 반복하는 것보다 훨씬 낫다. 새로고침은 스트림 요청을 만들지 않기 때문이다.

플레이어가 그리는 방식이 바뀌면 도구가 따라가지 못한다

화면은 재생되고 스트림도 실제로 가져와지는데 목록은 여전히 비어 있을 수 있다. 도구가 듣는 것의 형태가 도구가 아는 형태가 아니게 된 것이다. 요즘 웹 플레이어는 바로 쓸 수 있는 파일을 페이지에 두는 경우가 거의 없다. 스크립트가 브라우저 메모리에서 조각을 이어 붙여 화면으로 넘긴다. 브라우저가 이 작업을 위해 전용 인터페이스를 정의한 이유이고, W3C Media Source Extensions 명세 첫머리에 목적이 적혀 있다.

  • 플레이어가 다른 프레임에 중첩됨: 재생 영역 전체가 다른 주소에서 제공되고, 스트림 요청은 그 층에서 나간다.
  • 조각 주소에 일반적인 확장자가 없음: 주소 끝에 익숙한 미디어 표시가 없어서, 확장자로 판단하는 규칙은 그냥 지나친다.
  • 요청을 페이지 자체의 캐시 층이 먼저 가로챔: 페이지가 오프라인 방식으로 데이터를 붙들고 직접 플레이어에 넘겨서 네트워크 층은 조용해진다.

이런 것들은 고장이 아니라 요청을 듣는 방식의 경계다. 같은 도구가 다른 사이트에서는 정상적으로 동작한다고 해서 이 사이트에 문제가 있다는 뜻은 아니다.

이분법 자체 점검: 재생 중에 미디어 요청이 나가는가

책임이 페이지 쪽에 있는지 도구 쪽에 있는지는 한 가지로 갈린다. 재생하는 몇 초 동안 미디어 요청이 나가는지 여부다. F12로 개발자 도구를 열고 네트워크 패널로 넘어가 필터에서 미디어를 고른 뒤, 재생 중에 새로 뜨는 항목을 지켜본다. 재생을 한 번 클릭하고 5초를 꽉 채워 돌린다.

  • 하나도 안 나감: 플레이어가 스트림을 가져오지 않으니 문제는 페이지 쪽이다. 앞의 두 절로 돌아가 정말 재생되지 않은 것인지 차단된 것인지 확인한다.
  • 요청은 나가는데 목록은 여전히 빔: 스트림은 가져와지는데 도구가 듣지 못하니 문제는 도구 쪽이다. 여기서부터 방식을 바꿀 가치가 생긴다.

한 가지는 분명히 해 두자. 이 주소들은 쓸모가 없고, 그대로 쓰려고 해서도 안 된다. 조각 방식 콘텐츠는 하나를 얻어도 재생되는 파일이 되지 않는다. 그리고 대상을 헷갈리지 말자. 여기서 확인하는 것은 아예 시작되지 않은 경우다. 진행 표시줄이 움직인 뒤의 느림과 끊김은 다른 문제이고, 순서는 다운로드가 느릴 때 속도를 올리는 법에 있다.

목록이 비었을 때는 남기고 싶은 내용을 컴퓨터에 저장한다

감지는 요청을 기다리지만 녹화는 요청을 보지 않는다. 화면 자체를 보기 때문에 화면이 실제로 움직이는 한 위의 어떤 들리지 않음도 방해하지 못한다. VidBrowser로 내용을 컴퓨터에 남기는 방법은 네 단계다.

1단계: VidBrowser 다운로드 및 설치

VidBrowser는 Windows와 Mac을 지원하는 데스크톱 영상 브라우저로, 다운로드와 녹화 두 기능이 함께 들어 있다. 대신 요청을 들어 줄 확장 프로그램을 설치할 필요가 없고, 설치는 몇 분이면 끝난다.

2단계: VidBrowser에서 대상 페이지를 열고 영상을 진짜로 재생시키기

본인 계정으로 로그인하고 평소처럼 접속한 다음, 재생을 한 번 클릭하고 몇 초 돌린다. 위의 이분법은 이 단계에서 그대로 재현된다.

3단계: 먼저 오른쪽 미디어 목록에 항목이 있는지 확인하기

있으면 해상도를 고르고 주황색 다운로드 버튼을 눌러 MP4로 저장한다.

4단계: 하나도 없으면 녹화로 전환하기

화면 위로 마우스를 올리면 녹화 컨트롤이 겹쳐 나온다. 속도를 고르고(1x는 실시간, 2x나 4x면 더 빨리 끝난다) 전체 녹화를 눌러 구간을 통째로 담는다. 왼쪽 녹화 버튼으로 언제든 시작하거나 일시정지할 수 있다. 보호된 콘텐츠, 실시간 방송, 그리고 위에서 스트림이 들리지 않던 경우가 모두 이 단계에 해당한다. 녹화가 끝난 파일은 왼쪽 다운로드 기록에서 찾을 수 있고 계정 상태와는 무관하다.

이런 것들은 애초에 내려받을 원본이 없다. 항목을 기다리지 말자

모든 단계를 거쳤는데 목록이 여전히 비어 있다면 대개 더는 고장이 아니다. 애초에 내려받을 원본이 없었던 것이다. 빈 목록이 맞는 결과다.

  • 조각 자체가 암호화되어 있음: 요청은 들리지만 조립한 파일은 재생되지 않는다. 이런 내용은 녹화로 남긴다.
  • 실시간 방송: 첫 초부터 만들면서 보내기 때문에 하나의 완전한 파일이 존재하지 않는다. 들리는 것은 연속된 데이터 흐름이다.
  • 화면을 스크립트가 그림: 전체가 스크립트로 한 프레임씩 캔버스에 그려져 페이지에 미디어 데이터가 존재하지 않는다. 가져올 것조차 없다.

파일이 있는지에 기대지 않는 방법이 녹화다. 목록이 비었다고 못 하는 게 아니라, 입구가 바뀐 것뿐이다.

자주 묻는 질문

영상은 잘 재생되는데 도구에는 왜 하나도 안 뜨나?

감지가 듣는 것은 스트림 요청이고 화면이 움직이는지가 아니기 때문입니다. 커서를 올렸을 때의 미리보기, 차단된 자동 재생, 다른 프레임에 중첩된 플레이어는 모두 화면은 움직이는데 요청은 들리지 않는 상태를 만듭니다. 먼저 재생을 한 번 클릭해 몇 초 돌려 보세요.

같은 사이트가 어제는 감지됐는데 오늘은 비어 있다. 그 사이에 뭐가 바뀐 건가?

대개 페이지가 플레이어를 만드는 방식을 바꾼 것입니다. 사이트가 플레이어를 업그레이드하거나 재생 주소 형식을 바꾸면 예전 규칙이 그날 바로 안 먹힐 수 있습니다. 도구가 고장 났는지와는 별개의 문제입니다. 진행 순서는 다운로더가 작동하지 않을 때 대처법에 있습니다.

개발자 도구에서 본 그 주소들을 바로 내려받기에 쓸 수 있나?

대부분 쓸모가 없고, 그렇게 쓰는 것도 권하지 않습니다. 조각 방식 콘텐츠는 수십에서 수백 개의 작은 조각을 이어 붙인 것이라 하나만으로는 한 편이 되지 않습니다. 사본을 남기고 싶다면 녹화가 더 직접적인 길입니다.

더 많은 블로그