Skip to content

Commit

Permalink
release version 0.5.0
Browse files Browse the repository at this point in the history
- 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`
  • Loading branch information
wang-bin committed Nov 4, 2019
1 parent 1f3d66e commit be3c642
Showing 1 changed file with 1 addition and 11 deletions.
12 changes: 1 addition & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,17 +31,7 @@ If ffmpeg any module is not set, it's searched in the following order
- C++ APIs: a header only thin wrapper for C APIs. No C++ ABI restriction. No user code change to switch between ABI level APIs and C++ APIs.

## TODO:
- HDR support
- [x] windows 10 HDR apis (ANGLE GLES2/3)
- [x] color primaries convertion
- [x] tone mapping
- [ ] hdr device
- Encoding, transcoding and streaming
- Subtitle decoder and renderer
- Vulkan
- D3D
- Metal
- V4L2 codecs + 0-copy rendering(Raspberry pi)
https://github.com/wang-bin/mdk-sdk/wiki/TODO

## Open Source Modules and Examples
- MFT decoder module: https://github.com/wang-bin/mdk-mft
Expand Down

0 comments on commit be3c642

Please sign in to comment.