53 0xd79e8283acea4620, 0x7a9762f445afd0d8,
54 0x354d60a60b8c79f1, 0x584e1cde00b07aee,
55 0x1573cd93da7df623, 0x47f98d79620dd535
84 av_log(s, level,
"%s: %s\n", name, buf);
98 if (r_val != oc->
r_val) {
99 memset(oc->
r_val, 0, 24);
100 memcpy(oc->
r_val, r_val, len);
102 memcpy(&oc->
r_val[16], r_val, 8);
105 if (n_val != oc->
n_val) {
106 memset(oc->
n_val, 0, 24);
107 memcpy(oc->
n_val, n_val, len);
109 memcpy(&oc->
n_val[16], n_val, 8);
121 if (!enc_header || !r_val)
139 return memcmp(&enc_header[pos], oc->
sm_val, 8) ? -1 : 0;
145 uint32_t pos, taglen, datalen;
148 if (!enc_header || !n_val)
152 if (!memcmp(&enc_header[pos],
"EKB ", 4))
158 taglen =
AV_RB32(&enc_header[pos+32]);
159 datalen =
AV_RB32(&enc_header[pos+36]) >> 4;
161 if(pos + (uint64_t)taglen + (((uint64_t)datalen)<<4) + 44 > size)
167 while (datalen-- > 0) {
189 if (!strcmp(em->
tag,
"GEOB") &&
222 || OMA_ENC_HEADER_SIZE + 48 > geob->
datasize
227 oc->
rid =
AV_RB32(&gdata[OMA_ENC_HEADER_SIZE + 28]);
230 memcpy(oc->
iv, &header[0x58], 8);
239 rprobe(s, gdata, oc->r_val) < 0 &&
240 nprobe(s, gdata, geob->datasize, oc->n_val) < 0) {
246 kset(s, buf, buf, 16);
247 if (!
rprobe(s, gdata, oc->r_val) || !
nprobe(s, gdata, geob->datasize, oc->n_val))
269 int ret, framesize, jsflag, samplerate;
270 uint32_t codec_params;
292 if (eid != -1 && eid != -128 &&
decrypt_init(s, extra_meta, buf) < 0) {
299 codec_params =
AV_RB24(&buf[33]);
313 if (samplerate != 44100)
317 framesize = (codec_params & 0x3FF) * 8;
318 jsflag = (codec_params >> 17) & 1;
332 AV_WL32(&edata[2], samplerate);
342 framesize = ((codec_params & 0x3FF) * 8) + 8;
396 unsigned tag_len = 0;
430 if (pos < oc->content_start)
431 memset(oc->
iv, 0, 8);
434 memset(oc->
iv, 0, 8);
452 .extensions =
"oma,omg,aa3",