[FFmpeg-devel] [PATCH]lavf/chromaprint: Silence compilation warnings
Carl Eugen Hoyos
ceffmpeg at gmail.com
Sun Apr 5 23:49:08 EEST 2020
Am So., 5. Apr. 2020 um 19:51 Uhr schrieb Andriy Gelman
<andriy.gelman at gmail.com>:
>
> lgtm with a couple of minor comments
>
> On Sun, 05. Apr 10:49, Carl Eugen Hoyos wrote:
> > Am Di., 13. Aug. 2019 um 12:45 Uhr schrieb Carl Eugen Hoyos
> > <ceffmpeg at gmail.com>:
> >
> > > Attached patch fixes several compilation warnings when building with
> > > chromapring.
> >
> > I will push this patch if there are no objections.
> >
>
> > diff --git a/libavformat/chromaprint.c b/libavformat/chromaprint.c
> > index f39c09ddb9..77015d9c10 100644
> > --- a/libavformat/chromaprint.c
> > +++ b/libavformat/chromaprint.c
> > @@ -114,14 +114,15 @@ fail:
> > static int write_packet(AVFormatContext *s, AVPacket *pkt)
> > {
> > ChromaprintMuxContext *cpr = s->priv_data;
> > - return chromaprint_feed(cpr->ctx, pkt->data, pkt->size / 2) ? 0 : AVERROR(EINVAL);
>
> > + return chromaprint_feed(cpr->ctx, (const uint16_t *)pkt->data, pkt->size / 2) ? 0 : AVERROR(EINVAL);
> > }
>
> I noticed that second argument is const int16_t* in chromaprint.h
>
> uint16_t* and int16_t* are compatible types in C (I was a bit surprised..) so
> this doesn't show up as warning.
> Do you think it's better to change cast to const int16_t* ?
Done, thank you for spotting this.
> > static int write_trailer(AVFormatContext *s)
> > {
> > ChromaprintMuxContext *cpr = s->priv_data;
> > AVIOContext *pb = s->pb;
> > - void *fp = NULL, *enc_fp = NULL;
> > + void *fp = NULL;
> > + char *enc_fp = NULL;
> > int size, enc_size, ret = AVERROR(EINVAL);
> >
> > if (!chromaprint_finish(cpr->ctx)) {
> > @@ -129,7 +130,7 @@ static int write_trailer(AVFormatContext *s)
> > goto fail;
> > }
> >
> > - if (!chromaprint_get_raw_fingerprint(cpr->ctx, &fp, &size)) {
> > + if (!chromaprint_get_raw_fingerprint(cpr->ctx, (uint32_t **)&fp, &size)) {
>
> The second argument used to be void**, so this will show up as a warning in
> older versions. But probably this is fine.
Patch applied.
Thank you, Carl Eugen
More information about the ffmpeg-devel
mailing list