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

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

Вернуться   Форум программистов > Java программирование > Общие вопросы по Java, Java SE, Kotlin
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.10.2010, 11:42   #1
ALKOrobot
Форумчанин
 
Регистрация: 17.02.2010
Сообщений: 109
Злость ох уж этот Midlet Pascal...

Подскажите пожалуйста,как регулировать уровень звука через Midlet pascal,вне зависимости от системных настроек звука java-приложений...
если это вообще возможно...
ALKOrobot вне форума Ответить с цитированием
Старый 19.10.2010, 20:51   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

а через что воспроизводишь звук то?

вообще помоему нельзя, не видел нигде регулировки громкости программной(внутри приложения)
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 19.10.2010, 22:03   #3
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,742
По умолчанию

ну, почему ...вот приложение караоке с регулировкой громкости, могу исходник в j2me подкинуть
Код:
import javax.microedition.media.*;
import javax.microedition.media.control.*;
import java.io.IOException; 
import java.io.InputStream;
import java.io.*;
import java.util.Vector;


public class tonePlayer {

 //тип данных
 public String VOLUME_CONTROL="VolumeControl";
 public VolumeControl vc;


 public static final int notes[] = {
  ToneControl.C4,
  ToneControl.C4+1,
  ToneControl.C4+2,
  ToneControl.C4+3,
  ToneControl.C4+4,
  ToneControl.C4+5,
  ToneControl.C4+6
 };

private int 
 duration = 100,
 volume = 90;
private Player pl = null;

private Player player;
private static String guessContentType(String url) throws Exception {
	String ctype;
	if (url.endsWith("wav")) {
	    ctype = "audio/x-wav";
	} else if (url.endsWith("jts")) {
	    ctype = "audio/x-tone-seq";
	} else if (url.endsWith("mid")) {
	    ctype = "audio/midi";
	} else {
	    throw new Exception("Cannot guess content type from URL: "+url);
	}
	return ctype;
    }
    private void createPlayer(String url) throws Exception {
	if (url.startsWith("resource")) {
	    int idx = url.indexOf(':');
	    String loc = url.substring(idx+1);
	    InputStream is = getClass().getResourceAsStream(loc);
	    String ctype = guessContentType(url);
	    pl = Manager.createPlayer(is, ctype);
	    try {
	         vc=(VolumeControl) pl.getControl(VOLUME_CONTROL);
	         vc.setLevel(50);
	         } catch(Exception noVolumeControl) {}

	} else {
	    pl = Manager.createPlayer(url);
	}
 }


 // синтезатор
 public tonePlayer () {}
 public void setDuration (int d) {duration = d;}
 public void setVolume (int v) {volume = v;}
 public void play (int note) {
  if (note>127) note%=128;
  try {
       Manager.playTone(notes[note%7]+note/7, duration, volume);
       } catch (MediaException ex) {}
 }


 // звуки
 public void playw (String path, boolean p) {
 try { 
        createPlayer("resource:/audio/"+path);
        if (pl!= null) {
		if (p) pl.setLoopCount(-1);
		//pl.addPlayerListener(new Announcer());
		pl.start();
	    }
	} catch (Exception ex) {
	    ex.printStackTrace();
	    if (pl != null)
		pl.close();
	    pl = null;
	}
}
public void setVolumew (int v) {
	    try {
	         vc=(VolumeControl) pl.getControl(VOLUME_CONTROL);
	         vc.setLevel(v);
	         } catch(Exception noVolumeControl) {}
}
public void splayw() {
 if (pl != null) {
	pl.close();
	pl = null;
	}
}


}
...что касается мидлет-паскаля, так уже давно используют импорт классов на java - сlass, их можно подключить к программе как библиотеку и юзать функи оттуда, соответственно и регулировку...
Код:
program guz;

uses mylib;
...
const
мидлет-паскаль живее всех живых.
Вложения
Тип файла: zip karaoke.zip (138.5 Кб, 18 просмотров)
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation

Последний раз редактировалось raxp; 19.10.2010 в 22:06.
raxp вне форума Ответить с цитированием
Старый 20.10.2010, 01:25   #4
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

надо в заметки сохранить, мало ли пригодится
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 20.10.2010, 14:50   #5
ALKOrobot
Форумчанин
 
Регистрация: 17.02.2010
Сообщений: 109
По умолчанию

Спасибо.
Теперь мой самодельный будильник почти идеален.
ALKOrobot вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как объединить несколько MIDlet-ов в один MIDlet? RamaR Общие вопросы по Java, Java SE, Kotlin 2 10.06.2010 22:15
MidLet Pascal - замена Java ZhekON Общие вопросы по Java, Java SE, Kotlin 10 18.02.2010 13:03
Midlet Pascal - Паскаль для мобильников Virtson Общие вопросы по Java, Java SE, Kotlin 16 06.09.2009 22:19
.... и опять этот С++ Chaynik011091 Помощь студентам 0 24.06.2009 19:06
Кто работает с MidLet Pascal? ZhekON Общие вопросы по Java, Java SE, Kotlin 4 25.07.2007 19:24