634 Commits

Author SHA1 Message Date
Zero
9c7ecb9b53 Initial ffmpeg 4.4 support 2021-05-06 17:08:45 -04:00
Zhiming Wang
4d16604581
.github: add issue templates 2020-12-14 00:55:02 +08:00
Zhiming Wang
5510f52bc8
CHANGELOG: update for v4.3.8 release 2020-12-13 13:29:06 +08:00
Bojan Šernek
dc2a82f890
software::resampling::Context: add get_with method (#41)
get_with allows setting additional options not covered by swr_alloc_set_opts.

Signed-off-by: Zhiming Wang <i@zhimingwang.org>
2020-12-13 10:39:04 +08:00
Zhiming Wang
2e37fbf50d
build.yml: switch FFmpeg Windows build URL...
to a hopefully more stable one that doesn't require constant attention.
2020-11-03 17:19:59 +08:00
Zhiming Wang
6e68d2308d
build.yml: fix download and extraction of Windows FFmpeg build 2020-11-03 16:20:28 +08:00
Zhiming Wang
810fd7b0f9
build.yml: fix deprecated set-env command
https://github.blog/changelog/2020-10-01-github-actions-deprecating-set-env-and-add-path-commands/
https://docs.github.com/en/free-pro-team@latest/actions/reference/workflow-commands-for-github-actions#environment-files
2020-10-11 10:31:05 +08:00
Zhiming Wang
69bbfb6dc8
Fix clippy::unnecessary_lazy_evaluations 2020-10-11 10:11:38 +08:00
Zhiming Wang
b0722df007
Fix clippy::match_like_matches_macro 2020-10-11 10:10:08 +08:00
Zhiming Wang
39d5979f73
README: fix typo 2020-10-04 19:41:43 +08:00
Zhiming Wang
6904114eab
CHANGELOG: update for v4.3.7 release 2020-10-04 12:21:13 +08:00
Zhiming Wang
9caa319a5c
crate: bump ffmpeg-sys-next dep to 4.3.5 2020-10-04 12:10:50 +08:00
Zhiming Wang
6f0a14ee8b
codec: fix codec description potential null ptr issue
Codecs may not have .long_name initialized.

Issue raised by Pilyushkin in #34.
2020-10-04 11:37:59 +08:00
Zhiming Wang
ae06272af1
build.yml: fix Windows build
ffmpeg.zeranoe.com is gone. Replacing it with another option listed at
ffmpeg.org, https://www.gyan.dev/ffmpeg/builds/.
2020-10-03 18:30:40 +08:00
Zhiming Wang
b962e4f9f6
examples/remux: fix stream_index of copied packets 2020-08-15 10:18:56 +08:00
Maor Kleinberger
c3297c9700
examples/transcode-x264: fix stream_index of copied packets
Signed-off-by: Zhiming Wang <i@zhimingwang.org>
2020-08-15 10:16:15 +08:00
Zhiming Wang
c1ae33b5a5
CHANGELOG: update for v4.3.6 release 2020-08-12 14:24:59 +08:00
Zhiming Wang
8b5e48cc8f
build.yml: use libclang from Visual Studio to speed up builds
Also fix non-idiomatic parameter expansion in pwsh.
2020-08-12 14:15:13 +08:00
Zhiming Wang
f084386540
build.yml: build on macOS and Windows 2020-08-12 12:01:09 +08:00
Maor Kleinberger
6a7a69e1e7
util::error: drop reserved errnos that are not available on Windows
Signed-off-by: Zhiming Wang <i@zhimingwang.org>
2020-08-12 10:30:11 +08:00
Zhiming Wang
545180cad0
format: context::{input,output}::dump: fix url/path printing
Previously the unwrapped CString did not have long enough lifetime to be
printed; not sure why there's no compiler warning.
2020-08-11 00:30:58 +08:00
Zhiming Wang
f024eaea37
examples/transcode-x264: fix typo in parse_opts
Unfortunate typo when fixing a clippy warning about using &str instead of
char...
2020-08-11 00:08:05 +08:00
Zhiming Wang
18058e9a8f
build.yml: drop ffmpegxy feature flags and build/test/lint examples 2020-08-10 22:26:34 +08:00
Zhiming Wang
0a03e745b4
examples: add transcode-x264.rs 2020-08-10 22:09:29 +08:00
Zhiming Wang
e393cf0145
examples: add remux.rs 2020-08-10 21:58:11 +08:00
Zhiming Wang
48b5751752
lib: export util::log 2020-08-10 21:57:55 +08:00
Zhiming Wang
b139fd8d70
Remove examples/fps-filter.rs which was accidentally committed 2020-08-10 13:46:38 +08:00
Zhiming Wang
2ff14d2b1b
Remove .travis.yml 2020-08-09 14:29:47 +08:00
Zhiming Wang
b79c479b88
CHANGELOG: update for v4.3.5 release 2020-08-09 14:28:28 +08:00
Zhiming Wang
6aef48e7e9
Add release.yml to create release on tag push 2020-08-09 14:26:25 +08:00
Zhiming Wang
bbbc9d5649
README: point to CHANGELOG.md 2020-08-09 14:07:02 +08:00
Zhiming Wang
d67ca8ce51
crate: bump ffmpeg-sys-next dep to 4.3.4 2020-08-09 14:02:51 +08:00
Zhiming Wang
fe6a9b3324
Add CHANGELOG.md 2020-08-09 13:59:18 +08:00
Zhiming Wang
d07530267e
format: mark Context::nb_streams as public 2020-08-09 13:58:48 +08:00
Zhiming Wang
1849a07aa6
lib: export util::error 2020-08-09 13:58:24 +08:00
Zhiming Wang
c9d223e8fe
util::error: correct comment regarding errno reexports 2020-08-09 13:57:43 +08:00
Zhiming Wang
81e142c6b7
util: introduce new Error variant Error:Other { errno }
Do not hide all the POSIX error codes behind a useless Error::Unknown.

Fixes #24.
2020-08-08 23:16:09 +08:00
Zhiming Wang
5affb85148
codec: fix signature of Packet::write_interleaved
av_interleaved_write_frame never returns 1, so bool makes no sense:
https://github.com/FFmpeg/FFmpeg/blob/n4.3.1/libavformat/avformat.h#L2592-L2635

Fixes #25.
2020-08-08 22:48:01 +08:00
Zhiming Wang
f15408ccef
crate: drop ffmpeg43 from default features
Following the deprecation plan (now that master branch has been bumped to
v4.4).
2020-08-08 01:33:37 +08:00
Zhiming Wang
61024149b5
README: explain versioning differences from semver 2020-08-08 01:24:01 +08:00
Zhiming Wang
6f44fb79fd
codec: deprecate encoder's encode/flush and decoder's decode 2020-08-08 01:16:44 +08:00
Zhiming Wang
55c8b5fa02
Bump to v4.4.0-dev to indicate breakage 2020-08-08 01:04:09 +08:00
Zhiming Wang
10a1da9486
examples/avi-to-ppm: rename to dump-frames
The old name isn't fitting since the program isn't specific to AVI at all...
2020-08-08 00:58:18 +08:00
Zhiming Wang
93b7f58ebc
examples/avi-to-ppm: reimplement with modern API
Avoid decoder.decode.
2020-08-08 00:57:44 +08:00
Zhiming Wang
e1cabad5c9
examples/transcode-audio: reimplement with modern API
Avoid encoder.encode and decoder.decode.
2020-08-08 00:55:24 +08:00
Zhiming Wang
07fe207ac2
codec: implement DerefMut for encoder::Audio and encoder::Subtitle 2020-08-08 00:38:09 +08:00
Zhiming Wang
363001febe
codec: expose modern send/receive packet/frame APIs
avcodec_encode_video2()/avcodec_decode_video2/avcodec_encode_audio2()/avcodec_decode_audio4()
have been deprecated since FFmpeg 3.1, with modern
avcodec_send_packet()/avcodec_receive_frame()/avcodec_send_frame()/avcodec_receive_packet()
as replacements.

This commit adds send_packet(), send_eof() and receive_frame() to
decoder::Opened; send_frame(), send_eof() and receive_packet() to
encoder::Encoder to expose these modern APIs.
2020-08-08 00:37:54 +08:00
Zhiming Wang
f88f1a981c
Merge branch 'kornelski/miscfixes' into master
Closes #26.
2020-08-07 23:01:23 +08:00
Kornel Lesiński
516f8069f6
Packet setters 2020-08-07 22:43:53 +08:00
Kornel Lesiński
50e1ccaca4
Don't panic on OOM 2020-08-07 22:43:53 +08:00