Fixed first period calculation
diff --git a/sonic.c b/sonic.c
index b70259f..484e7e9 100644
--- a/sonic.c
+++ b/sonic.c
@@ -258,6 +258,7 @@
     stream->minPeriod = minPeriod;
     stream->maxPeriod = maxPeriod;
     stream->maxRequired = maxRequired;
+    stream->prevPeriod = 0;
     return 1;
 }
 
@@ -669,7 +670,7 @@
     int maxDiff,
     int preferNewPeriod)
 {
-    if(minDiff == 0) {
+    if(minDiff == 0 || stream->prevPeriod == 0) {
 	return 0;
     }
     if(preferNewPeriod) {