Trong bài viết này, chúng ta sẽ tập trung tìm hiểu về cấu hình stream, để tìm ra thông số tốt nhất nhằm đạt cân bằng hiệu quả giữa chất lượng và độ mượt, và mỗi chế độ encode ảnh hưởng kết quả stream như thế nào.

Trước khi bắt đầu… một trong những điều quan trọng nhất mà chúng ta muốn biết là phần mềm encode trên CPU hay phần cứng trên GPU tốt hơn. Đây là một trong những tranh cãi quan trọng, vì nếu encode bằng GPU là hướng đi đúng, thì cấu hình bạn cần stream trên CPU là gì cũng không quan trọng. Nhưng nếu ngược lại, CPU encode tốt hơn, thì hiển nhiên lựa chọn CPU của bản thân sẽ đóng vai trò về chất lượng của stream và cả trong game.

Trong những tháng qua, GPU encode đang dần trở nên hấp dẫn hơn do Nvidia đã nâng cấp engine encode của họ trong cấu trúc GPU mới, Turing.

stream

Trong khi rất nhiều người tập trung cải thiện tương thích HEVC và hiệu năng – thứ không thật sự quan trọng để stream game hiện tại – engine Turing mới sẽ cải thiện 15% chất lượng H.264 tốt hơn engine Pascal cũ (dòng GTX 10). Cho nên đây cũng là điều chúng ta hướng đến, để xem Turing đối đầu với phần mềm encode x264 như thế nào.

Về GPU, chúng ta sẽ dùng RTX 2080 Turing encode, và Titan X Pascal cho Pascal Encode, và chúng ta sẽ xem AMD đối chọi như thế nào bằng Vega 64.

Tìm hiểu thứ hai bai bao gồm encode bằng phần mềm với x264, với nhiều preset (cấu hình) khác nhau. Chúng ta sẽ đề cập so sánh các CPU khi sử dụng phần mềm encode trong một bài viết khác, bài này sẽ xem mỗi preset ảnh hưởng đến chất lượng và độ mượt như thế nào.

stream

Tất cả bài kiểm tra sử dụng Core i7-8700K ép xung lên 4.9 GHz và 16GB DDR4-3000 RAM, cấu hình khuyến nghị để chơi game cao cấp. Trong tương lai, chúng ta sẽ thấy 9900K cùng với các CPU Ryzen của AMD.

Về phần mềm stream, chúng ta sẽ sử dụng OBS mới nhất, cấu hình 1080p 60 FPS với bitrate là 6000 kbps. Đây là cấu hình đề nghị tối đa trên Twitch. Nếu chỉ muốn quay lại gameplay vì những mục đích khác, bạn nên đẩy bitrate cao hơn, nhưng với Twitch, bạn chỉ cần giữ tại 6Mbps hoặc thấp hơn.

Bài viết sẽ thử nghiệm hai game: Assassin’s Creed Odyssey yêu cầu GPU và CPU cao, đây là điều CPU encode hay gặp khó khăn; và Forza Horizon 4, yêu cầu ít CPU hơn nhưng do diễn biến nhanh, encode ở bitrate thấp có thể gặp vấn đề.

Chúng ta sẽ bắt đầu bằng GPU encode. Chúng ta hãy xem Turing có cải thiện nhiều so với GPU encode cũ không – Pascal gần như không thể sánh được với CPU encode.

Với card Nvidia, bài viết dùng NVENC trong OBS, và để preset là High Quality tại 6 Mbps. OBS có vài lựa chọn khác nhưng High Quality, như cái tên đã nói, cho ra chất lượng cao nhất. VỚi AMD Vega 64, chúng ta có thể vài lựa chọn encode, cả về preset và birate nhưng không đạt kết quả khả quan.

Khi so sánh NVENC của Turing và Pascal, thật sự không có khác biệt ở 6 Mbps. Cả hai đều chịu ảnh hưởng ‘cộm’, nhìn chung hình ảnh thiếu độ chi tiết. Cụ thể là Forze Horizon 4, các khối cộm rất dễ thấy trên đường và nhìn rất xấu. Encode của Turing có vẻ sắc nét hơn và trong vài tinh huống, ít cộm hơn, nhưng cả hai nhìn chung không đẹp. Và nếu muốn stream game, đây chắc chắc không phải là chất lượng sẽ gây ấn tượng cho người xem.

stream

Encode của AMD còn tệ hơn khi GPU được sử dụng gần như 100%. Phần mềm không thể render quá 1 khung hình một giây – nhưng với các card Nvidia thì chẳng gặp vấn đề gì.

Nếu sử dụng ‘frame limiter’, GPU chỉ còn sử dụng 60% trong Forza Horizon 4 và dù để encode preset là ‘Quality’, chấ lượng của Vega 64 vẫn kém hơn những card Pascal của Nvidia.

stream

Vậy là AMD đã nằm ngoài cuộc đua, chúng ta hãy nhìn xem NVENC của Nvidia đối đầu với encode phần mềm x264 trên CPU như thế nào. Trong benchmark của Assassin’s Creed Oyssey ở các cảnh chậm, NVENC dù sử dụng preset High Quality vẫn kém hơn preset veryfast của x264, về mặt chi tiết hình, dù cả hai bị giới hạn ở 6 Mbps.

Veryfast x264 không gấy ấn tượng, nhưng khi so với NVENC của Turing thì nó thật sự hơn hẳn.

stream

Trong benchmark Forza Horizon 4 ở những cảnh nhanh, NVENC của Turing vượt mặt x264 veryfast ở vài lĩnh vực, NVENC một lần nữa gặp chút khó khăn do bị ‘cộm’ trong khi veryfast trục trặc với các chi tiết di chuyển. Với tốc độ như thế trong game, NVENC gần như ngang ngửa với preset ‘faster’ của x264.  Thế nhưng, ‘fast’ preset của x264 tốt hơn rất nhiều so với NVENC trong di chuyển nhanh, và hoàn toàn bỏ xa đối thủ khi game di chuyển chậm hoặc ngưng hẳn.

stream

Các kết quả trên có phần ngạc nhiên do Nvidia trước đó cho biết engine Turing NVENC mới để encode H.264 tương đương với x264 ở preset ‘fast’ hoặc nhanh hơn chút tại 6000 Kbps với stream 1080p 60 FPS. Nhưng từ những gì chúng ta quan sát, đặc biệt là trong Assassin’s Creed Odyssey, phần mềm encode vẫn tốt hơn.

stream

Preset ‘fast’ là cấu hình thấp nhất bạn nên cân nhắc nếu muốn stream chất lượng, nếu bạn coi trọng chất lượng hình ảnh với người xem. Nó vượt bậc về chất lượng so với faster.

Medium một lần nữa cải thiện tốt hơn, nhưng khoảng cách giữa fast và medium nhỏ hơn giữa faster và fast. Rất khó để đạt được medium preset ở phần cứng mà máy tính đang dùng. Bài viết cũng thử qua ‘slow’ preset nhưng máy tính không thể kham nổi.

stream

Còn ở chuyển động nhanh trong Forza Horizon, bài viết hoàn toàn khuyên bạn không nên dùng preset ‘veryfast’ vì nó kém hơn NVENC ở khoảng này. Đáng tiếc, giới hạn 6000 kpbs ngăn cản chất lượng preset được thể hiện rõ ràng hơn, nhưng medium sẽ cải thiện hơn so với fast.

Preset ‘faster’ nhìn cũng tệ cho nên với những game như thế này, tốt nhất là nên để medium. Đáng tiếc, Twitch đã giới hạn 6 Mbps.

Độ mượt

Chất lượng hình ảnh chỉ là một khía cạnh, khía cạnh còn lại là độ mượt. Bạn cần phải đảm bảo trải nghiệm chơi game của bản thân cũng như độ mượt trong stream không bị ảnh hưởng.

Chúng ta hãy cùng nhìn qua GPU encode và xem nó ảnh hưởng như thế nào:

stream

stream

NVENC của Pascal hoặc Turing không ảnh hưởng đến lượng khung hình nhiều, chỉ 10-20% tùy thuộc vào game, nói cách khác, bạn sẽ bị rớt khung hình khoảng 10-20% khi ghi hình bằng NVENC, so với lúc chỉ chơi game.

Tin vui là, tuy bạn chạy game ở lượng khung hình thấp hơn khi NVENC đang chạy, stream vẫn có độ mượt hoàn hảo, không bị rớt khung hình, dù game có đang dùng 100% GPU. Engine encode của AMD không ảnh hưởng khung hình game nhiều, nhưng nó rớt 90% khung hình khi GPU bị sử dụng quá mức, khiến cho AMD gần như vô dụng, như đã bàn luận ở trên.

stream

stream

Độ mượt của phần mềm encode tùy thuộc vào game bạn chơi. Trong Assassin’s Creed Odyssey, game dùng cả CPU và GPU: stream sử dụng CPU sẽ ảnh hưởng rõ rệt lên khung hình, và preset High Quality khó mà bắt kịp game.

Với Core i7-8700K và RTX 2080, khi chơi Odyssey bằng preset tự chỉnh, chúng ta chỉ có thể encode game sử dụng preset ‘veryfast’ x264 mà không bị rớt khung hình trong stream. X264 veryfast cũng giảm khung hình xuống 17%, giảm hơn nhiều so với NVENC. Encode veryfast nhìn tốt hơn NVENC trong game này, cho nên đánh đổi là hoàn toàn xứng đáng.

Tuy nhiên, preset ‘faster’ bắt đầu chứng kiến khung hình giảm trên stream. Giảm 8.5%, stream giật và khó theo dõi. Trong khi đó, độ mượt trong game giảm từ 90 FPS trung bình, xuống còn 63 FPS với chỉ 1% cao hơn 30 FPS. Rõ ràng preset này khiến máy tính không thể xử lý nổi. Thế nhưng, độ mượt của game lại tốt hơn chút ở những preset này so với ‘faster’, nhưng có thể là do phần mềm encode chiếm nhiều tài nguyên hơn, chỉ cho game sử dụng một chút CPU.

Một cách để cải thiện độ mượt của game là giới hạn game ở 60 FPS, do những ai theo dõi stream cũng chỉ coi được tối đa 60 FPS mà thôi. Dù đã giới hạn, mọi thứ cũng khôn mấy tốt hơn: preset ‘fast’ giảm 9% lượng khung hình, trong khi ‘faster’ không giảm khung hình, nhưng có khả năng bị 1% rớt khung hình xuống 40 FPS. Lựa chọn duy nhất là sử dụng ‘fast’ để giảm chất lượng hình ảnh và thử lại, nhưng bài viết này mục đích không phải để tối ưu hóa stream Assassin’s Creed.

Với 8700K bị giới hạn stream ở veryfast, chúng ta hãy xem những CPU khác vận hành như thế nào trong phần 2 của bài viết này. Nhưng rõ ràng 8700K – CPU cao cấp phổ biến cho chơi game – thường được dùng để stream. Những CPU thấp hơn, cụ thể là ít số lượng nhân hơn, sẽ phải chạy preset ‘veryfast’ thường xuyên hơn.

stream

stream

Còn với Forza Horizon 4, game sử dụng ít CPU hơn, nên phần mềm encode dùng CPU cho ra game mượt hơn là phần cứng encode dùng GPU. Hiển nhiên, phần mềm có thể tận dụng CPU nhiều hơn để stream, mà không ảnh hưởng qua GPU.

Sử dụng preset x264 ảnh hưởng độ mượt của game thêm 6%, nhưng khác biệt giữa veryfast và fast chỉ là 5% giảm thêm , dù CPU phải sử dụng rất nhiều trong preset ‘fast’.

Về stream, chúng ta không thấy được khung hình bị giảm trong veryfast lẫn faster, tuy nhiên, khi sang fast, lượng khung hình giảm 12% trong streamStream trở nên bị giật khó theo dõi được. Tuy nhiên, do game đang chạy đạt gần 120 FPS, chúng ta có thể giới hạn 60 FPS để giảm áp lực lên CPU. Với giới hạn 60 FPS, preset ‘fast’ có thể dùng được mà không bị rớt khung hình trên stream. Giới hạn đó cũng mở đường cho lựa chọn stream preset ‘medium’, tuy nhiên với 8700K, chúng ta thấy tất cả khung hình giảm 2% với giới hạn 60FPS, dù không lý tưởng. Nếu muốn encode ‘medium’, chúng ta phải giảm áp lực CPU trong game bằng cách giảm cấu hình của game xuống.

TỔNG KẾT (Sẽ tiếp tục ở phần 2)

Với tất cả thí nghiệm trên, đây là tổng kết những gì chúng ta rút ra được. Với những ai đang cân nhắc mua card đồ họa hiện tại, thì engine Turing cho H.264 không thật sử cải thiện nhiều so với Pascal và hiển nhiên, stream bằng GPU vẫn chưa phải là lựa chọn tối ưu.

Bạn chỉ nên dùng NVENC ở game tốc độ nhanh, với hệ thống CPU encode không thể đạt preset x264 ‘faster’ hoặc tốt hơn. Các game có chuyển động ít hơn nên sử dụng verfast x264 preset thay vì NVENC, và veryfast có thể đạt được với đại đa số máy tính stream (tức lắp máy mục đích để stream).

Về mảng AMD, engine encode của họ cần phải thay đổi nhiều hơn. Nó không thể vận hành khi GPU chạy quá nhiều, kể cả khi chạy được thì chất lượng cũng kém.

stream

CPU encode rõ ràng khó hơn, do bạn phải xác định mức độ x264 encode mà máy có thể kham được (cụ thể hơn: PC bạn chịu nổi tựa game nào). Với hệ thống 8700K, chúng ta mắc kẹt ở encode ‘veryfast’ trong game sử dụng nhiều CPU – hoặc chạy được preset ‘fast’, có khi là ‘medium’ khi giới hạn game ở khung hình 60FPS, giúp cho CPU ít quá tải hơn.

Nhưng những gì streamer nên hướng đến là sử dụng preset ‘fast’, đó là preset mà chất lượng hình ảnh đẹp ở 6 Mbps trên stream Twitch, và tuy nó không lý tưởng cho những game có tốc độ cao, fast tốt hơn faster hay veryfast rất nhiều. Medium cũng đáng để thử ở những máy tính cao cấp, nhưng tốt nhất là đừng quan tâm đến ‘slower’ preset làm gì.

Việc chơi game và stream trên cùng một máy tính là điều tốt, nhưng nó chỉ nên áp dụng nếu bạn là streamer bán thời gian hay giải trí. Với những streamer chuyên nghiệp hay toàn thời gian, họ nên sử dụng máy tính thứ hai chỉ chuyên dùng để stream, sử dụng CPU và capture card tốt. Điều này sẽ giảm tải lượng encode, cho phép bạn stream ‘preset’ hoặc ‘slower’ thoải mái với chất lượng stream tốt nhất mà không ảnh hưởng đến chất lượng trong game.

Phần hai của bài viết này sẽ tìm hiểu CPU nào có thể encode ở những preset kể trên.

Bài viết liên quan
ĐẶT LỊCH
MIỄN PHÍ
HOTLINE
09 241 242 43
ĐẶT LỊCH
MIỄN PHÍ
HOTLINE
09 241 242 43