Skip to content

release version 0.5.0

Compare
Choose a tag to compare
@wang-bin wang-bin released this 04 Nov 02:34
· 164 commits to master since this release
  • ABI Changes:
    • PrepareCallback return type change in Player.prepare()
    • Player.snapshot() callback return type change. Return a file path to save as file(not implemented yet)
    • Add SeekFlag for prepare(), setNextMedia() and gaplessSwitch()
  • APIs Changes:
    • Add RenderAPI.h: provides necessary informations to use a graphics api other than OpenGL
    • Add Player.setRenderAPI(): select platform graphics api for video rendering. Now OpenGL(default) and D3D11 are supported.
    • Add version macros
  • New Features:
    • Experimental D3D11 rendering support. Now can render frames from software decoders. Color is not precise as OpenGL. Only the context created internally from a HWND via updateNativeSurface is tested. Foreign contexts may work, not tested.
  • Improve seeking performance, fix unchanged display when seeking continuously. Now it's close to mpv, and should be better than most players like potplayer, vlc, mpc-hc etc.
  • Fix seek position if media start time > 0
  • Accurate seek is the default for the start position of prepare(), setNextMedia() and gaplessSwitch()
  • OpenGL: Skip uploading video frame to gpu when redrawing
  • setState(State::Stopped) now clears video renderer viewport and releases video renderer resources
  • Fix stopping playback is not executed immediately
  • setState(State::Stopped) now releases host and gpu resouces and clear background color. Normal playback end does not, and still keep the last frame displayed
  • Fix setState() sometimes does not work
  • MFT Decoder:
    • Disable low latency by default only for hevc. Previous release turned off low latency mode for all codecs, then h264 decoding may be too slow
    • Add property "ignore_profile" and "ignore_level"
  • Add FFmpeg decoder property "drop" to control decoder frame dropping when seeking
  • glfwplay example:
    • new seek options: -seek_step, -seek_any
    • support d3d11 rendering using -d3d11 -gfxthread