{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/video-compression-commander-plug-and-play","title":"Video Compression Commander: Plug-and-Play Inference Acceleration for Video Large Language Models","arxiv_id":"2505.14454","date":"2025-05-20","proceeding":null,"authors":["Xuyang Liu","Yiyu Wang","Junpeng Ma","Linfeng Zhang"],"abstract":"Video large language models (VideoLLM) excel at video understanding, but face efficiency challenges due to the quadratic complexity of abundant visual tokens. Our systematic analysis of token compression methods for VideoLLMs reveals two critical issues: (i) overlooking distinctive visual signals across frames, leading to information loss; (ii) suffering from implementation constraints, causing incompatibility with modern architectures or efficient operators. To address these challenges, we distill three design principles for VideoLLM token compression and propose a plug-and-play inference acceleration framework \"Video Compression Commander\" (VidCom2). By quantifying each frame's uniqueness, VidCom2 adaptively adjusts compression intensity across frames, effectively preserving essential information while reducing redundancy in video sequences. Extensive experiments across various VideoLLMs and benchmarks demonstrate the superior performance and efficiency of our VidCom2. With only 25% visual tokens, VidCom2 achieves 99.6% of the original performance on LLaVA-OV while reducing 70.8% of the LLM generation latency. Notably, our Frame Compression Adjustment strategy is compatible with other token compression methods to further improve their performance. Our code is available at https://github.com/xuyang-liu16/VidCom2.","url_abs":"https://arxiv.org/abs/2505.14454v1","url_pdf":"https://arxiv.org/pdf/2505.14454v1.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"video-compression-commander-plug-and-play","repo_url":"https://github.com/xuyang-liu16/vidcom2","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"video-compression-commander-plug-and-play","repo_url":"https://github.com/xuyang-liu16/globalcom2","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"video-compression","task_name":"Video Compression"},{"task_slug":"video-understanding","task_name":"Video Understanding"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2505.14454","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2505.14454"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/xuyang-liu16/globalcom2","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/xuyang-liu16/vidcom2","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"deterministic:regex_extraction","url":"https://github.com/xuyang-liu16/VidCom2","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"ran_honours":2,"ran_violates":1,"ran_draft_wrong":4,"ran_fixture":2,"unverified":1},"by_repo_kind":{"official":{"samples":9,"ran":8,"repositories":1},"listed":{"samples":1,"ran":1,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"6fbce83e9e876966","entry":"_map_grid_vid","repo":"xuyang-liu16/VidCom2","repo_kind":"official","path":"token_compressor/vidcom2/vidcom2.py","file_url":"https://github.com/xuyang-liu16/VidCom2/blob/HEAD/token_compressor/vidcom2/vidcom2.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"6fbce83e9e876966"}},{"code_sha256_prefix":"69482d937aef94b2","entry":"_map_linear_offset","repo":"xuyang-liu16/VidCom2","repo_kind":"official","path":"token_compressor/vidcom2/vidcom2.py","file_url":"https://github.com/xuyang-liu16/VidCom2/blob/HEAD/token_compressor/vidcom2/vidcom2.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"69482d937aef94b2"}},{"code_sha256_prefix":"c7217c1bd7048e55","entry":"_multi_scale_gaussian","repo":"xuyang-liu16/VidCom2","repo_kind":"official","path":"token_compressor/vidcom2/vidcom2.py","file_url":"https://github.com/xuyang-liu16/VidCom2/blob/HEAD/token_compressor/vidcom2/vidcom2.py","link_basis":"first_harvest_node","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"c7217c1bd7048e55"}},{"code_sha256_prefix":"4ff96d51e642f706","entry":"compute_gaussian_scores","repo":"xuyang-liu16/VidCom2","repo_kind":"official","path":"token_compressor/vidcom2/vidcom2.py","file_url":"https://github.com/xuyang-liu16/VidCom2/blob/HEAD/token_compressor/vidcom2/vidcom2.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"4ff96d51e642f706"}},{"code_sha256_prefix":"b129fe17c21f6091","entry":"compute_scales","repo":"xuyang-liu16/VidCom2","repo_kind":"official","path":"token_compressor/vidcom2/vidcom2.py","file_url":"https://github.com/xuyang-liu16/VidCom2/blob/HEAD/token_compressor/vidcom2/vidcom2.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"b129fe17c21f6091"}},{"code_sha256_prefix":"9de8a6f22b29d1b1","entry":"map_features","repo":"xuyang-liu16/VidCom2","repo_kind":"official","path":"token_compressor/vidcom2/vidcom2.py","file_url":"https://github.com/xuyang-liu16/VidCom2/blob/HEAD/token_compressor/vidcom2/vidcom2.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"9de8a6f22b29d1b1"}},{"code_sha256_prefix":"1930e59fdc14452f","entry":"select_low_var_channels","repo":"xuyang-liu16/VidCom2","repo_kind":"official","path":"token_compressor/vidcom2/vidcom2.py","file_url":"https://github.com/xuyang-liu16/VidCom2/blob/HEAD/token_compressor/vidcom2/vidcom2.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"1930e59fdc14452f"}},{"code_sha256_prefix":"d50936a9ea639b95","entry":"select_outlier_indices","repo":"xuyang-liu16/VidCom2","repo_kind":"official","path":"token_compressor/vidcom2/vidcom2.py","file_url":"https://github.com/xuyang-liu16/VidCom2/blob/HEAD/token_compressor/vidcom2/vidcom2.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"d50936a9ea639b95"}},{"code_sha256_prefix":"a2ea4aed8d722f4f","entry":"select_topk_crop_features","repo":"xuyang-liu16/globalcom2","repo_kind":"listed","path":"llava/model/llava_arch.py","file_url":"https://github.com/xuyang-liu16/globalcom2/blob/HEAD/llava/model/llava_arch.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"a2ea4aed8d722f4f"}},{"code_sha256_prefix":"88da35d026ac1ea3","entry":"vidcom2_compression","repo":"xuyang-liu16/VidCom2","repo_kind":"official","path":"token_compressor/vidcom2/vidcom2.py","file_url":"https://github.com/xuyang-liu16/VidCom2/blob/HEAD/token_compressor/vidcom2/vidcom2.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"88da35d026ac1ea3"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}