Как через модем wav фаил проигровать?

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
-=alp=-
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 147
Зарегистрирован: 08.03.2003 (Сб) 19:20

Как через модем wav фаил проигровать?

Сообщение -=alp=- » 14.09.2004 (Вт) 13:01

Как через модем wav фаил проигровать?

PATRIOT_kz
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 105
Зарегистрирован: 14.09.2004 (Вт) 21:09
Откуда: Павлодар, Казахстан

Сообщение PATRIOT_kz » 14.09.2004 (Вт) 21:13

Надо через команду 'BlockRead' читать блоки wav файла,
и по блокам кидать его модему.
Желательно по 512 байт.
Press any key . . .

d3drm
Астролог
Астролог
Аватара пользователя
 
Сообщения: 2873
Зарегистрирован: 29.05.2002 (Ср) 23:34
Откуда: МаСКвА

Сообщение d3drm » 14.09.2004 (Вт) 21:14

А зачем?
ХЎ

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 15.09.2004 (Ср) 10:37

Видимо человек автоответчик пишет :)
А чем не устраивают готовые продукты? WinFax например.
Lasciate ogni speranza, voi ch'entrate.

-=alp=-
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 147
Зарегистрирован: 08.03.2003 (Сб) 19:20

Сообщение -=alp=- » 15.09.2004 (Ср) 14:32

Надо через команду 'BlockRead' читать блоки wav файла,
и по блокам кидать его модему.
Желательно по 512 байт.


а можно об этом по подробнее
Где эта команда

p.s. да я хочу создать что-то на подобе автоответчика

PATRIOT_kz
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 105
Зарегистрирован: 14.09.2004 (Вт) 21:09
Откуда: Павлодар, Казахстан

Сообщение PATRIOT_kz » 16.09.2004 (Чт) 17:51

Подробнее вы сможете узнать инфу про команду 'BlockRead'
в Delphi, просто создатите любое новое приложение и введите след.код в неё.
---
Код: Выделить всё
Function ReadWavAndSend(sWave: String);
Var
F: File;
I: Integer;
T: String;
AL: String;
Begin
F := sWave;
AssignFile(F);
Flash(F);
For i := 1 To GetFileLength(F) Do Begin
   BlockRead(F, i+512, T);
   SendWave (T);
   i = i + 512;
End;
Close(F);
End;

---
Всё , далее просто напишешь функцию 'SendWave', в которой ты будешь пихать открытому твоей прогой COM порту переменную T.
(надеюсь знаешь как открыть, послать данные в порт ?)[/code][/u]
Press any key . . .

moshkin
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 108
Зарегистрирован: 03.12.2002 (Вт) 15:01
Откуда: Russia

Сообщение moshkin » 17.09.2004 (Пт) 8:55

Встречные вопросы:
1. а как модему сказать что дальше пойдет wav файл?
2. какой формат wav-a нужен модему?
Я так понимаю что должна быть команда для модема чтобы он перешел в голосовой режим - но в документации такой нет или я не нашел.
(модем Zyxel omni 56K pro) или хоть какие бывают команды для других модемов подскажите.

F@N
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: 16.09.2004 (Чт) 12:41
Откуда: Украина, Запорожье

Не работет. ЧАВО?

Сообщение F@N » 17.09.2004 (Пт) 15:35

MSComm1.CommPort = 1
MSComm1.Settings = "9600,N,8,1"
MSComm1.PortOpen = True
MSComm1.Output = "ATDT 980509651503" & vbCr
MSComm1.Output = "AT+VTX = c:\start.wav"


почему не пашет?
beeru beer

F@N
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: 16.09.2004 (Чт) 12:41
Откуда: Украина, Запорожье

Сообщение F@N » 17.09.2004 (Пт) 15:48

MSComm1.CommPort = 1
MSComm1.Settings = "9600,N,8,1"
MSComm1.PortOpen = True
MSComm1.Output = "ATDT 980509651503" & vbCr
MSComm1.Output = "AT+VTX c:\start.wav"


И так тоже не пашет
beeru beer

PATRIOT_kz
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 105
Зарегистрирован: 14.09.2004 (Вт) 21:09
Откуда: Павлодар, Казахстан

Сообщение PATRIOT_kz » 17.09.2004 (Пт) 19:19

Короче слушай.

Перед тем как работать с Voice'ом от модема, его нужно
вначале инициализировать!!!

---
Значит вначале тебе нужно узнать какие голосовые режимы,
твой модем поддерживает. Вот код:
Код: Выделить всё
AT+VSM=?

Далее суёшь ему файл любого формата звука, который у тя поддерживает.
Код: Выделить всё
AT+VTX=%path%

Где '%path%' будет путь к wave файлу поддерживаемого формата.
Чтобы не мучиться вот мини пример моего проекта, который работает.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Вставишь в форму элемент 'MSComm'.
Код: Выделить всё
Private Sub InitVoice()
    With MsComm1
    .Output = "AT+FCLASS=8" & vbCr 'Переход в Voice режим
    .Output = "AT+VSM=130,8000,0,0" & vbCr '130 - номер кодека, 8000 Hz
    .Output = "AT+VSD=128,50" & vbCr '128 и 50 лучше не спрашивай, всё равно не поймёшь
    .Output = "AT+VLS=1" & vbCr 'инит . . .
    .Output = "AT+VTX = c:\modem\test.wav" & vbCr 'где "c:\modem\test.wav" - это мой wave файлик.
    End With
  End Sub

Далее просто пропишешь в 'Form_Load()', ссылку на неё. Типа так:
Код: Выделить всё
Private Sub Form_Load()
   InitVoice
End Sub
Press any key . . .

-=alp=-
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 147
Зарегистрирован: 08.03.2003 (Сб) 19:20

Сообщение -=alp=- » 18.09.2004 (Сб) 14:09

не работает

Почему то когда время подходит к выполнению кода модем ложет трубку

moshkin
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 108
Зарегистрирован: 03.12.2002 (Вт) 15:01
Откуда: Russia

Сообщение moshkin » 19.09.2004 (Вс) 14:06

Уже интересно, пока не очень разобрался, если запускаю код на выполнение (вначале позвонив и подняв трубу на той стороне)
то команда
.Output = "AT+FCLASS=8" & vbCr
заставляет модем класть трубку

F@N
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: 16.09.2004 (Чт) 12:41
Откуда: Украина, Запорожье

ERROR

Сообщение F@N » 20.09.2004 (Пн) 10:50

MSComm1.CommPort = 1
MSComm1.PortOpen = True
MSComm1.Output = "ATDT 980509651503" & vbCr
Почему следующая АТ команда обрывает соединение????
У меня Acorp M56 EMS-2 внешний 56000К
beeru beer

-=alp=-
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 147
Зарегистрирован: 08.03.2003 (Сб) 19:20

Сообщение -=alp=- » 20.09.2004 (Пн) 11:19

у меня тоже самое, что и выше сказанное
эксперты помогите!!!

уменя aceex

F@N
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: 16.09.2004 (Чт) 12:41
Откуда: Украина, Запорожье

ХЕЛП

Сообщение F@N » 23.09.2004 (Чт) 12:06

MSComm1.CommPort = Text1.Text
MSComm1.PortOpen = True
With MSComm1
.Output = "AT+FCLASS=8" & vbCr
.Output = "AT+VSM=130,8000,0,0" & vbCr
.Output = "AT+VSD=128,50" & vbCr
.Output = "AT+VLS=1" & vbCr
End With
......... и только после этого звякаем на тел.

MSComm1.Output = "ATDT 980509651503" & vbCr
MSComm1.Output = "AT+VTX = c:\start.wav" & vbCr

В результате слышим тишину, НО связь уже не рвется


ЧО ДЕЛАТЬ???
beeru beer

moshkin
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 108
Зарегистрирован: 03.12.2002 (Вт) 15:01
Откуда: Russia

Сообщение moshkin » 23.09.2004 (Чт) 12:27

наверное это глупый ответ, сам пока не пробовал, но очень вероятно, что модему нужен только строго определенный wav - определенного формата и битрейта.
Мысль навскидку - надо сначала записать модемом звук в wav хоть с помощью той же ventafax, а потом попробовать этот же wav воспроизвести.

F@N
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: 16.09.2004 (Чт) 12:41
Откуда: Украина, Запорожье

ПРОБОВАЛ

Сообщение F@N » 23.09.2004 (Чт) 13:20

Вента все воспроизводит......
beeru beer

moshkin
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 108
Зарегистрирован: 03.12.2002 (Вт) 15:01
Откуда: Russia

Сообщение moshkin » 23.09.2004 (Чт) 13:27

I'm sorry : у меня Venta ZVoice может писать звук (вроде бы, - заявлено так).

-=alp=-
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 147
Зарегистрирован: 08.03.2003 (Сб) 19:20

Сообщение -=alp=- » 26.09.2004 (Вс) 3:34

эксперты помогите!!!


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: AhrefsBot, Yandex-бот и гости: 14

    TopList  
cron