Quoting David Bryant (2020-04-06 06:56:05) > On 4/5/20 1:32 PM, Anton Khirnov wrote: > > They are not forbidden by the specification. > > --- > > libavformat/wvdec.c | 18 ------------------ > > 1 file changed, 18 deletions(-) > > > > diff --git a/libavformat/wvdec.c b/libavformat/wvdec.c > > index b9fc6a59f9..4159bf1253 100644 > > --- a/libavformat/wvdec.c > > +++ b/libavformat/wvdec.c > > @@ -208,24 +208,6 @@ static int wv_read_block_header(AVFormatContext *ctx, > > AVIOContext *pb) > > if (!wc->rate) > > wc->rate = rate * rate_x; > > > > - if (flags && bpp != wc->bpp) { > > - av_log(ctx, AV_LOG_ERROR, > > - "Bits per sample differ, this block: %i, header block: > > %i\n", > > - bpp, wc->bpp); > > - return AVERROR_INVALIDDATA; > > - } > > - if (flags && !wc->multichannel && chan != wc->chan) { > > - av_log(ctx, AV_LOG_ERROR, > > - "Channels differ, this block: %i, header block: %i\n", > > - chan, wc->chan); > > - return AVERROR_INVALIDDATA; > > - } > > - if (flags && rate != -1 && !(flags & WV_DSD) && rate * rate_x != > > wc->rate) { > > - av_log(ctx, AV_LOG_ERROR, > > - "Sampling rate differ, this block: %i, header block: %i\n", > > - rate * rate_x, wc->rate); > > - return AVERROR_INVALIDDATA; > > - } > > return 0; > > } > > > > The specification does not explicitly mention that the data format, the > channel count (and layout), and the sample rate cannot > change inside of a WavPack file, but they can't. The first block of a WavPack > file that contains audio determines the format of > the entire file, and the documentation will be updated shortly to reflect > that. And obviously Konstantin Shishkov was aware of > this, even referring to the first block containing audio as the "header > block". > > I have no issue with the decoder handling these changes as it might be > receiving a WavPack stream from a container that allows > this, but the native WavPack container doesn't. And I actually don't have any > problem with this specific change going in because > it doesn't actually break anything. However, it should not be possible to > create a WavPack file with format changes such as these.
Okay, then maybe I'll drop this patch. My intent was for it to allow adding tests for wavpack format changes, but I guess that can also be done with matroska. -- Anton Khirnov _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".