Форум программистов  
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Delphi > Lazarus, Free Pascal, CodeTyphon
Регистрация

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

Ответ
 
Опции темы
Старый 27.10.2016, 12:38   #1
vitalmsk
Пользователь
 
Регистрация: 10.05.2016
Сообщений: 12
Репутация: 10
По умолчанию Определить время звучания аудиофайла

Школьный радиоузел. Планировщик заданий запускает консольную программу воспроизведения аудио файла. (ABC Паскаль) По окончании воспроизведения консоль закрывается и комп продолжает делать свое дело. Вопрос как определить время звучания (для закрытия консоли) или как закрыть консоль после завершения воспроизведения?
vitalmsk вне форума   Ответить с цитированием
Старый 27.10.2016, 16:27   #2
kutani
Участник клуба
 
Регистрация: 23.01.2016
Сообщений: 610
Репутация: 335
По умолчанию

Что используете в консольном приложения для воспроизведения аудио?
К примеру, комплектный модуль Sounds для WAV:
Код:

... 
var s: sound;
begin 
  s:= sound.Create('test.wav'); 
  s.play;
  sleep(s.Length); 
  s.Destroy;
...

kutani вне форума   Ответить с цитированием
Старый 31.10.2016, 18:07   #3
vitalmsk
Пользователь
 
Регистрация: 10.05.2016
Сообщений: 12
Репутация: 10
По умолчанию

Да именно так, но как вычислить параметр Length для использования в sleep. Пока чисто методом проб определил сколько будет играть Wav файл например в 1 Мб. По длине wav файла вычисляю приблизительную величину Length и подставив в sleep(s.Length); и имею "счастье". Хотелось бы поточнее.
vitalmsk вне форума   Ответить с цитированием
Старый 31.10.2016, 18:22   #4
Serge_Bliznykov
МегаМодератор
СуперМодератор
 
Регистрация: 09.01.2008
Сообщений: 22,380
Репутация: 5033
По умолчанию

а чем вызвано использование именно Pascal ABC? я считал, что это ЯВУ исключительно для обучения программированию!

Цитата:
но как вычислить параметр Length для использования в sleep
ну и вопрос не очень понятен.
из справки:

Код:

function Length: integer;
Возвращает длительность звука в миллисекундах.

т.е. s.Length - это и есть длительность вашего файла в миллисекундах.
Не надо ничего вычислять, всё уже вычислено!
Serge_Bliznykov вне форума   Ответить с цитированием
Старый 31.10.2016, 21:35   #5
vitalmsk
Пользователь
 
Регистрация: 10.05.2016
Сообщений: 12
Репутация: 10
По умолчанию

Ключевая фраза - Школьный радиоузел. поэтому:
1 - ЕГЭ по информатике сдается на ABC паскале. Программу делают ученики.
2 - Я по наивность считал, что function Length: integer; расщитывает длину строковой переменной, а не время звучания файла.
vitalmsk вне форума   Ответить с цитированием
Старый 31.10.2016, 23:14   #6
kutani
Участник клуба
 
Регистрация: 23.01.2016
Сообщений: 610
Репутация: 335
По умолчанию

функция length() не то же самое, что свойство класса Sound.length/
kutani вне форума   Ответить с цитированием
Ответ



Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
определить время сортировки alex(21) C# (си шарп) 3 29.03.2013 16:19
Сохранение аудиофайла с CD Fornit Мультимедиа в Delphi 3 05.03.2012 17:14
Обрезание Аудиофайла Den7656 Общие вопросы Delphi 1 15.12.2011 10:58
Обрезание Аудиофайла Den7656 Компоненты Delphi 0 14.12.2011 18:40
определить время выполнения процедуры? Bezdar Microsoft Office Excel 4 20.01.2009 14:57




06:18.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.

купить трафик


как улучшить посещаемость, а также решения по монетизации сайтов, видео и приложений

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru