Giter VIP home page Giter VIP logo

Comments (4)

neilcsmith-net avatar neilcsmith-net commented on May 30, 2024 1

Hi @chichunchen

This has nothing to do with the bindings specifically. In order to play back into a Swing surface that example uses AppSrc and a software pixel buffer. So it's either the hardware decoder isn't being used or the download into JVM memory that is slow. Try changing the example to use the default PlayBin sink - remove the line that calls setVideoSink(). Does it perform better? If it does, then next step is to work on video overlay support to draw on top of an AWT window - that might not be fully ported from the old bindings yet.

Best wishes, Neil

from gst1-java-core.

chichunchen avatar chichunchen commented on May 30, 2024

Thanks for the prompt reply! I have tried to remove the call setVideoSink() and it performs very well (fps=30 in full screen) when the resolution of the video is 2k and 1080p, but the program shows all the red when the resolution of the video is 4k on the tx2 board.

The log of running a 2k video is almost the same with the log of running a 4k video:

NvMMLiteOpen : Block : BlockType = 261
TVMR: NvMMLiteTVMRDecBlockOpen: 7907: NvMMLiteBlockOpen
NvMMLiteBlockCreate : Block : BlockType = 261
TVMR: cbBeginSequence: 1223: BeginSequence 2560x1440, bVPR = 0
TVMR: LowCorner Frequency = 345000
TVMR: cbBeginSequence: 1622: DecodeBuffers = 3, pnvsi->eCodec = 4, codec = 0
TVMR: cbBeginSequence: 1693: Display Resolution : (2560x1440)
TVMR: cbBeginSequence: 1694: Display Aspect Ratio : (2560x1440)
TVMR: cbBeginSequence: 1762: ColorFormat : 5
TVMR: cbBeginSequence:1773 ColorSpace = NvColorSpace_YCbCr709
TVMR: cbBeginSequence: 1904: SurfaceLayout = 3
TVMR: cbBeginSequence: 2005: NumOfSurfaces = 10, InteraceStream = 0, InterlaceEnabled = 0, bSecure = 0, MVC = 0 Semiplanar = 1, bReinit = 1, BitDepthForSurface = 8 LumaBitDepth = 8, ChromaBitDepth = 8, ChromaFormat = 5
TVMR: cbBeginSequence: 2007: BeginSequence ColorPrimaries = 1, TransferCharacteristics = 1, MatrixCoefficients = 1
Allocating new output: 2560x1440 (x 10), ThumbnailMode = 0
OPENMAX: HandleNewStreamFormat: 3464: Send OMX_EventPortSettingsChanged : nFrameWidth = 2560, nFrameHeight = 1440

(unknown:3011): GStreamer-CRITICAL **: Registering meta implementation ‘GstVideoMeta’ without init function
TVMR: FrameRate = 30
TVMR: NVDEC LowCorner Freq = (345000 * 1024)
TVMR: FrameRate = 30.000030
TVMR: FrameRate = 30.000030
fgTVMR: FrameRate = 30.000030

So I guess the program is using the hardware decoder on the board since the program performs really well when playing a 2k video but I have no idea why the video does not works when the resolution of the video I specified is 4k.

from gst1-java-core.

chichunchen avatar chichunchen commented on May 30, 2024

I found that the native playbin code is also failed when playing 4k video on TX2, but works on normal PC, so the problem I faced should be post on gstreamer mail list or some other forum. Anyway, thanks a lot for the help!

from gst1-java-core.

neilcsmith-net avatar neilcsmith-net commented on May 30, 2024

Going to close this. Reopen or add another issue if it turns out to be problems on our side. Thanks, Neil

from gst1-java-core.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.