【问题标题】:playing video works on simulator but not on ipad (2)在模拟器上播放视频作品,但不在 ipad 上(2)
【发布时间】:2011-07-23 10:29:50
【问题描述】:

我一直在尝试播放使用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 {

        }

    }
}

谢谢!

【问题讨论】:

  • 检查以确保文件可以在没有 Flash Player 的 iOS 设备上播放。我知道有问题;但我不知道程度。 AIR for Android 中的 iOS 是否支持 H.264?
  • 更换flv文件后问题已解决,谢谢
  • 太棒了!请务必回答您自己的问题并选择它,以便人们知道您是如何解决问题的。

标签: apache-flex ipad video air flex-mobile


【解决方案1】:

这可能是你的问题:

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

一旦您将应用程序编译成 .ipa 文件,该文件就不存在了。尝试将其更改为您可以将其上传到的某个网址,如果可行,那就是您的问题。

【讨论】:

  • 现在使用不同的flv文件,为什么编译器不将视频打包到 .ipa 中,谢谢
  • 如果您希望将资产打包为应用程序的一部分,则必须嵌入资产。给它一个像这样的相对路径,该文件不存在。
【解决方案2】:

问题已通过替换 FLV 文件解决,但我仍然不确定为什么一个 flv 文件有效而另一个无效。

如果您遇到这样的问题(视频可以在模拟器上运行,但不能在设备上运行),您首先应该更换视频源。

【讨论】:

  • ANY 文件的相对路径不起作用,您的问题没有改变 flv 先生。
  • 好吧,我希望我有办法证明这一点,我想你必须相信我的话。和平
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-12-23
  • 1970-01-01
  • 1970-01-01
  • 2013-10-02
  • 1970-01-01
  • 2015-06-23
  • 1970-01-01
相关资源
最近更新 更多