[FFmpeg-devel] [PATCH] EBU Tech 3285 – Supplement 3 - Peak Envelope Chunk encoder
michaelni at gmx.at
Wed May 28 23:12:07 CEST 2014
On Wed, May 28, 2014 at 09:11:47PM +0200, Georg Lippitsch wrote:
> Am 28.05.2014, 13:04 Uhr, schrieb Michael Niedermayer <michaelni at gmx.at>:
> >>+ now0 = av_gettime();
> >>+ now_secs = now0 / 1000000;
> >>+ strftime(timestamp, 28, "%Y:%m:%d:%H:%M:%S:",
> >>+ av_strlcatf(timestamp, 28, "%03d", (int)((now0 / 1000) % 1000));
> >this cant be done when AVFMT_FLAG_BITEXACT is set.
> >Also what purpose does it serve to store the muxing time ?
> >This poses a security issue as it leaks information about the time
> >as well as the environment
> >I was not able to find any hint in the specification about the use
> >of this field
> The spec says: "A C string containing the time stamp of the creation
> of the peak data", which from my understanding is the same as the
> muxing time.
> Since this code will mainly be used to create files for archival
> purpose, storing the muxing time will certainly be useful to keep
> track of when was something created. Indeed, for BITEXACT mode this
> is improper, so I could write some fake timestamp in that case.
> For your security concerns, I don't have any proper solution except
> violating the specs. What would you suggest?
i guess it should be documented, have no better idea ATM
> >>+ wav->peak_maxpos[c] =
> >>FFMAX(wav->peak_maxpos[c], *(int16_t*)(pkt->data + i));
> >>+ wav->peak_maxneg[c] =
> >>FFMIN(wav->peak_maxneg[c], *(int16_t*)(pkt->data + i));
> AV_RL16 casts to uint16_t*, are you sure this will work?
hmm, then (int16_t)AV_RL16()
the issue with the code as it is, is that it wont work on big endian
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
Democracy is the form of government in which you can choose your dictator
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 181 bytes
Desc: Digital signature
More information about the ffmpeg-devel