mirror of
https://github.com/encounter/rust-ffmpeg.git
synced 2026-07-10 21:18:39 -07:00
feat: derive serde traits on ffmpeg types
refactor: address requested changes
This commit is contained in:
@@ -3,6 +3,8 @@ use libc::c_ulonglong;
|
||||
use crate::ffi::*;
|
||||
|
||||
bitflags! {
|
||||
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
|
||||
#[cfg_attr(feature = "serde", serde(rename_all = "kebab-case"))]
|
||||
pub struct ChannelLayout: c_ulonglong {
|
||||
const FRONT_LEFT = AV_CH_FRONT_LEFT;
|
||||
const FRONT_RIGHT = AV_CH_FRONT_RIGHT;
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
use crate::ffi::{AVChromaLocation::*, *};
|
||||
|
||||
#[derive(Eq, PartialEq, Clone, Copy, Debug)]
|
||||
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
|
||||
#[cfg_attr(feature = "serde", serde(rename_all = "kebab-case"))]
|
||||
pub enum Location {
|
||||
Unspecified,
|
||||
Left,
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
use crate::ffi::{AVColorPrimaries::*, *};
|
||||
|
||||
#[derive(Eq, PartialEq, Clone, Copy, Debug)]
|
||||
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
|
||||
#[cfg_attr(feature = "serde", serde(rename_all = "kebab-case"))]
|
||||
pub enum Primaries {
|
||||
Reserved0,
|
||||
BT709,
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
use crate::ffi::{AVColorRange::*, *};
|
||||
|
||||
#[derive(Eq, PartialEq, Clone, Copy, Debug)]
|
||||
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
|
||||
#[cfg_attr(feature = "serde", serde(rename_all = "kebab-case"))]
|
||||
pub enum Range {
|
||||
Unspecified,
|
||||
MPEG,
|
||||
|
||||
@@ -3,6 +3,8 @@ use std::{ffi::CStr, str::from_utf8_unchecked};
|
||||
use crate::ffi::{AVColorSpace::*, *};
|
||||
|
||||
#[derive(Eq, PartialEq, Clone, Copy, Debug)]
|
||||
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
|
||||
#[cfg_attr(feature = "serde", serde(rename_all = "kebab-case"))]
|
||||
pub enum Space {
|
||||
RGB,
|
||||
BT709,
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
use crate::ffi::{AVColorTransferCharacteristic::*, *};
|
||||
|
||||
#[derive(Eq, PartialEq, Clone, Copy, Debug)]
|
||||
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
|
||||
#[cfg_attr(feature = "serde", serde(rename_all = "kebab-case"))]
|
||||
pub enum TransferCharacteristic {
|
||||
Reserved0,
|
||||
BT709,
|
||||
|
||||
@@ -8,6 +8,8 @@ use thiserror::Error;
|
||||
use crate::ffi::{AVPixelFormat::*, *};
|
||||
|
||||
#[derive(Eq, PartialEq, Copy, Clone, Debug)]
|
||||
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
|
||||
#[cfg_attr(feature = "serde", serde(rename_all = "kebab-case"))]
|
||||
pub enum Pixel {
|
||||
None,
|
||||
|
||||
|
||||
@@ -11,6 +11,8 @@ use libc::c_int;
|
||||
use crate::ffi::{AVSampleFormat::*, *};
|
||||
|
||||
#[derive(Eq, PartialEq, Copy, Clone, Debug)]
|
||||
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
|
||||
#[cfg_attr(feature = "serde", serde(rename_all = "kebab-case"))]
|
||||
pub enum Sample {
|
||||
None,
|
||||
|
||||
@@ -22,6 +24,8 @@ pub enum Sample {
|
||||
F64(Type),
|
||||
}
|
||||
|
||||
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
|
||||
#[cfg_attr(feature = "serde", serde(rename_all = "kebab-case"))]
|
||||
#[derive(Eq, PartialEq, Copy, Clone, Debug)]
|
||||
pub enum Type {
|
||||
Packed,
|
||||
|
||||
@@ -9,6 +9,8 @@ use libc::c_int;
|
||||
use crate::ffi::*;
|
||||
|
||||
#[derive(Copy, Clone)]
|
||||
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
|
||||
#[cfg_attr(feature = "serde", serde(rename_all = "kebab-case"))]
|
||||
pub struct Rational(pub i32, pub i32);
|
||||
|
||||
impl Rational {
|
||||
|
||||
Reference in New Issue
Block a user