{"id":22019149,"url":"https://github.com/jishnujayakumar/mv-tractus","last_synced_at":"2025-07-22T07:34:02.618Z","repository":{"id":51319712,"uuid":"131159983","full_name":"jishnujayakumar/MV-Tractus","owner":"jishnujayakumar","description":"A simple tool to extract motion vectors from h264 encoded videos.","archived":false,"fork":false,"pushed_at":"2023-12-10T18:15:38.000Z","size":644412,"stargazers_count":115,"open_issues_count":2,"forks_count":29,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-07-08T17:30:58.783Z","etag":null,"topics":["artificial-intelligence","artificial-neural-networks","compression","computer-science","computer-vision","extract-motion-vectors","h264","machine-learning","motion-vectors","mpeg-video","mv-tractus","video"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jishnujayakumar.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2018-04-26T13:29:58.000Z","updated_at":"2025-06-16T08:41:52.000Z","dependencies_parsed_at":"2023-12-10T19:37:08.526Z","dependency_job_id":null,"html_url":"https://github.com/jishnujayakumar/MV-Tractus","commit_stats":{"total_commits":49,"total_committers":3,"mean_commits":"16.333333333333332","dds":"0.061224489795918324","last_synced_commit":"5bd0aeb42dfed442764a6c08555c62ee2dc7f8f5"},"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/jishnujayakumar/MV-Tractus","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jishnujayakumar%2FMV-Tractus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jishnujayakumar%2FMV-Tractus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jishnujayakumar%2FMV-Tractus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jishnujayakumar%2FMV-Tractus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jishnujayakumar","download_url":"https://codeload.github.com/jishnujayakumar/MV-Tractus/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jishnujayakumar%2FMV-Tractus/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266448339,"owners_count":23930184,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-22T02:00:09.085Z","response_time":66,"last_error":null,"robots_txt_status":null,"robots_txt_updated_at":null,"robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["artificial-intelligence","artificial-neural-networks","compression","computer-science","computer-vision","extract-motion-vectors","h264","machine-learning","motion-vectors","mpeg-video","mv-tractus","video"],"created_at":"2024-11-30T05:15:57.310Z","updated_at":"2025-07-22T07:34:02.594Z","avatar_url":"https://github.com/jishnujayakumar.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MV-Tractus\nA simple tool to extract motion vectors from H264 encoded video sources.\n\n**NOTE**: This was a side project and never intended to be open sourced which is basically the reason behind the inappropriate coding style and project structure. However, at the time of starting this project there weren't any easy to use open source implementations for motion-vector extraction. MV-tractus was the outcome of an experiment to build a tool to extract motion-vectors by building a wrapper around FFmpeg. This tool only supports motion-vector extraction. If you are intending to use it in any other context then I am afraid this is not the right tool that you are looking for. FFmpeg core libraries have not been altered. \n\n**Disclaimer**: The authors don't claim anything regarding the performance of the tool.\n\n## If you use this tool, please cite.\n\nJishnu P, \u0026 Singh, Praneet. (2018, October 21). MV-Tractus: A simple tool to extract motion vectors from H264 encoded video sources (Version 2.0). Zenodo.\n\n[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.4422613.svg)](https://doi.org/10.5281/zenodo.4422613)\n\n```bibtex\n@software{jishnu_p_2018_4422613,\n  author       = {Jishnu P and\n                  Singh, Praneet},\n  title        = {{MV-Tractus: A simple tool to extract motion \n                   vectors from H264 encoded video sources}},\n  month        = oct,\n  year         = 2018,\n  publisher    = {Zenodo},\n  version      = {2.0},\n  doi          = {10.5281/zenodo.4422613},\n  url          = {https://doi.org/10.5281/zenodo.4422613}\n}\n```\n\n## Installation and bootstrapping\n\n1. `git clone https://github.com/jishnujayakumar/MV-Tractus.git` \n2. `cd MV-Tractus`\n3. `./install_ffmpeg.sh` (You can also install FFmpeg using the link [here](http://embedonix.com/articles/linux/installing-ffmpeg-from-source-on-ubuntu-14-0-4/))\n4. `sudo cp ffmpeg.conf /etc/ld.so.conf.d/ffmpeg.conf \u0026\u0026 sudo ldconfig`\n5. `./compile` OR You can use the compile_command.txt to generate the binary file.\n6. mkdir -p output/mv/\n7. `./extract_mvs \u003cvideo-file-path\u003e \u003coutput-path\u003e`.\n8. And there you go. The output will be saved in `\u003coutput-path\u003e`. If this parameter is not specified, then the output is saved in './output/mv/'.\n\n`pip install mv-tractus` (Coming Soon).\n\n## Tutorials\n#### Installation, Setup and Usage (extract_mvs)\n[![Watch the video](https://i.ytimg.com/vi/qpwTdxsBebk/hqdefault.jpg)](https://www.youtube.com/embed/qpwTdxsBebk)\n\n#### Usage (extract_mvs_with_frames)\n[![Watch the video](https://i.ytimg.com/vi/-e02hCdQ0_w/mq1.jpg)](https://www.youtube.com/embed/-e02hCdQ0_w)\n\n#### Python Usage (extract_mvs_with_frames)\nComing Soon...\n\n#### NOTE: Due to the lack of time, I am not able to maintain this project. I would like to request the users and contributors to help each other in all possible ways by joining [Slack](https://join.slack.com/t/mv-tractus/shared_invite/zt-lmjczfaf-TX_JYYkKIlBeySkwPcX3xg).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjishnujayakumar%2Fmv-tractus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjishnujayakumar%2Fmv-tractus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjishnujayakumar%2Fmv-tractus/lists"}