Skip to main content

Real-time avatar engine — 100+ FPS on CPU. Generate lip-synced video, stream live avatars to browsers. 1-2 CPU cores, <200ms latency. ARM, x86, macOS.

Project description

bitHuman Avatar Runtime

bitHuman Banner

Real-time avatar engine for visual AI agents, digital humans, and creative characters.

PyPI version Python Platforms

bitHuman powers visual AI agents and conversational AI with photorealistic avatars and real-time lip-sync. Build voice agents with faces, video chatbots, AI assistants, and interactive digital humans — all running on edge devices with just 1-2 CPU cores and <200ms latency. Raw generation speed is 100+ FPS on CPU alone, enabling real-time streaming applications.

Installation

pip install bithuman --upgrade

Pre-built wheels for all major platforms — no compilation required:

Linux macOS Windows
x86_64 yes yes yes
ARM64 yes yes (Apple Silicon)
Python 3.9 — 3.14 3.9 — 3.14 3.9 — 3.14

For LiveKit agent integration:

pip install bithuman[agent]

Quick Start

Generate a lip-synced video

bithuman generate avatar.imx --audio speech.wav --key YOUR_API_KEY

Stream a live avatar to your browser

# Terminal 1: Start the streaming server
bithuman stream avatar.imx --key YOUR_API_KEY

# Terminal 2: Send audio to trigger lip-sync
bithuman speak speech.wav

Open http://localhost:3001 to see the avatar streaming live.

Python API (async)

import asyncio
from bithuman import AsyncBithuman
from bithuman.audio import load_audio, float32_to_int16

async def main():
    runtime = await AsyncBithuman.create(
        model_path="avatar.imx",
        api_secret="YOUR_API_KEY",
    )
    await runtime.start()

    # Load and stream audio
    audio, sr = load_audio("speech.wav")
    audio_int16 = float32_to_int16(audio)

    async def stream_audio():
        chunk_size = sr // 25  # match video FPS
        for i in range(0, len(audio_int16), chunk_size):
            await runtime.push_audio(
                audio_int16[i:i + chunk_size].tobytes(), sr
            )
        await runtime.flush()

    asyncio.create_task(stream_audio())

    # Receive lip-synced video frames
    async for frame in runtime.run():
        if frame.has_image:
            image = frame.bgr_image       # numpy (H, W, 3), uint8
            audio = frame.audio_chunk     # synchronized audio
        if frame.end_of_speech:
            break

    await runtime.stop()

asyncio.run(main())

Python API (sync)

from bithuman import Bithuman
from bithuman.audio import load_audio, float32_to_int16

runtime = Bithuman.create(model_path="avatar.imx", api_secret="YOUR_API_KEY")

audio, sr = load_audio("speech.wav")
audio_int16 = float32_to_int16(audio)

chunk_size = sr // 100
for i in range(0, len(audio_int16), chunk_size):
    runtime.push_audio(audio_int16[i:i+chunk_size].tobytes(), sr)
runtime.flush()

for frame in runtime.run():
    if frame.has_image:
        image = frame.bgr_image
    if frame.end_of_speech:
        break

How It Works

  1. Load model.imx file contains the avatar's appearance, animations, and lip-sync data
  2. Push audio — Stream audio bytes in real-time via push_audio(), call flush() when done
  3. Get frames — Iterate runtime.run() to receive lip-synced video frames with synchronized audio

The runtime handles the full motion graph internally: idle animations, talking with lip-sync, head movements, blinking, and smooth transitions between states.

Performance

Metric Value
Raw FPS 100+ on CPU (Intel i5-12400, Apple M2)
CPU cores 1-2 cores at 25 FPS
End-to-end latency <200ms
Memory (IMX v2) ~200 MB per session
Model load time <10ms (IMX v2)
Audio formats WAV, MP3, FLAC, OGG, M4A

Features

  • Real-time lip-sync — Audio-driven mouth animation at 25 FPS with synchronized audio output
  • Cross-platform — Linux, macOS, Windows; x86_64 and ARM64; Python 3.9-3.14
  • Edge-ready — 1-2 CPU cores, no GPU required for inference
  • Sync + AsyncBithuman for threads, AsyncBithuman for async/await
  • Streaming-first — Push audio chunks in real-time, receive frames as they're generated
  • Actions & emotions — Trigger avatar gestures (wave, nod) and emotion states (joy, surprise)
  • Interrupt support — Cancel mid-speech for natural conversation flow
  • LiveKit integration — Built-in support for LiveKit Agents (WebRTC streaming)
  • CLI tools — Generate videos, stream live, convert models, validate setups
  • IMX v2 format — Optimized binary container with O(1) random access and WebP patches
  • Zero scipy dependency — Pure numpy audio pipeline, minimal install footprint

API Reference

AsyncBithuman / Bithuman

The main runtime for avatar animation.

# Create and initialize
runtime = await AsyncBithuman.create(
    model_path="avatar.imx",     # Path to .imx model
    api_secret="API_KEY",        # API secret (recommended)
    # token="JWT_TOKEN",         # Or JWT token directly
)
await runtime.start()

# Push audio (int16 PCM, any sample rate — auto-resampled to 16kHz)
await runtime.push_audio(audio_bytes, sample_rate)
await runtime.flush()            # Signal end of speech
runtime.interrupt()              # Cancel current playback

# Receive frames
async for frame in runtime.run():
    frame.bgr_image              # np.ndarray (H, W, 3) uint8 BGR
    frame.rgb_image              # np.ndarray (H, W, 3) uint8 RGB
    frame.audio_chunk            # AudioChunk — synchronized audio
    frame.end_of_speech          # True when all audio processed
    frame.has_image              # True if image available
    frame.frame_index            # Frame number
    frame.source_message_id      # Correlates to input

# Controls
await runtime.push(VideoControl(action="wave"))          # Trigger action
await runtime.push(VideoControl(target_video="idle"))    # Switch state
runtime.set_muted(True)                                  # Mute processing

# Info
runtime.get_frame_size()          # (width, height)
runtime.get_first_frame()         # First idle frame as np.ndarray
runtime.get_expiration_time()     # Token expiry (unix timestamp)
runtime.is_token_validated()      # Auth status

await runtime.stop()

Data Classes

from bithuman import AudioChunk, VideoControl, VideoFrame, Emotion, EmotionPrediction

# AudioChunk — container for audio data
chunk = AudioChunk(data=np.array([...], dtype=np.int16), sample_rate=16000)
chunk.duration    # float — length in seconds
chunk.bytes       # bytes — raw PCM bytes

# VideoControl — input to the runtime
ctrl = VideoControl(
    audio=chunk,                    # Audio to lip-sync
    action="wave",                  # Trigger action (wave, nod, etc.)
    target_video="talking",         # Switch video state
    end_of_speech=True,             # Mark end of speech
    force_action=False,             # Override action deduplication
    emotion_preds=[                 # Set emotion state
        EmotionPrediction(emotion=Emotion.JOY, score=0.9),
    ],
)

# VideoFrame — output from runtime.run()
frame.bgr_image           # np.ndarray (H, W, 3) uint8 — BGR
frame.rgb_image           # np.ndarray (H, W, 3) uint8 — RGB
frame.audio_chunk         # AudioChunk — synchronized audio
frame.end_of_speech       # bool — True when done
frame.has_image           # bool — True if image available
frame.frame_index         # int — frame number
frame.source_message_id   # Hashable — correlates to VideoControl

# Emotion enum
Emotion.ANGER | Emotion.DISGUST | Emotion.FEAR | Emotion.JOY
Emotion.NEUTRAL | Emotion.SADNESS | Emotion.SURPRISE

Audio Utilities

from bithuman.audio import (
    load_audio,               # Load WAV/MP3/FLAC/OGG/M4A -> (float32, sr)
    float32_to_int16,         # float32 -> int16
    int16_to_float32,         # int16 -> float32
    resample,                 # Resample to target rate
    write_video_with_audio,   # Save MP4 with audio track
    AudioStreamBatcher,       # Real-time audio buffer
)

audio, sr = load_audio("speech.mp3")             # Any format
audio_int16 = float32_to_int16(audio)            # Ready for push_audio
audio_16k = resample(audio, sr, 16000)           # Resample
write_video_with_audio("out.mp4", frames, audio, sr, fps=25)

Exceptions

All exceptions inherit from BithumanError:

Exception When
TokenExpiredError JWT has expired
TokenValidationError Invalid signature or claims
TokenRequestError Auth server unreachable
AccountStatusError Billing or access issue (HTTP 402/403)
ModelNotFoundError Model file doesn't exist
ModelLoadError Corrupt or incompatible model
ModelSecurityError Security restriction triggered
RuntimeNotReadyError Operation called before initialization

LiveKit Agent Integration

Build conversational AI agents with avatar faces using LiveKit Agents:

from bithuman import AsyncBithuman
from bithuman.utils.agent import LocalAvatarRunner, LocalVideoPlayer, LocalAudioIO

# Initialize bitHuman runtime
runtime = await AsyncBithuman.create(
    model_path="avatar.imx",
    api_secret="YOUR_API_KEY",
)

# Connect to LiveKit agent session
avatar = LocalAvatarRunner(
    bithuman_runtime=runtime,
    audio_input=session.audio,
    audio_output=LocalAudioIO(session, agent_output),
    video_output=LocalVideoPlayer(window_size=(1280, 720)),
)
await avatar.start()

See examples/livekit_agent/ for a complete working example with OpenAI Realtime voice.

Optimize Your Models

Convert existing .imx models to IMX v2 for dramatically better performance:

bithuman convert avatar.imx
Metric Legacy (TAR) IMX v2 Improvement
Model size 100 MB 50-70 MB 30-50% smaller
Load time ~10s <10ms 1000x faster
Runtime speed ~30 FPS 100+ FPS 3-10x faster
Peak memory ~10 GB ~200 MB 98% less

Conversion is automatic on first load, but pre-converting saves startup time.

CLI Reference

Command Description
bithuman generate <model> --audio <file> Generate lip-synced MP4 from model + audio
bithuman stream <model> Start live streaming server at localhost:3001
bithuman speak <audio> Send audio to running stream server
bithuman action <name> Trigger avatar action (wave, nod, etc.)
bithuman info <model> Show model metadata
bithuman list-videos <model> List all videos in a model
bithuman convert <model> Convert legacy to optimized IMX v2
bithuman validate <path> Validate model files load correctly

Configuration

Environment Variables

Variable Description
BITHUMAN_API_SECRET API secret for authentication
BITHUMAN_RUNTIME_TOKEN JWT token (alternative to API secret)
BITHUMAN_VERBOSE Enable debug logging
CONVERT_THREADS Number of threads for model conversion (0 or unset = auto-detect)

Runtime Settings

Setting Default Description
FPS 25 Target frames per second
OUTPUT_WIDTH 1280 Output frame width (0 = native resolution)
PRELOAD_TO_MEMORY False Cache model in RAM for faster decode
PROCESS_IDLE_VIDEO True Run inference during silence (natural idle)

Use Cases

  • Visual AI Agents — Give your voice agents a face with real-time lip-sync
  • Conversational AI — Build video chatbots and AI assistants with human-like presence
  • Live Streaming — Stream avatars to browsers via WebSocket, LiveKit, or WebRTC
  • Video Generation — Generate lip-synced content from audio at 100+ FPS
  • Edge AI — Run locally on Raspberry Pi, Mac Mini, Chromebook, or any edge device
  • Digital Twins — Photorealistic replicas for customer service, education, or entertainment

Examples

Example Description
example.py Async runtime with live video + audio playback
example_sync.py Synchronous runtime with threading
livekit_agent/ LiveKit Agent with OpenAI Realtime voice
livekit_webrtc/ WebRTC streaming server

Troubleshooting

macOS: Duplicate FFmpeg library warnings

objc: Class AVFFrameReceiver is implemented in both .../cv2/.dylibs/libavdevice...
and .../av/.dylibs/libavdevice...

This happens when opencv-python (full) is installed alongside av (PyAV) — both bundle FFmpeg dylibs. Fix by switching to the headless variant:

pip install opencv-python-headless

This replaces opencv-python and removes the duplicate dylibs. The bithuman package already depends on opencv-python-headless, so this only occurs when another package has pulled in the full opencv-python.

Model conversion fails with TypeError

If you see TypeError: an integer is required during conversion, upgrade to the latest version:

pip install bithuman --upgrade

This was fixed in v1.6.2. The issue affected models in legacy TAR format during auto-conversion.

Getting a bitHuman Model

To create your own avatar model (.imx file):

  1. Visit bithuman.ai
  2. Register and subscribe
  3. Upload a photo or video to create your avatar
  4. Download your .imx model file

Links

License

Commercial license required. See bithuman.ai for pricing.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

bithuman-1.7.9-cp314-cp314-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.14Windows x86-64

bithuman-1.7.9-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

bithuman-1.7.9-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (2.6 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

bithuman-1.7.9-cp314-cp314-macosx_11_0_arm64.whl (2.2 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

bithuman-1.7.9-cp314-cp314-macosx_10_15_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.14macOS 10.15+ x86-64

bithuman-1.7.9-cp313-cp313-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.13Windows x86-64

bithuman-1.7.9-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

bithuman-1.7.9-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (2.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

bithuman-1.7.9-cp313-cp313-macosx_11_0_arm64.whl (2.2 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

bithuman-1.7.9-cp313-cp313-macosx_10_13_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

bithuman-1.7.9-cp312-cp312-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.12Windows x86-64

bithuman-1.7.9-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

bithuman-1.7.9-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (2.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

bithuman-1.7.9-cp312-cp312-macosx_11_0_arm64.whl (2.2 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

bithuman-1.7.9-cp312-cp312-macosx_10_13_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

bithuman-1.7.9-cp311-cp311-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.11Windows x86-64

bithuman-1.7.9-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

bithuman-1.7.9-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (2.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

bithuman-1.7.9-cp311-cp311-macosx_11_0_arm64.whl (2.2 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

bithuman-1.7.9-cp311-cp311-macosx_10_9_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

bithuman-1.7.9-cp310-cp310-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.10Windows x86-64

bithuman-1.7.9-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

bithuman-1.7.9-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (2.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

bithuman-1.7.9-cp310-cp310-macosx_11_0_arm64.whl (2.2 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

bithuman-1.7.9-cp310-cp310-macosx_10_9_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

bithuman-1.7.9-cp39-cp39-win_amd64.whl (2.2 MB view details)

Uploaded CPython 3.9Windows x86-64

bithuman-1.7.9-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

bithuman-1.7.9-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (2.6 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

bithuman-1.7.9-cp39-cp39-macosx_11_0_arm64.whl (2.2 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

bithuman-1.7.9-cp39-cp39-macosx_10_9_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

File details

Details for the file bithuman-1.7.9-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: bithuman-1.7.9-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 2.2 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for bithuman-1.7.9-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 f3cc33a5973c2c4efaf3869204d4f385ba7ec17ec2c4ffda3e3b8c7fa55f6e71
MD5 f3ae6de1c14283cf5aaa1232737610e6
BLAKE2b-256 245df22e68069ffa88491267cf0afc8b49d7e2f6c295df4bc03339d3d52514cb

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for bithuman-1.7.9-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 bfe86bcb950e91f39c5712f56eeda4980c14c7940c52feb50ec7921e2c866e2d
MD5 75604760096aea05220b88b20e515b0e
BLAKE2b-256 64b1061d0788db0b79cfd227baff1bdeff7a3186f9adc7d4bc361a60efc5bb6d

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for bithuman-1.7.9-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 4ba94c8b62642f646040bd614be473bc5a3e943d6c35bf6ae743dcf4674eb8ac
MD5 668972cb4843bc5d38349f2b4c221663
BLAKE2b-256 f781cb263c4d0568027c1729547dca1a236f91271a372b98d0b32cb397ac0e38

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for bithuman-1.7.9-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 09e3e5f4281a166e09c8786fa932790ef66e4940aa8784465a003114f22d7487
MD5 c5c0e6883814f45535628ce46b029b02
BLAKE2b-256 60a023b55d52912c2110df52f482a3f06e3247b788097df13e3542d3e68155d9

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp314-cp314-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for bithuman-1.7.9-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 556f16d6d2f83aac08da3e3f999f5190c71f761d9ce541372a43c2e8fc80dade
MD5 fde77cbf465bd1b343835ecfa5a486f1
BLAKE2b-256 88f1b0f5e1de58c500a1d5b39a3a53f31e154f3d73f148a3e515041564ccd279

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: bithuman-1.7.9-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 2.2 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for bithuman-1.7.9-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 da63485a3fc9765a2211f07911d0f4532638cd92df0199fe15769f7669d7f603
MD5 98bcf64363a43e815cedb6a7102935b5
BLAKE2b-256 39ae12e331e63b1111b5fd3b2a519371aebce7db6d717aa14434d9aa4f3ef445

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for bithuman-1.7.9-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2e3fedbe918f7604b253086e32f1f6e2ecf5b9282ff07e099652adf8723a7fb1
MD5 3f00264eb48a7bf61476886b3e1bd957
BLAKE2b-256 f2a72e50e275a1a892db8171605bb4d378e5cd97f073021846ee117ef58654b9

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for bithuman-1.7.9-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 315dac4816de93e6fef9e1d4cf713b3198c72330e87cd2f380343279e08fda07
MD5 5619f3f0994cfc3908844d4eb2cd0dc0
BLAKE2b-256 b7a3bfa5516223fbe82d681f9b10358ff6cfb304bd191a521430a403122fe94b

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for bithuman-1.7.9-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 36a6cfc39900d40322e3a017eaea23c6cd482ea3128bba302533cc703833fbcf
MD5 5ff68bf0680eaf4c50e914b7d8c3bd50
BLAKE2b-256 c1cc7e750497e0731e6d4a4c570ba86fbce43bb3889afe37542c4fb648f24a27

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for bithuman-1.7.9-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 de5fbe3485cc12fba1bc4bbb553bc745b591eab99ba764822460c56de2ed8e39
MD5 8aea3f81b2b13556ca755c4a417c71bb
BLAKE2b-256 7cca6f6b0a6f65f27ae0e0e9581e497bc66faedb96d3f6556ebe8d9a34f7414a

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: bithuman-1.7.9-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 2.2 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for bithuman-1.7.9-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 1555a0ef0880c25b13cf4c172c7de109aece4d4f5fc598405f8cc43f37b320ab
MD5 0b9ff7f7107909d497d8443045abad6c
BLAKE2b-256 1988c01a18fecc5207a3b6a9a4b815eec43136f7a8c7145037794c29299c0b84

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for bithuman-1.7.9-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f08158a7accc83187301ddb9a3825ed792869a3a8bb9f0493d52db991bcbe02e
MD5 921258974f09b482c2542b40fc324259
BLAKE2b-256 a42a849daf90b7174200c2c172847e548775433b77ac6a0a33a11cdbe50b9c53

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for bithuman-1.7.9-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 85d6be37152e3877d104c47f7b258575f7aacf27208f8b47a00fa5a8f50bc553
MD5 6cec2c3be285282016022f8ac89d2da5
BLAKE2b-256 bb9d1ddcc16f6cc9565b0b37c169717bf2e09f74caa3c9590837fa9b95477d35

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for bithuman-1.7.9-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0d86b28bba5d5799fd8bb1076e45a3b673d369621c097b61651aeb6e6903c86b
MD5 0c58cbe4e8071ef3ca4cee14dc719bc8
BLAKE2b-256 4ae96d7b278d2b0d71abc6a7e30ad56a8b228a2bf2c4f48b3d0e3a2514247cc5

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for bithuman-1.7.9-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 fab1a0dfeb71bf63183a8b06eae5ec87e1791efd8f65c0f84cfe9429be6be879
MD5 3dd985005313a3cbb98153fdc33dd00c
BLAKE2b-256 4a5ecd79d0b23537ff260bf19f66e85356920e79c1a388db94f117d282bb5474

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: bithuman-1.7.9-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 2.2 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for bithuman-1.7.9-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 e163938a6ddbb8e69c1a4ead397068f85fc2ee4c019bed2fa9609eb3c3d9afff
MD5 ae7a2e82063745516e8f1dd2cc5fff30
BLAKE2b-256 a9b5de044acf2bdc601c83be61a735d65ffa987fef09466f553d3799664cac27

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for bithuman-1.7.9-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e7a8160712356714c2a40a44aadffb7fd6246a9d95306497855de46b75c3bb15
MD5 e4efe87adea6d59e56fa401cc2a62422
BLAKE2b-256 b4c9de3e3700a0e0384068100b92a338fcf27840c1f0060eb3e77acba448bd6c

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for bithuman-1.7.9-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 860145714a9b12b1bdd9cf315dda5644b5fbd4b1fc9b7f53d17420246321782e
MD5 1ebabcb7c2fdd48d270340eb534cadc7
BLAKE2b-256 51ca29dacdbdc779d93d9477fef489eca0cfb759b4cafaddad1af79c4c290d7b

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for bithuman-1.7.9-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 de01f5e383e2eef4551e9cefcc827ce7d5fe377612d1d9954b24bbba28489ac0
MD5 37be7191c861a6a2b9f98906593a76a8
BLAKE2b-256 c4fc7538b64faf3203a9b5d5ee5a576ced08c09753d822159530ffd99a9e6eaa

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for bithuman-1.7.9-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 6af133435a855a0ea7b40de4599a170a32576f05028b3e6b96b654a6460559e6
MD5 b75f3c26b0d238c02e6c9aebd1ce0251
BLAKE2b-256 4961d7898ceb3eaa29b9819ad5db48d525acd7f4f95e31383e06f94d88920bdf

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: bithuman-1.7.9-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 2.2 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for bithuman-1.7.9-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 c463c281eaa10bcd67799d87ee98471ad4c823134577f3a4a58c4a778b3b04ec
MD5 1e586985423289c3f24950d98c990bbe
BLAKE2b-256 a98e621704a19e3423ba081e8820728b3289c8635c766b826ea727bc43e57647

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for bithuman-1.7.9-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5cb14897378b81c73de18bd0dd3561a3fc6ef8feae6524d5d8ebc8ef8224a84b
MD5 4643179831489823e9355415df197a18
BLAKE2b-256 ade41f3a9b4cee4c277f63a6172fe54d4c0aa2efecfef5c6301b7b0813dd0eef

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for bithuman-1.7.9-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 fe4e192cd9f3925de0c33f78059539f809ed05ebf507000c76fa56897e99e270
MD5 57c2afdd3bb577b634ca19098c4628e4
BLAKE2b-256 32d20c049165694aafa705ff41edff64d30ec4daa3f84a89d757cc0356fcb3de

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for bithuman-1.7.9-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7c403977ed26b62e592333689d67c57e4b64dbc3e04ba53058ffb65b0e482500
MD5 83765fc5ebdfe6c8bba02fcd9f7e2480
BLAKE2b-256 e5208a920705f4dbf944085ab0b02cb7907b321b293d5ab655ce9eb68ede4864

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for bithuman-1.7.9-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 28c16fdad02e035e2f0cd8d3f0129c36fd706772a874d7a1ccc54d7c9113a6ab
MD5 6d025f57af48f479eff526b6b60a78ec
BLAKE2b-256 284a47da0507f2cfc17872f9ab64918d93d59aaf5113635fdf67f1c4e2a752fe

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: bithuman-1.7.9-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 2.2 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for bithuman-1.7.9-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 e07838e0c94614a7e3c50128d842983881910fd3e91682f15c382bb76d8a4163
MD5 3308e8064c4c383bc612b6b3ed1ee480
BLAKE2b-256 c551a1d6b4304196d68d17cd912779932c5f5748314c4a2bc28375a8a39918de

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for bithuman-1.7.9-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 37ce1ed32117821ea61204c9e35bf57214686ae41942f6bba1f6cdb761c571e8
MD5 c5c6cb11d6e139144951178633aec215
BLAKE2b-256 fffa10ecfae260d227205e3536f4c6a5ccaa1e8bf788c57f2a4dabadb59b99d8

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for bithuman-1.7.9-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 e383774d53db806f84656a1725b70f2512955d062b5d26e4293f8670b7a2572b
MD5 10c1c52124e99e6663c499e17dfdc690
BLAKE2b-256 83288edccd1d5522c549bb74adb7f142daea5cc374021f5ca949f4057e12f1c5

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for bithuman-1.7.9-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0bd84dba2e1ecc3b24731806984d3ccccecacd599adfdf087d47d7a8b9b60026
MD5 d503472d2f240c3ab28c1aba4a0ca321
BLAKE2b-256 c1c93abd09b4291c9c767bf4c4d700ecd4c0171189bb631e2d0309be4b3a7d12

See more details on using hashes here.

File details

Details for the file bithuman-1.7.9-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for bithuman-1.7.9-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f8eda0e263a6a913027214a305296f2eccf3718b178bf8c0a90e9bc66cd366e9
MD5 e3a77ab0de79e7d1a607c01116b8cde2
BLAKE2b-256 823d5d13287702baf8eabff97a63901d615d496f7c6a6e5a241fbc2296d6a2b5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page