=== MrTuxHdb is now known as Tux|AFK === Tux|AFK is now known as MrTuxHdb [06:23] Buổi chiều tốt lành [06:23] vubuntor530: hi [06:24] Hỗ trợ mình dòng code này với [06:24] (*((l_uint32 *)(pdata) + ((n) >> 5)) |= (0x80000000 >> ((n) & 31))) [06:26] @@ [06:26] uh huh [06:26] chỗ này đâu phải chỗ hỗ trợ code c đâu nhỉ? =]] [06:27] nhìn mấy cái bit manipulation này ớn qué [06:27] :3 [06:27] Èo mình tưởng hỗ trợ Ubuntu thì có + c trong đó nữa chứ [06:28] Với lại ở đây chắc cũng ~ godlike rồi nên vào tham khảo [06:29] vubuntor530: nếu bạn nói được ubuntu với c có liên quan với nhau thế nào thì /me xem qua thử :P [06:30] Không phải c gần như là nền tảng của Ubuntu sao [06:31] nope [06:32] ở đây giờ toàn viết ngôn ngữ bậc cao rồi [06:32] thế cái kia lại là code video với ảnh hẻ? [06:32] Trời bậc cao không phải có bậc thấp thì mới lên được bậc cao sao [06:33] Theo mình hiểu nôm na là lấy giá trị của một pixel của ảnh [06:33] vubuntor530: ở đâu ra cái lý thuyết đó thế, bạn thấy ai học java mà phải học assemby chưa? [06:34] nhưng nó viết kiểu đó khó hiểu quá [06:34] vubuntor530: phân tích từng dấu ngoặc một đi [06:34] ờ :3 [06:35] (*((l_uint32 *) cái này đã không hiểu rồi thì lấy gì hiểu cái sau [06:35] sao cái đó lại không hiểu [06:35] :3 [06:35] (l_uint32 *)(pdata) [06:35] cái ni là cái dzì? [06:35] l_uint32 thì ~ kiểu int trong java thì phải [06:35] pdata là một biến thôi [06:35] vubuntor530: thế còn cái này có hiểu không ? ((n) & 31) [06:36] #define SET_DATA_BIT(pData, n) (*((l_uint32 *)(pdata) + ((n) >> 5)) |= (0x80000000 >> ((n) & 31))) [06:37] lolz [06:37] đồ án? [06:37] Không dự án [06:37] ấy [06:37] thế hỏi từng line thế này [06:37] * PlebCrab ngửi thấy mùi tiền [06:37] thì chết [06:37] :)) [06:38] Tiền gì [06:38] Không có tiền [06:38] dự án mà không có tiền thì nghỉ đi [06:38] :3 [06:38] PlebCrab: see [06:38] nghỉ thôi [06:38] * MrTuxHdb bò đi nằm [06:38] friendly mode, bro [06:39] * Severus__ lôi MrTuxHdb ra, ngủ gì giờ này [06:39] PlebCrab: bạn nhiệt huyết làm cho có kinh nghiệm mà [06:39] : [06:39] :3 [06:39] Severus__: bạn vubuntor530 không thèm trả lời mình, không chơi nữa... hix hix [06:39] Muốn có tiền thì phải qua rất nhiều rất nhiều công đoạn nữa [06:39] xa lắm [06:39] chưa gì cái tiền thì sẽ không có tiền [06:40] Nhưng vẫn có tiền mua mì tôm [06:40] Eo mấy thánh giúp với [06:41] Muốn chuyển code đó qua java không hiểu nên bí rị [06:42] Nhiều người nói quá nên loạn [06:42] uh huh [06:45] vubuntor530: bọn đọc trước spec của loại ảnh đấy [06:45] bạn* [06:46] xem data format nó thế nào thì dễ hiểu hơn [06:47] Kiểu dữ liệu trả về ấy hả? [06:47] không [06:47] kiểu ảnh cơ [06:47] picture format ấy [06:50] kiểu string thôi [06:51] iforamt = "png", gif .... [06:51] không... [06:52] thôi được rồi [06:52] thế 'pdata' nó là cái gì? [06:54] là một con trỏ [06:54] con trỏ của loại gì... [06:54] nó có ý nghĩa gì [06:54] nó trỏ đến thông tin nào của image [06:54] 32 bit word trong một araay [06:55] trỏ đến điểm ảnh thooi bạn [06:55] array ở đây là ma trận ảnh [06:56] giống như setPix của ảnh trong c# or java gì đó [06:57] Mình hiểu nôm na là vậy [06:57] uh huh [06:57] Nhưng mà nó thể hiện kiểu khó hiểu quá [06:57] chơi nhau mà [07:05] điểm ảnh này là màu rgb? [07:06] 32 bit thì thường nó là 8 bit 1 màu [07:06] và 8 bit alpha layer nữa [07:06] 1 2 4 8 16 32 có hết [07:07] mà trông cái kia thấy.. chả giống lắm [07:07] cái nào? [07:07] cái dòng trên kia kìa [07:07] À đoạn code ấy hả [07:07] PlebCrab: đừng có đem mấy cái ảnh vào. cứ nhìn code rồi nói thôi :P [07:08] Đúng đúng [07:08] đem ảnh vào làm gì [07:08] không hiểu nó dùng để làm gì [07:08] Để mình nói thế này [07:08] thì phán nó làm gì [07:08] rất là khó [07:08] pData là giá trị của điểm ảnh [07:08] n và vị trí của nó trên ma trận các điểm ảnh [07:09] * Stanley00 nhìn cái tên rồi phán là đủ rồi =]] [07:09] còn hiểu tất nhiên là hiểu [07:09] nhưng chỉ hiểu máy móc thôi [07:09] Đúng rồi mình chỉ hiểu thế thôi [07:09] ví dụ cái này: ((n) >> 5) [07:09] tại sai lại là 5? [07:09] a dich phải [07:09] sao* [07:10] Éo hiểu mấy thánh hồi xưa viết vậy thì biết là vậy [07:10] đâu có thế được [07:10] hiểu thì phải hiểu sâu xa ngọn ngành chứ [07:11] * PlebCrab thắc mắc mỗi cái số 5 đấy thôi [07:11] PlebCrab: vì 2**5=32 :P [07:12] Stanley00: 32 ở đây là gì? [07:12] PlebCrab: 32 từ thằng này nè l_uint32 [07:13] Stanley00: không [07:13] chả liên quan [07:14] PlebCrab: sao lại không? SET_DATA_BIT(pData, n) là set bit thứ n trong bit array pData, nên do chỗ cast sang uint32 nên n phải dịch đi 5 bit đó [07:15] thế ví dụ mình muốn set bit thứ 1 [07:15] thì đưa vào kết quả nó ra thế nào? [07:15] PlebCrab: nếu cast pData thành uint8 thì n dịch đi 8, số 31 chuyển thành 7 và 0x8000000... chuyển thành 0x8 thôi [07:16] Stanley00: nếu thế ban đầu nó phải là 64 bit? [07:18] PlebCrab: cái chỗ cast đó đang khá là platform depend. Lấy ví dụ n=1 đi, thì nó sẽ thành pData[0] |= (0x80000000>>1) [07:18] PlebCrab: tức là set cat bit kế MSB của pData[0] [07:19] còn nếu n=32 chẳng hạn, thì nó sẽ set bit MSB của pData[1] [07:19] haiz [07:19] ok [07:19] với điều kiện là pData là uint32 * [07:19] hiểu rồi [07:20] * PlebCrab giờ nhìn cái gì cũng phải ghi rõ type ra [07:21] PlebCrab: static type good mà :3 [07:22] okay [07:22] * PlebCrab chui vào xó [07:22] may mà không phải code C [07:23] PlebCrab: code c kiểu như trên không thú vị à? :3 [07:23] hem [07:23] chả thấy thú vị gì [07:24] okay.png [07:26] mm [07:26] đúng là lâu ngày không sờ vào C giờ thấy mấy cái * với chả & chả nhớ gì nữa [07:27] life sad [07:27] thôi quay lại chủ đề [07:27] vubuntor530: thế hỉu chưa? [07:28] * Severus__ nổ não [07:41] * PlebCrab thả ve kêu ve ve [07:42] PlebCrab, chỗ này cũng thả đc ah :p [07:46] hết hè rồi PlebCrab [07:49] * PlebCrab thả dĩn cắn Severus__ [07:58] * Severus__ đạp hẹp PlebCrab [08:13] Sorry đang họp [08:13] đang giải quyết vấn đề này [08:13] có kết quả thông báo sau [08:14] uh huh [08:14] * PlebCrab lại ngửi thấy mùi tiền [08:15] * MrTuxHdb lót dép ngồi hóng =)) [08:16] =)) [08:22] mọi người cho mình hỏi là đôi khi thực thi lệnh thì cần sudo, đôi khi lại không cần [08:22] vậy cho mình hỏi làm cách nào để biết khi nào cần khi nào k? [08:23] vubuntor665: sudo để làm gì thế bạn? [08:23] giống như cài nginx thì mình thấy có trang để sudo apt-get install nginx nhưng mình không để sudo vẫn chạy ngon lành [08:23] vậy có phải điều đó là thừa k? [08:24] không [08:24] tại sao? [08:24] vubuntor665: vì chỉ quản trị viên mới có quyền cài đặt gói vào hệ thống [08:24] không có sudo bạn chỉ là thường dân thôi [08:24] :3 [08:25] àh [08:25] nhưng mình login vào root [08:25] thì mọi lệnh đều có thể bỏ sudo? [08:26] yep [08:27] bao gồm việc tự xóa hệ thống [08:27] hay cài đặt rootkit [08:27] cài hàng để nó ăn cắm thông tin [08:27] :D [08:27] àh [08:27] mình còn 1 cái nữa [08:28] không hiểu tại sao mình dùng lệnh: mkdir /var/www/abc/xyz lại không đc [08:28] nó cứ báo no such directory [08:28] trong khi mình lại muốn tạo thư mục giống đường dẫn đó [08:28] vậy khắc phục ntn? [08:28] tại lúc làm không được thì mình phải cd vào /var/www rồi mkdir abc rồi cd vào abc mkdir xyz [08:29] vubuntor665: mkdir --help /var/www/abc/xyz [08:31] tks bạn [08:49] lol [08:49] mkdir -p là xong mà [08:59] I haved return ... [08:59] viết sai roài [08:59] haha [09:00] Được các trưởng lão giải thích và hiểu nôm nà là thế này [09:02] (31 - ((n) & 31)) lấy 5 bit cuối cùng của của dãy [09:03] & 1 là lấy ra bit cuối cùng trong 5 bit đó [09:03] 1 bit đó là giá trị của điểm ảnh trong ảnh đó [09:05] Mấy trưởng lão nói thế thì biết thế thôi [09:05] no... [09:05] sai rồi [09:05] sao sai pa [09:05] đọc lại đi [09:06] lolz... 31-(n&31) với (n&31) thì là do cách quy định bit thứ 0 là bit MSB hay LSB thôi... [09:07] a nhầm [09:10] n >> 5 có vẻ vô nghĩa [09:10] luôn luôn = 0 [09:10] Không sao lại vô nghĩa [09:10] nó dùng giá trị đó làm offset tính từ địa chỉ của pData [09:11] Chả có gì vô nghĩa cả [09:11] không co n >> 5 thì hư mất cái hình rồi còn gì pa [09:12] à okay, vì nó có n & 31 nên mình tưởng max của n là 31 [09:12] coi bộ bạn vubuntor530 đã *hiểu tường tận* rồi nhỉ? chắc là không cần phải support thêm đâu =]] [09:13] Hiểu thì hiểu thế thôi [09:13] Chưa đến mức 100% [09:15] đi họp hơn 40 phút với các *trưởng lão* đúng là có khác :P [09:15] Ngu thì phải tìm người hỏi thì mới khôn lên được mà. [09:24] Hey nói rõ luôn cho mọi người hiểu luôn. [09:25] Ở đây ta có một ảnh [09:25] Tương ứng với ảnh này ta sẽ có with*height điểm ảnh [09:26] Mỗi điểm ảnh chỉ có một giá trị 0 | 1 [09:26] Các điểm ảnh được lưu trong một array [09:27] nếu bh viết lại thì chắc mình sẽ viết như thế này [09:27] https://gist.github.com/lewtds/23449f4796e37014100c [09:27] [ set_data_bit.c · GitHub ] - gist.github.com [09:27] n = y * witdh + x [09:27] lewtds: anh hảo tâm paste qua pastebin được không? chỗ em bị chặn github :(( [09:28] wtf, sao lại chặn github? @@ [09:28] công ty thế thì nghỉ luôn đi Stanley00 [09:28] https://gist.githubusercontent.com/lewtds/23449f4796e37014100c/raw/ecb20924a3178d1274e09f191e50e19e8aabe2e0/set_data_bit.c [09:28] cái này chắc k chặn? [09:28] Đúng rồi nó chặn là đúng [09:28] lewtds: em có biết đâu, opensource bị chặn gần hết luôn :(( [09:28] Copy páte và đó lộ code het [09:29] lewtds: ồ, trang sau ok, thank anh :3 [09:29] PlebCrab: beyond logic [09:31] à hình như code này là cho máy big endian [09:31] lewtds: :3 [09:31] thôi, em đi họp cái [09:32] cái 1 << 31 hình như k phải là một vị trí flag đặc biệt [09:32] mà chỉ là MSB xong shift phải [09:32] có thể refactor thành 1 shift trái [09:35] #define SET_DATA_BIT(pData, n) (*((l_uint32 *)(pdata) + ((n) >> 5)) |= (0x80000000 >> ((n) & 31))) [09:35] * PlebCrab ghi lại câu hỏi [09:35] bạn ấy hỏi cái kia là gì [09:36] vubuntor530: mkdir sẽ fail nếu có bất cứ thư mục nào chưa tồn tại trong cái path đó [09:36] thêm -p thì nó sẽ tự tạo parent [09:38] vubuntor530: trừ khi bạn giết developer [09:38] còn không thì code kiểu gì nó cũng leak được [09:40] What? [09:40] đang bận tí [09:40] PlebCrab: "cái kia" là cái gì? [09:41] Cái gì mà giết với không giết [09:42] nói loạn cả lên không hiểu gì hết [09:44] Mission complete chuyển xong [09:44] thay thế đoạn code trên với java : [09:44] ImgMap[x][y] = nValue; [09:45] xong [09:45] bạn thử viết lại với ARM64 xem ; ) [09:46] sao lại phải dùng arm64 [09:46] lewtds: cái dòng C kia ấy [09:48] * Stanley00 nhòm nhòm 2 sn lewtds và PlebCrab gãi đầu... [09:48] PlebCrab: duh, log để làm cảnh à? [09:48] Mình không biết ... [09:49] Mình đâu có giỏi c đâu T_T [09:49] vubuntor530: bạn đã xong rồi, để 2 sn kia bàn chuyện đi :3 [09:49] vubuntor530: cho vui = ) với ARM thì chỉ riêng việc lấy offset thôi cũng phải dự trù đủ thứ rồi haha [09:49] Ok thank for helping [09:50] lewtds: Ui mình không rành mấy cái này lắm [09:52] lewtds: but but [09:52] okay [09:52] this channel has log [09:52] :3 [09:52] me totally forgot about that [09:52] :3 [10:19] Em chào các anh, các anh cho em hỏi là em có thể tắt cái đèn LED mỗi lần mình quay video hay chụp ảnh ở ubuntu được không ạ [10:29] tuan: được [10:29] em tháo nó ra [10:29] =)) [10:29] cắt cái dây nguồn vào flash đi [10:29] vậy thôi [10:29] cách anh Tux hay quá =)) [10:31] tắt mà không cần tháo máy thì có cách nào không anh :3 [10:35] tuan: không [10:35] cái đấy nó gắn vào mạch rồi [10:36] không dùng phần mềm được đâu [10:39] PlebCrab: vâng ạ, em có google thử thấy có tut hướng dẫn tắt cái đó đi bằng cách chạy 1 file dll( với máy windows) [10:39] nên em không rõ là ubuntu có thể tắt đi được không ạ [10:41] không [10:41] giờ nó gắn vào mạch rồi [10:41] tính sửa máy cho bạn gái à? [10:43] :v [10:43] =)) không anh ạ, e sửa máy cho bạn trai [10:43] =)) [10:45] e viết 1 đoạn code cho nó quay video, ẩn đi k hiện cái khung quay nữa, với gửi đoạn video đấy về mail rồi, còn mỗi đoạn tắt cái đèn đó đi nữa thôi ạ :3 [10:45] đm [10:46] nó viết tool chụp chộm gái khỏa thân kìa [10:46] v~ anh [10:46] việc éo gì cần phải tắt đèn nếu không phải chụp chộm hay spy? [10:46] gái có mấy người dùng ubuntu đâu anh e :3 [10:49] có nhiều cái k dùng mục đích xấu mà anh :3 :3 :3 [11:00] hôm trước em xem phim Mr Robot thấy có bọn quay video được mà không cần bật đèn LED đó nên viết thử [11:00] :3 === MrTuxHdb is now known as Tux|AFK === Tux|AFK is now known as MrTuxHdb === vubuntor905 is now known as Raven22 [16:04] hi mấy bác [16:04] cho em hỏi phát [16:04] em chơi red alert 2 trên wine [16:04] các phím tắt trong game đôi lúc xài được [16:05] nhưng 98% là ko xài được là sao ? [16:05] có lần em bấm bậy bạ thì nó đc [16:05] mà vì bấm bậy bạ thì biết đâu mà lần T>T [16:05] chắc liên quan đến việc focus [16:05] focus trong hay ngoài wine [16:06] đểfull screen hay window? [16:06] fullscreen [16:06] funny er [16:06] để window đi [16:07] :| [16:07] more specific plz [16:07] để window mode trong wine ấy [16:07] emulate virtual window gì đó [16:08] hmm [16:08] :| [16:08] để em thử phát [16:08] thanh kiu vi na miu bác cô cô nút [16:09] có kq luôn :)) [16:10] vẫn ko được nhé bác nút [16:10] uh huh [16:10] thế máy dỏm rồi [16:10] vứt đi [16:10] ớ :v [16:10] *ném gạch* [16:12] ubuntu unity hả? [16:12] yup :( [16:12] vấn đề về hotkey trong game :( [16:13] thử chỉnh compiz bật chế độ unredirect fullscreen window xem [16:13] bác nút vote đập máy rồi :v [16:14] *hỏi ngu* chỉnh cái đó trong tab nào của mục config wine ? [16:14] k phải wine [16:14] compiz [16:14] * Raven22 *đần mặt ra [16:15] tưởng Raven22 sn chứ = ) [16:16] * Raven22 :( [16:16] hotkey lúc được lúc ko [16:16] chơi game mà ức chế kinh [16:19] cài compiz config settings manager vào [16:19] rồi chỉnh trong đấy [16:19] unity thực chất là 1 plugin của compiz [16:22] haizz [16:22] để em mò theo bác chỉ xem sao :( [16:23] thanks bác [16:23] cả bác nút nữa :)) [16:23] dù bác ấy vote đập máy em [16:23] uh huh === MrTuxHdb is now known as Tux|AFK