Tags: zhangpengyf/QtAV
Tags
version 1.12.0 Changelog - CMake support - Fix iOS build - Fix AVPacket memory leak - Geometry & GeometryRenderer class is public - PAL8, XYZ color format support - Fix OpenGL background color - Fix external clock error after pause - VA-API encoder support (ffmpeg>=3) - Other improvements, fixes, and untested features
version 1.11.0 Changelog - Dynamic load QtAVWidgets in VideoOutput. `QtAV::Widgets::registerRenderers()` and `QT = avwidgets` is not requred now. - D3D11 decoder support. Not stable on Windows phone. - DXVA refactor and bug fix. - VA-API: fix memory leak when seeking - OpenGL: * Fix PBO binding * Custom shader support (WIP) * Edit and apply custom shader when playing. Based on Qt property system. * Optimize uniform update * GLSL filter support * Add `OpenGLVideo.beforeRendering/afterRendering` - CUDA: * Direct copy is default for windows. Now Rendering CUDA decoded frames is faster than any other players * 0-copy is default for linux. * Use new API (4.0) - AVPlayer: * Add `AVPlayer.stoppedAt` signal * add `setTimeRange()` * setStart/StopPosition can be called at any time with any value * Ensure all threads are running when `started` is emitted * Support preload using `load()`. Now no reload in `play()` - Fix build with QT_NAMESPACE - Fix swscale color range - Fix linux install destinations - Add AVTranscoder.async, encoders are in individual threads - Add FrameReader class - Use FFmpeg 3.0 API - QML: * Support filters, including sw filters from libavfilter, and GLSL filter * Add `MediaPlayer/Video.audioBackends` property * Support autoLoad * Add `VideoOutput.mapTo/FromXXX` between source frame and item * Video EQ in VideoOutput/Video * Add `MediaPlayer.startPosition/stopPotion` - QMLPlayer: Open video and subtitle at the same time. History view. Zoom. Video EQ
version 1.10.0 Changelog - Improve seek speed, fix drop too much frames after seek - VideoFrameExtractor: seek faster if called many times. Speed up progress bar preview - Support media files from android assets. Use protocol 'assets:' - Apply video decoder options when playing - Better iOS support - VideoToolbox: * Check profile to avoid crash * Support RGB output * Use `rgb422_apple` texture * Support iOS 0-copy rendering using OpenGLES * More interop types for OSX and iOS - OpenGL * Use 16bit depth textures for >8bit videos (e.g. 10bit) if possible * Correct input/output color range. This fixes QtAV video different from other players * Fix high opengl and core profile rendering * Better EGL detection - VO: * Simplify signal emitting * Support background color, simplify background painting * VideoOutput delete crash, resize issues * Improve performance of QPainter based renderers - AudioOutput: * remove setBufferSize, add a better API setBufferSamples * Add flush(), clear(). Not implemented for backends. * Fix OpenAL playback for some audio formats * Dynamic load OpenAL by default except iOS * Add AudioToolbox support for OSX/iOS and becomes the default backend * PulseAudio: workaround noise for multiple instance - Subtitle: * Support ass font files in android assets * Fix srt decoding - QML: * Add QtMultimedia compatible APIs VideoOutput.contentRect/sourceRect - Simplify SurfaceType - Fix strange behaviors near eof: seek, stepForward, exit etc. - Fix playback block if audio duration is shorter than video - VideoFrame constructed from QImage takes image's ownership - Add VideoFrame.colorRange, AudioFrame.duration - encoder: support start time - Add AVPlayer.bufferSpeed, seekFinished(qint64) - Fix abort when loading - Examples: * Fix videos in videowall not synchronized * QMLPlayer has better touch screen experience * QMLPlayer supports win10 store (But Qt is not well supported) * Drag & Drop support on OSX * URL open dialog for QMLPlayer
version 1.9.0 Changelog: - No audio thread if audio stream < 0. null AudioOutput now still create audio thread. - VideoOutput: fix lock error - Filter: add X11 text rendering for X11Renderer/XVRenderer. - LibAVFilter supports HW frames(not recommended) - VideoFrame copy and init issue, bpp compute error - Avoid using some stl APIs that breaks ABI - Add x11 renderer - XV: support NV12 and packed yuv formats - Fix factory initialization for static build(iOS for example) - Fix ffmpeg log level - Remove AVPicture which is deprecated - SWS 16 alignment, output to user defined buffer - Always define the registered id so we can use everywhere - Better iOS support: build, run, deploy(prl) - use libuchardet now, use system one if possible - Fix android build on windows - XAudio2: fix crash. `double` sample format is not supported - Fix clock value if speed changed - VideoRenderer.updateUi - VideoCapture: fix HW frame save - New logo ![](http://qtav.org/blog/images/QtAV1.9.0-logo.png "Logo") - Android: support protocol 'content'. Now can play from Gallery. - MediaIO is not writable by default - WinRT (Windows Store) support: * Link to XAudio2 * File open and protocol - VA-API: * Add hevc, vp9. Not tested * Support more profiles * Improve nvidia support * Interop with egl support(dma, tfp). libva 0.38 and Qt>=5.5 are required. * Check resolution support before open * Add thread count option (new ffmpeg >2.8 does not support) * Prefer /dev/dri/renderD128 for drm * Correctly release X11/drm resource - OpenGL: * OpenGL ES3 optimization * use new OpenGL and GLSL APIs if possible - CI: * Add windows. Build with latest Qt release. Using msbuild, nmake and mingw32-make - API: * AVPlayer.stepForward(), stepBackword(). playNextFrame() is deprecated * AVPlayer.state * AVPlayer.videoDecoderPriority with name list * VideoRenderer.frameSize (C ), VideoOutput.frameSize * XXXDecoder/Encoder::supportedCodecs, AV(De)Muxer.supportedFormats/ Extensions * QML: more metaData keys: startTime, sampleFormat, channelLayout, pixelFormat, videoFrames - QMLPlayer/Player: * fix OpenGLWidgetRenderer crash * Handle Home/Back button for mobile * Preview item is movable * ppa: rename /usr/bin/player to /usr/bin/Player
version 1.8.0 Changelog: - XAudio2 support - VideoToolbox hardware decoder(OSX) support. It can decode h264, h263, mpeg1, mpeg2, mpeg4. Better than VDA - CUDA 0-copy support - Dynamic video decoder switch when playing (try it in QMLPlayer) - Embedded ass subtitles support - ass subtitle font setup - No OpenGL build fix for linux - Fix qpainter rendering if vbo is used - Fix OpenGL rendering for some rgb formats - DXVA 0-copy improvement, intel clearvideo workaround etc. - AO: add null backend - HW: fix profile check - Ref counted frames from ff decoders. This fix opengl crash when uploading textures - Fix audio resampler parameters not set correctly - VS2015 support
version 1.7.0 Changelog: - DXVA GPU zero-copy support - DXVA copy back improvement - VAAPI zero-copy improvement - External audio track support - Fix opengl wrong display if switch decoder between VDA and FFmpeg - Video encoding support. Try examples/simpletranscode. Audio is not supported now - Pulseaudio improvement, fix crashes and hang - OpenGL: disable VBO for ANGLE to workaround qpainter filters have no effect. Less GL calls. Fix OpenGLWindowRenderer can not update correctly - Fix capture video when a zero-copy HW decoder is used. - Fix wrong audio data is played at the beginning of playback - Enable XV shm - Improve a/v sync - Build android on windows - Fix msvc debug build - Use OpenSL ES as for android. It works correctly now. No OpenAL required any more. Add volume control for OpenSL ES. - Fix crashes - Add ubuntu PPA - CI: appveyor for windows - AVInput=>MediaIO. You can use it to support custom output when encoding video - Add seekFinished, durationChanged, QML MediaPlayer.videoCapture, Subtitle delay etc - QMLPlayer: swipe to seek
version 1.6.0 Changelog: - VDA: use NV12 as default format. Support 0 copy. Better performance than any other playrs - CUDA: fix wrong bitstream filters - OpenGL: * PBO support (enable by enviroment var QTAV_PBO=1) * rectangle texture support * packed yuv formats support - Support buffer progress, buffer value control - Support frame rate setup (AVPlayer::setFrameRate()) - Support RAW streams, such as h264, yuv - Audio filter support - Better libavfilter support. Now support libav avfilter, support audio filters from libavfilter - Add pulseaudio support - Detect volume change by per-app volume control - Simplify audio output API - Volume and mute control by audio backend API - Use float audio sample if possible - Fix iOS static link error - Fix error handling, EOF detect, Qt4.7 build etc. - Deploy: add qml, fix lib name, deploy sdk from installer, mingw deployment on linux. - player/QMLPlayer: * decoder detail * more options: preview config, buffer, fps, timeout * unregister context menu(win32) if uninstalled, ifw2.0 * QMLPlayer file associate for android
version 1.5.0 2015-02-13 Changelog: - Add QtAVWidgets module contains widget based renderers, video preview widget - QtAV module only depends on QtCore and QtGui - Improve audio output API - Simplify deployment on OSX. Deploy sdk from release packages without build. - Improve seekable detection - Fix noise audio if volume increased - Fix noise and wrong playback speed for wmv videos - Preview is more accurate - Do not copy AVPacket but use reference count. - Faster audio track switch - Reopen audio output only if audio format changed - VideoFrame: new API for converting to another format or QImage - OpenGL VAO, VBO support. - QML * Fix some crashes in QQuickItemRenderer * Add FBO item renderer and use the same code path as other opengl renderers * timeout property - player and QMLPlayer example * player: real time preview on progress bar * Fast seek and display if seek shortcut is pressed and hold
version 1.5.0 2015-02-13 Changelog: - Add QtAVWidgets module contains widget based renderers, video preview widget - QtAV module only depends on QtCore and QtGui - Improve audio output API - Simplify deployment on OSX. Deploy sdk from release packages without build. - Improve seekable detection - Fix noise audio if volume increased - Fix noise and wrong playback speed for wmv videos - Preview is more accurate - Do not copy AVPacket but use reference count. - Faster audio track switch - Reopen audio output only if audio format changed - VideoFrame: new API for converting to another format or QImage - OpenGL VAO, VBO support. - QML * Fix some crashes in QQuickItemRenderer * Add FBO item renderer and use the same code path as other opengl renderers * timeout property - player and QMLPlayer example * player: real time preview on progress bar * Fast seek and display if seek shortcut is pressed and hold
clear tasks in avthread and demuxthread when thread restarted should fix accident seek and no display in next playback if user seek to a video eof
PreviousNext