If free amix input with INPUT_ON|INPUT_EOF|INPUT state, samples left in
AVFilterLink will not be consumed leading to EOF sync pending. Drain
link samples to improve.
Signed-off-by: wurui3 <wurui3@xiaomi.com>
This avoids undefined behavior when -fshort-enums is enabled, where accessing enum arrays through int pointers causes incorrect memory reads.
Signed-off-by: niyinghao <niyinghao@xiaomi.com>
Previously, the pkt_size option only affected write buffering in the file
protocol. This change extends its effect to read mode as well.
On embedded systems with limited RAM, users can now reduce I/O buffer
memory by setting a smaller pkt_size.
Signed-off-by: caifan3 <caifan3@xiaomi.com>
Add a "pkt_size" AVOption to the Unix domain socket protocol. This option
allows the user to specify the maximum packet size for packet-oriented
sockets (SOCK_DGRAM and SOCK_SEQPACKET).
Signed-off-by: caifan3 <caifan3@xiaomi.com>
This option allows the user to specify the maximum packet size for packet-oriented
sockets (SOCK_DGRAM and SOCK_SEQPACKET).
For SOCK_STREAM, it sets the I/O buffer size to reduce memory usage.
Signed-off-by: caifan3 <caifan3@xiaomi.com>
Suppose that, there are two inputs, the first's link state is AVERROR_EOF with no samples left neither in link or fifo, the second's link state is 0 and with let samples bigger than mix_size, the ff_amix_input_want will return false in both inputs result in failing to trigger the pipeline.
Signed-off-by: wurui3 <wurui3@xiaomi.com>
fmpeg/libavformat/cache.c:130:52: warning: format '%lld' expects argument of type 'long long int', but argument 6 has type 'int64_t' {aka 'long int'} [-Wformat=]
130 | av_log(h, AV_LOG_INFO, "%s end ret %d bytes %lld %lldbps\n", __func__, ret, offset, bps);
| ~~~^ ~~~~~~
| | |
| long long int int64_t {aka long int}
| %ld
ffmpeg/libavformat/cache.c:130:57: warning: format '%lld' expects argument of type 'long long int', but argument 7 has type 'int64_t' {aka 'long int'} [-Wformat=]
130 | av_log(h, AV_LOG_INFO, "%s end ret %d bytes %lld %lldbps\n", __func__, ret, offset, bps);
| ~~~^ ~~~
| | |
| long long int int64_t {aka long int}
| %ld
ffmpeg/libavformat/cache.c: In function 'add_entry':
ffmpeg/libavformat/cache.c:200:66: warning: format '%lld' expects argument of type 'long long int', but argument 4 has type 'int64_t' {aka 'long int'} [-Wformat=]
200 | av_log(h, AV_LOG_ERROR, "Failed to seek in cache, ret %lld errno %d\n", pos, errno);
| ~~~^ ~~~
| | |
| long long int int64_t {aka long int}
| %ld
Signed-off-by: yangsen5 <yangsen5@xiaomi.com>
_url_close does't called when init_input failed in avformat_open_input.
Signed-off-by: qiaohaijiao1 <qiaohaijiao1@xiaomi.com>
Signed-off-by: qiaohaijiao1 <qiaohaijiao1@xiaomi.com>
Tinycomprsrc_callback might be called in compress_close if a AUDIO_MSG_COMPLETE msg is
received during compress_stop. Move state judge into activate func and directly return if MSG we dont care arrives.
Signed-off-by: wurui3 <wurui3@xiaomi.com>
\x1b[1m\x1b[31m==3277822==ERROR: AddressSanitizer: SEGV on unknown address
0x00000000 (pc 0x00000000 bp 0xf1d69458 sp 0xf1d6936c T0)
\x1b[1m\x1b[0m==3277822==Hint: pc points to the zero page.
==3277822==The signal is caused by a READ memory access.
==3277822==Hint: address points to the zero page.
Signed-off-by: zhaozhenghang <zhaozhenghang@xiaomi.com>
start capture between 2 filters: target=src, cmd="dump_raw_start", arg=dst;
stop capture between 2 filters: target=src, cmd="dump_raw_stop", arg=dst;
start capture all from a filter: target=src, cmd="dump_raw_start", arg=(NULL);
stop capture all from a filter: target=src, cmd="dump_raw_stop", arg=(NULL);
for plane format, number of dump files equal to number of channels.
file names has format like:
"srcname-dstname-number.pcm".
Signed-off-by: jihandong <jihandong@xiaomi.com>
Signed-off-by: fangyibo <fangyibo@xiaomi.com>