The solution to the first two problems you listed would be a simple mapping between both
the MIME type and a rpm package name just under the existing GStreamer API. Implementing
that should be quite simple. With a bit of additional logic, the problem number 3 may be
solved too.
- PackageKit's plugin installation helper would need to be fixed
to match what the API requires
That would be needed anyway, imho.
Some more comments from my side:
1. Many people have RPMFusion repositories enabled because you will need them for other
applications too. Video support in Firefox or your favorite audio player requires
RPMFusion too. (totem is not meant to take that role and thus is unusable for anything
more advanced than playing single files or short list of files).
2. Flathub is a website with fancy "Install" buttons. In the windows world,
users have been told never to use these buttons because they often contain malware.
Forcing people to use flathub will un-train user security which might backlash once there
is malware for linux. Installing software (on both Linux and Windows) is a task which
needs to be done by an educated user, not by someone who does not know which software
source to trust.
3. Still the old criticism: Flatpak applications have gigantic overhead. Will you be
providing several hundreds of megabytes of updates for each and every update in each and
every dependency? If you do, you'll loose users with slower than fibre-connected
internet will not get updates. If you don't, people will have unpatched security bugs
in totem. Also, debugging flatpak applications is quite hard, same for automated crash
reporting.