Skip to content

Packaging for PyPi#9

Draft
roaldarbol wants to merge 9 commits into
troscianko:mainfrom
roaldarbol:packaging
Draft

Packaging for PyPi#9
roaldarbol wants to merge 9 commits into
troscianko:mainfrom
roaldarbol:packaging

Conversation

@roaldarbol
Copy link
Copy Markdown

I'm packaging up BehaveAI for PyPi. Here's a short summary of the changes:

  • All scritps go inside behaveai/
  • pyproject.toml specifies the build instructions, dependencies, etc.
  • Added a .gitignore file
  • A few entrypoint changes

Might still need a few changes. Need to check that the current installation scripts still work, or adapt accordingly so that method doesn't break.

@troscianko troscianko marked this pull request as ready for review February 23, 2026 16:35
@roaldarbol
Copy link
Copy Markdown
Author

Added in the CLI options, so it can now be run as behaveai from the command line. Also updated the installer scripts so they still work - and simplified them a bit.

@roaldarbol
Copy link
Copy Markdown
Author

Of note, I made the projects directory logic more flexible, so it doesn't need to live inside the installation folder. If it is installed globally, it with live in the users root where it adds a BehaveAI/projects/ folder - and if it is in a project it creates a behaveai_projects folder at the root of the project.

@roaldarbol
Copy link
Copy Markdown
Author

I really like the whole "motion-turned-colour" idea, so I also broke that into a standalone CLI tool, so now you can run:

behaveai motion path/to/my-video.mp4
Output: path/to/my-video_motion.mp4

my-video.mp4
  resolution: 1920x1080
  frames: 13560
  fps: 59.94
  strategy: exponential
  codec: mp4v
  output: path/to/my-video_motion.mp4   

  [#############################-] 13531/13560  99.8%
  written: 13558 frames in 217.4s (62 fps)
  size: 981.9 MB

It also works by taking a folder as input, and then it returns a sister-folder - so if you give it my_folder/, it converts all the files inside it and returns it in my_folder_motion/.

You can also specify all the settings that that the function takes in.

I've also added in some compression, so you can do:

behaveai motion path/to/my-video.mp4 --compress
Output: path/to/my-video_motion.mp4

my-video.mp4
resolution: 1920x1080
frames: 13560
fps: 59.94
strategy: exponential
codec: mp4v
output: path/to/my-video_motion.mp4   

[#############################-] 13531/13560  99.8%
written: 13558 frames in 217.4s (62 fps)
size: 981.9 MB
compressing: FFmpeg H.264 (crf=23)...
compressed: 104.8 MB (11% of original)

yolo26 support plus delete function
@roaldarbol roaldarbol marked this pull request as draft February 25, 2026 13:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant