Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Повернуть flash на 90 градусов 
V
    Опции темы
bugmenot
Дата 10.6.2009, 14:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 135
Регистрация: 3.7.2006

Репутация: нет
Всего: 1



Привет.

Есть флэшка, видеоплеер от Vimeo. Видеофайл широкий, а изображение в нём узкое и повёрнутое боком. Ну то есть как если бы надо было снять стоящего человека, а камера широкая и низкая. Поэтому её повернули боком, высота человека теперь вдоль длинной стороны, как и надо, но изображение боком.
И хочется это исправить. Можно бы в видеоредакторе просто повернуть на 90 градусов, но хочется на JavaScript.
Есть:
Код

----------
|  /  /  |
|O----   |
|  \  \  |
----------

Надо:
Код

-------
|  O  |
|  |  |
| /|\ |
|  |  |
| / \ |
-------

Хорошо было бы повернуть блок (div), в котором видео, но так, кажется, нельзя сделать.

Пытался так (с Flash не знаком вообще, с JS - самый мизер):
<object id="some_movie" width="444" height="222">
    <param name="movie" value="http://www.vimeo.com/moogaloop.swf?clip_id=1234567" />
    <param name="allowScriptAccess" value="always" />
    <embed src="http://www.vimeo.com/moogaloop.swf?clip_id=1234567" quality="best" scale="exactfit" width="444" height="222" type="application/x-shockwave-flash" name="some_movie" allowScriptAccess="always"></embed>
</object>
<script type="text/javascript">
document.getElementById('some_movie')._root._rotation = 90;
</script>

Не работает. Заодно пытался для проверки запускать/останавливать ролик при помощи document.getElementById('some_movie').Play(); - тоже не работает.

Не подскажете ли? Или, может быть, это нереализуемо?
--------------------
доска объявленийвсе о горных велосипедах 
PM MAIL   Вверх
youri
Дата 10.6.2009, 14:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 740
Регистрация: 17.4.2004

Репутация: 2
Всего: 16



PM   Вверх
bugmenot
Дата 10.6.2009, 21:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 135
Регистрация: 3.7.2006

Репутация: нет
Всего: 1




Спасибо! Разобрался по этому примеру, теперь по крайней мере можно обращаться к flash ролику из JavaScript'а. Но повернуть всё равно не удаётся. Вот код, который я взял из примера и обкромсал. И в котором работает передача значения из текстового поля во flash, но не работает поворот:
Код

<html>
    <head>
        <script type="text/javascript">
            function sendSetVariable() 
            {
                var value = document.getElementById('txtSend').value
                document['BridgeMovie'].SetVariable("message", value) 
            }
        </script>
    </head>
    <body>
        <input type="button" value="SetVariable" onclick="sendSetVariable()" /><br />
        <textarea id="txtSend">To Flash</textarea>-&gt;
        <object id="BridgeMovie" width="400" height="200">
            <param name="movie" value="http://example.local/bridge.swf" />
            <param name="allowScriptAccess" value="always" />
            <embed src="http://example.local/bridge.swf" name="BridgeMovie" allowScriptAccess="always" width="400" height="200" scale="exactfit" type="application/x-shockwave-flash"></embed>
        </object>
        <script type="text/javascript">
            document['BridgeMovie'].setProperty(_root, '_rotation', 90)
        </script>
    </body>
</html>

Вероятно, я неправильно пытаюсь вращать flash'ку. Как нужно?
Кстати, оно, несмотря на allowScriptAccess="always" не работает, если не сохранить swf'ку отдельно, а подключить с javascript.ru .
--------------------
доска объявленийвсе о горных велосипедах 
PM MAIL   Вверх
bugmenot
Дата 11.6.2009, 23:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 135
Регистрация: 3.7.2006

Репутация: нет
Всего: 1



У YouTube есть API для плеера. Там, среди прочего, есть остановка/запуск видео, работа со звуком. Если бы это можно было делать просто так из JavaScript'а, вероятно, они бы не стали реализовывать эти функции API. И, видимо, вращать видео тоже нельзя. Да?
--------------------
доска объявленийвсе о горных велосипедах 
PM MAIL   Вверх
youri
Дата 11.6.2009, 23:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 740
Регистрация: 17.4.2004

Репутация: 2
Всего: 16



как вращать флешку я не знаю
Цитата(bugmenot @  11.6.2009,  23:26 Найти цитируемый пост)
У YouTube есть API для плеера. Там, среди прочего, есть остановка/запуск видео, работа со звуком. Если бы это можно было делать просто так из JavaScript'а, вероятно, они бы не стали реализовывать эти функции API.

любой метод/функцию нельзя просто с ходу из Javascript вызвать, нужно писать callback - поэтому у YouTube есть API
PM   Вверх
bugmenot
Дата 12.6.2009, 03:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 135
Регистрация: 3.7.2006

Репутация: нет
Всего: 1



Нашёл. Строка document['BridgeMovie'].setProperty(_root, '_rotation', 90) почти правильная. Но нужно не setProperty , а TSetProperty . А _root заключить в кавычки. И вместо _rotation - 10 , номер этого свойства smile
Код
document['BridgeMovie'].TSetProperty('_root', 10, 90)

Вот доки. А вот - список свойств с номерами.

Правда повернуть так и не удалось, так как Flash чересчур активно ресайзит видео, но это совсем другое.

youri, спасибо!
--------------------
доска объявленийвсе о горных велосипедах 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0672 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.