Lines Matching defs:cenc_info
317 static void mpegts_set_drm_algo_and_blocks(uint8_t algo, AV_DrmCencInfo *cenc_info)
320 cenc_info->algo = AV_DRM_ALG_CENC_SM4_CBC;
321 cenc_info->encrypt_blocks = DRM_TS_CRYPT_BYTE_BLOCK;
322 cenc_info->skip_blocks = DRM_TS_SKIP_BYTE_BLOCK;
324 cenc_info->algo = AV_DRM_ALG_CENC_AES_CBC;
325 cenc_info->encrypt_blocks = DRM_TS_CRYPT_BYTE_BLOCK;
326 cenc_info->skip_blocks = DRM_TS_SKIP_BYTE_BLOCK;
328 cenc_info->algo = AV_DRM_ALG_CENC_AES_CBC;
329 cenc_info->encrypt_blocks = 0;
330 cenc_info->skip_blocks = 0;
332 cenc_info->algo = AV_DRM_ALG_CENC_SM4_CBC;
333 cenc_info->encrypt_blocks = 0;
334 cenc_info->skip_blocks = 0;
336 cenc_info->algo = AV_DRM_ALG_CENC_UNENCRYPTED;
337 cenc_info->encrypt_blocks = 0;
338 cenc_info->skip_blocks = 0;
437 static void mpegts_get_cenc_info(const uint8_t *src, uint32_t src_len, AV_DrmCencInfo *cenc_info)
444 memset(cenc_info, 0, sizeof(AV_DrmCencInfo));
447 mpegts_set_drm_algo_and_blocks(video_algo, cenc_info);
452 cenc_info->mode = AV_DRM_CENC_INFO_KEY_IV_SUBSAMPLES_NOT_SET;
632 AV_DrmCencInfo *cenc_info)
650 memcpy(cenc_info->key_id, data + offset, AV_DRM_KEY_ID_SIZE);
651 cenc_info->key_id_len = (uint32_t)AV_DRM_KEY_ID_SIZE;
654 cenc_info->algo = AV_DRM_ALG_CENC_UNENCRYPTED;
663 static int mpegts_drm_get_iv(uint8_t *data, uint32_t data_size, uint32_t *pos, AV_DrmCencInfo *cenc_info)
676 memcpy(cenc_info->iv, data + offset, iv_len);
677 cenc_info->iv_len = iv_len;
715 AV_DrmCencInfo *cenc_info)
745 int ret = mpegts_drm_get_key_id(cei_buf, &total_size, &pos, &drm_descriptor_flag, cenc_info);
750 ret = mpegts_drm_get_iv(cei_buf, total_size, &pos, cenc_info);
787 AV_DrmCencInfo *cenc_info = (AV_DrmCencInfo *)av_stream_new_side_data(avstream, AV_PKT_DATA_ENCRYPTION_INFO,
789 if (cenc_info != NULL) {
790 mpegts_drm_copy_cenc_info(cenc_info, info, 1); // 1:true
798 AV_DrmCencInfo *cenc_info = (AV_DrmCencInfo *)av_packet_new_side_data(pkt, AV_PKT_DATA_ENCRYPTION_INFO,
800 if (cenc_info != NULL) {
801 mpegts_drm_copy_cenc_info(cenc_info, info, 1); // 1:true
807 AV_DrmCencInfo *cenc_info)
819 mpegts_drm_copy_cenc_info(cenc_info, cenc_info_store, 0);
828 (void)mpegts_drm_set_key_info(avstream, data, cei_end_pos, cei_start_pos, cenc_info);
835 AV_DrmCencInfo cenc_info;
847 memset(&cenc_info, 0, sizeof(AV_DrmCencInfo));
854 cenc_info.sub_samples[0].clear_header_len = pkt->size;
855 cenc_info.sub_samples[0].pay_load_len = 0;
856 cenc_info.sub_sample_num = 1;
857 cenc_info.algo = AV_DRM_ALG_CENC_UNENCRYPTED;
858 cenc_info.mode = AV_DRM_CENC_INFO_KEY_IV_SUBSAMPLES_NOT_SET;
860 int ret = mpegts_drm_get_cenc_info(s->streams[pkt->stream_index], codec_id, pkt->data, pkt->size, &cenc_info);
862 mpegts_packet_set_cenc_info(pkt, &cenc_info);
863 mpegts_avstream_set_cenc_info(s->streams[pkt->stream_index], &cenc_info);
2740 AV_DrmCencInfo cenc_info;
2742 mpegts_get_cenc_info(*pp, desc_len, &cenc_info);
2743 mpegts_avstream_set_cenc_info(st, &cenc_info);
2937 AV_DrmCencInfo cenc_info;
2949 memset(&cenc_info, 0, sizeof(AV_DrmCencInfo));
3026 mpegts_get_cenc_info(p, (uint32_t)len, &cenc_info);
3121 mpegts_avstream_set_cenc_info(st, &cenc_info);