Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Мультимедиа в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.02.2011, 21:31   #1
Nehalem
 
Регистрация: 02.02.2011
Сообщений: 3
По умолчанию Склеивание WAV-файлов

Здравствуйте дорогие однофорумчане!
Пишу на Delphi 7 голосовой движок, текст он конечно в слух читает, но так как в структуре чтения получается одна буква-один файл-один поток, то есть для произношения каждой буквы в поток загружается отдельный файл, произношение получается ни очень плавным. Хотел бы, чтобы для произношения, например, слова, файлы соответствующих букв последовательно соединились в одном потоке и воспроизвелись, так произношение будет плавнее. К тому же появится возможность реализовать возможность быстрой озвучке текста и сохранении результата в файл. К сожалению, структура WAV-файла не позволяет просто загрузив несколько файлов в поток, все их воспроизввести. Воспроизводится только первый по счёту. Где-то читал, что для склейки таких файлов нужно у файлов, начиная со второго, удалять заголовочную часть, в которой прописаны параметры файла, но как это сделать не было написано. Помогите пожалуйста решить эту задачу, а именно, склеить WAV-файлы, желательно с использованием TFileStream. Спасибо!

Последний раз редактировалось Nehalem; 02.02.2011 в 21:33.
Nehalem вне форума Ответить с цитированием
Старый 02.02.2011, 22:05   #2
Tronix
Форумчанин
 
Аватар для Tronix
 
Регистрация: 15.06.2010
Сообщений: 740
По умолчанию

http://audiocoding.ru/article_wav_header.html ?
Чтобы понять рекурсию, сперва нужно понять рекурсию.
Tronix вне форума Ответить с цитированием
Старый 03.02.2011, 17:56   #3
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

> одна буква-один файл

жэсть-движок. А то, что буквы в словах бывают ударные и не очень, он учитывает? Или, что один звук влияет на 2 соседних, догадывается?


По теме: поотрезайте у всех файлов первые 44 байта* любым способом, который вы знаете. Получите чистые семплы, которые можно склеивать хоть как угодно.


* надеюсь файлы у вас в PCM, без компрессии?
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Старый 04.02.2011, 01:09   #4
Nehalem
 
Регистрация: 02.02.2011
Сообщений: 3
По умолчанию

На данном этапе хочу реализовать склеивание, а уже дальше интонация и правильность произношения. Спасибо за совет! Звуки делал в Sound Forge без компрессии. Я не пытаюсь сделать аналог Digalo или ScanSoft, мне интересно самому реализовать эту технологию с нуля, не пользуясь ничем готовым или сделанным кем-то другим. Давненько даже калькулятор писал, не смотря на то, что готовых великое множество, захотелось своими руками реализовать, к тому же так, как самому удобно было бы пользоваться, и до сих пор пользуюсь.
Nehalem вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Склеивание таблиц из разных файлов в один zenner Microsoft Office Excel 16 04.05.2011 23:11
Запись и чтение WAV-файлов в/из базы Sanprof БД в Delphi 1 15.11.2010 13:27
макрос для склеивание двух текстовых файлов zenner Microsoft Office Word 1 09.10.2009 14:16
Слияние нескольких wav файлов lacost Мультимедиа в Delphi 1 30.09.2008 19:25
обновление в блоге - СКЛЕИВАНИЕ ФАЙЛОВ Pblog Обсуждение статей 0 07.08.2007 12:41