Changelog
New versions are released through GitHub, so the reference page is the GitHub Releases page.
0.11.X
0.11.1
- Fix: add unbounded queue for drifted tracks during initialization, thanks to @jumperson (#166)
0.11.0
This release focuses on stability and performance, fixing old bugs that were making the library unstable and unreliable.
In addition, the library is now available at new maven coordinates io.deepmedia.community:transcoder-android
.
The old coordinates will still work and receive updates.
- Enhancement: Revisit transcoding pipeline (#203)
- Enhancement: Allow SpeedTimeInterpolator reuse, thanks to @vaibhavpandeyvpz (#199)
- Fix: fix video artifacts, thanks to @jumperson (#199)
- Fix: fix end-of-stream flag not sent (#201)
- Fix: fix performance issues, thanks to @jumperson (#202)
- Fix: handle null buffers (#203)
- Fix: avoid pipeline stalls (#203)
- Fix: ensure monotonic muxer timestamps (#203)
0.10.X
0.10.5
- Fix: Honor buffer.hasRemaining() and otherwise release the buffer. (#182)
- Fix: Call progress even when not advanced. (#170)
- Fix: FilePathDataSource crash before initialize. (#160)
0.10.4
- Fix: fixed crash in specific conditions (#140)
- New: AssetFileDescriptorDataSource, can be used to transcode from AssetFileDescriptors (#140)
0.10.3
- Fix: error when merging many files, thanks to @DamonChen117 (#134)
- Fix: more concatenation issues
0.10.2
- Fix: error when merging many files (#132)
0.10.1
- Fix: thumbnails upside down (#125)
- Fix: clip/trim issues (#127)
- Fix: seeking issues (#128)
- Fix: concatenation failure (#130)
0.10.0
Transcoder is now distributed through Maven Central. Snapshot releases are available as well.
- New: thumbnails support (#119)
- Improvement: rewritten transcoding pipeline (#118)
- Fix: many bugs fixed while rewriting the pipeline (#118)
0.9.X
0.9.1
- Improvement:
DefaultDataSink
new constructor with support for FileDescriptor. (#87)
0.9.0
- New:
BlankAudioDataSource
can be used to add muted audio to a video-only track, thanks to @mudar (#64) - Enhancement: you can now concatenate multiple files even if some of them have no audio, thanks to @mudar (#64)
- Enhancement: you can now concatenate multiple files without audio track, thanks to @cbernier2 (#61)
0.8.X
0.8.0
- New:
TrimDataSource
to trim segments. Use it to wrap your original source. Thanks to @mudar (#50) - New:
ClipDataSource
, just likesTrimDataSource
but selects trim values with respect to video start (#54)
Transcoder will trim video segments only at the closest video sync frame. If your video has few sync frames, the trim timestamp might be different than what was selected.
Older versions
0.7.4
- Fix: fixed Xamarin incompatibility, thanks to @aweck (#41)
- Fix: fixed small bugs with specific API versions / media files (#47)
- Fix: fixed issues with specific media files, ensure consistent onProgress callback (#48)
0.7.3
- Fix: fixed bug with files that do not have an audio track, thanks to @pawegio (#31)
- Fix: fixed possible issues with FilePathDataSource (#32)
0.7.2
- Improvement: better input format detection. Fixes bugs with certain files (#29)
- Improvement: added
DefaultAudioStrategy.Builder.bitRate()
option (#29)
0.7.1
- Improvement: update the underlying OpenGL library (#20)
0.7.0
- New: video concatenation to stitch together multiple media (#14)
- New: select a specific track type (
VIDEO
orAUDIO
) for sources (#14) - New: audio resampling through
DefaultAudioStrategy
(#16) - New: custom resampling through
TranscoderOptions.setAudioResampler()
(#16) - Breaking change:
TranscoderOptions.setDataSource()
renamed toaddDataSource()
(#14) - Breaking change:
TranscoderOptions.setRotation()
renamed tosetVideoRotation()
(#14) - Breaking change:
DefaultVideoStrategy.iFrameInterval()
renamed tokeyFrameInterval()
(#14) - Breaking change:
DefaultAudioStrategy
now uses a builder - removed old constructor (#16) - Improvement: rotate videos through OpenGL instead of using metadata (#14)
- Improvement: when concatenating multiple sources, automatically clip the longer track (audio or video) (#17)
- Improvement: various bug fixed (#18)
0.6.0
- New: ability to change video/audio speed and change each frame timestamp (#10)
- New: ability to set the video output rotation (#8)
- Improvement: new frame dropping algorithm, thanks to @Saqrag (#9)
- Improvement: avoid format validation on tracks coming from PassThroughTrackTranscoder, thanks to @Saqrag (#11)
0.5.0
- New: video cropping to any dimension. Encoder will crop the exceeding size. (#6)
- New:
AspectRatioResizer
to crop to a given aspect ratio. (#6) - Breaking change:
MediaTranscoder
renamed toTranscoder
. (#6) - Breaking change:
MediaTranscoderOptions
renamed toTranscoderOptions
. (#6) - Breaking change:
MediaTranscoder.Listener
renamed toTranscoderListener
. (#6) - Improvement: use EglCore to replace GL logic. (#5)
- Improvement: bug fixes and a new demo app to test transcoding options easily (#4)