Skip to content

Commit

Permalink
chore: readme + version
Browse files Browse the repository at this point in the history
  • Loading branch information
clearlysid committed Dec 2, 2024
1 parent 2d1fe5e commit e5ff924
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 35 deletions.
6 changes: 3 additions & 3 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
[package]
name = "crabgrab"
description = "A cross-platform screen/window capture crate"
version = "0.4.0"
version = "0.4.3"
edition = "2021"
authors = ["Augmend, Inc. <https://github.com/AugmendTech>", "Liam Taylor <https://github.com/OutOfTheVoid>", "Tim Misiak <https://github.com/TimMisiak>"]
documentation = "https://docs.rs/crabgrab"
readme = "README.md"
homepage = "https://github.com/AugmendTech/CrabGrab"
repository = "https://github.com/AugmendTech/CrabGrab"
homepage = "https://github.com/helmerapp/CrabGrab"
repository = "https://github.com/helmerapp/CrabGrab"
license = "MIT OR Apache-2.0"
keywords = ["capture", "graphics", "window", "screen", "media"]
categories = ["graphics", "hardware-support", "multimedia", "os"]
Expand Down
56 changes: 24 additions & 32 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,29 +1,28 @@
# CrabGrab

A cross-platform screen-capturing crate for rust

**Note:** this crate was built by the Augmend team. We initially made PRs to the original but have since then forked it for our own use at Helmer.
**Note:** Crate built by AugmendTech. We initially made PRs to the original but have since then forked it for our own use at Helmer.

## Helmer Team Changelog

Helmer Team Changelog
---------------------
1. Allow specific windows to be excluded from recordings
2. Allow specifying color space on macOS
3. Expose display and window IDs as u32
4. ...

The rest of the README is preserved from the original.
# Original Readme

--------------------------------------------------------
The rest of the README is preserved from the original, minus a few things.

[![Crates.io Version](https://img.shields.io/crates/v/crabgrab)](https://crates.io/crates/crabgrab)
[![docs.rs](https://img.shields.io/docsrs/crabgrab)](https://docs.rs/crabgrab/)
[MacOS Documentation](https://augmendtech.github.io/CrabGrab/macos_docs/crabgrab/index.html)


Capturing video from screens and applications can be very hard, and it's even worse when you want to do it in a cross-platform application. CrabGrab makes it easy to do continuous frame capture that can be used for individual screenshots or for capturing video. It also includes common functionality needed for enumerating screens and applications. You can get from a window to a pixel buffer in just a few lines of code that will work on both Windows and MacOS.

```rust
#[tokio::main]
async fn main() {
async fn main() {
let token = match CaptureStream::test_access(false) {
Some(token) => token,
None => CaptureStream::request_access(false).await.expect("Expected capture access")
Expand All @@ -45,22 +44,21 @@ async fn main() {

CrabGrab makes it easy.

Features:
---------
- Screen and window capture supported
- Compatible with multiple GPU APIs:
- Wgpu
- DX11
- DXGI
- Metal
- IOSurface
- Easy frame bitmap generation
- Platform specific extension features
- Screenshot facility
- Sound capture (WIP)

Examples
--------
## Features:

- Screen and window capture supported
- Compatible with multiple GPU APIs:
- Wgpu
- DX11
- DXGI
- Metal
- IOSurface
- Easy frame bitmap generation
- Platform specific extension features
- Screenshot facility
- Sound capture (WIP)

## Examples

Examples showing how to use the CrabGrab crate can be found at [crabgrab/examples](examples). You can run the examples from the repository:

Expand All @@ -70,12 +68,6 @@ Note that feature examples will require that feature:

`cargo run --example <example name> --feature <feature name>`

MacOS Docs
----------
Unfortunately due to our dependence on metal-rs, building docs for macos doesn't work on docs.rs, since they use linux containers. As a workaround, we host macos documentation in this repository - link above.

## MacOS Docs

Contributions
-------------

All contributions are welcome! We are actively working on this project and are looking to expand the capabilities including sound capture, Linux support, and performance improvements.
Unfortunately due to our dependence on metal-rs, building docs for macos doesn't work on docs.rs, since they use linux containers. As a workaround, we host macos documentation in this repository - link above.

0 comments on commit e5ff924

Please sign in to comment.