diff --git a/plugin/captcha/info.php b/plugin/captcha/info.php new file mode 100644 index 000000000..ede5d1704 --- /dev/null +++ b/plugin/captcha/info.php @@ -0,0 +1,17 @@ + \ No newline at end of file diff --git a/plugin/captcha/wav.php b/plugin/captcha/wav.php index c3958ea9b..74f638d5b 100644 --- a/plugin/captcha/wav.php +++ b/plugin/captcha/wav.php @@ -42,8 +42,8 @@ function joinwavs($wavs) 'H8Subchunk1ID', 'VSubchunk1Size', 'vAudioFormat', 'vNumChannels', 'VSampleRate', 'VByteRate', 'vBlockAlign', 'vBitsPerSample' )); - $data = ''; + $info = array(); foreach($wavs as $wav){ $fp = fopen($wav,'rb'); $header = fread($fp,36); @@ -65,8 +65,20 @@ function joinwavs($wavs) $data .= fread($fp,$size); } - return $header.pack('V',strlen($data)).$data; + return '' + .pack('a4', 'RIFF') + .pack('V', strlen($data) + 36) + .pack('a4', 'WAVE') + .pack('a4', 'fmt ') + .pack('V', $info['Subchunk1Size']) // 16 + .pack('v', $info['AudioFormat']) // 1 + .pack('v', $info['NumChannels']) // 1 + .pack('V', $info['SampleRate']) // 8000 + .pack('V', $info['ByteRate']) // 8000 + .pack('v', $info['BlockAlign']) // 1 + .pack('v', $info['BitsPerSample']) // 8 + .pack('a4', 'data') + .pack('V', strlen($data)) + .$data; } - -exit; ?> diff --git a/plugin/captcha/wavs/captcha.wav b/plugin/captcha/wavs/captcha.wav new file mode 100644 index 000000000..94dd1f7d6 Binary files /dev/null and b/plugin/captcha/wavs/captcha.wav differ