I've been working on making chromium work with system (unmodified and installed) ffmpeg, and there is some code currently using internal-only API, which is not available in that case:
https://chromium.googlesource.com/chromium/src/+/a6912725c190eebf472d78a44d8fd247751e9a07/media/filters/ffmpeg_demuxer.cc#1188 Do you have suggestions what could be done to do what above code is doing without need to access the internal parts? For convenience, I'm also pasting the snippet of code below: const AVFormatInternal* internal = format_context->internal; if (internal && internal->packet_buffer && format_context->start_time != static_cast<int64_t>(AV_NOPTS_VALUE)) { struct AVPacketList* packet_buffer = internal->packet_buffer; while (packet_buffer != internal->packet_buffer_end) { DCHECK_LT(static_cast<size_t>(packet_buffer->pkt.stream_index), start_time_estimates.size()); const AVStream* stream = format_context->streams[packet_buffer->pkt.stream_index]; if (packet_buffer->pkt.pts != static_cast<int64_t>(AV_NOPTS_VALUE)) { const base::TimeDelta packet_pts = ConvertFromTimeBase(stream->time_base, packet_buffer->pkt.pts); if (packet_pts < start_time_estimates[stream->index]) start_time_estimates[stream->index] = packet_pts; } packet_buffer = packet_buffer->next; } } Paweł -- Paweł Hajdan, Jr. | Software Engineer | phaj...@google.com Google Poland sp. z o.o. ul. Emilii Plater 53, 00-113 Warszawa Sąd Rejonowy dla m. st. Warszawy w Warszawie, XII Wydział Gospodarczy Krajowego Rejestru Sądowego, KRS 0000240611. NIP: 525-23-44-078, Kapitał zakładowy Spółki 400 000, 00 zł. _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel