add FLAC__format_is_valid_sample_rate()
diff --git a/src/libFLAC/format.c b/src/libFLAC/format.c
index 25f7f8d..d515403 100644
--- a/src/libFLAC/format.c
+++ b/src/libFLAC/format.c
@@ -40,10 +40,13 @@
 const unsigned FLAC__STREAM_METADATA_SEEKPOINT_SAMPLE_NUMBER_LEN = 64; /* bits */
 const unsigned FLAC__STREAM_METADATA_SEEKPOINT_STREAM_OFFSET_LEN = 64; /* bits */
 const unsigned FLAC__STREAM_METADATA_SEEKPOINT_FRAME_SAMPLES_LEN = 16; /* bits */
-const unsigned FLAC__STREAM_METADATA_SEEKPOINT_LEN = 18; /* bytes */
+const unsigned FLAC__STREAM_METADATA_SEEKPOINT_LENGTH = 18; /* bytes */
 
 const FLAC__uint64 FLAC__STREAM_METADATA_SEEKPOINT_PLACEHOLDER = 0xffffffffffffffff;
 
+const unsigned FLAC__STREAM_METADATA_VORBIS_COMMENT_ENTRY_LENGTH_LEN = 32; /* bits */
+const unsigned FLAC__STREAM_METADATA_VORBIS_COMMENT_NUM_COMMENTS_LEN = 32; /* bits */
+
 const unsigned FLAC__STREAM_METADATA_IS_LAST_LEN = 1; /* bits */
 const unsigned FLAC__STREAM_METADATA_TYPE_LEN = 7; /* bits */
 const unsigned FLAC__STREAM_METADATA_LENGTH_LEN = 24; /* bits */
@@ -109,3 +112,19 @@
 	"SEEKTABLE",
 	"VORBIS_COMMENT"
 };
+
+FLAC__bool FLAC__format_is_valid_sample_rate(unsigned sample_rate)
+{
+	if(
+		sample_rate == 0 ||
+		sample_rate > FLAC__MAX_SAMPLE_RATE ||
+		(
+			sample_rate >= (1u << 16) && 
+			!(sample_rate % 1000 == 0 || sample_rate % 10 == 0)
+		)
+	) {
+		return false;
+	}
+	else
+		return true;
+}