MCPcopy Create free account
hub / github.com/WiVRn/WiVRn / supported_codecs

Method supported_codecs

client/decoder/android/android_decoder.cpp:569–589  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

567}
568
569void decoder::supported_codecs(std::vector<wivrn::video_codec> & result)
570{
571 // Make sure we update this code when codecs are changed
572 static_assert(magic_enum::enum_count<wivrn::video_codec>() == 4);
573
574 // In order or preference, from preferred to least preferred
575 for (auto codec: {
576 wivrn::video_codec::av1,
577 wivrn::video_codec::h265,
578 wivrn::video_codec::h264,
579 })
580 {
581 AMediaCodec_ptr media_codec(AMediaCodec_createDecoderByType(mime(codec)));
582
583 bool supported = media_codec and hardware_accelerated(media_codec.get());
584 if (supported)
585 result.push_back(codec);
586
587 spdlog::info("video codec {}: {}supported", magic_enum::enum_name(codec), supported ? "" : "NOT ");
588 }
589}
590
591} // namespace wivrn::android

Callers

nothing calls this directly

Calls 5

mimeFunction · 0.85
hardware_acceleratedFunction · 0.85
enum_nameFunction · 0.85
getMethod · 0.45
push_backMethod · 0.45

Tested by

no test coverage detected