Opened 7 years ago
Last modified 15 months ago
#6617 new enhancement
ffprobe feature request: add RFC 6381 string to stream metadata
Reported by: | Tomer Lahav | Owned by: | |
---|---|---|---|
Priority: | wish | Component: | ffprobe |
Version: | git-master | Keywords: | rfc6381 |
Cc: | Blocked By: | ||
Blocking: | Reproduced by developer: | no | |
Analyzed by developer: | no |
Description
RFC6381 defines a string representation for media files that also includes codec specifics such as profile, level etc.
Examples include:
video/mp4; codecs="avc1.42E01E, mp4a.40.2" video/3gpp2; codecs="mp4v.20.9, mp4a.E1"
These strings are required for working with media on the web.
Examples of JS APIs that require these include addSourceBuffer and canPlayType.
It would be extremely useful if a property would be added to stream's metadata, with the full codec string as a value (i.e. avc1.4D401F)
Another property could be added to the format object, with the full content type string (i.e. video/mp4; codecs="avc1.640028, mp4a.40.2")
Related links:
https://tools.ietf.org/html/rfc6381
https://ffmpeg.org/pipermail/ffmpeg-user/2016-October/034078.html
Change History (4)
comment:1 by , 7 years ago
comment:2 by , 7 years ago
I'm not sure...
If you're looking for a workaround, try mp4box -info command.
You can parse the RFC 6381 string from the stderr stream.
Only caveat is that MP4Box only works for ISO BMFF containers (i.e. mp4, mov, 3gp etc).
comment:3 by , 7 years ago
Priority: | normal → wish |
---|---|
Version: | unspecified → git-master |
comment:4 by , 15 months ago
The code for converting codecpar into RFC 6381 is already there in https://git.ffmpeg.org/gitweb/ffmpeg.git/blob/HEAD:/libavformat/hlsenc.c (write_codec_attr), it only should be extracted into a public interface
Is there any way to build the RFC 6381 "manually" from ffprobe output?