Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

mimetypes does not support webm type #60533

Closed
giampaolo opened this issue Oct 26, 2012 · 17 comments
Closed

mimetypes does not support webm type #60533

giampaolo opened this issue Oct 26, 2012 · 17 comments
Labels
stdlib Python modules in the Lib dir type-feature A feature request or enhancement

Comments

@giampaolo
Copy link
Contributor

BPO 16329
Nosy @terryjreedy, @jcea, @giampaolo, @ezio-melotti, @bitdancer, @berkerpeksag, @JimJJewett
Files
  • webm.diff
  • Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.

    Show more details

    GitHub fields:

    assignee = None
    closed_at = <Date 2016-04-09.05:19:25.201>
    created_at = <Date 2012-10-26.13:34:58.461>
    labels = ['type-feature', 'library']
    title = 'mimetypes does not support webm type'
    updated_at = <Date 2016-04-09.05:19:25.198>
    user = 'https://github.com/giampaolo'

    bugs.python.org fields:

    activity = <Date 2016-04-09.05:19:25.198>
    actor = 'berker.peksag'
    assignee = 'none'
    closed = True
    closed_date = <Date 2016-04-09.05:19:25.201>
    closer = 'berker.peksag'
    components = ['Library (Lib)']
    creation = <Date 2012-10-26.13:34:58.461>
    creator = 'giampaolo.rodola'
    dependencies = []
    files = ['27728']
    hgrepos = []
    issue_num = 16329
    keywords = ['patch']
    message_count = 17.0
    messages = ['173843', '173844', '173845', '173846', '173847', '173997', '174055', '213990', '232088', '232090', '232095', '232096', '232097', '232098', '263064', '263065', '263068']
    nosy_count = 9.0
    nosy_names = ['terry.reedy', 'jcea', 'giampaolo.rodola', 'ezio.melotti', 'r.david.murray', 'cvrebert', 'python-dev', 'berker.peksag', 'Jim.Jewett']
    pr_nums = []
    priority = 'normal'
    resolution = 'fixed'
    stage = 'resolved'
    status = 'closed'
    superseder = None
    type = 'enhancement'
    url = 'https://bugs.python.org/issue16329'
    versions = ['Python 2.7', 'Python 3.5', 'Python 3.6']

    @giampaolo
    Copy link
    Contributor Author

    @giampaolo giampaolo added the stdlib Python modules in the Lib dir label Oct 26, 2012
    @giampaolo
    Copy link
    Contributor Author

    (patch in attachment)

    @jcea
    Copy link
    Member

    jcea commented Oct 26, 2012

    How do we know if the "webm" file is video+audio or audio only?. Mimetypes are different. :-?

    @giampaolo
    Copy link
    Contributor Author

    I'd say we can't but I suppose the same problem might exist for other mime types as well.
    Given that we can't inspect file content the only choice we have is either decide to not support a certain mime type or assume the most common scenario, which in case of webm is "video".

    @bitdancer
    Copy link
    Member

    I suppose this is a flaw in the mimetype API. At some point perhaps we should fix it, but in the meantime....does anyone have a pointer to an actual IANA submission for this mime type? I think we can probably no longer wait for official IANA approval, but it would be nice to have some sort of documentation that a given type is more than just in de-facto existence.

    @cvrebert
    Copy link
    Mannequin

    cvrebert mannequin commented Oct 28, 2012

    AFAICT, there is currently no entry for WebM in IANA's registry (http://www.iana.org/assignments/media-types/index.html ).
    A bug in WebM's tracker regarding its MIME type(s) was closed over a year ago as WONTFIX (http://code.google.com/p/webm/issues/detail?id=15 ).

    Giampaolo has already pointed out the relevant part of the WebM spec. WebM itself has no RFCs (there are 2 relating to VP8, its video codec, but they don't have anything that's relevant here).

    To independently corroborate the existence of the MIME type, we have the following:

    Mozilla, Microsoft, and Opera all acknowledge the MIME type in question:
    https://developer.mozilla.org/en-US/docs/Media_formats_supported_by_the_audio_and_video_elements
    http://msdn.microsoft.com/en-us/library/ff975073%28v=VS.85%29.aspx
    http://dev.opera.com/articles/view/opera-supports-webm-video/

    The de-facto *nix MIME type database/package maintained by freedesktop.org includes it:
    http://cgit.freedesktop.org/xdg/shared-mime-info/tree/NEWS?id=391ae76f6a2f3af93406ac31bc8735695f41d07d#n92

    @bitdancer
    Copy link
    Member

    Interesting. So we have two choices: leave it to the platform mime types file to define because it is not even on track to be an official IANA standard, or include it with a comment that it is a de-facto standard.

    The question, I guess, is how fluid the definition is likely to be. It doesn't seem like the filetype mapping for the existing definitions is going to change, and since we don't (currently) have content-detection of any sort, the impact of a change in the definitions to users of our code seems minimal. So I guess I'd be OK with adding it as a de-facto standard, though I'm not entirely comfortable with it. But that would represent a change in policy, so others may want to weigh in.

    @cvrebert
    Copy link
    Mannequin

    cvrebert mannequin commented Mar 18, 2014

    So, nobody seems to have cared enough about the policy change to weigh in during the intervening year and ~3mos...

    @jimjjewett
    Copy link
    Mannequin

    jimjjewett mannequin commented Dec 3, 2014

    I interpreted Issue 15's closure as being about the distinction between Application/webm vs Video/webm, etc.

    As far as I understand it, the python stdlib doesn't actually care what the major Mime type is, or, frankly, even whether the definition makes sense. We just want Video/webm to be registered.

    I have created issue 886 on the webm site at
    https://code.google.com/p/webm/issues/detail?id=886&can=4&colspec=ID%20Pri%20mstone%20ReleaseBlock%20Type%20Component%20Status%20Owner%20Summary

    Anyone with more detail (e.g., do we need to define Application/webm as well as Video/webm ... do we care what the definition is ... etc ...) is encouraged to chime in.

    @cvrebert
    Copy link
    Mannequin

    cvrebert mannequin commented Dec 3, 2014

    WebM's docs use "video/webm" and never use an "application/*" type.
    See http://www.webmproject.org/docs/container/

    They also specify "audio/webm" for audio-only content, but both use the same file extension, so associating ".webm" with "video/webm" seems quite reasonable since it's more general (an audio-only file is just a degenerate case of an audiovideo file).

    @terryjreedy
    Copy link
    Member

    Antoine Pitrou and Ethan Furman agreed on pydev that this should be applied. Chris, is the existing patch exactly what you think is needed?

    @terryjreedy terryjreedy added the type-feature A feature request or enhancement label Dec 3, 2014
    @terryjreedy
    Copy link
    Member

    Does test_mimetypes (assuming it exists), have a test for the mapping, are is something needed?

    @cvrebert
    Copy link
    Mannequin

    cvrebert mannequin commented Dec 3, 2014

    Yes, the existing patch looks fine.

    @ezio-melotti
    Copy link
    Member

    A while ago there was a discussion about updating the MIME registry on bug fix releases too, and I seem to remember people agreed it should be done. If this is indeed the case and the patch is accepted for 3.5, should it also be backported to 2.7 and 3.4?

    @python-dev
    Copy link
    Mannequin

    python-dev mannequin commented Apr 9, 2016

    New changeset 0327a5a11108 by Berker Peksag in branch '3.5':
    Issue bpo-16329: Add .webm to mimetypes.types_map
    https://hg.python.org/cpython/rev/0327a5a11108

    New changeset f92e6785b9f0 by Berker Peksag in branch 'default':
    Issue bpo-16329: Add .webm to mimetypes.types_map
    https://hg.python.org/cpython/rev/f92e6785b9f0

    @python-dev
    Copy link
    Mannequin

    python-dev mannequin commented Apr 9, 2016

    New changeset 6ed3cb699be6 by Berker Peksag in branch '2.7':
    Issue bpo-16329: Add .webm to mimetypes.types_map
    https://hg.python.org/cpython/rev/6ed3cb699be6

    @berkerpeksag
    Copy link
    Member

    Thanks!

    @ezio-melotti ezio-melotti transferred this issue from another repository Apr 10, 2022
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Labels
    stdlib Python modules in the Lib dir type-feature A feature request or enhancement
    Projects
    None yet
    Development

    No branches or pull requests

    6 participants