#3043 closed enhancement (fixed)
RFE: Implement updated comment header packets in OGG/vorbis streams
| Reported by: | Ben Boeckel | Owned by: | |
|---|---|---|---|
| Priority: | wish | Component: | avformat |
| Version: | git-master | Keywords: | ogg vorbis |
| Cc: | Blocked By: | ||
| Blocking: | Reproduced by developer: | no | |
| Analyzed by developer: | no |
Description
I am looking to implement this feature, but am unsure of how best to approach it. It looks like the best thing to do would be to have libavcodec/vorbisdec.c:1741 set some flag to indicate that a new header should be parsed from the stream using libavformat (since this is where the comment/metadata parsing currently exists and it looks like just moving it into libavcodec would get pretty hairy).
The end goal is to have mpv output new titles, artist, etc. updates from an mpd stream (currently, only the first metadata packet is used).
Tracked for mpd on its issue tracker[1].
Change History (7)
comment:1 by , 13 years ago
comment:2 by , 13 years ago
It's not really a failure in ffmpeg. I'm mainly looking at implementing code behind the comment[1] about ignoring vorbis comment headers. Here[2] is my post to the MPlayer list about the problem; I'll get master output from ffmpeg when I'm back at a computer.
[1]https://github.com/FFmpeg/FFmpeg/blob/master/libavcodec/vorbisdec.c#L1741
[2]http://permalink.gmane.org/gmane.comp.video.mplayer.devel/62484
comment:3 by , 13 years ago
This is output from playing a -dumpstream from an MPD build with tags in it (note the "Ignoring comment header" line when MPD changed tracks):
% ../ffmpeg/bin/ffplay mpd-0.15.8.dump.ogg
ffplay version N-57001-g65c2fe7 Copyright (c) 2003-2013 the FFmpeg developers
built on Oct 9 2013 23:05:22 with gcc 4.8.1 (GCC) 20130920 (Red Hat 4.8.1-10)
configuration: --prefix=/home/boeckb/misc/root/ffmpeg
libavutil 52. 46.101 / 52. 46.101
libavcodec 55. 35.100 / 55. 35.100
libavformat 55. 19.100 / 55. 19.100
libavdevice 55. 4.100 / 55. 4.100
libavfilter 3. 88.101 / 3. 88.101
libswscale 2. 5.101 / 2. 5.101
libswresample 0. 17.103 / 0. 17.103
[ogg @ 0x3409460] Cannot identify new stream 0KB sq= 0B f=0/0
[ogg @ 0x3409460] failed to create or replace stream
[ogg @ 0x3409460] Estimating duration from bitrate, this may be inaccurate
Input #0, ogg, from 'mpd-0.15.8.dump.ogg':
Duration: 00:02:18.05, start: 0.000000, bitrate: 109 kb/s
Stream #0:0: Audio: vorbis, 44100 Hz, mono, fltp, 110 kb/s
Metadata:
COMPOSER : Christopher Tin & Shoji Kameda
TITLE : A Rapture
DATE : 2012-02-14
DISC : 1
album_artist : Stereo Alchemy
ALBUM : God of Love
ARTIST : Stereo Alchemy
TRACK : 1
[vorbis @ 0x340e640] Invalid packet1KB vq= 0KB sq= 0B f=0/0
Last message repeated 1 times
[vorbis @ 0x340e640] Invalid packet1KB vq= 0KB sq= 0B f=0/0
[vorbis @ 0x340e640] Ignoring comment header 0KB sq= 0B f=0/0
^C%
follow-up: 5 comment:4 by , 13 years ago
An initial stab at the implementation is on my GitHub fork[1] of the mirror repository there. The next step is to get avformat to signal that there is new metadata available, but I'm unsure of how to best approach this. Any guidance?
[1]https://github.com/mathstuf/FFmpeg/tree/dev/update-ogg-tags-in-stream
comment:5 by , 13 years ago
Replying to mathstuf:
Any guidance?
Unfortunately, most developers do not comment on patches posted here, consider posting your patch (or pointing to your github repository) on the ffmpeg-devel mailing list where developers will (hopefully) reply.
comment:6 by , 12 years ago
| Resolution: | → fixed |
|---|---|
| Status: | new → closed |
These patches have been merged[1].
[1]http://git.videolan.org/?p=ffmpeg.git;a=commit;h=5a633ec2dd453c67ff23819c28d98e6b09c47295
comment:7 by , 12 years ago
| Component: | avcodec → avformat |
|---|---|
| Keywords: | ogg added |
| Priority: | normal → wish |
| Version: | 2.0.1 → git-master |



Please test current git head and add a failing ffmpeg command line together with the complete, uncut console output to make this a valid ticket.