Am 21.03.15 um 18:45 schrieb Thilo Borgmann: > Am 18.03.15 um 09:37 schrieb Matthieu Bouron: >> On Fri, Mar 13, 2015 at 8:16 PM, <matthieu.bou...@gmail.com> wrote: >> >>> From: Matthieu Bouron <matthieu.bou...@gmail.com> >>> >>> --- >>> libavdevice/avfoundation.m | 21 +++++++++++++++------ >>> 1 file changed, 15 insertions(+), 6 deletions(-) >>> >>> diff --git a/libavdevice/avfoundation.m b/libavdevice/avfoundation.m >>> index 8112229..5bcd6a4 100644 >>> --- a/libavdevice/avfoundation.m >>> +++ b/libavdevice/avfoundation.m >>> @@ -881,9 +881,14 @@ static int avf_read_packet(AVFormatContext *s, >>> AVPacket *pkt) >>> return AVERROR(EIO); >>> } >>> >>> - pkt->pts = pkt->dts = av_rescale_q(av_gettime() - >>> ctx->first_pts, >>> - AV_TIME_BASE_Q, >>> - avf_time_base_q); >>> + CMItemCount count; >>> + CMSampleTimingInfo timing_info; >>> + >>> + if >>> (CMSampleBufferGetOutputSampleTimingInfoArray(ctx->current_frame, 1, >>> &timing_info, &count) == noErr) { >>> + AVRational timebase_q = av_make_q(1, >>> timing_info.presentationTimeStamp.timescale); >>> + pkt->pts = pkt->dts = >>> av_rescale_q(timing_info.presentationTimeStamp.value, timebase_q, >>> avf_time_base_q); >>> + } >>> + >>> pkt->stream_index = ctx->video_stream_index; >>> pkt->flags |= AV_PKT_FLAG_KEY; >>> >>> @@ -911,9 +916,13 @@ static int avf_read_packet(AVFormatContext *s, >>> AVPacket *pkt) >>> return AVERROR(EIO); >>> } >>> >>> - pkt->pts = pkt->dts = av_rescale_q(av_gettime() - >>> ctx->first_audio_pts, >>> - AV_TIME_BASE_Q, >>> - avf_time_base_q); >>> + CMItemCount count; >>> + CMSampleTimingInfo timing_info; >>> + >>> + if >>> (CMSampleBufferGetOutputSampleTimingInfoArray(ctx->current_audio_frame, 1, >>> &timing_info, &count) == noErr) { >>> + AVRational timebase_q = av_make_q(1, >>> timing_info.presentationTimeStamp.timescale); >>> + pkt->pts = pkt->dts = >>> av_rescale_q(timing_info.presentationTimeStamp.value, timebase_q, >>> avf_time_base_q); >>> + } >>> >>> pkt->stream_index = ctx->audio_stream_index; >>> pkt->flags |= AV_PKT_FLAG_KEY; >>> -- >>> 2.3.2 >>> >>> >> ping > > Ok if tested.
Please apply. Thanks, Thilo _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel