feat: derive serde traits on ffmpeg types

refactor: address requested changes
This commit is contained in:
netcrns
2021-02-20 21:42:23 +01:00
committed by meh
parent 94dfcb457f
commit 1dfe1af4c8
9 changed files with 20 additions and 0 deletions
+2
View File
@@ -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;
+2
View File
@@ -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,
+2
View File
@@ -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,
+2
View File
@@ -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,
+2
View File
@@ -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,
+2
View File
@@ -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,
+4
View File
@@ -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,
+2
View File
@@ -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 {