qtdemux: Add 'aavd' and related fourcc codes for AAX encrypted audio

The 'aavd' box is contained in the 'stsd' sample description. The 'aavd'
box follows the layout of an 'mp4a' entry, i.e. it contains a single
standard 'esds' extension box, and the two proprietary 'adrm' and 'aabd'
extension boxes.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/577>
This commit is contained in:
Stefan Brüns 2020-05-02 02:20:44 +02:00 committed by StefanBruens
parent 23bb84c868
commit 6e68873d7f
3 changed files with 7 additions and 0 deletions

View file

@ -403,6 +403,10 @@ G_BEGIN_DECLS
#define FOURCC_tenc GST_MAKE_FOURCC('t','e','n','c')
#define FOURCC_cenc GST_MAKE_FOURCC('c','e','n','c')
/* Audible AAX encrypted audio */
#define FOURCC_aavd GST_MAKE_FOURCC('a','a','v','d')
#define FOURCC_adrm GST_MAKE_FOURCC('a','d','r','m')
G_END_DECLS
#endif /* __FOURCC_H__ */

View file

@ -7856,6 +7856,7 @@ qtdemux_parse_node (GstQTDemux * qtdemux, GNode * node, const guint8 * buffer,
case FOURCC_mp4a:
case FOURCC_alac:
case FOURCC_fLaC:
case FOURCC_aavd:
{
guint32 version;
guint32 offset;

View file

@ -225,6 +225,8 @@ static const QtNodeType qt_node_types[] = {
{FOURCC_av1m, "AV1 Multi-Frame sample group entry", 0},
{FOURCC_av1s, "AV1 S-Frame sample group entry", 0},
{FOURCC_av1M, "AV1 Metadata sample group entry", 0},
{FOURCC_aavd, "AAX encrypted audio", 0},
{FOURCC_adrm, "AAX DRM key data", 0},
{0, "unknown", 0,},
};