воспроизведение видео работает на симуляторе, но не на ipad (2) - PullRequest
0 голосов
/ 23 июля 2011

Я пытался воспроизвести видео, которое было конвертировано с использованием файла http://www.mirovideoconverter.com/ в mp4, на симуляторе все нормально, но на iPad я не вижу видео.

Как исправить ??

прикрепление видео кода:

    package com.view.generic
{


import com.constants.Dimentions;

    import com.view.AbstractScreen;
    import com.view.IScreen;
    import com.view.gui.Btn;

    import flash.errors.IOError;
    import flash.events.IOErrorEvent;
    import flash.events.MouseEvent;
    import flash.events.NetStatusEvent;
    import flash.media.Video;
    import flash.net.NetConnection;
    import flash.net.NetStream;

    import org.osflash.signals.natives.NativeSignal;

    public class VideoMode extends AbstractScreen implements IScreen
    {
        private var _player:Video;
        private var _stream:NetStream;
        public function VideoMode()
        {

        }
        override public function start():void{
            super.start();
            var conn:NetConnection = new NetConnection();
            conn.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler)
            conn.addEventListener(IOErrorEvent.NETWORK_ERROR, netStatusError)
            conn.connect(null);
            layoutPlayer();
            layoutMenu();

        }

        override public function stop():void{
            _stream.pause();
        }



        private function layoutMenu():void{
            var playBtn:Btn = new Btn("video_play_button.png");
            addChild(playBtn);
            playBtn.x = (Dimentions.HEIGHT -playBtn.width)/2;
            playBtn.y = _player.y+_player.height+20;
            var clickSignal:NativeSignal = new NativeSignal(playBtn,MouseEvent.CLICK);
            clickSignal.add(play);

            var fullScrBtn:Btn = new Btn("full_screen.png");
            addChild(fullScrBtn);
            fullScrBtn.x = _player.width -fullScrBtn.width+_player.x;;
            fullScrBtn.y = _player.y+_player.height+20;
            var fullScrSignal:NativeSignal = new NativeSignal(fullScrBtn,MouseEvent.CLICK);
            fullScrSignal.add(goFullScreen);
        }

        private function layoutPlayer():void{
            _player.width = 400;
            _player.height = 300;
            _player.x = (Dimentions.HEIGHT -_player.width)/2;
            _player.y = 200;
            _stream.play("../../../assets/drum_ny.flv");
            _stream.pause();

        }

        private function goFullScreen(e:MouseEvent):void{
            if(_player.x == 0){
                layoutPlayer()
            }else{
                _player.x = 0;
                _player.y = 0;
                _player.width = stage.fullScreenWidth;
                _player.height = stage.fullScreenHeight;
            }

        }
        private function play(e:MouseEvent):void{
            _stream.resume()
        }

        private function netStatusHandler(e:NetStatusEvent):void{
            if(e.info.code=="NetConnection.Connect.Success"){
                _stream = new NetStream(NetConnection(e.target));
                _stream.client = this;
                _player = new Video();
                addChild(_player);

                _player.attachNetStream(_stream)

            }
        }
        private function netStatusError(e:IOError):void{
            trace(e)
        }

        override public function destroy():void{

        }
        public function onMetaData(info:Object):void {

        }

    }
}

Спасибо!

Ответы [ 2 ]

2 голосов
/ 24 июля 2011

Вероятно, это ваша проблема:

 _stream.play("../../../assets/drum_ny.flv");

Этот файл не существует, когда вы компилируете свое приложение в файл .ipa.Попробуйте изменить это на веб-адрес, куда вы можете загрузить его, и если он работает, то это ваш вопрос.

0 голосов
/ 25 июля 2011

Проблема была решена путем замены FLV-файла, однако я до сих пор не уверен, почему один FLV-файл работает, а другой - нет.

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

...