Orientation on iOS

How can I get the movie to have a vertical orientation and not a horizontal one when I export on IOS imovie not the Mac. 

When you shoot the video, shoot it in landscape.  That's how it's done.

Similar Messages

  • HT5137 Words with friends won't go to landscape orientation in iOS 7.0. Any suggestions

    Words w friends won't go to landscape orientation in iOS 7. Restarted app, restarted pad, reinstalled app.  No good! Any suggestions?

    Least your Words with Friends is on your ipad mine is gone.  Likely have to install back up at home later.

  • Folio Orientation on iOS 7 with v24

    Hi,
    on IOS 7 older single edition apps (in my case built with v24 of the app builder), only portrait orientation is displayed, even when the device is rotated to landscape. The folio supports both orientations and iPad is not set to lock orientation.
    Does anyone have similar issues?
    Greetings, Philip

    You need to update that app. Adobe has been warning about it for weeks.

  • Camera image orientation on iOS

    Hi,
    Taking a picture using CamerUI on iOS (and on Android) may bring the image oriented in the wrong angle.
    Reading the Exif on Android is fine and allows reorientation to the correct position, however this is not working on iOS.
    Since I assume taking a picture using the camera is a core feature for many applications, I’d appreciate if someone who managed to solve it can post a solution here?
    Thanks!

    I think this is it:
    // ExifReader.as
    // Reads and obtains JPG EXIF data.
    // Project site: http://devstage.blogspot.com/2011/02/extract-jpg-exif-metadata-in.html
    // SAMPLE USAGE:
    // var reader:ExifReader = new ExifReader();
    // reader.addEventListener(Event.COMPLETE, function (e:Event):void{
    //     trace(reader.getKeys());
    //     trace(reader.getValue("DateTime"));
    //     trace(reader.getThumbnailBitmapData().width +'x' + reader.getThumbnailBitmapData().height);
    // reader.load(new URLRequest('myimage.jpg'), true);
    package
        import flash.display.Bitmap;
        import flash.display.BitmapData;
        import flash.display.Loader;
        import flash.display.LoaderInfo;
        import flash.events.Event;
        import flash.events.EventDispatcher;
        import flash.events.ProgressEvent;
        import flash.net.URLRequest;
        import flash.net.URLStream;
        import flash.utils.ByteArray;
        public class ExifReader extends EventDispatcher
            private var m_loadThumbnail:Boolean = false;
            private var m_urlStream:URLStream = null;
            private var m_data:ByteArray = new ByteArray();
            private var m_exif:Object = new Object;
            private var m_exifKeys:Array = new Array();
            private var m_intel:Boolean=true;
            private var m_loc:uint=0; 
            private var m_thumbnailData:ByteArray = null;
            private var m_thumbnailBitmapData:BitmapData=null;
            private var DATASIZES:Object = new Object;
            private var TAGS:Object = new Object;
            public function load(urlReq:URLRequest, loadThumbnail:Boolean = false):void{
                m_loadThumbnail = loadThumbnail;  
                m_urlStream = new URLStream();
                m_urlStream.addEventListener( ProgressEvent.PROGRESS, dataHandler);
                m_urlStream.load(urlReq);
            public function getKeys():Array{
                return m_exifKeys;
            public function hasKey(key:String):Boolean{
                return m_exif[key] != undefined;
            public function getValue(key:String):Object{
                if(m_exif[key] == undefined) return null;
                return m_exif[key];
            public function getThumbnailBitmapData():BitmapData{
                return m_thumbnailBitmapData;
            public function ExifReader(){
                DATASIZES[1] = 1;
                DATASIZES[2] = 1;
                DATASIZES[3] = 2;
                DATASIZES[4] = 4;
                DATASIZES[5] = 8;
                DATASIZES[6] = 1;  
                DATASIZES[7] = 1;
                DATASIZES[8] = 2;
                DATASIZES[9] = 4;
                DATASIZES[10] = 8;
                DATASIZES[11] = 4;
                DATASIZES[12] = 8;
                TAGS[0x010e] = 'ImageDescription';
                TAGS[0x010f] = 'Make';
                TAGS[0X0110] = 'Model';
                TAGS[0x0112] = 'Orientation';
                TAGS[0x011a] = 'XResolution';
                TAGS[0x011b] = 'YResolution';
                TAGS[0x0128] = 'ResolutionUnit';
                TAGS[0x0131] = 'Software';
                TAGS[0x0132] = 'DateTime';
                TAGS[0x013e] = 'WhitePoint';
                TAGS[0x013f] = 'PrimaryChromaticities';
                TAGS[0x0221] = 'YCbCrCoefficients';
                TAGS[0x0213] = 'YCbCrPositioning';
                TAGS[0x0214] = 'ReferenceBlackWhite';
                TAGS[0x8298] = 'Copyright';
                TAGS[0x829a] = 'ExposureTime';
                TAGS[0x829d] = 'FNumber';
                TAGS[0x8822] = 'ExposureProgram';
                TAGS[0x8827] = 'IsoSpeedRatings';
                TAGS[0x9000] = 'ExifVersion';
                TAGS[0x9003] = 'DateTimeOriginal';
                TAGS[0x9004] = 'DateTimeDigitized';
                TAGS[0x9101] = 'ComponentsConfiguration';
                TAGS[0x9102] = 'CompressedBitsPerPixel';
                TAGS[0x9201] = 'ShutterSpeedValue';
                TAGS[0x9202] = 'ApertureValue';
                TAGS[0x9203] = 'BrightnessValue';
                TAGS[0x9204] = 'ExposureBiasValue';
                TAGS[0x9205] = 'MaxApertureValue';
                TAGS[0x9206] = 'SubjectDistance';
                TAGS[0x9207] = 'MeteringMode';
                TAGS[0x9208] = 'LightSource';
                TAGS[0x9209] = 'Flash';
                TAGS[0x920a] = 'FocalLength';
                TAGS[0x927c] = 'MakerNote';
                TAGS[0x9286] = 'UserComment';
                TAGS[0x9290] = 'SubsecTime';
                TAGS[0x9291] = 'SubsecTimeOriginal';
                TAGS[0x9292] = 'SubsecTimeDigitized';
                TAGS[0xa000] = 'FlashPixVersion';
                TAGS[0xa001] = 'ColorSpace';
                TAGS[0xa002] = 'ExifImageWidth';
                TAGS[0xa003] = 'ExifImageHeight';
                TAGS[0xa004] = 'RelatedSoundFile';
                TAGS[0xa005] = 'ExifInteroperabilityOffset';
                TAGS[0xa20e] = 'FocalPlaneXResolution';
                TAGS[0xa20f] = 'FocalPlaneYResolution';
                TAGS[0xa210] = 'FocalPlaneResolutionUnit';
                TAGS[0xa215] = 'ExposureIndex';
                TAGS[0xa217] = 'SensingMethod';
                TAGS[0xa300] = 'FileSource';
                TAGS[0xa301] = 'SceneType';
                TAGS[0xa302] = 'CFAPattern';
                //... add more if you like.
                //See http://park2.wakwak.com/~tsuruzoh/Computer/Digicams/exif-e.html
            private function dataHandler(e:ProgressEvent):void{
                //EXIF data in top 64kb of data
                if(m_urlStream.bytesAvailable >= 64*1024){
                    m_urlStream.readBytes(m_data, 0, m_urlStream.bytesAvailable);
                    m_urlStream.close();
                    processData();
            private function processData():void{
                var iter:int=0;
                //confirm JPG type
                if(!(m_data.readUnsignedByte()==0xff && m_data.readUnsignedByte()==0xd8))
                    return stop();
                //Locate APP1 MARKER
                var ff:uint=0;
                var marker:uint=0;
                for(iter=0;iter<5;++iter){ //cap iterations
                    ff = m_data.readUnsignedByte();
                    marker = m_data.readUnsignedByte();
                    var size:uint = (m_data.readUnsignedByte()<<8) + m_data.readUnsignedByte();
                    if(marker == 0x00e1) break;
                    else{
                        for(var x:int=0;x<size-2;++x) m_data.readUnsignedByte();
                //Confirm APP1 MARKER
                if(!(ff == 0x00ff && marker==0x00e1)) return stop();
                //Confirm EXIF header
                var i:uint;
                var exifHeader:Array = [0x45,0x78,0x69,0x66,0x0,0x0];
                for(i=0; i<6;i++) {if(exifHeader[i] != m_data.readByte()) return stop();}
                //Read past TIFF header
                m_intel = (m_data.readByte()!=0x4d);
                m_data.readByte(); //redundant
                for(i=0; i<6;i++) {m_data.readByte();} //read rest of TIFF header
                //Read IFD data
                m_loc = 8;
                readIFD(0);
                //Read thumbnail
                if(m_thumbnailData){
                    var loader:Loader = new Loader();
                    loader.contentLoaderInfo.addEventListener(Event.COMPLETE, thumbnailLoaded);
                    loader.loadBytes(m_thumbnailData);
                else stop();
            //EXIF data is composed of 'IFD' fields.  You have IFD0, which is the main picture data.
            //IFD1 contains thumbnail data.  There are also sub-IFDs inside IFDs, notably inside IFD0.
            //The sub-IFDs will contain a lot of additional EXIF metadata.
            //readIFD(int) will help read all of these such fields.
            private function readIFD(ifd:int):void{
                var iter:int=0;
                var jumps:Array = new Array();
                var subexifJump:uint=0;
                var thumbnailAddress:uint=0;
                var thumbnailSize:int=0;
                // Read number of entries
                var numEntries:uint;
                if(m_intel) numEntries = m_data.readUnsignedByte() + (m_data.readUnsignedByte()<<8);
                else numEntries = (m_data.readUnsignedByte()<<8) + (m_data.readUnsignedByte());
                if(numEntries>100) numEntries=100; //cap entries
                m_loc+=2;
                for(iter=0; iter<numEntries;++iter){
                    //Read tag
                    var tag:uint;
                    if(m_intel) tag = (m_data.readUnsignedByte()) + (m_data.readUnsignedByte()<<8);
                    else tag = (m_data.readUnsignedByte()<<8) + (m_data.readUnsignedByte());
                    //read type
                    var type:uint;
                    if(m_intel) type = (m_data.readUnsignedByte()+(m_data.readUnsignedByte()<<8));
                    else type = (m_data.readUnsignedByte()<<8)+(m_data.readUnsignedByte()<<0);
                    //Read # of components
                    var comp:uint;
                    if(m_intel) comp = (m_data.readUnsignedByte()+(m_data.readUnsignedByte()<<8) + (m_data.readUnsignedByte()<<16) + (m_data.readUnsignedByte()<<24));
                    else comp = (m_data.readUnsignedByte()<<24)+(m_data.readUnsignedByte()<<16) + (m_data.readUnsignedByte()<<8) + (m_data.readUnsignedByte()<<0);
                    //Read data
                    var data:uint;
                    if(m_intel) data= m_data.readUnsignedByte()+(m_data.readUnsignedByte()<<8) + (m_data.readUnsignedByte()<<16) + (m_data.readUnsignedByte()<<24);
                    else data = (m_data.readUnsignedByte()<<24)+(m_data.readUnsignedByte()<<16) + (m_data.readUnsignedByte()<<8) + (m_data.readUnsignedByte()<<0);
                    m_loc+=12;
                    if(tag==0x0201) thumbnailAddress = data; //thumbnail address
                    if(tag==0x0202) thumbnailSize = data;  //thumbnail size (in bytes)
                    if(TAGS[tag] != undefined){
                        //Determine data size
                        if(DATASIZES[type] * comp <= 4){
                            //data is contained within field
                            m_exif[TAGS[tag]] = data;
                            m_exifKeys.push(TAGS[tag]);
                        else{
                            //data is at an offset
                            var jumpT:Object = new Object();
                            jumpT.name = TAGS[tag];
                            jumpT.address=data;
                            jumpT.components = comp;
                            jumpT.type = type;
                            jumps.push(jumpT);
                    if(tag==0x8769){ // subexif tag
                        subexifJump = data;
                var nextIFD:uint;
                if(m_intel) {
                    nextIFD= m_data.readUnsignedByte()+(m_data.readUnsignedByte()<<8) + (m_data.readUnsignedByte()<<16) + (m_data.readUnsignedByte()<<24);
                else {
                    nextIFD = (m_data.readUnsignedByte()<<24)+(m_data.readUnsignedByte()<<16) + (m_data.readUnsignedByte()<<8) + (m_data.readUnsignedByte()<<0);
                m_loc+=4;
                //commenting this out, as suggested in the comments.
                //if(ifd==0) jumps = new Array();
                for each(var jumpTarget:Object in jumps){
                    var jumpData:Object = null;
                    for(;m_loc<jumpTarget.address;++m_loc)m_data.readByte();
                    if(jumpTarget.type==5){
                        //unsigned rational
                        var numerator:uint = m_data.readInt();
                        var denominator:uint = m_data.readUnsignedInt();
                        m_loc+=8;
                        jumpData = numerator / denominator;
                    if(jumpTarget.type==2){
                        //string
                        var field:String='';
                        for(var compGather:int=0;compGather<jumpTarget.components;++compGather){
                            field += String.fromCharCode(m_data.readByte());
                            ++m_loc;
                        if(jumpTarget.name=='DateTime' ||
                            jumpTarget.name=='DateTimeOriginal' ||
                            jumpTarget.name=='DateTimeDigitized'){
                            var array:Array = field.split(/[: ]/);
                            if(parseInt(array[0]) > 1990){
                                jumpData = new Date(parseInt(array[0]), parseInt(array[1])-1,
                                    parseInt(array[2]), parseInt(array[3]),
                                    parseInt(array[4]), parseInt(array[5]));
                        else jumpData = field;
                    m_exif[jumpTarget.name] = jumpData;
                    m_exifKeys.push(jumpTarget.name);
                if(ifd==0 && subexifJump){
                    //jump to subexif area to obtain meta information
                    for(;m_loc<data;++m_loc) m_data.readByte();
                    readIFD(ifd);
                if(ifd==1 && thumbnailAddress && m_loadThumbnail){
                    //jump to obtain thumbnail
                    for(;m_loc<thumbnailAddress;++m_loc) m_data.readByte();
                    m_thumbnailData = new ByteArray();
                    m_data.readBytes(m_thumbnailData, 0, thumbnailSize);
                    return;
                // End-of-IFD
                // read the next IFD
                if(nextIFD){
                    for(;m_loc<nextIFD;++m_loc) m_data.readUnsignedByte();               
                if(ifd==0 && nextIFD)
                    readIFD(1);
            private function thumbnailLoaded(e:Event):void{
                m_thumbnailData.clear();
                var loader:LoaderInfo = e.target as LoaderInfo;
                var bitmap:Bitmap = loader.content as Bitmap;
                if(bitmap != null){
                    m_thumbnailBitmapData = bitmap.bitmapData;
                stop();
            // Releases m_data and dispatches COMPLETE signal.
            private function stop():void{
                m_data=null;
                dispatchEvent(new Event(Event.COMPLETE));
                return;

  • Image orientation on iOS

    Hi Everyone,
    Reading the EXIF is not working in iOS. I managed to fixed using same classes(jp.shichiseki.exif.*) in Android.
    Here is my source code,
    import jp.shichiseki.exif.*;
    import flash.net.URLRequest;
    import flash.text.TextFormat;
    var cameraRoll:CameraRoll = new CameraRoll();
    var imagePromise:MediaPromise;
    var dataSource:IDataInput;
    var loader:ExifLoader = new ExifLoader();
    loader.addEventListener(Event.COMPLETE, onComplete);
    if(CameraRoll.supportsBrowseForImage)
              cameraRoll.addEventListener(MediaEvent.SELECT, imageSelected);
              cameraRoll.addEventListener(Event.CANCEL, browseCanceled);
              //cameraRoll.addEventListener( ErrorEvent.ERROR, mediaError );
              cameraRoll.browseForImage();
    else
    function browseCanceled(e:Event):void
              trace("Cancelled")
    function imageSelected(e:MediaEvent):void
              trace(" --- Image Selected  --- \n");
              imagePromise = e.data;
              trace(imagePromise.isAsync + " \n");
              dataSource = imagePromise.open();
              if(imagePromise.isAsync)
                        var eventSource:IEventDispatcher = dataSource as IEventDispatcher;           
                        eventSource.addEventListener( Event.COMPLETE, onMediaLoaded );
              }else{
                        imagePromise.open();
                        // get data
                        loader.load(new URLRequest(imagePromise.file.url));
                        // load with Loader
    function onComplete(e:Event):void {
      if (loader.exif.ifds.primary)
        displayIFD(loader.exif.ifds.primary);
      if (loader.exif.ifds.exif)
        displayIFD(loader.exif.ifds.exif);
      if (loader.exif.ifds.gps)
        displayIFD(loader.exif.ifds.gps);
      if (loader.exif.ifds.interoperability)
        displayIFD(loader.exif.ifds.interoperability);
      if (loader.exif.ifds.thumbnail)
        displayIFD(loader.exif.ifds.thumbnail);
              //addChildAt(loader.content, 0)
    function displayIFD(ifd:IFD):void {
      trace(" --- " + ifd.level + " ---\n" );
      for (var entry:String in ifd) {
        trace(entry + ": " + ifd[entry] + " \n");
    function onMediaLoaded( event:Event ):void
              event.currentTarget.removeEventListener( Event.COMPLETE, onMediaLoaded );
              var imageBytes:ByteArray = new ByteArray();
              dataSource.readBytes( imageBytes );
         //imageBytes.position = 0;
         //var string:String = imageBytes.readUTFBytes(300);
              trace("imgbytes---> \n"+imageBytes + "\n");
              var exif:ExifInfo = new ExifInfo(imageBytes);
              trace("\nifds : " + exif.ifds + "\n");
    Did i miss anything?
    Thanks
    Regards
    Balasubramaniyan.S

    Hi Everyone,
    Reading the EXIF is not working in iOS. I managed to fixed using same classes(jp.shichiseki.exif.*) in Android.
    Here is my source code,
    import jp.shichiseki.exif.*;
    import flash.net.URLRequest;
    import flash.text.TextFormat;
    var cameraRoll:CameraRoll = new CameraRoll();
    var imagePromise:MediaPromise;
    var dataSource:IDataInput;
    var loader:ExifLoader = new ExifLoader();
    loader.addEventListener(Event.COMPLETE, onComplete);
    if(CameraRoll.supportsBrowseForImage)
              cameraRoll.addEventListener(MediaEvent.SELECT, imageSelected);
              cameraRoll.addEventListener(Event.CANCEL, browseCanceled);
              //cameraRoll.addEventListener( ErrorEvent.ERROR, mediaError );
              cameraRoll.browseForImage();
    else
    function browseCanceled(e:Event):void
              trace("Cancelled")
    function imageSelected(e:MediaEvent):void
              trace(" --- Image Selected  --- \n");
              imagePromise = e.data;
              trace(imagePromise.isAsync + " \n");
              dataSource = imagePromise.open();
              if(imagePromise.isAsync)
                        var eventSource:IEventDispatcher = dataSource as IEventDispatcher;           
                        eventSource.addEventListener( Event.COMPLETE, onMediaLoaded );
              }else{
                        imagePromise.open();
                        // get data
                        loader.load(new URLRequest(imagePromise.file.url));
                        // load with Loader
    function onComplete(e:Event):void {
      if (loader.exif.ifds.primary)
        displayIFD(loader.exif.ifds.primary);
      if (loader.exif.ifds.exif)
        displayIFD(loader.exif.ifds.exif);
      if (loader.exif.ifds.gps)
        displayIFD(loader.exif.ifds.gps);
      if (loader.exif.ifds.interoperability)
        displayIFD(loader.exif.ifds.interoperability);
      if (loader.exif.ifds.thumbnail)
        displayIFD(loader.exif.ifds.thumbnail);
              //addChildAt(loader.content, 0)
    function displayIFD(ifd:IFD):void {
      trace(" --- " + ifd.level + " ---\n" );
      for (var entry:String in ifd) {
        trace(entry + ": " + ifd[entry] + " \n");
    function onMediaLoaded( event:Event ):void
              event.currentTarget.removeEventListener( Event.COMPLETE, onMediaLoaded );
              var imageBytes:ByteArray = new ByteArray();
              dataSource.readBytes( imageBytes );
         //imageBytes.position = 0;
         //var string:String = imageBytes.readUTFBytes(300);
              trace("imgbytes---> \n"+imageBytes + "\n");
              var exif:ExifInfo = new ExifInfo(imageBytes);
              trace("\nifds : " + exif.ifds + "\n");
    Did i miss anything?
    Thanks
    Regards
    Balasubramaniyan.S

  • Defense zone 2 game locked screen orientation with iOS 8.0.2

    MY game Defense zone 2 HD is locked in the portray mode after updating to iOS 8.0.2
    i have rest the iPad and even reloaded the game from AppStore. nine of these have resolved the issue.
    other games seem ok.
    any one coming across this?
    Message was edited by: huangdi

    I'm facing similar problems too but more importantly, my iPhone 5 keeps going off every 5-10 minutes or so. Its really frustrating as I'm missing so many calls and there is nothing I can do to fix this It was working fine when I updated to IOS 8 but since this 8.0.2 update its just not working. It goes off in the middle of using or on standby. When it turns back on it takes years for it to actually become functional. Once it does, it has little moments where the battery reads 20% one moment then 48% the other While using safari I noticed it said Searching.. (for signal) yet had 3G by its side and internet working ..??! Its really frustrating as yesterday I needed to use my phone in an actual emergency yet couldn't for nearly 10 minutes waiting for the phone to load..!!
    #SortitoutAPPLE!!!

  • HT1947 Remote for ipad landscape orientation not working in ios 7

    Remote for ipad landscape orientation not working in ios 7

    See this thread: remote app rotation locked in portrait orientation after iOS 7 upgrade
    It is a discussion only - no helpful hints.  Appears to be a bug for sure.

  • IOS 8 Rotation Stuck in Portrait

    There's some kind of bug in iOS8 that is getting devices stuck in portrait mode; I noticed both my wife's iPhone 5s and my 6 were stuck in portrait orientation this evening, and nothing short of a complete reboot would fix the problem and restore normal auto-rotation. (I tried toggling the rotation lock, the reduce motion setting, sleep and wake, and manually closing all open apps.) I found a couple of other threads here complaining about what sounds like the same problem on iPads.
    The only thing that had been done on both of them since the last reboot (which was less than 12 hours earlier) was run Epic Zen Garden, so I'm suspecting either Metal-intensive apps or apps that have a fixed orientation, but when I tried firing that up again it alone didn't seem to be enough to get the OS stuck again.
    I'm wondering if:
    a)  Anybody has figured out what, if anything specific, is triggering this.
    b)  If there's a workaround faster than rebooting the phone.
    c)  If it's already on Apple's bug tracker (I'm not a dev).
    If it's not a listed bug yet, figuring out more specifically what is triggering it would let someone file it properly; "rotation lock sometimes gets stuck" is a shoddy bug report when it comes to trying to reproduce it.  And it's a pretty severe usability bug, so I'd hope it'd make a priority list once it does get filed.

    Same here. Just noticed it.
    Convinced it's not hardware as issue goes away.
    I have successfully fixed the issue with a reboot but also by launching the maps or compass apps.
    By doing this it seems to 'reset' and then work in other apps such as BBC News. Seems to happen quite often though nothing concrete on what causes it.
    Think it may be when using an app that senses rotation, and using this app for a long while in one orientation.  iOS seems to the forget rotate later.  Apps that don't rotate don't seem the cause the problem.
    I trust Apple are likely to fix this in 8.1 ?

  • CameraRoll & CameraUI image orientation

    Hi,
    I am trying to read the Orientation tag in EXIF image data grabbed with CameraRoll or CameraRollUI using AIR 3.6 on iOS 6.1
    To achieve this, I use this library coded by Christian Cantrell :
    http://blogs.adobe.com/cantrell/archives/2011/10/parsing-exif-data-from-images-on-mobile-d evices.html
    Unfortunantly, it raises an error when I try to parse the Byterray containing the EXIF data :
    var exifInfo:ExifInfo = new ExifInfo( eb );
    TypeError: Error #1034: Type Coercion failed: cannot convert "<tags level="0th IFD TIFF Tags">
      <tag tag_name="Image width" field_name="ImageWidth" id="0x0100" compressed="J">
        <uncompressed chunky="M" planar="M" ycc="M" />
      ... INSERT BIG CHUNK OF XML HERE ...
    </tags>" to XML.
              at jp.shichiseki.exif::ExifInfo/readIFDs()[/Users/***/Google Drive/AS3/libs/jp/shichiseki/exif/ExifInfo.as:100]
              at jp.shichiseki.exif::ExifInfo()[/Users/***/Google Drive/AS3/libs/jp/shichiseki/exif/ExifInfo.as:63]
    It seems that Air can't cast the data into XML, but it's kind of crazy because I am able to see all the data in the error text (I purposedly truncated it here for not flooding this post) and it's XML valid. I had a look into the ExifInfo class, but it's hard to see where the error comes from.
    I really need to get access to these data, since it's the only way to determine image orientation in iOS. Or is there any native extention thaht I could use to achieve this ?
    Any advice will be welcome as I am stuck on a project for a client because of this.
    Thank you all !

    Hello Frog,
    a very (very) dirty solution could be :
    - use a try...catch...finally block to prevent the error raising
    - in the catch block, parse the error message to get your orientation value (String method, regexp...)
    [code]
    var myExifData:XML;
    try {
         // try to get the exif data
         var exifInfo:ExifInfo = new ExifInfo( eb );
    } catch(err:Error) {
         // fails, but maybe I can get the exif info in the error message...
         myExifData = parseExifError(err.message); // parse the error message to get your orientation info...
    } finally {
        do what I have to do with my image : rotate, scale....
    [/code]
    BTW, PhoneGap is perfectly able to get orientation of an image from the camera roll. So there IS a solution somewhere.
    Maybe you could try to make a native extension ? It's not so hard for little things like that...
    My 2 cents
    Nicolas

  • Frustrated with video orientation issues - conversion please?

    Both wife and I take iPhone video - on a 4 and 4S.  Seems now I'm spending all sports of time trying to change orientation for use/sharing/uploading because of the newer orientation "tagging" iOS is doing.
    I'm not here to debate the right/wrong of that decision, I just need to know the "simple" solution to change/convert the orientation so that regardless of wheather the video is viewed in Quicktime, Windows Media Player, VLC, or any other video client, they ALL SEE THE SAME CORRECT THING.
    At this point I've tried converting using Quicktime Pro, VLC, and MPEG Streamer, but when I do, I may see it correctly in 1 client but not in the others I test with (mentioned above).
    How to please? And THANK YOU!

    Still hoping for a solution from somebody!

  • IOS app templates and tools resources?

    I've been searching for resources for iOS apps for Flash Pro in the form of FLA files or other useful pieces. Haven't had any luck so far.
    Anything with multiple resolutions for all the devices, all the touch screen and orientation settings. iOS hooks and even completed apps to build off of.
    Free or paid... any tips on what is out there?

    You can download Xcode, which includes all you need to develop for IOS and OS X, for free from the Mac App Store.
    You can write IOS apps and test them in the simulator on your Mac but in order to actually load the app onto a device requires that you be a member of the paid developer program for IOS.

  • 4/14/2015 - Release - AIR 17 Runtime and SDK

    Today we're pleased to announce that the next version of AIR is available for immediate download.  AIR 17 adds both new features and important bug fixes for both desktop and mobile platforms!
    Below are some of the key features and benefits of AIR 17.  Please see our release notes for full details.
    New Features:
    ADT Packaging time Improvement with Support for Parallel Compilation for iOS
    AIR 16 introduced support for compilation and packaging of iOS applications for both 32 bit and 64 bit platforms. With this improvement, we can now compile 32 and 64 bit architecture in parallel to cut packaging times up to 50 percent.
    Stage3D - Standard Extended Profile for Mobile
    In recent releases of the Runtime we've added support for Standard and Standard Constrained Stage3D profiles.  With AIR 17 we're adding a new Standard Extended Profile for iOS and Android devices that support GLES3.  Availability of the “standardExtended" profile indicates the availability of AGAL3. The same profile name can then be used in requestContext3D and requestContext3DMatchingProfiles methods of Stage3D.
    The “standardExtended” profile requires OpenGL ES 3.0 which is present on many high end smartphones and tablets. AGAL3 increases register limits for vertex attributes, fragment constants and tokens. While we're focusing on mobile first, we anticipate bringing this functionality to the desktop in a future update.
    To assemble the new AGAL, update AGALMiniAssembler.as (AGAL v3) from https://github.com/adobe-flash/graphicscorelib/.
    VideoTexture Support in AIR for Windows, Mac and iOS
    We've introduced a new ActionScript feature that allows hardware accelerated video to be used as a source texture in a Stage3D environment. Currently, using video with Stage3D requires the use of the Video object, which is not accelerated, and manipulation of the bitmap representations of the video frames. This new feature, called VideoTexture, allows direct access to a texture object that is sourced from a Netstream or Camera object. As of the first Flash Player 17 this feature is back and now available on AIR Mac, Windows and iOS.  Look for Android support in an upcoming release.  Please see the VideoTexture blog post for implementation details.
    Fixed Issues:
    [iPhone 6 +] if Landscape image is not provided for iphone 6+, Stretched Portrait launch image is displayed when application is launched in landscape mode. (3945056)
    [iPhone 6+][Upside down]: Inverted launch image is displayed, if device is kept at upsidedown position and AO is portrait and AR true. (3945046)
    Stage alignment get distorted on returning back from Camera UI. (3946793)
    App crashes on launch, when Permit debugging option is UNTICKED in Flash CC. ( Bug 3949916)
    Non-compliant handling of orientation in iOS 8 root view controller. (Bug 3942292)
    Mod (%) operator broken in interpreter mode for iOS 64 bit ( Bug 3951944)
    [Air Desktop] Create VideoTexture when application window is not active cause video not render but sound playback (3939033)
    Multiple security and functional fixes
    Known Issues:
    [iPhone 6 +] Inverted launch image is displayed for split sec when device kept at rotated right Landscape orientation (AspectRatio is landscape and AutoOrients is false). (3945071)
    Keyboard Orientation did not changed from Portrait to landscape after setting stage aspect ratio to landscape and the text area moves upwards.(3948135)
    Texture format mismatch" while uploading BitmapData to a Texture on Samsung Galaxy Tab (Bug 3959595)
    [Android] FLV video encoded with H264 is not working with stage video, video is not getting rendered (Bug 3950740)
    ld error “ld: in , unsupported address encoding (13) of personality function in CIE for architecture arm64Compilation failed while executing : ld64" on packaging with WIN SDK. (Bug 3950027)
    [Air Desktop] Graphical glitches when rotating an element inside of a sprite.(3949851)
    [Air Desktop] [Video Texture] Glitches in Video on Intel 4400 Graphics Card on Window 7.(3937062)
    [Air Desktop] Gestures doesn't work well with StageWebView. (3806251)
    Download Locations:
    AIR 17 runtime for Windows: 17.0.0.144 Runtime Download
    AIR 17 runtime for Macintosh: 17.0.0.144 Runtime Download
    AIR 17 SDK & Compiler for Windows: 17.0.0.144 SDK & Compiler Download
    AIR 17 SDK & Compiler for Macintosh: 17.0.0.144 SDK & Compiler Download
    Note: To provide all the all the necessary tools for our developers in one place and avoid having to download multiple components, we are packaging Adobe AIR 17 SDK and ActionScript Compiler 2.0 in a single SDK called “Adobe AIR 17 SDK & Compiler”.
    AIR SDK 17 (Compatible with Flex) for Windows: 17.0.0.144 SDK Windows Download
    AIR SDK 17 (Compatible with Flex) for Macintosh: 17.0.0.144 SDK Macintosh Download
    Previous versions of the AIR runtime and SDK can be found on the Archived AIR SDK and Runtimes page

    Sometimes the release version has a later build number than the last beta we received, which in a way can be even worse than if the build is the same. The thing that has caused some confusion is that a few posts here have been answered with "we've fixed that and it will be in the next build", and the next build turned out to be the same as the previous build.
    So, I think the truth is that those things are fixed in the next build that appears on labs, and the release one doesn't count as a new beta build. I don't know when the next labs build will be.

  • Flash CS5.5 64 bit Air 4 Android App fails 2 install?

    I'm creating a product catalog app, after finally getting the app to complile with no errors, the app ultimately will not install when downloaded to an android device.
    Although it runs perfectly in the Air program when I test publish.
    What "publish settings" would prompt this? : Warning: No libraries were linked as Runtime Shared Libraries (RSLs) because of your publish settings: AIR for Android
    Is there any way to get debug info from the android phone?
    A few notes about my app:
    1. I am using variables for all the text, loaded from the first frame so the app can have a language select option.
    2. The swf that publishes from this acts odd, it seems to ignore all my stop(); commands and just loops through the root timeline. Is this normal?
    3. I have a dynamic button in the library, with AS linkage; export for AS, Xport in Frame 1.
    Air 4 Android settings:
    Portrait
    Fullscreen
    Render: Auto
    Device Release
    Internet Permissions
    The app can be found here: http://divapps.parker.com/apps/android/SensoControl.Android_22.apk in case anyone wants to examine it.
    Thanks!

    Hi - this reply is a bit old as I've just come across this post whilst searching for something else related to orientation on IOS.  Anyway, assuming, you haven't already worked out the problem you need to add
    Import Flash.desktop.StageOrientation;

  • Can't play video taken with iPad, sent by email

    I've taken a video with my iPad 2, V6.0. I've tried attaching it to an email to send to myself, because people say they can't open any of the videos I send them. They're right! I can't either. The thumnail shows the video on my PC--windows 7 (64), but only audio plays, not any video. I've tried both Realplayer & Quicktime. Both the same result.
    In a similar vein.....why are our pictures turned sideways when people receive them in their email??
    Thanks for reading. Thanks for answers!

    Pamela,
    There is a compatibility issue between QuickTime 7.7.2 in Windows and iOS 6-emailed videos.
         it's the combination of all three of the above underlined items.
    also see: https://discussions.apple.com/message/19727109#19727109
    or CoachMyVideo.com for an alternative: http://www.coachmyvideo.mobi/#!ios6/c13th
    the sideways pictures has to do with whether or not the recepient's viewer can read the rotation matrix --> the information about what orientation the iOS device was in when it was recorded.
    -J

  • Merging Flex SDK 4.5.1 and AIR SDK 3.2

    Is there any harm with merging AIR SDK 3.2 into Flex SDK 4.5.1?

    Hi - this reply is a bit old as I've just come across this post whilst searching for something else related to orientation on IOS.  Anyway, assuming, you haven't already worked out the problem you need to add
    Import Flash.desktop.StageOrientation;

Maybe you are looking for

  • Simple speaker setup for ATV?

    I understand if I get bumped because this post isn't ATV-related... But I argue that other ATV users might find this thread helpful. So... I purchased a new HD TV, one that I will use solely with Apple TV. I want better audio than the built-in speake

  • How can I transfer large recording I made from iPad to my computer

    I recorded 2 videos on my iPad that about 1-1/2 hours long each but I can't seem to get it to transfer to my computer so I can make a DVD.  What do I need to do?  I need Help

  • Adding Chapters in Quicktime X

    Hi all I'm trying to add chapters to a video of mine. I've tried following this tutorial: http://www.apple.com/quicktime/tutorials/chaptertracks.html but it it appears to have been written for the old Quicktime 7 Pro. As such, I cannot open a text fi

  • Lost cash??????

    i put in a $15 gift card and had 11.20 left. went to florida for 5 days get back no money left. i owed nothing.any ideas to what happened

  • EAP-FAST - WLC 7.4 Roaming between different FlexConnect (FC) Group

    Dear all, WLC 7.4 Release Notes states that with both Local/Central Switching: - Mobility in the same Flex Group with CCKM is Fast Roaming if WLAN is mapped to same VLAN - Mobility between different Flex Group with CCKM cause a Full Auth Using CCK wi