Re: [FFmpeg-user] MLP encoder: encodes 24-bit wav files into 16-bit MLP
On Sun Jul 7 09:57:26 EEST 2019, Fabrice Nicol wrote: I'll be testing the recompiled-reactivated 24 bit encoder so that MLP can be added to the free DVD-Audio authoring software dvda-author (http://dvd-audio.sourceforge.com), which is currently being improved. Hopefully Jai can fix remaining issues and let me know. Hi Fabrice, I have fixed the lossless check issues and enabled 24 bit support for both MLP and TrueHD. I've sent the patch [1] out for review on ffmpeg-devel, check it out if you need it urgently before review and merge. [1]: http://ffmpeg.org/pipermail/ffmpeg-devel/2019-July/246357.html Cheers, Jai ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] MLP encoder: encodes 24-bit wav files into 16-bit MLP
Thanks for this prompt reply. I'll be testing the recompiled-reactivated 24 bit encoder so that MLP can be added to the free DVD-Audio authoring software dvda-author ( http://dvd-audio.sourceforge.com), which is currently being improved. Hopefully Jai can fix remaining issues and let me know. Best Fabrice Nicol Le dim. 7 juil. 2019 03:58, Moritz Barsnick a écrit : > On Sat, Jul 06, 2019 at 03:57:38 +0200, fabrice nicol wrote: > > ffmpeg is build from git source code. Choosing a simple 2-channel 24 > > -bit 96khz wav file yields: > > > >`~ $ /usr/local/bin/ffmpeg -i a_2_24_96.wav -c:a mlp -strict > experimental a_2_24_96.mlp` > [...] > > Input #0, wav, from 'a_2_24_96.wav': > >Duration: 00:14:14.05, bitrate: 4608 kb/s > > Stream #0:0: Audio: pcm_s24le ([1][0][0][0] / 0x0001), 96000 Hz, > stereo, s32 (24 bit), 4608 kb/s > [...] > > Stream #0:0: Audio: mlp, 96000 Hz, stereo, s16, 128 kb/s > [...] > > Is this a limitation of the currently still experimental encoder or am I > > doing something wrong? > > Indeed, this seems to be a limitation of the mlp encoder: > > $ ffmpeg -h encoder=mlp > [...] > Supported sample formats: s16 > > But looking at the code (mplenc.c), there does seem to be support for > 24 bit MLP in there. It just can't be accessed, because the encoder is > not configured to accept such input: > > .sample_fmts= (const enum AVSampleFormat[]) > {AV_SAMPLE_FMT_S16, AV_SAMPLE_FMT_NONE}, > (This is a list of supported input formats.) > > If you edit this line to: > .sample_fmts= (const enum AVSampleFormat[]) > {AV_SAMPLE_FMT_S16, AV_SAMPLE_FMT_S32, AV_SAMPLE_FMT_NONE}, > > and recompile, it seems to actually produce 24 bit output. (And this > output plays with ffplay and mpv at least, which both use libavcodec to > decode though). > > The reason for the support missing can be read in the commit message: > > https://github.com/FFmpeg/FFmpeg/commit/15b86f480a9c748aeeafb42a877ee755c64f90f2 > > * 32-bit sample support has been removed for now, will add it later > > While testing, some samples gave lossless check failures when enforcing > s32. Probably this will also get solved with the LFE issues. > > So it was disabled because some encodings were incorrect. > > Cheers, > Moritz > ___ > ffmpeg-user mailing list > ffmpeg-user@ffmpeg.org > https://ffmpeg.org/mailman/listinfo/ffmpeg-user > > To unsubscribe, visit link above, or email > ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe". ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] MLP encoder: encodes 24-bit wav files into 16-bit MLP
On Sat, Jul 06, 2019 at 03:57:38 +0200, fabrice nicol wrote: > ffmpeg is build from git source code. Choosing a simple 2-channel 24 > -bit 96khz wav file yields: > > `~ $ /usr/local/bin/ffmpeg -i a_2_24_96.wav -c:a mlp -strict experimental > a_2_24_96.mlp` [...] > Input #0, wav, from 'a_2_24_96.wav': > Duration: 00:14:14.05, bitrate: 4608 kb/s > Stream #0:0: Audio: pcm_s24le ([1][0][0][0] / 0x0001), 96000 Hz, stereo, > s32 (24 bit), 4608 kb/s [...] > Stream #0:0: Audio: mlp, 96000 Hz, stereo, s16, 128 kb/s [...] > Is this a limitation of the currently still experimental encoder or am I > doing something wrong? Indeed, this seems to be a limitation of the mlp encoder: $ ffmpeg -h encoder=mlp [...] Supported sample formats: s16 But looking at the code (mplenc.c), there does seem to be support for 24 bit MLP in there. It just can't be accessed, because the encoder is not configured to accept such input: .sample_fmts= (const enum AVSampleFormat[]) {AV_SAMPLE_FMT_S16, AV_SAMPLE_FMT_NONE}, (This is a list of supported input formats.) If you edit this line to: .sample_fmts= (const enum AVSampleFormat[]) {AV_SAMPLE_FMT_S16, AV_SAMPLE_FMT_S32, AV_SAMPLE_FMT_NONE}, and recompile, it seems to actually produce 24 bit output. (And this output plays with ffplay and mpv at least, which both use libavcodec to decode though). The reason for the support missing can be read in the commit message: https://github.com/FFmpeg/FFmpeg/commit/15b86f480a9c748aeeafb42a877ee755c64f90f2 * 32-bit sample support has been removed for now, will add it later While testing, some samples gave lossless check failures when enforcing s32. Probably this will also get solved with the LFE issues. So it was disabled because some encodings were incorrect. Cheers, Moritz ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
[FFmpeg-user] MLP encoder: encodes 24-bit wav files into 16-bit MLP
I'm experiencing a parallel issue with encoding, the reverse operation of my previous question about the MLP decoder. ffmpeg is build from git source code. Choosing a simple 2-channel 24 -bit 96khz wav file yields: `~ $ /usr/local/bin/ffmpeg -i a_2_24_96.wav -c:a mlp -strict experimental a_2_24_96.mlp` ffmpeg version git-2019-07-05-7c64498 Copyright (c) 2000-2019 the FFmpeg developers built with gcc 9.1.0 (Gentoo 9.1.0-r1 p1.1) configuration: libavutil 56. 30.100 / 56. 30.100 libavcodec 58. 53.101 / 58. 53.101 libavformat 58. 28.101 / 58. 28.101 libavdevice 58. 7.100 / 58. 7.100 libavfilter 7. 56.100 / 7. 56.100 libswscale 5. 4.101 / 5. 4.101 libswresample 3. 4.100 / 3. 4.100 Input #0, wav, from 'a_2_24_96.wav': Duration: 00:14:14.05, bitrate: 4608 kb/s Stream #0:0: Audio: pcm_s24le ([1][0][0][0] / 0x0001), 96000 Hz, stereo, s32 (24 bit), 4608 kb/s Stream mapping: Stream #0:0 -> #0:0 (pcm_s24le (native) -> mlp (native)) Press [q] to stop, [?] for help Output #0, mlp, to 'a_2_24_96.mlp': Metadata: encoder : Lavf58.28.101 Stream #0:0: Audio: mlp, 96000 Hz, stereo, s16, 128 kb/s Metadata: encoder : Lavc58.53.101 mlp size= 138569kB time=00:14:14.05 bitrate=1329.1kbits/s speed=57.8x video:0kB audio:138569kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.00% The output is 16-bit depth not 24-bit: Input #0, mlp, from 'a_2_24_96.mlp': Duration: N/A, start: 0.00, bitrate: N/A Stream #0:0: Audio: mlp, 96000 Hz, stereo,s16 Is this a limitation of the currently still experimental encoder or am I doing something wrong? Fabrice Le 03/07/2019 à 11:17, Moritz Barsnick a écrit : On Wed, Jul 03, 2019 at 10:17:57 +0200, fabrice nicol wrote: The MLP decoder does not seem to work for 24-bit MLP. It converts such files into 16-bit WAV, whatever the sample rate. Actually, you could think so. But the decoder is fine. On the other hand, the wav output format defaults to 16 bits. `ffmpeg -i /mnt/cdrom/AUDIO_TS/ATS_01_3.AOB ~/a.wav` [...] Stream mapping: Stream #0:0 -> #0:0 (mlp (native) -> pcm_s16le (native)) [...] Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 96000 Hz, 5.1, s16, 9216 kb/s Just add "-c:a pcm_s24le" as an output option. Then you get the full sample depth. sox --i a.wav Tested and confirmed with sox here as well. ;-) Hope this helps, Moritz ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe". ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
Re: [FFmpeg-user] MLP encoder: encodes 24-bit wav files into 16-bit MLP
Eure E-Mail zu sehen mein Herz auf’s Wärmste erfreut, allerdings Du gefunden hast nur mein Auto-Replier. Ein Kunde er wirklich sein mag. Aber trotzdem… große Arbeit ich befürchte durch seine E-Mail. Deshalb in Urlaub fahren ich werde von 05.07.2019 bis 22.07.2019. Denn Vorsicht du walten lassen musst. Stress ein Pfad zur Dunklen Seite er ist. Ehre das Leben, indem du lebst, Padawan. Antworten nach meiner Rückkehr, ich werde. Dein Meister in meiner Abwesenheit sein soll: Morris Schwarz morris.schw...@ilm-provider.de ___ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".