Welcome to Arcane Weekly! ใน Corner วันนี้เรื่อง Linux Problems ที่รบกวนผม ผมอยากพูดถึง Usecase ที่ Curious ค่อนข้าง คุณมี Plasma Desktop Environment ใช้ Dolphin File Manager เข้าถึง Windows Share ผ่าน Samba แล้วอยากเล่น Video Clip แปลกๆ ที่เก็บบน Samba Share เปิดใน VLC บางครั้ง Works บางครั้ง Doesn't
ผมเจอปัญหานี้เดือนๆ นี้ - และไม่เหมือนจำกัด Version Plasma ใดๆ แม้เห็นหลักใน Later Editions เช่น Plasma 5.17 และ 5.18 สิ่งต่างๆ Improved Fair Deal โดยเฉพาะ Local Caching แต่ Intermittent Playback Issues ยังคงอยู่ ลองเล่นไฟล์ แล้ว Nothing Happens แต่วันอื่น Works Fine มา Debug กัน
ปัญหาระดับละเอียด (Problem in More Detail)
ไม่มีอะไร Indicate ว่าเกิดอะไรขึ้นเบื้องหลังใน VLC - เพราะมันแค่ไม่เล่นไฟล์ ต้องการ Info มากขึ้น Best Way คือ Launch Media Player จาก Command Line แล้ว Check Errors และแล้วมันมา:
smb stream error: read failed (Software caused connection abort)
มันไม่บอกมาก - และ Internet มีอะไรเยอะเกี่ยว Topic นี้ แต่ Issues และ Proposed Solutions ส่วนใหญ่ไม่ Definitive แต่ Point ไปที่ Problem กับ Data Read เดาได้ว่า Dolphin พยายาม Grab Chunk ของ Data จาก Share แต่มันไม่ Work Hint นั้น และเราไป Explore
Solution (วิธีแก้)
หลัง Digging มาก ผมเจอ VLC Bug ที่ Nail Down ปัญหา ปรากฏใน Builds ใหม่ของ Media Player โดยเฉพาะ Version 3.0.8 ขึ้นไป สอดคล้องกับ Changes เยอะใน Plasma ที่ Compound ปัญหา เพิ่มเติม ปัญหา - แม้ VLC Specific - แต่ก็ Plasma Specific เพราะ Builds เดียวกันของ VLC ทำงาน Fine ใน Xfce และ Gnome Desktops ที่ใช้ GVFS สำหรับ Remote Connections ต่างจาก KIO ที่ใช้ใน Plasma
VLC 3.0.8 เปลี่ยน Prefetch Read Value - ซึ่ง Trigger Odd Behavior ใน Plasma Check และ Tune Value ใน VLC Preferences Show All Settings > Streams Filters > Prefetch โดย Default จะเห็น Buffer Size = 16 KB แต่ Read Size = 16 MB ถ้า Change Read Value ให้ Match Buffer Value และ Restart VLC มันจะ Behave Normally และเล่นไฟล์จาก Samba Shares โดยไม่มี Connection Abort Errors

สรุป
ขอบคุณ Person ที่หาเจอจริง - Avatar Harvester เหมาะสม เพราะคนนั้น Dig และเจอ Solution ฮาฮาฮ่า ตอนนี้เรามี Two Factors VLC Version เล่นรôle แต่ Issue ก็ Plasma Only และเกิดใน Newer Versions แม้เราไม่สามารถ Disassociate Development ในทั้งสอง Frameworks แบบ Parallel ซึ่งอธิบายว่าทำไมไม่ Witness ใน Older Plasma Releases หมายความว่ามี Three Conditions ต้องเกิดพร้อมกัน Compound Issues ไม่ Fun ที่จะ Troubleshoot
หวังว่า Remote Share Connectivity Stack ใน Plasma จะ Fixed เร็วๆ เพราะตอนนี้ Lag Behind Other DEs ที่นั่น Transparent และควรเป็นอย่างนั้น Bug Tracker Useful แต่กลัวคนไม่มากจะเห็น และ Underlying Bug Conditions ยังคงอยู่ แต่หวังว่า Resolves Issue ของคุณ และจบที่นี่
ขอให้สนุกกับการทำงาน!