On Mon, Dec 1, 2014 at 10:40 PM, ???? ?????? <bart.gopnik at gmail.com> wrote:> Please help me solve the following problem: > > FLAC tools have a lots of warnings about non-subset files during > encoding, but unfortunately don't have easy way to check/test existing > FLAC stream for subset compliance. > > "flac -a" generates the big text file that has data about each frame > and subframe. But looks like I need parser and statistics tools to > answer on question about subset compliance of stream. > > Looks like "metaflac --show-min-blocksize --show-max-blocksize > --show-sample-rate --show-bps" is more useful, but unfortunately there > is no switches to show LPC filter order and Rice partition order in > MataFLAC tool. > > It would be nice if anybody add switches to show more parameters like > LPC filter order and Rice partition order and checking for subset > compliance of stream to MetaFLAC tool. > > Using output in JSON format is very useful thing (bit thanks for > that!), but user, unfortunately, still need statistics tools to answer > on question about subset compliance of stream. > > Waitman, could you please implement switches to show LPC filter order > and Rice partition order and checking for subset compliance of stream > to MetaFLAC tool? It would be great help. > > 2014-12-01 10:20 GMT+03:00 Waitman Gobble <gobble.wa at gmail.com>: > > > > Hi, > > > > I modified the metaflac program to output in JSON format if the > > --output-json switch is used, and made a simple Go program to demonstrate > > use of the output. > > > > I imported the MIT licensed json-c library into src/share/json-c and put > > headers in include/share/json-c. > > > > For example, > > # metaflac --output-json --list myfile.flac > > > > example output: https://gist.github.com/waitman/847a8cae4a650a8898ee > > > > If the modified software is useful to anyone, the modifications are > > available on github, I did a 'clean' import of head / 1.3.1 then pushed > up > > the changes, so maybe it's easier to see what was modified. > > > > https://github.com/waitman/flac > > > > https://github.com/waitman/goflac > > > > > > -- > > Waitman Gobble > > Los Altos California USA > > 510-830-7975 > > > > _______________________________________________ > > flac-dev mailing list > > flac-dev at xiph.org > > http://lists.xiph.org/mailman/listinfo/flac-dev > > >Ok I will give it a try and see what I can come up with. -- Waitman Gobble Los Altos, California USA 510-830-7975 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.xiph.org/pipermail/flac-dev/attachments/20141201/1c8b2ea8/attachment.htm
On Mon, Dec 1, 2014 at 11:55 PM, Waitman Gobble <gobble.wa at gmail.com> wrote:> > > On Mon, Dec 1, 2014 at 10:40 PM, ???? ?????? <bart.gopnik at gmail.com> > wrote: > >> Please help me solve the following problem: >> >> FLAC tools have a lots of warnings about non-subset files during >> encoding, but unfortunately don't have easy way to check/test existing >> FLAC stream for subset compliance. >> >> "flac -a" generates the big text file that has data about each frame >> and subframe. But looks like I need parser and statistics tools to >> answer on question about subset compliance of stream. >> >> Looks like "metaflac --show-min-blocksize --show-max-blocksize >> --show-sample-rate --show-bps" is more useful, but unfortunately there >> is no switches to show LPC filter order and Rice partition order in >> MataFLAC tool. >> >> It would be nice if anybody add switches to show more parameters like >> LPC filter order and Rice partition order and checking for subset >> compliance of stream to MetaFLAC tool. >> >> Using output in JSON format is very useful thing (bit thanks for >> that!), but user, unfortunately, still need statistics tools to answer >> on question about subset compliance of stream. >> >> Waitman, could you please implement switches to show LPC filter order >> and Rice partition order and checking for subset compliance of stream >> to MetaFLAC tool? It would be great help. >> >> 2014-12-01 10:20 GMT+03:00 Waitman Gobble <gobble.wa at gmail.com>: >> > >> > Hi, >> > >> > I modified the metaflac program to output in JSON format if the >> > --output-json switch is used, and made a simple Go program to >> demonstrate >> > use of the output. >> > >> > I imported the MIT licensed json-c library into src/share/json-c and put >> > headers in include/share/json-c. >> > >> > For example, >> > # metaflac --output-json --list myfile.flac >> > >> > example output: https://gist.github.com/waitman/847a8cae4a650a8898ee >> > >> > If the modified software is useful to anyone, the modifications are >> > available on github, I did a 'clean' import of head / 1.3.1 then pushed >> up >> > the changes, so maybe it's easier to see what was modified. >> > >> > https://github.com/waitman/flac >> > >> > https://github.com/waitman/goflac >> > >> > >> > -- >> > Waitman Gobble >> > Los Altos California USA >> > 510-830-7975 >> > >> > _______________________________________________ >> > flac-dev mailing list >> > flac-dev at xiph.org >> > http://lists.xiph.org/mailman/listinfo/flac-dev >> > >> > > > Ok I will give it a try and see what I can come up with. > > -- > Waitman Gobble > Los Altos, California USA > 510-830-7975 >Is the most interesting data the [frame] and [subframe] info? Is the qlp_coeff[], warmpup[] and parameter[] data for each frame/subframe important? -- Waitman Gobble San Jose California USA 510-830-7975 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.xiph.org/pipermail/flac-dev/attachments/20141202/894b53ba/attachment.htm
>> Ok I will give it a try and see what I can come up with.> Is the most interesting data the [frame] and [subframe] info?> Is the qlp_coeff[], warmpup[] and parameter[] data for each frame/subframe important?Yes, it would be nice if MetaFLAC will show minimum and maximum values of parameters (if are not constant/fixed) for the stream. And it would be VERY NICE if you implement "--is-subset" switch. "metaflac --is-subset" command should show "true" if stream is subset and "false" if stream is not "subset". What parameters need to test/check for subset compliance? If one or more of the following statements is true the stream is NOT subset. sample size in bits = not (8 or 12 or 16 or 20 or 24) or min_partition_order > 8 or max_partition_order > 8 or min_prediction_order > 12 and samplerate <= 48000 or max_prediction_order > 12 and samplerate <= 48000 or frame_size > 4608 and samplerate <= 48000 or frame_size > 16384 Thanks in advance!