[FFmpeg-devel] [RFC 00/10] AV_SAMPLE_FMT_DSD
Peter Ross
pross at xvid.org
Wed May 7 09:38:08 CEST 2014
On Tue, May 06, 2014 at 08:38:21PM +0530, Anshul wrote:
> Peter Ross <pross at xvid.org> wrote:
> >RFC:
> >
> >Direct Stream Digital (DSD), a.k.a One bit audio (OBA), is an
> >alternative to PCM.
> >It can be found in Super Audio CDs and hi-res downloadable music.
> >
> >Changes:
> >- add sample fmt
> >- move DSD-to-PCM conversion from libavcodec/dsddec into libswresample
> >- DSD-over-PCM encoder, enabling bit perfect playback to external
> >hardware
> >
> >Peter Ross (10):
> > add AV_SAMPLE_FMT_DSD and AV_SAMPLE_FMT_DSDP
> > swresample/audioconvert: integrate DSD to PCM conversion
> > swresample/audioconvert: display error message if not conversion not
> > supported
> > avfiter/af_aresample: when converting DSD->PCM and no output sample
> > rate is specified, reduce output sample rate by
> > swr_dsd2pcm_sr_factor()
> > avcodec/dsd: rework codecs to use AV_SAMPLE_FMT_DSD
> > avformat/uncodedframecrcenc: process AV_SAMPLE_FMT_DSD and
> > AV_SAMPLE_FMT_DSD
> > DSD-over-PCM (DoP)
> > avformat/riff: enable DoP muxing
> > avformat/iff: report actual DSD sample rate
> > avformat/dsfdec: report actual DSD sample rate
> >
> > Changelog | 1 +
> > doc/APIchanges | 6 ++
> > doc/general.texi | 1 +
> > libavcodec/Makefile | 10 +-
> > libavcodec/allcodecs.c | 9 +-
> > libavcodec/avcodec.h | 1 +
> > libavcodec/codec_desc.c | 15 ++-
> >libavcodec/dop.c | 172
> >++++++++++++++++++++++++++++++++++
> > libavcodec/dsd_tablegen.c | 38 --------
> > libavcodec/dsd_tablegen.h | 95 -------------------
> >libavcodec/dsddec.c | 198
> >+++++++++++++++++++--------------------
> > libavcodec/utils.c | 3 +
> > libavfilter/af_aresample.c | 6 ++
> > libavformat/dsfdec.c | 3 +-
> > libavformat/iff.c | 2 +-
> > libavformat/riff.c | 1 +
> > libavformat/riffenc.c | 3 +-
> > libavformat/uncodedframecrcenc.c | 2 +
> > libavutil/samplefmt.c | 13 ++-
> > libavutil/samplefmt.h | 3 +
> > libswresample/Makefile | 18 ++++
> > libswresample/audioconvert.c | 65 ++++++++++++-
> > libswresample/audioconvert.h | 11 ++-
> > libswresample/dsd_tablegen.h | 95 +++++++++++++++++++
> > libswresample/swresample.c | 24 ++++-
> > libswresample/swresample.h | 7 ++
> > 26 files changed, 543 insertions(+), 259 deletions(-)
> > create mode 100644 libavcodec/dop.c
> > delete mode 100644 libavcodec/dsd_tablegen.c
> > delete mode 100644 libavcodec/dsd_tablegen.h
> > create mode 100644 libswresample/dsd_tablegen.h
>
> Is dop also related to default behaviour of audio transcoding ?
Can you restate/rephrase the question?
DoP is a method of transporting DSD (one-bit audio) samples over PCM.
This is done expressly for the purpose of feeding an external DSD DAC.
Usage:
./ffmpeg -i sample.dff -acodec dop_s24le out.wav
then play back out.wav file to dac
http://dsd-guide.com/dop-open-standard
-- Peter
(A907 E02F A6E5 0CD2 34CD 20D2 6760 79C5 AC40 DD6B)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20140507/10f46980/attachment.asc>
More information about the ffmpeg-devel
mailing list