Start a new topic

VideoDrawable - Failed to get new pixel buffer from current timestamp

VideoDrawable - Failed to get new pixel buffer from current timestamp


Hope it helps... what I tried is this...

I show that the image is recognized and we can hear that the video (http://techslides.com/demos/sample-videos/small.mp4) is being played but we can not view the video....

After the video is finished I open the console and we can listen again that the video is being played and we have the error "Failed to get new pixel buffer from current"

https://www.dropbox.com/sc/j2dajpfnpwcjedu/AAAEGyQN7PJBcmnqnqK9biwCa

Hi A DF,
That would be super helpful, THX. You can send it to support@wikitude.com (past the link to this thread into the mail).

Best regards,

Andreas

Hi Andreas I could send you my ArchitectWorld, if that helps.
 

Hi Juan,
Sorry for the confusion, I meant a video that shows the device (and what's going on on the screen) while you reproduce the issue.

Best regards,

Andreas

Hi A DF,
Can you share a video/project/ArchitectWorld (including all assets) with us so that we see how you use our SDK? 

Currently we haven't isolated the problem and need as many use cases as possible to find the root cause of the problem.

Best regards,

Andreas

Hi Juan,
Can you share a video where we see how you use our SDK/your App to experience the described behaviour?

Best regards,

Andreas

Andreas, you're right I'm using SDK version 5.3 of course and had no error with SDK 5.2

No problem on Android.

Only iOS brings the error "Failed to get new pixel buffer from current timestamp", but the video is played smoothly nevertheless.
I have all the mp4 video files locally in my app's ArchitectWorld folder structure.
 

Hi!

I already has this in Info.plist

<key>NSAppTransportSecurity</key>

<dict>

<key>NSAllowsArbitraryLoads</key>

<true/>

</dict>

 

To allow to load url address. The issue is not loading the Url, because when the image is detected I can listen the video but can not see the video....

Hi Juan,
I just tried your Architect World and get the following error:

```

Asset tracks could not be loaded (Error: Error Domain=NSURLErrorDomain Code=-1022 "The resource could not be loaded because the App Transport Security policy requires the use of a secure connection." UserInfo={NSUnderlyingError=0x14e2db30 {Error Domain=kCFErrorDomainCFNetwork Code=-1022 "(null)"}, NSLocalizedDescription=The resource could not be loaded because the App Transport Security policy requires the use of a secure connection.}) - (Unknown URL Error ('http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4'))

```

Did you disable ATS for this URL or might this be the reason for the video to not appear?

Best regards,

Andreas

Yay :) Thanks

Hi Juan,
We're currently investigating this issue. 

Best regards,

Andreas

Hi A DF,
Our SDK 4.3 does not contain the code to trigger the `Failed to get new pixel buffer from current timestamp` error. Are you sure that you meant 4.3 instead of 5.3?

Best regards,

Andreas

Same problem here.

iOS Javascript SDK version 4.3 with latest version of xcode brings ERROR "Failed to get new pixel buffer from current timestamp" on every video playback

No Error with Wikitude iOS Javascript - SDK 4.2

Did you find a solution?

Hi,

I'm trying with the trial license wikitude in xamarin.ios 9, haven't tested in other device yet.... I was playing with the sample project and I wanted to try to play a video and It seems I have the same problem that happens here https://support.wikitude.com/support/search/topics?term=Video+drawable+-+Audio+plays+but+no+picture, the video is not being displayed but the audio it's playing.... 

I'm using the Xamarin Component version 5.3.0 that was released yesterday

This is the video that I'm trying to play

http://techslides.com/demos/sample-videos/small.mp4 I download the file and trying to play locally

http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4 also trying with this one using http

The exception that I get OnError is this one "Failed to get new pixel buffer for current timestamp" 

This is the code as you can see is the same as the sample, just added the video object

 

/////////////////////////////////////////////////////////////////////////////////////////////////////////

var World = {

    loaded: false,

 

    init: function initFn() {

        this.createOverlays();

    },

 

    createOverlays: function createOverlaysFn() {

        this.tracker = new AR.ClientTracker("assets/magazine.wtc", {

            onLoaded: this.worldLoaded

        });

 

        /* Create overlay for page one */

        var imgOne = new AR.ImageResource("assets/imageOne.png");

        var overlayOne = new AR.ImageDrawable(imgOne, 1, {

            offsetX: -0.15,

            offsetY: 0

        });

 

        var video = new AR.VideoDrawable("assets/small.mp4", 1, {

        //var video = new AR.VideoDrawable("http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4", 1, {

            offsetY: -0.3,

            enabled: true,

            onError: function onError(ex){

                AR.logger.debug(ex);

            }

        });

 

        var pageOne = new AR.Trackable2DObject(this.tracker, "*", {

            drawable: {

                cam:

            },

            onEnterFieldOfVision: function onEnterFieldOfVisionFn () {

                AR.logger.debug('onEnterFieldOfVision');

                video.play(1);

            },

            onExitFieldOfVision: function onExitFieldOfVisionFn () {

                video.stop();

            }

        });

    },

 

    worldLoaded: function worldLoadedFn() {

        var cssDivLeft = " style='display: table-cell;vertical-align: middle; text-align: right; width: 50%; padding-right: 15px;'";

        var cssDivRight = " style='display: table-cell;vertical-align: middle; text-align: left;'";

        document.getElementById('loadingMessage').innerHTML =

            "<div" + cssDivLeft + ">Scan Target &#35;1 (surfer):</div>" +

            "<div" + cssDivRight + "><img src='assets/surfer.png'></img></div>";

 

        // Remove Scan target message after 10 sec.

        setTimeout(function() {

            var e = document.getElementById('loadingMessage');

            e.parentElement.removeChild(e);

        }, 10000);

    }

};

 

World.init();

////////////////////////////////////////////////////////////////////////////////////////////////

 

So..what am I doing wrong?

 

Thanks
Login or Signup to post a comment