VideoHelp Forum
+ Reply to Thread
Results 1 to 9 of 9
Thread
  1. Member Randombit's Avatar
    Join Date
    Dec 2010
    Location
    Acadiana
    Search PM
    I was given this file and I can't play it without disabling hardware decoding. What is H.265 profile 0? Is this file produced by broken software? Does HEVC profile 0 even exist?
    Quote Quote  
  2. what does mediainfo (view=>text say about the file) ?

    Does it play in software decoding mode ?
    Quote Quote  
  3. Member Randombit's Avatar
    Join Date
    Dec 2010
    Location
    Acadiana
    Search PM
    Yes, it plays in SW mode.
    Code:
    Video
    ID                                       : 1
    Format                                   : HEVC
    Format/Info                              : High Efficiency Video Coding
    Codec ID                                 : V_MPEGH/ISO/HEVC
    Duration                                 : 1 h 40 min
    Bit rate                                 : 901 kb/s
    Width                                    : 1 280 pixels
    Height                                   : 720 pixels
    Display aspect ratio                     : 16:9
    Frame rate mode                          : Constant
    Frame rate                               : 23.976 (24000/1001) FPS
    Color space                              : YUV
    Chroma subsampling                       : 4:2:0
    Bit depth                                : 8 bits
    Bits/(Pixel*Frame)                       : 0.041
    Stream size                              : 646 MiB (93%)
    Writing library                          : x265 1.5:[Windows][GCC 4.9.0][64 bit]
    Encoding settings                        : wpp / ctu=32 / tu-intra-depth=1 / tu-inter-depth=1 / me=1 / subme=1 / merange=57 / no-rect / no-amp / max-merge=2 / temporal-mvp / early-skip / no-fast-cbf / rdpenalty=0 / no-tskip / no-tskip-fast / strong-intra-smoothing / no-lossless / no-cu-lossless / no-constrained-intra / fast-intra / open-gop / interlace=0 / keyint=240 / min-keyint=24 / scenecut=40 / rc-lookahead=15 / bframes=4 / bframe-bias=0 / b-adapt=0 / ref=8 / weightp / no-weightb / aq-mode=1 / aq-strength=1.00 / cbqpoffs=0 / crqpoffs=0 / rd=2 / psy-rd=0.30 / psy-rdoq=0.00 / signhide / lft / sao / no-sao-non-deblock / b-pyramid / no-cutree / rc=2 / pass / bitrate=900 / qcomp=0.60 / qpmin=0 / qpmax=51 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / ipratio=1.40 / pbratio=1.30
    Default                                  : Yes
    Forced                                   : No
    Color range                              : Limited
    Color primaries                          : BT.709
    Transfer characteristics                 : BT.709
    Matrix coefficients                      : BT.709
    Quote Quote  
  4. Encoder must have set --ref 8 --allow-non-conformance (with b-pyramid) creating a stream exceeding HEVC specifications.
    Quote Quote  
  5. Member Randombit's Avatar
    Join Date
    Dec 2010
    Location
    Acadiana
    Search PM
    OK, is there anything that can be done to "fix" such a file? Below is VA-API info of my box.
    Code:
    ~ $ vainfo
    libva info: VA-API version 0.40.0
    libva info: va_getDriverName() returns 0
    libva info: Trying to open /usr/lib64/va/drivers/i965_drv_video.so
    libva info: Found init function __vaDriverInit_0_40
    libva info: va_openDriver() returns 0
    vainfo: VA-API version: 0.40 (libva )
    vainfo: Driver version: Intel i965 driver for Intel(R) Skylake - 1.8.3
    vainfo: Supported profile and entrypoints
          VAProfileMPEG2Simple            : VAEntrypointVLD
          VAProfileMPEG2Simple            : VAEntrypointEncSlice
          VAProfileMPEG2Main              : VAEntrypointVLD
          VAProfileMPEG2Main              : VAEntrypointEncSlice
          VAProfileH264ConstrainedBaseline: VAEntrypointVLD
          VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
          VAProfileH264ConstrainedBaseline: VAEntrypointEncSliceLP
          VAProfileH264Main               : VAEntrypointVLD
          VAProfileH264Main               : VAEntrypointEncSlice
          VAProfileH264Main               : VAEntrypointEncSliceLP
          VAProfileH264High               : VAEntrypointVLD
          VAProfileH264High               : VAEntrypointEncSlice
          VAProfileH264High               : VAEntrypointEncSliceLP
          VAProfileH264MultiviewHigh      : VAEntrypointVLD
          VAProfileH264MultiviewHigh      : VAEntrypointEncSlice
          VAProfileH264StereoHigh         : VAEntrypointVLD
          VAProfileH264StereoHigh         : VAEntrypointEncSlice
          VAProfileVC1Simple              : VAEntrypointVLD
          VAProfileVC1Main                : VAEntrypointVLD
          VAProfileVC1Advanced            : VAEntrypointVLD
          VAProfileNone                   : VAEntrypointVideoProc
          VAProfileJPEGBaseline           : VAEntrypointVLD
          VAProfileJPEGBaseline           : VAEntrypointEncPicture
          VAProfileVP8Version0_3          : VAEntrypointVLD
          VAProfileVP8Version0_3          : VAEntrypointEncSlice
          VAProfileHEVCMain               : VAEntrypointVLD
          VAProfileHEVCMain               : VAEntrypointEncSlice
    Quote Quote  
  6. Ask the developer of your playback software if there is a way to force hardware decoding of such streams. Or try to manipulate the stream's flags to signal specified level (and DPB?). Either way there is a chance decoding will be erroneous.
    Quote Quote  
  7. Member Randombit's Avatar
    Join Date
    Dec 2010
    Location
    Acadiana
    Search PM
    Manipulate flags, sounds interesting, how? Sure it could be done with a hex editor if the address is known, but is there an easier way?
    Quote Quote  
  8. I haven't seen any software to manipulate those level and profile flags in HEVC.

    Maybe there is trick: encode a very short spec compliant stream with same parameters (except lower ref count) and append your problem stream to it. If your player starts in hardware decoding mode maybe it stays in hardware decoding mode?

    But is it worth it? Is HEVC 720p too much work for your CPU? And again: we don't know if it will work. Just don't encode such bad streams...
    Quote Quote  
  9. Member Randombit's Avatar
    Join Date
    Dec 2010
    Location
    Acadiana
    Search PM
    It is worth because the players I'm using are set to use HW decoding, Kodi and MPV. Loading such a file means I have to re-configure the player. Thanks for workaround idea!
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!