Opened 2 years ago

Last modified 2 years ago

#9901 new defect

Bug: ffmpeg/ffprobe calls field different from it's header.

Reported by: NY2Da Owned by:
Priority: normal Component: undetermined
Version: unspecified Keywords: METADATA
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description (last modified by NY2Da)

  • ffprobe calls Description field comment

Test Method-

  1. Remove all tags from a file using MP3Tag.
  2. create a "extended custom tag" called DESCRIPTION (Not a field already in software so you can be sure what header it is) and enter some value.
  3. Then check with ffbrobe.

Result-
mp3tag - ffprobe - See Images Attached
https://trac.ffmpeg.org/attachment/ticket/9901/ul7a79jl1el91.webp
https://trac.ffmpeg.org/attachment/ticket/9901/30bl1thk1el91.webp

  • ffmpeg and ffprobe have different behaviors one calls the same field comment the other DESCRIPTION -

experiment done by u/wierd (r/youtubedl mod) r/youtubedl/comments/wxkpv8/comment/ilzy6ow -

i have a clean opus file, no metadata. i add metadata to it like this.
ffmpeg -i clean.251.opus -metadata 'description=this is a description' -metadata 'comment=this is a comment' -metadata 'random=this is a random field' -metadata 'synopsis=this is the synopsis field' new.opus
ffmpeg output:
Output #0, opus, to 'new.opus':

Metadata:

description : this is a description
comment : this is a comment <---
random : this is a random field
synopsis : this is the synopsis field
encoder : Lavf58.76.100

Stream #0:0(eng): Audio: opus, 48000 Hz, stereo, flt, 96 kb/s

Metadata:

encoder : Lavc58.134.100 libopus
DESCRIPTION : this is a comment <---
random : this is a random field
synopsis : this is the synopsis field

first part lists description, comment, random, synopsis. second partg lists DESCRIPTION with the comment contents.
but... ffprobe:
Input #0, ogg, from 'new.opus':

Duration: 00:06:06.40, start: 0.000000, bitrate: 94 kb/s
Stream #0:0(eng): Audio: opus, 48000 Hz, stereo, fltp

Metadata:

encoder : Lavc58.134.100 libopus
comment : this is a comment <---
random : this is a random field
synopsis : this is the synopsis field

here it lists the comment as comment but description is not shown.


Summary of the bug:
How to reproduce:

% ffmpeg -i input ... output
ffmpeg version
built on ...

Patches should be submitted to the ffmpeg-devel mailing list and not this bug tracker.

Attachments (2)

ul7a79jl1el91.webp (2.9 KB ) - added by NY2Da 2 years ago.
30bl1thk1el91.webp (2.0 KB ) - added by NY2Da 2 years ago.

Download all attachments as: .zip

Change History (8)

by NY2Da, 2 years ago

Attachment: ul7a79jl1el91.webp added

by NY2Da, 2 years ago

Attachment: 30bl1thk1el91.webp added

comment:1 by Carl Eugen Hoyos, 2 years ago

Is the issue you see reproducible with current FFmpeg git head, the only version supported on this bug tracker?

comment:2 by Carl Eugen Hoyos, 2 years ago

Version: 4.4.1unspecified

comment:3 by Carl Eugen Hoyos, 2 years ago

Component: ffmpegundetermined

comment:4 by mkver, 2 years ago

FFmpeg (the project) aspires to be a generic tool and therefore normalizes certain common tag names like "comment". For VorbisComment metadata, the tag that gets mapped to comment in DESCRIPTION (this is defined in ff_vorbiscomment_metadata_conv in libavformat/vorbiscomment.c). Therefore the muxer converts a comment tag to DESCRIPTION and the demuxer converts a DESCRIPTION to a comment. ffprobe uses said demuxer, so it reports comment. So I fail to see the bug here. After all, your -metadata 'comment=this is a comment' has been preserved.

in reply to:  4 comment:5 by NY2Da, 2 years ago

Replying to mkver:
Metadata field conversion should be handled separately.
It causes alot of errors when using --parse-metadata in yt-dlp. yt-dlp(ffmpeg) doesn't know difference between description and comment when writting value. And DESCRIPTION and description when deleting value.
yt-dlp error I faced -
https://www.reddit.com/r/youtubedl/comments/wxkpv8/purl_and_description_metadata_missing_when/
https://www.reddit.com/r/youtubedl/comments/x3g0zh/comment/imrieya/?context=3

Last edited 2 years ago by NY2Da (previous) (diff)

comment:6 by NY2Da, 2 years ago

Description: modified (diff)
Note: See TracTickets for help on using tickets.