yes, it's a little mess and I'm confused too. but the main purpose is to give space when we want add new buffer level while user need not change the existed setting.
or try this:
bitfields group 1:
0: no buffer
1: buffer true internet filesystems
2: buffer all internet filesystems
3: buffer all filesystems

bitfields group 2:
0: no double-buffer
1: reserved for auto-detect files need double-buffer.
2: double-buffer for all mp4/avi files
3: double-buffer for all files type
4: <-- this one is special bitfield with internet filesystem detect can combine with the previous 3 levels of double-buffer result 5,6,7

result buffer level = (bitfield 1) << 4 | (bitfield 2)