Module: libav Branch: release/12 Commit: 0bd593fe55589366d1f3fa575df34e5996693021
Author: James Almer <[email protected]> Committer: Anton Khirnov <[email protected]> Date: Fri Feb 10 20:24:26 2017 -0300 apetag: fix flag value to signal footer presence According to the spec[1], a value of 0 means the footer is present and a value of 1 means it's absent, the exact opposite of header presence flag where 1 means present and 0 absent. The reason for this is compatibility with APEv1 tags, where there's no header, footer presence was mandatory for all files, and the flags field was a zeroed reserved field. [1] http://wiki.hydrogenaud.io/index.php?title=Ape_Tags_Flags Signed-off-by: James Almer <[email protected]> CC: [email protected] Signed-off-by: Anton Khirnov <[email protected]> (cherry picked from commit 3f258f5ee05c9da05f61447b802ae3e39629f44b) Signed-off-by: Anton Khirnov <[email protected]> --- libavformat/apetag.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/libavformat/apetag.c b/libavformat/apetag.c index 044bfd8..83c2415 100644 --- a/libavformat/apetag.c +++ b/libavformat/apetag.c @@ -32,7 +32,7 @@ #define APE_TAG_VERSION 2000 #define APE_TAG_FOOTER_BYTES 32 #define APE_TAG_FLAG_CONTAINS_HEADER (1 << 31) -#define APE_TAG_FLAG_CONTAINS_FOOTER (1 << 30) +#define APE_TAG_FLAG_LACKS_FOOTER (1 << 30) #define APE_TAG_FLAG_IS_HEADER (1 << 29) #define APE_TAG_FLAG_IS_BINARY (1 << 1) @@ -194,8 +194,7 @@ int ff_ape_write_tag(AVFormatContext *s) avio_wl32(s->pb, 0); // reserve space for tag count // flags - avio_wl32(s->pb, APE_TAG_FLAG_CONTAINS_HEADER | APE_TAG_FLAG_CONTAINS_FOOTER | - APE_TAG_FLAG_IS_HEADER); + avio_wl32(s->pb, APE_TAG_FLAG_CONTAINS_HEADER | APE_TAG_FLAG_IS_HEADER); ffio_fill(s->pb, 0, 8); // reserved while ((e = av_dict_get(s->metadata, "", e, AV_DICT_IGNORE_SUFFIX))) { @@ -217,7 +216,7 @@ int ff_ape_write_tag(AVFormatContext *s) avio_wl32(s->pb, count); // tag count // flags - avio_wl32(s->pb, APE_TAG_FLAG_CONTAINS_HEADER | APE_TAG_FLAG_CONTAINS_FOOTER); + avio_wl32(s->pb, APE_TAG_FLAG_CONTAINS_HEADER); ffio_fill(s->pb, 0, 8); // reserved // update values in the header _______________________________________________ libav-commits mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-commits
