2 điểm bởi GN⁺ 2025-06-21 | 1 bình luận | Chia sẻ qua WhatsApp
  • YouTube gần đây đã tăng cường thử nghiệm chống chặn quảng cáo, khiến một số người dùng gặp hiện tượng buffering giả
  • Cơ chế buffering giả này hoạt động bằng cách trì hoãn thời điểm bắt đầu video khoảng 80% độ dài quảng cáo
  • Người dùng có thể lách một phần hiệu ứng này bằng cách thêm một cấu hình cụ thể vào bộ lọc chặn quảng cáo
  • YouTube phát hiện và ứng phó với trình chặn quảng cáo bằng nhiều kỹ thuật như Global Cache và giao thức SABR
  • Một số script khóa JavaScript cũng gây ra hiện tượng hạn chế hoạt động của trình duyệt, bộ lọc và tiện ích mở rộng

Tổng quan

  • Gần đây YouTube một lần nữa triển khai và thử nghiệm tính năng chống chặn quảng cáo
  • Thông qua A/B test, tính năng thử nghiệm này chỉ được áp dụng cho một số tài khoản
  • Người dùng có thể dùng các bộ lọc trên uBlock Origin hoặc trình duyệt Brave để tránh các thay đổi này (đã có sẵn trong bộ lọc mặc định)

Hiện tượng buffering giả

  • Hiện tượng chính là thời gian buffering dài hơn khi bắt đầu video (không xảy ra ở giữa video)
  • Độ dài buffering giả này tương đương khoảng 80% thời gian lẽ ra phải xem quảng cáo
  • Ví dụ, nếu quảng cáo dài 15 giây thì người dùng sẽ gặp khoảng 12 giây buffering
  • Nếu có nhiều quảng cáo liên tiếp, hiệu ứng chờ sẽ bằng tổng 80% độ dài của từng quảng cáo
  • Người dùng trình chặn quảng cáo vẫn tiết kiệm được thời gian

Cấu trúc bên trong và nguyên lý hoạt động

  • InnerTube là API nội bộ chính thức của YouTube, được client web và di động dùng để truy cập video và thông tin liên quan
  • Luồng video được truyền qua GVS(Google Video Services) và liên kết sẽ hết hạn theo thời gian nên cần được tạo lại
  • YouTube cũng sử dụng các máy chủ Google Global Cache để tối ưu tải mạng
  • Trước đây YouTube chỉ đơn giản thiết lập phạm vi video bằng tham số truy vấn, nhưng gần đây đã dùng giao thức nhị phân độc quyền tên là SABR(Server ABR)
  • Khi cần, SABR có thể gửi backoff (lệnh trì hoãn) để buộc client chờ trong một khoảng thời gian nhất định

Nguyên nhân thực sự khiến buffering giả xảy ra

  • Khi phát hiện chặn quảng cáo, InnerTube sẽ chèn backoff vào luồng GVS bằng 80% độ dài quảng cáo
  • Backoff này sẽ luôn được áp dụng nếu thuộc nhóm A/B test, bất kể có đang chặn quảng cáo hay không
  • Với người dùng không chặn quảng cáo, backend sẽ tải trước content video nên họ không cảm nhận độ trễ này
  • Các thông báo như "Experiencing interruptions" xuất hiện do backoff kéo dài
  • Những lời đồn trên web như "vấn đề quá tải CPU" thực ra không đúng

Cách chặn quảng cáo từ gốc

  • Có thể đặt thuộc tính isInlinePlaybackNoAd thành true để không nhận chính luồng quảng cáo
  • Nếu trong yêu cầu JSON có mục "isInlinePlaybackNoAd":true, InnerTube sẽ không bao gồm quảng cáo và backoff
  • Có thể chèn quy tắc liên quan vào bộ lọc người dùng của uBlock Origin để tự động áp dụng
  • Thuộc tính này có thể được xác nhận trong JavaScript frontend và định nghĩa Protocol Buffers

Giới hạn và tác dụng phụ

  • Cách này chỉ có thể lách trong điều hướng (warm loading) bên trong ứng dụng single-page của YouTube sau khi trang đã được tải
  • Ở lần truy cập đầu tiên (cold loading), cách này không áp dụng được do dữ liệu khởi tạo do backend cung cấp
  • Các nỗ lực cưỡng ép xóa dữ liệu ban đầu sẽ gây ra nhiều vấn đề như live stream, tốc độ trang và trải nghiệm người dùng

Vượt qua cơ chế chặn của script khóa (Locker Script)

  • Với một số nhóm thử nghiệm, YouTube chèn script khóa khiến các đối tượng toàn cục không thể bị chỉnh sửa ở đầu thẻ ``
  • Các tiện ích mở rộng như uBlock Origin chỉ có thể hook đối tượng trước khi script đó chạy
  • Firefox có thể vượt qua bằng lọc HTML, nhưng các trình duyệt Chromium không hỗ trợ cách này
  • Để ứng phó, có thể lách bộ lọc bằng cách hook Object.assign
  • Khi dùng cách này, có thể sử dụng tính năng Proxy nâng cao để chèn "isInlinePlaybackNoAd":true

1 bình luận

 
GN⁺ 2025-06-21
Ý kiến Hacker News
  • Chia sẻ trải nghiệm gần đây đã dứt hẳn YouTube; trước đây là người dùng xem rất nhiều, có khi dành vài tiếng mỗi ngày cho các nội dung giáo dục/khoa học chất lượng, nhưng rồi nhận ra thực ra mình không cần đến nó; thêm nữa là cuộc sống trở nên sạch sẽ hơn khi không có quảng cáo; thỉnh thoảng vẫn xem nếu ai đó gửi video YouTube, nhưng không còn chủ động truy cập; rất khuyến nghị mọi người giảm bớt kiểu tiêu thụ giải trí thụ động như YouTube và chuyển thời gian sang các hoạt động sáng tạo, có ý thức hơn

    • Cũng có người nói đơn giản là trả tiền để dùng; cả gia đình đang dùng gói thuê bao nên sống trong môi trường không quảng cáo, cảm thấy rất đáng tiền; có thể vẫn hoàn thành dự án độ xe máy mà không cần video, nhưng tự hỏi sao phải làm thế

    • Cũng đã bỏ Netflix theo cách tương tự, hủy cả Prime và ngừng dùng Amazon nói chung; tất nhiên AWS thì gần như không thể bỏ vì dữ liệu, nên là ngoại lệ; còn YouTube thì đang dùng gói không quảng cáo, và nếu phá lời hứa không quảng cáo thì YouTube cũng sẽ bị cấm vĩnh viễn

    • Xóa tài khoản YouTube và chuyển sang Patreon; vẫn nhận thông báo trên YouTube cho video của các nhà sáng tạo mình đăng ký trên Patreon rồi xem ở đó, nhờ vậy việc tiêu thụ nội dung trở nên có chủ đích hơn và chất lượng hơn nhiều

    • Nhắc đến thực tế là một bộ phận dân số rất lớn đang nghiện những nền tảng như thế này, ví đây là thời đại của “thuốc lá 2.0”

    • Mẹo là các chương trình khoa học hay nhất cũng có rất nhiều trên những nền tảng như PBS và Nebula

  • Ý kiến cho rằng chừng nào Google còn tiếp tục ép người dùng xem quảng cáo, chúng ta càng phải nhạy cảm hơn và giám sát chặt hơn tính không phù hợp cũng như tính lừa đảo của những quảng cáo mình bị phơi nhiễm; đặc biệt khi chặn quảng cáo là cách duy nhất để bảo vệ bản thân và gia đình khỏi quảng cáo độc hại, thì điều hợp lý là phải đòi Google chịu trách nhiệm nhiều hơn với chính những quảng cáo họ phát

    • Quá sốc vì chất lượng quảng cáo YouTube dạo này quá thấp và không phù hợp; ban điều hành đang hạ chuẩn xuống đáy chỉ để chạy KPI, thưởng và thăng chức; thậm chí từng thấy cả quảng cáo khiêu dâm ở dạng thumbnail trên di động, còn tệ hơn cả quảng cáo Evony Online ngày xưa; cho rằng đây là dấu hiệu YouTube đang chững tăng trưởng

    • Trong khi quảng cáo truyền hình có khung thời lượng nhất định, YouTube lại có quá nhiều quảng cáo tệ và dài; đôi khi chỉ phát nền mà sau khi bỏ qua quảng cáo 5 giây có thể skip lại bị chen vào một quảng cáo dài 30 phút, thậm chí lâu hơn; thật kỳ quặc và gần như mang tính tội lỗi khi họ cho phép những quảng cáo dài như vậy phá vỡ dòng xem một cách ngoài ý muốn; đoán rằng để lôi được loại quảng cáo này thì YouTube hẳn cũng thu phí quảng cáo rất lớn

    • Nguyên tắc là nỗ lực và lao động để làm nội dung cũng như xây dựng nền tảng phải được đền đáp xứng đáng; sách, phim, TV, tin tức và mọi loại nội dung đều có cấu trúc người dùng phải trả giá, bằng tiền hoặc bằng việc xem quảng cáo; nếu ghét quảng cáo thì nên trả tiền thuê bao

    • Nếu có lá cờ “Thin Adblock Writer Line” để ca ngợi các nhà phát triển trình chặn quảng cáo, thì đã treo lên xe từ lâu rồi

    • Đề xuất đơn giản là cứ trả tiền cho gói Premium; chẳng ai bắt buộc phải dùng YouTube cả

  • Nhắc rằng trên Firefox có thể chặn quảng cáo dễ dàng bằng bộ lọc HTML; đồng thời ngạc nhiên khi biết cách này bất khả thi trên Chromium vì không có API extension tương ứng, và sốc trước khác biệt về môi trường phát triển

    • Quyết tâm rằng khoảnh khắc Chrome khiến các extension chặn quảng cáo như uBlock Origin không dùng được vì chính sách “Manifest V3”, sẽ lập tức chuyển sang trình duyệt khác
  • Gần đây thường xuyên gặp hiện tượng YouTube cố tình trì hoãn thời gian buffering, nhưng thật ra không thấy quá bất tiện; lý do ghét quảng cáo không phải vì thời gian, mà vì bị ép phơi nhiễm âm thanh và hình ảnh vốn dĩ không mong muốn; trong 12 giây buffering thì chỉ kiểm tra email hoặc ngồi ngẩn ra một chút nên cũng tự nhiên thích nghi; thậm chí nếu buffering lặp lại thường xuyên thì não còn tự động bỏ qua; có lẽ kiểu thỉnh thoảng mới xảy ra, như 1 lần trong 5 lần, còn khó chịu hơn

    • Thỉnh thoảng thấy pop-up “hãy kiểm tra vì sao phát chậm” cùng với độ trễ lúc bắt đầu phát video, nhưng vì đã biết lý do nên cũng không bận tâm lắm
  • Đặt câu hỏi nền tảng: “Vì sao chúng ta lại biện minh cho việc chặn quảng cáo? Nội dung có chi phí, lưu trữ và phân phối cũng tốn tiền, vậy có cơ sở đạo đức hay cảm giác đặc quyền nào cho việc chặn quảng cáo không?”; nếu chỉ vì quảng cáo gây khó chịu, thì có lẽ nên tự hỏi ngược lại “vì sao chúng ta mặc nhiên cho rằng mọi thứ phải miễn phí?”; đây không phải phán xét đạo đức mà chỉ là câu hỏi để hiểu rõ hơn

    • Trước đây Google AdSense từng giới hạn 3 quảng cáo mỗi trang và vi phạm còn bị đình chỉ, nhưng bây giờ một trang web có thể gài 10, 15 quảng cáo hoặc hơn; YouTube cũng từ banner ban đầu đã tràn sang quảng cáo trước video, quảng cáo giữa video, các đoạn tài trợ nằm ngay trong nội dung, thậm chí cả quảng cáo phía dưới với thuê bao Premium; ngay cả tìm kiếm Google cũng bị quảng cáo lấp đầy phần trên đến mức phải cuộn qua mới thấy kết quả tự nhiên; không hẳn muốn đòi quyền được dùng miễn phí, nhưng vì cảm giác “mọi thứ đã đi quá xa” nên dùng adblock trên mọi thiết bị

    • Chỉ ra rằng chính câu hỏi “vì sao chúng ta cảm thấy mình có quyền với đồ miễn phí?” đã khác với cách người dùng thực tế suy nghĩ; người ta làm vì làm được và vì muốn làm, nên bên muốn ngăn cản phải có lý do đạo đức; không có nghĩa vụ đạo đức nào buộc ai phải xem quảng cáo; ngược lại, quảng cáo vốn mang tính thao túng và xâm phạm quyền riêng tư vì nó lợi dụng sự chú ý của con người để trục lợi, nên bản chất là một thỏa thuận không thể bị ép buộc

    • Ví Google đang giả vờ đứng về phía người dùng trong khi thực tế ngày càng thù địch và phản cạnh tranh, nên chặn quảng cáo giống như cầm súng trong chiến tranh; ngày xưa quảng cáo vốn khó hoặc không thể chặn, nhưng phần lớn quảng cáo bị chặn ngày nay thực chất là dạng lai giữa quảng cáo và giám sát; kèm các liên kết bài viết liên quan và kiến thức nền bổ sung

    • Chỉ ra cấu trúc doanh thu trong đó nhà sáng tạo YouTube nhận 55% tổng doanh thu; giữa bầu không khí chỉ trích hệ thống lợi nhuận khổng lồ của Google, thực tế phần lớn chi phí chủ yếu vẫn chảy về phía nhà sáng tạo; các hình thức ủng hộ tích cực như tài trợ Patreon chỉ có một số fan cuồng mới thực hiện, còn đa số người dùng thì vừa ăn tiệc miễn phí vừa chỉ biết than phiền về nhà hàng trong khi né tránh gánh chi phí

  • Chỉ ra rằng cách script dùng Object.defineProperty để biến thuộc tính của global object thành bất biến, qua đó cho phép né chặn bằng đối tượng mồi nhử, là một lỗi nghiêm trọng ở mức trình duyệt hoặc đặc tả; lập luận rằng nội dung trang và script của trang không được phép hạn chế chức năng của extension trình duyệt

    • Giải thích rằng đây đúng là một “tính năng” của Chrome; khoảng 2 năm trước Chrome đã áp dụng một bản cập nhật trì hoãn khởi tạo extension, khiến trang được đóng cuối cùng tải lên rất nhanh mà không có bộ lọc hay chặn nào, và trong quá trình đó còn có thể phát hiện adblocker
  • Bản thân cho biết mục đích của việc chặn quảng cáo là để tránh xao nhãng và chuyển ngữ cảnh; vì tình trạng quá tải thông tin do quảng cáo gây ra khiến sự khó chịu càng lớn hơn trên nền nhận thức vốn đã chịu tải cao

    • Hỏi ngược rằng xem YouTube thì làm sao tải nhận thức lại có thể cao được, nửa đùa nửa thật là chẳng lẽ đang quan sát video huấn luyện phẫu thuật thật và thực hiện cả ca ghép tim ở giữa hay sao

    • Ý kiến rằng chỉ cần trả 13 USD mỗi tháng là giải quyết dễ dàng chuyện chuyển ngữ cảnh; nếu tải nhận thức cao đến thế thì hẳn cũng kiếm đủ tốt, nên làm vậy còn hiệu quả hơn

  • Chia sẻ ngắn gọn trải nghiệm của một người sẵn sàng trả Youtube Premium cho cả gia đình để vừa loại bỏ quảng cáo vừa đảm bảo doanh thu cho người làm nội dung

    • Người khác thì hoàn toàn không đồng ý và dùng Newpipe, vẫn xem không quảng cáo mà không tốn một xu nào

    • Không rõ bài trên là châm biếm hay không, nhưng nếu là thật thì thấy khá bất ngờ khi có người vui vẻ và tự nguyện trả thêm tiền cho các đại địa chủ Internet

  • Có ý kiến cho rằng thật lạ khi YouTube vẫn chưa tiêm quảng cáo trực tiếp vào luồng video; trong môi trường HLS/DASH, việc chèn nội dung giữa chừng khá dễ nên nếu nhúng luôn vào stream thì adblock sẽ khó hơn; thêm nữa nếu giới hạn truyền gói theo tốc độ phát thì cũng có thể chặn cách tải trước để lách luật

    • Giải thích rằng ngay cả trong môi trường đó, HLS đã được tối ưu hóa ở quy mô phần cứng rất lớn, nên nếu thêm khối lượng tính toán để phục vụ quảng cáo nhắm mục tiêu thì chi phí chắc chắn sẽ tăng vọt; gợi ý tham khảo tài liệu tối ưu hiệu năng máy chủ biên streaming của Netflix để hiểu thêm

    • Phân tích rằng YouTube không muốn thay đổi quá nhanh mà sẽ triển khai dần dần; dự đoán kịch bản sớm muộn gì cũng sẽ là quảng cáo được chèn trực tiếp vào stream; hiện tại quảng cáo và luồng video vẫn tách rời, nhưng họ cũng đang thử nghiệm riêng việc chèn quảng cáo phía máy chủ

    • Giới thiệu xu hướng chặn quảng cáo kiểu trí tuệ đám đông dựa trên timestamp như SponsorBlock, Tubular; trong tương lai còn sẽ có chặn quảng cáo bằng AI nhận diện nội dung theo thời gian thực ngay trên thiết bị, nên dù có ngăn thế nào thì adblock cũng không dễ bị dập tắt

    • Chia sẻ rằng thực tế YouTube hiện đang A/B test quảng cáo chèn phía máy chủ (SSAI); bản thân chưa gặp loại quảng cáo đó nhưng cung cấp tình hình liên quan

    • Cho rằng nếu phía client có thể chèn quảng cáo vào video thì cũng có thể cắt nó ra; với cơ sở dữ liệu cộng đồng kiểu sponsorblock thì việc phát hiện quảng cáo là hoàn toàn khả thi, và quảng cáo trong stream cũng có thể bị vượt qua để chặn