Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 10.09.2014, 12:54
Eulalia вне форума Посмотреть профиль Отправить личное сообщение для Eulalia Найти все сообщения от Eulalia
  № 1  
Ответить с цитированием
Eulalia

Регистрация: Oct 2013
Сообщений: 2
Melody Вопрос по работе со звуком

Написала код, который проигрывает музыкальный файл с определенной позиции. Но метод Sound.play() у некоторых пользователей возвращает значение null. Прочитала в официальной справке: "Этот метод возвращает значение null, если не установлена звуковая карта или нет доступных аудиоканалов". Допустим, что канал один. Значит, дело в карте. А можно как-то через AS3 проверить, установлена она корректно у человека или нет?

Пока что решаю эту проблему через try-catch, но этот способ меня не очень устраивает. Если бы я могла еще при (или до) инициализации класса, управляющего музыкой, определить, МОЖЕТ ли пользователь слушать музыку, я могла бы вообще включать/отключать данный функционал.

Может, кто-то сталкивался с подобной проблемой и что-нибудь посоветует?

Старый 10.09.2014, 18:56
MikroAcse вне форума Посмотреть профиль Отправить личное сообщение для MikroAcse Найти все сообщения от MikroAcse
  № 2  
Ответить с цитированием
MikroAcse
 
Аватар для MikroAcse

Регистрация: Feb 2012
Сообщений: 1,540
http://help.adobe.com/ru_RU/FlashPla....html#hasAudio

Старый 10.09.2014, 18:58
neonoviiwolf вне форума Посмотреть профиль Отправить личное сообщение для neonoviiwolf Найти все сообщения от neonoviiwolf
  № 3  
Ответить с цитированием
neonoviiwolf

Регистрация: Jun 2014
Сообщений: 558
может просто создать проверку значения Sound.play(), если null, то не использовать функционал

Старый 11.09.2014, 00:32
MikroAcse вне форума Посмотреть профиль Отправить личное сообщение для MikroAcse Найти все сообщения от MikroAcse
  № 4  
Ответить с цитированием
MikroAcse
 
Аватар для MikroAcse

Регистрация: Feb 2012
Сообщений: 1,540
Зачем если есть нативный метод?

Старый 11.09.2014, 01:42
elder_Nosferatu вне форума Посмотреть профиль Отправить личное сообщение для elder_Nosferatu Найти все сообщения от elder_Nosferatu
  № 5  
Ответить с цитированием
elder_Nosferatu
 
Аватар для elder_Nosferatu

Регистрация: Nov 2010
Адрес: 48° 55'N 24° 42'E GMT +2:00
Сообщений: 399
Записей в блоге: 1
Скорее всего дело не в поддержке звука или нехватке каналов. Проверьте с какой позиции начинается воспроизведение звука. Когда я писал свой класс, который умеет не только играть звук, а и ставить его на паузу, ну и, кончено же, продолжать воспроизведение, то обнаружил такую же проблему. А все было очень просто, но не совсем очевидно.
Попробуйте выполнить следующий код:
Код AS3:
var snd:Sound = new SomeSound();
var chan:SoundChannel = snd.play(snd.length);
trace(chan); // null
Короче, дело в том, что если попросить звук проиграться с самого конца, то ничего не будет... А у меня звук автоматически ставился на паузу очень много раз, так что ситуация с паузой в конце звука периодически всплывала.

Старый 11.09.2014, 22:05
djyamato вне форума Посмотреть профиль Отправить личное сообщение для djyamato Посетить домашнюю страницу djyamato Найти все сообщения от djyamato
  № 6  
Ответить с цитированием
djyamato
 
Аватар для djyamato

Регистрация: Feb 2006
Сообщений: 884
Записей в блоге: 2
Отправить сообщение для djyamato с помощью ICQ Отправить сообщение для djyamato с помощью Skype™
Обрабатывать нужно и вариант hasAudio и предложенный уважаемым elder_Nosferatu потому что это разные причины некорректной работы приложения вашего

Старый 11.09.2014, 22:31
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 7  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Цитата:
Пока что решаю эту проблему через try-catch, но этот способ меня не очень устраивает.
Почему не устраивает?
По-моему вполне нормальный способ в данном случае.
В некоторых языках (например Java), конструкции try / catch вообще чуть ли не основополагающие. Они там везде
__________________
Ко мне можно и нужно обращаться на ты)

Старый 12.09.2014, 00:15
GBee вне форума Посмотреть профиль Отправить личное сообщение для GBee Найти все сообщения от GBee
  № 8  
Ответить с цитированием
GBee
 
Аватар для GBee

Регистрация: Jan 2009
Сообщений: 3,067
Записей в блоге: 3
Отправить сообщение для GBee с помощью Skype™
Цитата:
Они там везде
Они заполонили :о)
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку.

Старый 12.09.2014, 11:03
djyamato вне форума Посмотреть профиль Отправить личное сообщение для djyamato Посетить домашнюю страницу djyamato Найти все сообщения от djyamato
  № 9  
Ответить с цитированием
djyamato
 
Аватар для djyamato

Регистрация: Feb 2006
Сообщений: 884
Записей в блоге: 2
Отправить сообщение для djyamato с помощью ICQ Отправить сообщение для djyamato с помощью Skype™
Цитата:
Сообщение от caseyryan Посмотреть сообщение
Они там везде
Мимикрируют под язык. Как в "Нечто".

Старый 18.09.2014, 13:01
Eulalia вне форума Посмотреть профиль Отправить личное сообщение для Eulalia Найти все сообщения от Eulalia
  № 10  
Ответить с цитированием
Eulalia

Регистрация: Oct 2013
Сообщений: 2
Спасибо большое! Очень выручили!! Попробую использовать Capabilities.hasAudio
По поводу воспроизведения звука не с начала - эта была моя первая мысль, когда я столкнулась с ошибкой. Но логи показали, что ошибка возникает даже, когда начинается проигрывание с 0 секунды. Поэтому и предположила, что дело в звуковой карте.
В try-catch ничего плохого не вижу, но этот сервис со звуком я хочу отключать заранее, если он недоступен.

Создать новую тему Ответ Часовой пояс GMT +4, время: 22:25.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


Часовой пояс GMT +4, время: 22:25.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.