40 lines
964 B
C++
40 lines
964 B
C++
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
// Copyright The Music Player Daemon Project
|
|
|
|
#ifndef MPD_TAG_FILE_HXX
|
|
#define MPD_TAG_FILE_HXX
|
|
|
|
struct AudioFormat;
|
|
class Path;
|
|
class TagHandler;
|
|
class TagBuilder;
|
|
|
|
/**
|
|
* Scan the tags of a song file. Invokes matching decoder plugins,
|
|
* but does not fall back to generic scanners (APE and ID3) if no tags
|
|
* were found (but the file was recognized).
|
|
*
|
|
* Throws on error.
|
|
*
|
|
* @return true if the file was recognized (even if no metadata was
|
|
* found)
|
|
*/
|
|
bool
|
|
ScanFileTagsNoGeneric(Path path, TagHandler &handler);
|
|
|
|
/**
|
|
* Scan the tags of a song file. Invokes matching decoder plugins,
|
|
* and falls back to generic scanners (APE and ID3) if no tags were
|
|
* found (but the file was recognized).
|
|
*
|
|
* Throws on error.
|
|
*
|
|
* @return true if the file was recognized (even if no metadata was
|
|
* found)
|
|
*/
|
|
bool
|
|
ScanFileTagsWithGeneric(Path path, TagBuilder &builder,
|
|
AudioFormat *audio_format=nullptr);
|
|
|
|
#endif
|