Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Создание приложения передачи звука. Программная реализация приложения «транслятор»



Класс программы «Транс» – «Form1». Его описание – на рисунке 1.

 

Класс «Form1»
Открытые поля
public string dan
public string ip
StartButton.Enabled : = True;
Открытые методы
TForm1.StopButtonClick
TForm1.Timer1Timer
TForm1.WMStreamedOut1ThreadException
TForm1.FormCreate

Рисунок 1 – описание класса Form1

 

Поле ip используется для обращения ip-адреса приложения. Метод Timer1 используется для посчета интервала времени. В нём производится сбор информации об адаптерах, остальная информация собирается с помощью методов, вызванных в коде этого метода.

Листинг метода OSNMET() с комментариями:

unit Main;

 

interface

 

uses

 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

 Dialogs, ACS_Classes, StdCtrls, ComCtrls, ACS_DXAudio, Spin, ExtCtrls, ACS_Wave,

 ACS_WinMedia;

 

type

 TForm1 = class(TForm)

 StartButton: TButton;

 StatusBar1: TStatusBar;

 StopButton: TButton;

 Timer1: TTimer;

 Label2: TLabel;

 SpinEdit2: TSpinEdit;

 Label3: TLabel;

 Label4: TLabel;

 PauseButton: TButton;

 DXAudioIn1: TDXAudioIn;

 WMStreamedOut1: TWMStreamedOut;

 procedure StartButtonClick(Sender: TObject);

 procedure OutputDone(Sender: TComponent);

 procedure StopButtonClick(Sender: TObject);

 procedure Timer1Timer(Sender: TObject);

 procedure FormCreate(Sender: TObject);

 procedure SpinEdit2Change(Sender: TObject);

 procedure PauseButtonClick(Sender: TObject);

 procedure FormClose(Sender: TObject; var Action: TCloseAction);

 procedure WMStreamedOut1ThreadException(Sender: TComponent);

 private

 { Private declarations }

 public

 { Public declarations }

 end;

 

var

 Form1: TForm1;

 

implementation

 

{$R *.dfm}

 

procedure TForm1.StartButtonClick(Sender: TObject);

begin

 StartButton.Enabled: = False;

 SpinEdit2.Enabled: = False;

 WMStreamedOut1.Run;

 Timer1.Interval: = 1000;

end;

 

procedure TForm1.OutputDone(Sender: TComponent);

begin

 StartButton.Enabled: = True;

 SpinEdit2.Enabled: = True;

end;

 

procedure TForm1.StopButtonClick(Sender: TObject);

begin

 WMStreamedOut1.Stop;

end;

 

procedure TForm1.Timer1Timer(Sender: TObject);

begin

 Label2.Caption: = Format('Продолжительность: %d секунд', [WMStreamedOut1.TimeElapsed]);

end;

 

procedure TForm1.WMStreamedOut1ThreadException(Sender: TComponent);

begin

 Self.StatusBar1.Panels[0].Text: = WMStreamedOut1.ExceptionMessage;

end;

 

procedure TForm1.FormCreate(Sender: TObject);

begin

 SpinEdit2.MaxValue: = DXAudioIn1.DeviceCount - 1;

 SpinEdit2.MinValue: = 0;

 SpinEdit2.Value: = 0;

 Label4.Caption: = DXAudioIn1.DeviceName[SpinEdit2.Value];

end;

 

procedure TForm1.SpinEdit2Change(Sender: TObject);

begin

 Label4.Caption: = DXAudioIn1.DeviceName[SpinEdit2.Value];

 DXAudioIn1.DeviceNumber: = SpinEdit2.Value;

end;

 

procedure TForm1.PauseButtonClick(Sender: TObject);

begin

 if WMStreamedOut1.Status = tosPlaying then WMStreamedOut1.Pause;

 if WMStreamedOut1.Status = tosPaused then WMStreamedOut1.Resume;

end;

 

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);

begin

 WMStreamedOut1.Stop(False);

end;

 

end. По нажатию на кнопку «Запуск» полю для хранения IP-адреса серввера присваивается значение, находящееся в поле для ввода IP-адреса. Зпускается timer1, отвечающий за отправление информации серверу, и форма становится прозрачной.

Результаты тестирования

Для запуска программы необходимо открыть файл RadioStation.exe на каком-либо компьютере сети. После запуска программы нам остается выбрать аудиоустройство, с которого мы будем транслировать звук, и щелкнуть кнопку " Старт" рис 2.


Рисунок 2 – Выбор устройства

 

Для того чтобы " настроиться" на нашу радиостанцию, нужно запустить проигрыватель Windows Media, выбрать команду " Файл > > Открыть URL-адрес…" и в открывшемся окне ввести адрес вида mms: //< имя_узла>: < порт>

В результате, в окне будут отображаться, данные как показано на рисунке 3.

 

Рисунок 3 – Открытие URL-адреса

 

После этого вы можете насладиться прослушиванием рисунок 4.

 

Рисунок 4 – Результат тестирования программы


Заключение

Для получения правдоподобного звучания эффектов обычно делается несколько последовательных задержек звука, в которых копия исходного сигнала постепенно ослабляется. В приведенной программе для простоты делается только одна задержка, причем копия сигнала не ослабляется.

При выполнении данного курсового проекта были закреплены навыки работы с локальными вычислительных сетями, программирование сетевых приложений, теоретические знания по предмету «Сети ЭВМ».

В курсовом проекте была разработана:

Программа позволяющая передавать звук, как по локальной сети, так и по глобальной сети интернет;

- программа «транслятор», которая позволяет передавать звук по сети;


Список используемой литературы

1) Бройдо В.Л. Вычислительные системы, сети и телекоммуникации: Учеб.пос. для вузов. – 2002. ISBN 5-318-005300-6

2) Зимянин Л.Ф.Программирование сетевых протоколов: Учеб. метод. пособие по курсу «Компьютерные сети» для студ. спец. Н.08.02.00 – «Информатика». – Минск.: Белгосуниверситет, 1998. – 37 с.

3) Ларионов А.М. и др. Вычислительные комплексы, системы и сети. / А.М. Ларионов, С.А. Майоров, Г.И. Новиков. – Ленинград. ЭНЕРГОАТОМИЗДАТ. Ленинградское отделение. 1987.

4) Фаронов В.В. Программирование на языке Delphi/–СПб.: Питер, 2007. –240 с.: ил.


Поделиться:



Последнее изменение этой страницы: 2019-10-04; Просмотров: 150; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.022 с.)
Главная | Случайная страница | Обратная связь