| 579 | } |
| 580 | |
| 581 | static void |
| 582 | ffmpeg_decode(DecoderClient &client, InputStream &input) |
| 583 | { |
| 584 | AvioStream stream(&client, input); |
| 585 | if (!stream.Open()) { |
| 586 | LogError(ffmpeg_domain, "Failed to open stream"); |
| 587 | return; |
| 588 | } |
| 589 | |
| 590 | auto format_context = |
| 591 | FfmpegOpenInput(stream.io, input.GetURI(), nullptr); |
| 592 | |
| 593 | const auto *input_format = format_context->iformat; |
| 594 | if (input_format->long_name == nullptr) |
| 595 | FmtDebug(ffmpeg_domain, "detected input format {:?}", |
| 596 | input_format->name); |
| 597 | else |
| 598 | FmtDebug(ffmpeg_domain, "detected input format {:?} ({:?})", |
| 599 | input_format->name, input_format->long_name); |
| 600 | |
| 601 | FfmpegDecode(client, &input, *format_context); |
| 602 | } |
| 603 | |
| 604 | static bool |
| 605 | FfmpegScanStream(AVFormatContext &format_context, TagHandler &handler) |
nothing calls this directly
no test coverage detected