flowly-codec-openh264 0.1.3

Flowly OpenH264 bindings
Documentation
# flowly-codec-openh264

A Rust crate that provides bindings for OpenH264 in collaboration with the Flowly team. This library is designed to decode H.264 video streams efficiently.

## Features

- Bindings for OpenH264 decoder
- Support for asynchronous push and pull operations
- Integration with the Flowly framework

## Getting Started

### Installation

Add this crate as a dependency in your `Cargo.toml`:

```toml
[dependencies]
flowly-codec-openh264 = "0.1"
```

### Usage

Here's a basic example of how to use `flowly-codec-openh264`:

```rust
use flowly_codec_openh264::{Openh264Decoder, DecodedFrame};
use bytes::Bytes;

fn main() {
    let mut decoder = Openh264Decoder::<i32>::new(1);

    // Assume `encoded_data` is some H.264 encoded data and `timestamp` is the corresponding timestamp
    let encoded_data: Bytes = vec![0; 100].into(); // Replace with actual encoded data
    let timestamp = 0;
    let source_id = 0;

    tokio::block_on(async {
        decoder.push_data(encoded_data, timestamp, source_id).await.unwrap();

        if let Some(decoded_frame) = decoder.pull_frame().unwrap() {
            println!("Decoded frame dimensions: {}x{}", decoded_frame.width, decoded_frame.height);
        }
    });
}
```

## Documentation

You can find the full documentation at [https://docs.rs/flowly-mp4](https://docs.rs/flowly-mp4).

## License

This project is licensed under the MIT license. See the `LICENSE` file for more details.

## Contributing

Contributions are welcome! Please open an issue or submit a pull request on GitHub.

## Contact

For any questions or inquiries, please contact:

- **Email**: [flowly-team@example.com]mailto:flowly-team@example.com
- **GitHub Issues**: [https://github.com/flowly-team/flowly-codec-openh264/issues]https://github.com/flowly-team/flowly-codec-openh264/issues

We appreciate your interest and support!