Commit a27cd70c authored by Timothy B. Terriberry's avatar Timothy B. Terriberry Committed by Jean-Baptiste Kempf

Add support for updating Opus metadata.

This requires a taglib version with Opus support, but such a
version has not yet been released, even though support has been in
git almost a year. This version is scheduled as version 1.9
Signed-off-by: default avatarJean-Baptiste Kempf <jb@videolan.org>
parent 4bbf2165
...@@ -69,6 +69,10 @@ ...@@ -69,6 +69,10 @@
# endif # endif
#endif #endif
#if TAGLIB_VERSION >= VERSION_INT(1,9,0)
# include <opusfile.h>
#endif
#include <apetag.h> #include <apetag.h>
#include <flacfile.h> #include <flacfile.h>
#include <mpcfile.h> #include <mpcfile.h>
...@@ -643,6 +647,10 @@ static int ReadMeta( vlc_object_t* p_this) ...@@ -643,6 +647,10 @@ static int ReadMeta( vlc_object_t* p_this)
ReadMetaFromXiph( ogg_speex->tag(), p_demux_meta, p_meta ); ReadMetaFromXiph( ogg_speex->tag(), p_demux_meta, p_meta );
else if( Ogg::Vorbis::File* ogg_vorbis = dynamic_cast<Ogg::Vorbis::File*>(f.file()) ) else if( Ogg::Vorbis::File* ogg_vorbis = dynamic_cast<Ogg::Vorbis::File*>(f.file()) )
ReadMetaFromXiph( ogg_vorbis->tag(), p_demux_meta, p_meta ); ReadMetaFromXiph( ogg_vorbis->tag(), p_demux_meta, p_meta );
#if defined(TAGLIB_OPUSFILE_H)
else if( Ogg::Opus::File* ogg_opus = dynamic_cast<Ogg::Opus::File*>(f.file()) )
ReadMetaFromXiph( ogg_opus->tag(), p_demux_meta, p_meta );
#endif
} }
else if( dynamic_cast<RIFF::File*>(f.file()) ) else if( dynamic_cast<RIFF::File*>(f.file()) )
{ {
...@@ -952,6 +960,10 @@ static int WriteMeta( vlc_object_t *p_this ) ...@@ -952,6 +960,10 @@ static int WriteMeta( vlc_object_t *p_this )
WriteMetaToXiph( ogg_speex->tag(), p_item ); WriteMetaToXiph( ogg_speex->tag(), p_item );
else if( Ogg::Vorbis::File* ogg_vorbis = dynamic_cast<Ogg::Vorbis::File*>(f.file()) ) else if( Ogg::Vorbis::File* ogg_vorbis = dynamic_cast<Ogg::Vorbis::File*>(f.file()) )
WriteMetaToXiph( ogg_vorbis->tag(), p_item ); WriteMetaToXiph( ogg_vorbis->tag(), p_item );
#if defined(TAGLIB_OPUSFILE_H)
else if( Ogg::Opus::File* ogg_opus = dynamic_cast<Ogg::Opus::File*>(f.file()) )
WriteMetaToXiph( ogg_opus->tag(), p_item );
#endif
} }
else if( dynamic_cast<RIFF::File*>(f.file()) ) else if( dynamic_cast<RIFF::File*>(f.file()) )
{ {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment