[FFmpeg-devel] [PATCH 0/6] Fix detecting ATRAC3 audio from MPS files

misty at brew.sh misty at brew.sh
Fri Jan 5 13:34:42 EET 2018


From: Misty De Meo <mistydemeo at gmail.com>

> this looks a bit odd
> shouldnt this test more than 4 bits of startcode ?

Yeah, that was a misreading on my part of the original patch. I need
a different approach.

I think I've found something that should work, though. I was talking to
Jan about this in IRC, and vgmtoolbox came up. It detects ATRAC audio
in MPEG files by checking for magic bytes in the PES private data:
https://sourceforge.net/p/vgmtoolbox/code/HEAD/tree/format/VGMToolbox/format/SonyPmfStream.cs#l19
I've updated the patch to set the sony_psmf flag if those bytes are
detected, and interpret all streams under 0x20 as ATRAC when that flag
is set. That's worked for all of the samples we have, both PSM and MPS,
and also works for a newer PS3 sample that Jan had. The fate MPEG tests
still pass, so I'm hopeful this doesn't introduce any false positives.

I've included an updated version of the full patchset.

Maxim Poliakovski (1):
  mpeg: add experimental support for PSMF audio.

Misty De Meo (5):
  fate: add atrac3p conversion test
  oma: move some constants into libavcodec
  Fix detecting ATRAC3 audio from MPS files
  mpeg: fix use of deprecated struct
  psmf: add FATE tests

 Changelog                             |   1 +
 libavcodec/Makefile                   |   1 +
 libavcodec/allcodecs.c                |   1 +
 libavcodec/atrac3plus_parser.c        | 170 ++++++++++++++++++++++++++++++++++
 libavformat/oma.c => libavcodec/oma.h |  27 +++---
 libavcodec/version.h                  |   2 +-
 libavformat/Makefile                  |   4 +-
 libavformat/mpeg.c                    |  29 ++++++
 libavformat/mpeg.h                    |   1 +
 libavformat/oma.h                     |  21 ++---
 libavformat/omadec.c                  |  13 +--
 libavformat/omaenc.c                  |   7 +-
 libavformat/version.h                 |   2 +-
 tests/Makefile                        |   1 +
 tests/fate/atrac.mak                  |   4 +
 tests/fate/psmf.mak                   |  23 +++++
 16 files changed, 268 insertions(+), 39 deletions(-)
 create mode 100644 libavcodec/atrac3plus_parser.c
 rename libavformat/oma.c => libavcodec/oma.h (65%)
 create mode 100644 tests/fate/psmf.mak

-- 
2.15.1



More information about the ffmpeg-devel mailing list