3个版本 (重大更新)
0.4.0 | 2023年5月30日 |
---|---|
0.3.0 | 2021年4月9日 |
0.2.0 | 2020年7月26日 |
167 在 多媒体 中排名
每月下载 513 次
在 5 个Crate中使用(通过 mpeg2ts-reader)
36KB
Rust常量,用于在SMPTE注册机构记录的格式标识符值,用于MPEG传输流数据。
lib.rs
:
SMPTE注册机构记录的格式标识符值,用于MPEG传输流数据。
(此Crate由smptera-format-identifiers-rust项目中的代码自动生成,来源于SMPTE-RA数据镜像。)
简单的包装类型FormatIdentifier
定义了SMPTE-RA数据中的每个格式标识符的常量,
use std::io::stdout;
println!("{:?}", FormatIdentifier::AC_3);
// prints: FormatIdentifier(FourCC{AC-3})
用法
从切片创建
let descriptor_data = b"\x05\x04CUEI";
let id = FormatIdentifier::from(&descriptor_data[2..6]);
assert_eq!(id, FormatIdentifier::CUEI);
包装现有的FourCC值
let fcc = FourCC(*b"CUEI");
let id = FormatIdentifier(fcc);
assert_eq!(id, FormatIdentifier::CUEI);
在matches中使用提供的常量
match FormatIdentifier::from(&descriptor_data[2..6]) {
FormatIdentifier::CUEI => println!("SCTE-35 suspected"),
FormatIdentifier::KLVA => println!("SMPTE RP 217-2001 KLV Packets?"),
other_id => println!("Some other kinda stuff: {:?}", other_id),
}
写入字节数值
let mut data = vec![];
let mut io = Cursor::new(data);
let id = &FormatIdentifier::ID3;
io.write(id.into())
.expect("write failed");
assert_eq!(io.into_inner(), [b'I', b'D', b'3', b' ']);
依赖关系
~11KB