많은 뉴스·블로그 사이트가 그렇듯 테크크런치(TechCrunch) 역시 기사 본문 한가운데에 자동재생 영상을 끼워 넣는다. 읽는 흐름을 끊는 것도 문제지만, 더 성가신 점은 그 플레이어를 화면에서 치워도 소리와 재생 자체는 뒤에서 계속 돌아간다는 것이다. 영상 요소를 CSS로 '안 보이게' 처리하는 수준으로는 근본 해결이 되지 않는다는 뜻이다. 한 개발자가 자신의 블로그에 공개한 uBlock Origin 필터 레시피는 이 흔한 불편을 어떻게 뿌리부터 막을 수 있는지, 그리고 광고·영상 차단이 실제로 어떤 구조로 작동하는지를 잘 보여 준다.
숨기는 것과 막는 것은 다르다
핵심은 '화면에서 가리기'와 '애초에 불러오지 않기'의 차이다. 테크크런치의 본문 영상은 JW Player로 임베드되며, 페이지는 이와 별도로 Connatix의 플로팅 광고 플레이어 스크립트도 함께 불러온다. 이 두 스크립트가 로드되면 영상 플레이어가 생성되고, 사용자가 보이는 영역을 가려도 오디오 트랙과 백그라운드 재생은 멈추지 않는다. 광고 차단기가 제공하는 '요소 숨기기' 기능만으로는 소리가 계속 나는 이유가 여기에 있다.
해결책은 두 겹으로 구성된다. 먼저 네트워크 차단 규칙으로 JW Player와 Connatix의 스크립트 요청 자체를 막는다. 스크립트가 로드되지 않으면 플레이어가 만들어지지 않으므로 영상도, 소리도 처음부터 발생하지 않는다. 그다음 코스메틱 규칙, 즉 필터 문법에서 '##'로 시작하는 요소 숨김 규칙으로 영상이 들어가야 했던 자리에 남는 빈 상자를 가려 본문 레이아웃을 깔끔하게 정리한다. 요컨대 네트워크 규칙이 실질적인 차단을, 코스메틱 규칙이 시각적 뒷정리를 맡는 역할 분담이다.
적용 환경의 전제 조건
주의할 점은 이 필터가 동작하는 환경이 제한적이라는 것이다. 작성자는 파이어폭스의 uBlock Origin, 그중에서도 기능이 온전한 MV2 버전에서 확인했다고 밝혔다. 축소판인 uBO Lite가 아니라는 단서가 중요하다. uBO Lite는 브라우저의 매니페스트 V3(MV3) 제약에 맞춰 기능을 덜어 낸 버전으로, 임의의 네트워크 규칙을 사용자가 자유롭게 추가하는 방식에 한계가 있기 때문이다. 즉, 임의 스크립트를 런타임에 차단하는 이런 레시피는 전통적인 MV2 기반 확장에서 가장 안정적으로 먹힌다.
적용 방법 자체는 어렵지 않다. uBlock Origin 대시보드의 '내 필터(My filters)' 탭에 규칙을 붙여 넣고 변경 사항을 적용하면 된다. 별도의 코딩이나 외부 도구 없이, 확장 프로그램 설정 안에서 몇 줄을 추가하는 것으로 끝나는 가벼운 작업이다. 실무자 입장에서는 특정 사이트의 자동재생을 끄기 위해 매번 음소거 버튼을 누르거나 탭을 뒤지는 대신, 한 번의 설정으로 처리해 둘 수 있다는 점이 매력이다.
깨지기 쉬운 규칙이라는 한계
다만 이런 사이트별 수작업 필터는 본질적으로 유지보수 부담을 안고 있다. 작성자 스스로도 테크크런치가 영상 공급 업체를 바꾸면 상황이 달라진다고 지적한다. 요소를 가리는 '##' 규칙은 자리를 비워 두는 역할이라 업체가 바뀌어도 어느 정도 계속 쓸모가 있을 가능성이 크지만, 소리를 멈추는 네트워크 규칙은 새 업체의 스크립트 주소에 맞춰 다시 작성해야 한다. 차단 대상의 도메인이나 스크립트 경로가 바뀌는 순간 기존 규칙은 조용히 무력화되기 때문이다.
이 사례가 실무자에게 주는 시사점은 단순한 '팁' 이상이다. 광고·추적 차단이 왜 끊임없는 숨바꼭질인지, 그리고 왜 요소 숨김만으로는 성능·대역폭·배터리 문제가 해결되지 않는지를 구체적으로 드러내기 때문이다. 자동재생을 제대로 잡으려면 '무엇을 보이지 않게 할까'가 아니라 '무엇을 애초에 네트워크에서 끊을까'를 먼저 물어야 한다. 특정 사이트 한 곳의 영상 문제를 넘어, 브라우저 확장으로 웹 경험을 제어할 때 어떤 계층에서 개입해야 하는지를 이해하는 데 도움이 되는 작은 교본인 셈이다.