- 09 Jan, 2013 24 commits
-
-
Justin Ruggles authored
chunk_size is unsigned 32-bit, but av_get_packet() takes a signed int as the packet size.
-
Justin Ruggles authored
Also, do not allow seek-by-byte, as there is no way to find the next packet boundary.
-
Justin Ruggles authored
-
Justin Ruggles authored
Also, use 1 / sample_rate for audio stream time_base.
-
Justin Ruggles authored
-
Justin Ruggles authored
-
Justin Ruggles authored
Avoids using unsupported parameters and signed integer overflows.
-
Justin Ruggles authored
-
Daniel Kang authored
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
-
Justin Ruggles authored
-
Justin Ruggles authored
-
Justin Ruggles authored
-
Justin Ruggles authored
-
Justin Ruggles authored
-
Justin Ruggles authored
-
Justin Ruggles authored
-
Justin Ruggles authored
Also do not unnecessarily skip 0 bytes.
-
Justin Ruggles authored
Nothing in the AU specification sets a limit on channel count. We only need to avoid an overflow in the packet size calculation.
-
Justin Ruggles authored
It is already set by av_get_packet() even for partial reads.
-
Justin Ruggles authored
-
Justin Ruggles authored
-
Justin Ruggles authored
-
Martin Storsjö authored
This allows the caller to either include them (and get more packets decoded, but possibly some nonperfect frames), or discard them (by setting fflags=discardcorrupt). Signed-off-by: Martin Storsjö <martin@martin.st>
-
Alexandra Khirnova authored
Signed-off-by: Diego Biurrun <diego@biurrun.de>
-
- 08 Jan, 2013 16 commits
-
-
Justin Ruggles authored
This uses page duration instead of byte size to determine when to buffer the page. Also, it tries to avoid continued pages by buffering the current page if there are already packets in the page and adding the next packet would require it to be continued on a new page. This can improve seeking performance. The default page duration is 1 second, which is much saner than filling all page segments by default.
-
Justin Ruggles authored
-
Justin Ruggles authored
-
Justin Ruggles authored
-
Martin Storsjö authored
Signed-off-by: Martin Storsjö <martin@martin.st>
-
Martin Storsjö authored
This sends NACK for missed packets and PLI (picture loss indication) if a depacketizer indicates that it needs a new keyframe, according to RFC 4585. This is only enabled if the SDP indicated that feedback is supported (via the AVPF or SAVPF profile names). The feedback packets are throttled to a certain maximum interval (currently 250 ms) to make sure the feedback packets don't eat up too much bandwidth (which might be counterproductive). The RFC specifies a more elaborate feedback packet scheduling. The feedback packets are currently sent independently from normal RTCP RR packets, which is not totally spec compliant, but works fine in the environments I've tested it in. (RFC 5506 allows this, but requires a SDP attribute for enabling it.) Signed-off-by: Martin Storsjö <martin@martin.st>
-
Martin Storsjö authored
This allows calling other dynamic payload handler functions if needed. Signed-off-by: Martin Storsjö <martin@martin.st>
-
Martin Storsjö authored
The warning is a false positive, but I prefer actually initializing it over masking it with av_uninit, since the code is not performance critical. Signed-off-by: Martin Storsjö <martin@martin.st>
-
Martin Storsjö authored
This is a bug from c7d4de3d - if the previous frame wasn't returned yet (due to missing the final packets), but we have enough data of it to return the first partition, we write that into pkt and set returned_old_frame. That commit forgot returning 0 for the case where this current packet didn't have the end_packet flag set. Signed-off-by: Martin Storsjö <martin@martin.st>
-
Martin Storsjö authored
Signed-off-by: Martin Storsjö <martin@martin.st>
-
Kanglin authored
Signed-off-by: Martin Storsjö <martin@martin.st>
-
Martin Storsjö authored
Signed-off-by: Martin Storsjö <martin@martin.st>
-
Martin Storsjö authored
If we timed out and consumed a packet from the reordering queue, but didn't return a packet to the caller, recheck the queue status. Otherwise, we could end up in an infinite loop, trying to consume a queued packet that has already been consumed. CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
-
Justin Ruggles authored
-
Justin Ruggles authored
If the matrix results in an output channel not getting a contribution from any input channel and the corresponding input channel does not contribute to any outputs, we can skip the channel during mixing and silence it after mixing. If the matrix results in an input channel not contributing to any output channels and it is not in the output mix, or if the input channel only contributes fully to the same output channel, we can skip the channel during mixing. If the matrix results in an output channel only getting full contribution from the corresponding input channel and that input channel does not contribute to any other output channels, we can skip the channel during mixing.
-
Justin Ruggles authored
-