On 08/21/2016 02:57 PM, Michael Niedermayer wrote:
On Tue, Aug 09, 2016 at 02:00:24PM +0200, sebechlebsky...@gmail.com wrote:
[...]
@@ -506,13 +481,32 @@ static int tee_write_packet(AVFormatContext *avf, AVPacket *pkt)
av_packet_rescale_ts(&pkt2, tb, tb2);
pkt2.stream_index = s2;
- if ((ret = av_apply_bitstream_filters(avf2->streams[s2]->codec, &pkt2,
- tee->slaves[i].bsfs[s2])) < 0 ||
- (ret = av_interleaved_write_frame(avf2, &pkt2)) < 0) {
+ ret = av_bsf_send_packet(tee->slaves[i].bsfs[s2], &pkt2);
+ if (ret < 0) {
+ av_log(avf, AV_LOG_ERROR, "Error while sending packet to bitstream
filter: %s\n",
+ av_err2str(ret));
ret = tee_process_slave_failure(avf, i, ret);
if (!ret_all && ret < 0)
ret_all = ret;
}
+
+ do {
+ ret = av_bsf_receive_packet(tee->slaves[i].bsfs[s2], &pkt2);
+ if (ret < 0)
+ break;
+
+ av_packet_rescale_ts(&pkt2, tb, tb2);
are the timestamps rescaled twice ?
is that intended ?
This is a mistake, sorry for that and thanks for noticing. I'll send
fixed patch.
Regards,
Jan
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel