Anton Khirnov
84d3ff50cd
lavc: add a libwavpack encoder wrapper
2013-06-10 21:33:48 +02:00
Anton Khirnov
799f57ac96
lavc: use AVFrame API properly in pad_last_frame().
...
This also simplifies the code.
2013-06-10 21:19:51 +02:00
Anton Khirnov
e816aaacd6
apetag: use int64_t for filesize
...
CC: libav-stable@libav.org
2013-06-04 17:20:19 +02:00
Anton Khirnov
274e134e49
avconv: check that the output format context exists before accessing it
...
Fixes a segfault in exit_program() if opening an output file fails.
2013-06-04 17:20:04 +02:00
Anton Khirnov
8b7dffc2d6
lavfi doxy: improve/extend AVFilter doxy.
2013-06-04 17:18:33 +02:00
Anton Khirnov
2d2d6a4883
lavf: add a raw WavPack muxer.
2013-05-28 18:19:19 +02:00
Anton Khirnov
88de0c7901
apetag: add support for writing APE tags
...
This will be useful in the WavPack muxer.
2013-05-28 18:19:03 +02:00
Anton Khirnov
01656fd476
matroskaenc: support muxing WavPack
2013-05-28 18:18:57 +02:00
Anton Khirnov
794ca87d2b
wvdec: split block header parsing into a separate file
...
It will be reused by other muxers and demuxers.
2013-05-28 17:47:59 +02:00
Anton Khirnov
0a1a94450a
lavf: rename wv.c to wvdec.c
...
wv.c will be used for shared wavpack functions.
2013-05-28 17:47:30 +02:00
Anton Khirnov
89806691b1
wavpack: check that all the channels were coded.
2013-05-28 17:47:24 +02:00
Anton Khirnov
eae1b8451a
wavpack: check that there aren't too many blocks per packet
2013-05-28 17:47:17 +02:00
Anton Khirnov
7d039e70a5
wavpack: extract channel information from the bitstream
...
This way we don't require the caller to parse the block header. It also
allows the channel configuration to change mid-stream.
2013-05-28 17:47:04 +02:00
Anton Khirnov
78f75b6fa4
wavpack: extract sample rate from the bitstream
...
This way we don't require the caller to parse the block header. It also
allows the sample rate to change mid-stream.
2013-05-28 17:46:03 +02:00
Anton Khirnov
9b6f47c448
matroskadec: export full wavpack blocks.
...
This allows us to get rid of demuxer-specific hacks in the decoder and
will allow streamcopy from matroska once we have a wavpack muxer.
2013-05-28 08:14:35 +02:00
Anton Khirnov
5074f4545c
wavpack demuxer: export full wavpack blocks.
...
Currently the demuxer shaves the blocks and exports only the
information that is useful to the decoder.
Exporting the blocks just as they are stored is simpler to understand
and will make remuxing wavpack easier.
2013-05-28 08:14:05 +02:00
Anton Khirnov
72dee5f40b
wavpack: don't set sample format in init.
...
We don't know whether it will be float until we look at the data.
2013-05-28 08:04:07 +02:00
Anton Khirnov
35596bd4f4
wavpack: remove a useless parameter from wavpack_decode_block().
...
The decoder always returns output if an error does not occur.
2013-05-28 08:03:57 +02:00
Anton Khirnov
d1bec4be22
wavpack: return an error on 0-sized blocks
...
Such blocks are not valid.
2013-05-28 08:03:37 +02:00
Anton Khirnov
1d177200ce
wavpack: remove a useless check.
...
Number of samples in the first block is checked to be strictly positive
earlier in wavpack_decode_frame() and number of samples in all the other
blocks is checked to be equal to the first one.
2013-05-28 08:03:24 +02:00
Anton Khirnov
0f3a0b24dd
wavpack: add an error message to a failure.
2013-05-28 08:03:13 +02:00
Anton Khirnov
474fb0c9d9
wavpack: return 0 instead of samples count from decoding functions
...
The caller never cares about the number of decoded samples, so this only
confuses the reader.
2013-05-28 08:03:02 +02:00
Anton Khirnov
528daa3990
wavpack: switch to planar output
...
This simplifies the code and makes it faster.
2013-05-28 08:01:30 +02:00
Anton Khirnov
a7ec3a9a4e
wavpack: drop redundant if/else blocks
2013-05-28 08:01:16 +02:00
Anton Khirnov
7b44c99180
wavpack: remove the subframes codec cap
...
The decoder always consumes full packets.
2013-05-28 08:01:08 +02:00
Anton Khirnov
c330eba84c
lavf: preserve side data when parsing packets.
2013-05-28 08:00:07 +02:00
Anton Khirnov
a3fc62e89e
configure: make jack depend on pthreads
2013-05-27 21:56:14 +02:00
Anton Khirnov
538bf76737
avconv: make -aspect work with streamcopy
2013-05-27 21:26:06 +02:00
Anton Khirnov
564b7e0c00
matroskadec: silently skip CodecState element.
...
mkvmerge apparrently uses it for mpeg1/2 video, but it contains the same
information as CodecPrivate, so it can be ignored.
2013-05-27 21:25:53 +02:00
Anton Khirnov
8a994b7406
vf_fade: support slice threading
2013-05-24 09:33:05 +02:00
Anton Khirnov
cb79881b49
vf_yadif: support slice threading
2013-05-24 09:32:07 +02:00
Anton Khirnov
129bb23843
lavfi: add a slice threading infrastructure
...
Mostly based on libavcodec's
2013-05-24 09:28:18 +02:00
Anton Khirnov
2a6eaeaa85
Move get_logical_cpus() from lavc/pthread to lavu/cpu.
...
It will be useful in lavfi, and could conceivably be useful to the user
applications as well.
2013-05-24 09:28:00 +02:00
Anton Khirnov
90f9a5830b
w32pthreads: move from lavc to compat/
...
It will be used in other places than lavc.
2013-05-24 09:26:54 +02:00
Anton Khirnov
e69222c507
doxy: enable TYPEDEF_HIDES_STRUCT
...
This means that typedef struct SomeStruct {...} SomeStruct will only be
documented as SomeStruct in the doxy, without a pointless entry in the
typedefs list.
2013-05-24 09:12:00 +02:00
Anton Khirnov
f36d7831d9
pixdesc: mark gray8 as pseudopal
...
Many functions treat it as such already.
Fixes Bug 499.
CC:libav-stable@libav.org
2013-05-22 21:18:08 +02:00
Anton Khirnov
7e2b15c094
avfilter: check a malloc in avfilter_link().
...
Additionally change sizeof(type) into sizeof(var)
2013-05-17 20:32:27 +02:00
Anton Khirnov
bf5b5d2b15
avfilter.c: cosmetics, reformat
2013-05-17 20:32:18 +02:00
Anton Khirnov
d79bd60405
lavfi: factorize freeing a link
2013-05-17 20:30:25 +02:00
Anton Khirnov
1dd3561143
vf_format: do not use the AVFilterFormats internals.
...
Use the formats.h API instead.
2013-05-17 20:30:17 +02:00
Anton Khirnov
c5ab6088ad
af_aformat: cosmetics, fix indentation
2013-05-17 20:30:02 +02:00
Anton Khirnov
b01f6041f4
lavfi: rename AVFilterFormats.format_count to nb_formats
...
This is more consistent with naming in the rest of Libav.
2013-05-17 20:29:50 +02:00
Anton Khirnov
e27f4b7cbf
doxy: don't sort struct members alphabetically
...
The declaration order is more meanigful in most cases.
2013-05-17 20:27:52 +02:00
Anton Khirnov
006ec64877
lavr doxy: add version.h to the lavr group
2013-05-17 20:27:48 +02:00
Anton Khirnov
f0cebf51dd
lavc doxy: add avcodec.h to the libavcodec group.
2013-05-17 20:27:38 +02:00
Anton Khirnov
40020e171a
doxy: add a section about versioning.
2013-05-17 20:26:18 +02:00
Anton Khirnov
bc8c1cdc7b
lavfi doxy: add a page for lavfi.
2013-05-17 20:26:11 +02:00
Anton Khirnov
db8e336e5f
pthread: reindent
2013-05-17 07:44:50 +02:00
Anton Khirnov
30e256430e
lavc/pthread: remove obsolete checks
...
Those were useful when avcodec_thread_init() was a public functions. It
was deprecated and removed some time ago, so those checks are not needed
anymore.
2013-05-17 07:44:40 +02:00
Anton Khirnov
16a645adeb
vf_pixdesctest: make config_props work properly when called multiple times.
2013-05-17 07:44:23 +02:00
Anton Khirnov
3ba35a346c
vf_hqdn3d: make config_props work properly when called multiple times.
...
Do not leak all the temp buffers.
2013-05-17 07:44:12 +02:00
Anton Khirnov
3fb29588a2
vf_drawtext: don't leak the expressions.
2013-05-17 07:44:04 +02:00
Anton Khirnov
6592cd22a2
vf_crop: make config_props work properly when called multiple times.
...
Do not leak the x/y expressions.
2013-05-17 07:43:57 +02:00
Anton Khirnov
d5c66d9c56
vf_setdar: make config_props work properly when called multiple times.
...
Do not overwrite the variable set through AVOptions.
2013-05-17 07:43:44 +02:00
Anton Khirnov
4c205f42c8
vf_drawbox: make config_props work properly when called multiple times.
...
Do not overwrite the variables set through AVOptions.
2013-05-17 07:43:17 +02:00
Anton Khirnov
90d9a2a04c
vf_drawtext: do not reset the frame number in config_input.
...
Frame number should be incremented normally even if the link properties
change.
2013-05-17 07:43:07 +02:00
Anton Khirnov
7727be79d1
vf_fps: move initializing pts from config_props to init.
...
It should not be reinitialized if the link properties change.
2013-05-17 07:42:55 +02:00
Anton Khirnov
d371c3c2e2
vf_frei0r: make config_props work properly when called multiple times.
...
Do not leak the initialized filter instance.
2013-05-17 07:42:46 +02:00
Anton Khirnov
87c31cfd7a
vf_gradfun: make config_props work properly when called multiple times.
2013-05-17 07:42:39 +02:00
Anton Khirnov
b06848f4de
vf_lut: make config_props work properly when called multiple times.
...
Do not leak the expressions.
2013-05-17 07:42:28 +02:00
Anton Khirnov
3062ac4c47
vf_pad: use the name 's' for the pointer to the private context
...
This is shorter and consistent across filters.
2013-05-16 07:36:10 +02:00
Anton Khirnov
a70519aad1
vf_overlay: use the name 's' for the pointer to the private context
...
This is shorter and consistent across filters.
2013-05-16 07:36:04 +02:00
Anton Khirnov
8d2565c28b
vf_lut: use the name 's' for the pointer to the private context
...
This is shorter and consistent across filters.
2013-05-16 07:35:59 +02:00
Anton Khirnov
4753f802c0
vf_libopencv: use the name 's' for the pointer to the private context
...
This is shorter and consistent across filters.
2013-05-16 07:35:53 +02:00
Anton Khirnov
56e4ce0d13
vf_hqdn3d: use the name 's' for the pointer to the private context
...
This is shorter and consistent across filters.
2013-05-16 07:35:48 +02:00
Anton Khirnov
7af5ae2d07
vf_hflip: use the name 's' for the pointer to the private context
...
This is shorter and consistent across filters.
2013-05-16 07:33:38 +02:00
Anton Khirnov
05fab5530b
vf_gradfun: use the name 's' for the pointer to the private context
...
This is shorter and consistent across filters.
2013-05-16 07:33:29 +02:00
Anton Khirnov
f6b6d6ac42
vf_frei0r: use the name 's' for the pointer to the private context
...
This is shorter and consistent across filters.
2013-05-16 07:33:23 +02:00
Anton Khirnov
cbec213a90
vf_format: use the name 's' for the pointer to the private context
...
This is shorter and consistent across filters.
2013-05-16 07:33:17 +02:00
Anton Khirnov
d64cf54b34
vf_fieldorder: use the name 's' for the pointer to the private context
...
This is shorter and consistent across filters.
2013-05-16 07:33:07 +02:00
Anton Khirnov
9bbf6c681a
vf_fieldorder: cosmetics, remove an extra linebreak
2013-05-16 07:32:49 +02:00
Anton Khirnov
c0279956b3
vf_fade: use the name 's' for the pointer to the private context
...
This is shorter and consistent across filters.
2013-05-16 07:32:43 +02:00
Anton Khirnov
d3735f7ad6
vf_drawtext: use the name 's' for the pointer to the private context
...
This is shorter and consistent across filters.
2013-05-16 07:32:34 +02:00
Anton Khirnov
20e2794eea
vf_drawbox: use the name 's' for the pointer to the private context
...
This is shorter and consistent across filters.
2013-05-16 07:32:27 +02:00
Anton Khirnov
ba09675f44
vf_delogo: use the name 's' for the pointer to the private context
...
This is shorter and consistent across filters.
2013-05-16 07:31:57 +02:00
Anton Khirnov
e16e23d70e
vf_cropdetect: use the name 's' for the pointer to the private context
...
This is shorter and consistent across filters.
2013-05-16 07:31:50 +02:00
Anton Khirnov
671563d9fd
vf_crop: cosmetics, break lines
2013-05-16 07:31:31 +02:00
Anton Khirnov
7f83959598
vf_crop: use the name 's' for the pointer to the private context
...
This is shorter and consistent across filters.
2013-05-16 07:31:11 +02:00
Anton Khirnov
762df56ef9
vf_boxblur: use the name 's' for the pointer to the private context
...
This is shorter and consistent across filters.
2013-05-16 07:30:56 +02:00
Anton Khirnov
a2a696990c
vf_blackframe: use the name 's' for the pointer to the private context
...
This is shorter and consistent across filters.
2013-05-16 07:30:41 +02:00
Anton Khirnov
b3ea76624a
vf_aspect: use the name 's' for the pointer to the private context
...
This is shorter and consistent across filters.
2013-05-16 07:30:28 +02:00
Anton Khirnov
e6c4ac7b5f
pixdesc: rename PIX_FMT_* flags to AV_PIX_FMT_FLAG_*
2013-05-15 07:46:51 +02:00
Anton Khirnov
7c57a582a0
jpeg2000dec: don't use deprecated PIX_FMT values
2013-05-15 07:46:39 +02:00
Anton Khirnov
ffba2053ed
lavfi: fix compatibility code for old vf_scale options syntax
...
Currently it would incorrectly trigger on a string that contains a '='
but does not contain a ':', e.g. flags=<flags>.
2013-05-15 07:46:04 +02:00
Anton Khirnov
096696ef0d
avfiltergraph: simplify inserting conversion filters.
...
There is now no need to explicitly pass 0:0 as width/height to scale,
those are the defaults.
2013-05-15 07:45:51 +02:00
Anton Khirnov
16a4a18db0
af_asyncts: fix offset calculation
...
delta is in samples, not bytes. Also the sample format is not guaranteed
to be planar.
CC:libav-stable@libav.org
2013-05-10 09:31:27 +02:00
Anton Khirnov
cd4bfe3a50
FATE: use a less ambiguous end time for filter-trim-time test
...
0.1 seconds at 25 fps is exactly 2.5 frames, which may be rounded either
to 2 or 3 on different platforms.
2013-05-07 12:33:13 +02:00
Anton Khirnov
9779f93066
configure: add dependencies to lavfi .pc file
...
The scale filter depends on sws, resample on lavr, and movie on lavf and
lavc.
Fixes Bug 502.
2013-05-07 12:32:14 +02:00
Anton Khirnov
bce70f8170
configure: make avconv select (a)trim filters
...
They are now used for -ss/-t
2013-05-07 12:32:03 +02:00
Anton Khirnov
481575d255
avconv: remove -deinterlace
...
It is incompatible with refcounted frames and since it's been deprecated
for a long time now, fixing it is not worth the effort.
2013-05-07 12:31:55 +02:00
Anton Khirnov
a97d8cc16e
indeo3: use unaligned reads on reference blocks.
...
They are not guaranteed to be aligned.
Fixes Bug 503.
CC:libav-stable@libav.org
2013-05-07 12:29:56 +02:00
Anton Khirnov
76d23f4031
avconv: do not send non-monotonous DTS to the muxers.
...
Hack partially based on a commit by Michael Niedermayer <michaelni@gmx.at >
Should fix (or work around) bug 458.
2013-05-03 09:59:48 +02:00
Anton Khirnov
b4a5a29227
avconv: improve -re implementation
...
Integrate the code in the packet reading function, instead of inserting
sleeps in many places.
This is simpler to follow and should work better.
2013-05-03 09:57:13 +02:00
Anton Khirnov
e3b225a4fe
matroskaenc: add an option to put the index at the start of the file
2013-05-03 08:32:35 +02:00
Anton Khirnov
0574bc06d2
matroskaenc: cosmetics, reorder the #includes
2013-05-03 08:26:55 +02:00
Anton Khirnov
b333f3a22a
lavf-regression: use -frames instead of -t for image tests
...
-t 0.5 is 12.5 frames at 25 fps, which may round to either 12 or 13 on
different platforms.
2013-05-03 08:07:45 +02:00
Anton Khirnov
803d21f38b
lavc: schedule AVCodecContext.lowres for removal on next bump.
...
It has been deprecated some time ago, but was forgotten during the last
bump.
2013-05-03 08:07:35 +02:00
Anton Khirnov
8cd472d3f9
avconv: make output -ss insert trim/atrim filters.
...
This makes output -ss sample-accurate for audio and will allow further
simplication in the future.
2013-04-30 12:00:55 +02:00
Anton Khirnov
a83c0da539
avconv: make -t insert trim/atrim filters.
...
This makes -t sample-accurate for audio and will allow further
simplication in the future.
Most of the FATE changes are due to audio now being sample accurate. In
some cases a video frame was incorrectly passed with the old code, while
its was over the limit.
2013-04-30 11:53:12 +02:00
Anton Khirnov
3d62442008
avconv_opt: allocate an OutputFile before the streams.
...
This way OutputFile variables like recording time can be used when
creating the streams.
2013-04-30 11:48:23 +02:00