lijunbiao2080 2024-09-30 21:04 采纳率: 40%
浏览 3
问题最晚将于10月08日00:00点结题

35114 SVAC视频验签的问题

SVAC视频验签,对于一个gop,每帧组成如下
第一帧(安全参数集,sps, pps,idr) 第二帧(pps,p帧)第三帧(pps, p帧)等等。
视频验签的时候,第一帧的sps和pps和idr都携带了需要认证的标记,他们怎么组合产生sm3初次摘要和二次摘要的,然后通过
与后面的帧产生树顶摘要的,最后再用sm2签名。

  • 写回答

9条回答 默认 最新

  • 阿里嘎多学长 2024-09-30 21:04
    关注

    AIGC生成:


    SVAC视频验签问题

    你遇到的问题是 SVAC 视频验签,对于每个 GOP,每帧组成的结构是:第一帧(安全参数集、SPS、PPS、IDR),第二帧(PPS、P 帧),第三帧(PPS、P 帧)等等。视频验签时,第一帧的 SPS、PPS 和 IDR 都携带了。

    解决方案:

    1. 了解 SVAC 视频验签的基本原理和流程。
    2. 分析每个 GOP 的结构和内容,确定哪些参数需要携带在第一帧中。
    3. 使用 C++ 语言实现视频验签逻辑,根据 SVAC 规范对视频进行验签。

    核心代码:

    #include <iostream>
    #include <string>
    #include <vector>
    
    // SVAC 视频验签函数
    bool svacVideoVerify(const std::vector<uint8_t>& videoData) {
        // 解析视频数据,获取每个 GOP 的结构和内容
        std::vector<GOP> gops;
        // ...
    
        // 遍历每个 GOP
        for (const auto& gop : gops) {
            // 检查第一帧的 SPS、PPS 和 IDR 是否携带
            if (!gop.firstFrame().hasSPS() || !gop.firstFrame().hasPPS() || !gop.firstFrame().hasIDR()) {
                return false; // 验签失败
            }
        }
    
        return true; // 验签成功
    }
    
    int main() {
        // 读取视频数据
        std::vector<uint8_t> videoData = readVideoData();
    
        // 调用 SVAC 视频验签函数
        if (svacVideoVerify(videoData)) {
            std::cout << "视频验签成功!" << std::endl;
        } else {
            std::cout << "视频验签失败!" << std::endl;
        }
    
        return 0;
    }
    

    注意:上述代码只是一个示例,实际实现中需要根据 SVAC 规范和视频数据的具体结构进行修改。


    评论

报告相同问题?

问题事件

  • 创建了问题 今天

悬赏问题

  • ¥15 Windows Script Host 无法找到脚本文件"C:\ProgramData\Player800\Cotrl.vbs”
  • ¥15 matlab自定义损失函数
  • ¥15 35114 SVAC视频验签的问题
  • ¥15 impedancepy
  • ¥15 求往届大挑得奖作品(ppt…)
  • ¥15 如何在vue.config.js中读取到public文件夹下window.APP_CONFIG.API_BASE_URL的值
  • ¥50 浦育平台scratch图形化编程
  • ¥20 求这个的原理图 只要原理图
  • ¥15 vue2项目中,如何配置环境,可以在打完包之后修改请求的服务器地址
  • ¥20 微信的店铺小程序如何修改背景图