Opened 5 years ago

Closed 3 years ago

#750 closed defect (fixed)

ffmpeg looses OGG-theora metadata tags (like title author etc) on OGG->OGG

Reported by: RyszardG Owned by:
Priority: normal Component: avformat
Version: git-master Keywords: metadata ogg
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

I can transcode one ogg to second with adding tags:

ffmpeg -i recRLBM.ogv -metadata TITLE="My title" -metadata ARTIST="Me" output.ogv

Tags are correctly added (what can I see when I run any video player and open output.ogv). But when I run ffmpeg:

ffmpeg -i output.ogv something.ogv

I don't have these metadata informations displayed on the Input #0:

ffmpeg version 0.8.7.git-366605f, Copyright (c) 2000-2011 the FFmpeg developers

built on Dec 14 2011 17:44:52 with gcc 4.4.5
configuration: --prefix=/home/ryszard/NX-4.0.155/Build --disable-doc --disable-everything --enable-muxer=ogg --enable-demuxer=ogg --enable-muxer=webm --enable-demuxer=webm --enable-muxer=matroska --enable-demuxer=matroska --enable-muxer=rawvideo --enable-demuxer=rawvideo --enable-muxer=mpeg1system --enable-muxer=mpeg1vcd --enable-muxer=mpeg1video --enable-demuxer=mpegvideo --enable-demuxer=mpeg1system --enable-demuxer=mpeg1system --enable-demuxer=mpegps --enable-encoder=libtheora --enable-decoder=theora --enable-encoder=libvpx --enable-decoder=libvpx --enable-encoder=mpeg1video --enable-decoder=mpeg1video --enable-decoder=mpegvideo --enable-encoder=rawvideo --enable-decoder=rawvideo --enable-parser=mpegvideo --enable-filter=format --enable-protocol=pipe --enable-protocol=tcp --enable-protocol=file --enable-filter=scale --enable-libvpx --enable-libtheora --enable-zlib
libavutil 51. 32. 0 / 51. 32. 0
libavcodec 53. 44. 0 / 53. 44. 0
libavformat 53. 25. 0 / 53. 25. 0
libavdevice 53. 4. 0 / 53. 4. 0
libavfilter 2. 53. 0 / 2. 53. 0
libswscale 2. 1. 0 / 2. 1. 0

Input #0, ogg, from 'output.ogv':

Duration: 00:00:00.50, start: 0.000000, bitrate: 1046 kb/s

Stream #0:0: Video: theora, yuv420p, 1440x900 [SAR 1:1 DAR 8:5], 10 tbr, 10 tbn, 10 tbc

File 'something.ogv' already exists. Overwrite ? [y/N] Y
w:1440 h:900 pixfmt:yuv420p tb:1/1000000 sar:1/1 sws_param:
Output #0, ogg, to 'something.ogv':

Metadata:

encoder : Lavf53.25.0
Stream #0:0: Video: theora, yuv420p, 1440x900 [SAR 1:1 DAR 8:5], q=2-31, 200 kb/s, 10 tbn, 10 tbc

Stream mapping:

Stream #0:0 -> #0:0 (theora -> libtheora)

Press [q] to stop, ? for help

Change History (8)

comment:1 follow-up: Changed 5 years ago by cehoyos

  • Component changed from FFmpeg to undetermined
  • Priority changed from important to normal

Is this reproducible with current git head?

comment:2 in reply to: ↑ 1 Changed 5 years ago by RyszardG

Replying to cehoyos:

Is this reproducible with current git head?

Yes, it is reproductible in ffmpeg-HEAD-21270cf too.

comment:3 Changed 5 years ago by reimar

  • Resolution set to worksforme
  • Status changed from new to closed

Either this was fixed or there is some critical information missing:
ffmpeg -i theora-0packets.ogv -vcodec copy -metadata TITLE="My title" -metadata ARTIST="Me" meta.ogv
[...]
ffmpeg -i meta.ogv
[...]

Input #0, ogg, from 'meta.ogv':
  Duration: 00:00:33.00, start: 0.000000, bitrate: 576 kb/s
    Stream #0:0: Video: theora, yuv420p, 320x176, 24 fps, 24 tbr, 24 tbn, 24 tbc
    Stream #0:1: Audio: flac, 48000 Hz, stereo, s16
    Metadata:
      TITLE           : My title
      ARTIST          : Me
      ENCODER         : Lavf54.3.100

comment:4 Changed 5 years ago by cehoyos

Metadata gets lost if meta.ogv if encoded again:
$ ffmpeg -i theora-0packets.ogv -vcodec copy -metadata TITLE="My title" -metadata ARTIST="Me" meta.ogv
[...]
$ ffmpeg -i meta.ogv out.ogv
[...]
$ ffmpeg -i out.ogv
[...]

Input #0, ogg, from 'out.ogv':
  Duration: 00:00:33.00, start: 0.000000, bitrate: 646 kb/s
    Stream #0:0: Video: theora, yuv420p, 320x176 [SAR 1:1 DAR 20:11], 24 fps, 24 tbr, 24 tbn, 24 tbc
    Stream #0:1: Audio: flac, 48000 Hz, stereo, s16
    Metadata:
      ENCODER         : Lavf54.3.100

comment:5 Changed 4 years ago by cehoyos

  • Keywords metadata ogg added
  • Reproduced by developer set
  • Resolution worksforme deleted
  • Status changed from closed to reopened
  • Version changed from unspecified to git-master

This problem is still reproducible:

$ ffmpeg -i fate-suite/svq3/Vertical400kbit.sorenson3.mov -metadata TITLE="My title" -metadata ARTIST="Me" out1.ogv
ffmpeg version N-47320-g57b00d7 Copyright (c) 2000-2012 the FFmpeg developers
  built on Nov 30 2012 17:56:37 with gcc 4.7 (SUSE Linux)
  configuration: --enable-gpl --disable-indev=jack --enable-libvorbis --enable-libtheora
  libavutil      52. 10.100 / 52. 10.100
  libavcodec     54. 78.100 / 54. 78.100
  libavformat    54. 41.100 / 54. 41.100
  libavdevice    54.  3.101 / 54.  3.101
  libavfilter     3. 23.104 /  3. 23.104
  libswscale      2.  1.103 /  2.  1.103
  libswresample   0. 17.101 /  0. 17.101
  libpostproc    52.  2.100 / 52.  2.100
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1ac1240] max_analyze_duration 5000000 reached at 5000998
Guessed Channel Layout for  Input Stream #0.1 : mono
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'fate-suite/svq3/Vertical400kbit.sorenson3.mov':
  Metadata:
    creation_time   : 2001-03-20 16:17:18
    title           : Vertical Online SV3 Demo
    title-eng       : Vertical Online SV3 Demo
    artist          : Logan Kelsey
    artist-eng      : Logan Kelsey
    copyright       : © Vertical Online 2001
    copyright-eng   : © Vertical Online 2001
    encoder         : Sorenson Video 3
    encoder-eng     : Sorenson Video 3
  Duration: 00:00:43.58, start: 0.000000, bitrate: 580 kb/s
    Stream #0:0(eng): Video: svq3 (SVQ3 / 0x33515653), yuvj420p, 320x240, 391 kb/s, 30.02 fps, 30 tbr, 600 tbn, 600 tbc
    Metadata:
      creation_time   : 2001-03-20 16:17:18
      handler_name    : Apple Alias Data Handler
    Stream #0:1(eng): Audio: adpcm_ima_qt (ima4 / 0x34616D69), 44100 Hz, mono, s16p, 176 kb/s
    Metadata:
      creation_time   : 2001-03-20 16:17:18
      handler_name    : Apple Alias Data Handler
Output #0, ogg, to 'out1.ogv':
  Metadata:
    encoder-eng     : Sorenson Video 3
    ARTIST          : Me
    title-eng       : Vertical Online SV3 Demo
    TITLE           : My title
    artist-eng      : Logan Kelsey
    copyright       : © Vertical Online 2001
    copyright-eng   : © Vertical Online 2001
    encoder         : Lavf54.41.100
    Stream #0:0(eng): Video: theora, yuv420p, 320x240, q=2-31, 200 kb/s, 30 tbn, 30 tbc
    Metadata:
      creation_time   : 2001-03-20 16:17:18
      handler_name    : Apple Alias Data Handler
    Stream #0:1(eng): Audio: flac, 44100 Hz, mono, s16, 128 kb/s
    Metadata:
      creation_time   : 2001-03-20 16:17:18
      handler_name    : Apple Alias Data Handler
Stream mapping:
  Stream #0:0 -> #0:0 (svq3 -> libtheora)
  Stream #0:1 -> #0:1 (adpcm_ima_qt -> flac)
Press [q] to stop, [?] for help
Multiple frames in a packet from stream 1
frame= 1308 fps=277 q=0.0 Lsize=    3226kB time=00:00:43.67 bitrate= 605.1kbits/s
video:1058kB audio:2143kB subtitle:0 global headers:3kB muxing overhead 0.653947%
$ ffmpeg -i out1.ogv -acodec copy -vcodec copy out2.ogv
ffmpeg version N-47320-g57b00d7 Copyright (c) 2000-2012 the FFmpeg developers
  built on Nov 30 2012 17:56:37 with gcc 4.7 (SUSE Linux)
  configuration: --enable-gpl --disable-indev=jack --enable-libvorbis --enable-libtheora
  libavutil      52. 10.100 / 52. 10.100
  libavcodec     54. 78.100 / 54. 78.100
  libavformat    54. 41.100 / 54. 41.100
  libavdevice    54.  3.101 / 54.  3.101
  libavfilter     3. 23.104 /  3. 23.104
  libswscale      2.  1.103 /  2.  1.103
  libswresample   0. 17.101 /  0. 17.101
  libpostproc    52.  2.100 / 52.  2.100
Input #0, ogg, from 'out1.ogv':
  Duration: 00:00:43.60, start: 0.000000, bitrate: 606 kb/s
    Stream #0:0: Video: theora, yuv420p, 320x240 [SAR 1:1 DAR 4:3], 30 fps, 30 tbr, 30 tbn, 30 tbc
    Metadata:
      ENCODER-ENG     : Sorenson Video 3
      ARTIST          : Me
      TITLE-ENG       : Vertical Online SV3 Demo
      TITLE           : My title
      ARTIST-ENG      : Logan Kelsey
      COPYRIGHT       : © Vertical Online 2001
      COPYRIGHT-ENG   : © Vertical Online 2001
      ENCODER         : Lavf54.41.100
    Stream #0:1: Audio: flac, 44100 Hz, mono, s16
    Metadata:
      ENCODER-ENG     : Sorenson Video 3
      ARTIST          : Me
      TITLE-ENG       : Vertical Online SV3 Demo
      TITLE           : My title
      ARTIST-ENG      : Logan Kelsey
      COPYRIGHT       : © Vertical Online 2001
      COPYRIGHT-ENG   : © Vertical Online 2001
      ENCODER         : Lavf54.41.100
Output #0, ogg, to 'out2.ogv':
  Metadata:
    encoder         : Lavf54.41.100
    Stream #0:0: Video: theora, yuv420p, 320x240 [SAR 1:1 DAR 4:3], q=2-31, 30 fps, 30 tbn, 30 tbc
    Metadata:
      ENCODER-ENG     : Sorenson Video 3
      ARTIST          : Me
      TITLE-ENG       : Vertical Online SV3 Demo
      TITLE           : My title
      ARTIST-ENG      : Logan Kelsey
      COPYRIGHT       : © Vertical Online 2001
      COPYRIGHT-ENG   : © Vertical Online 2001
      ENCODER         : Lavf54.41.100
    Stream #0:1: Audio: flac, 44100 Hz, mono
    Metadata:
      ENCODER-ENG     : Sorenson Video 3
      ARTIST          : Me
      TITLE-ENG       : Vertical Online SV3 Demo
      TITLE           : My title
      ARTIST-ENG      : Logan Kelsey
      COPYRIGHT       : © Vertical Online 2001
      COPYRIGHT-ENG   : © Vertical Online 2001
      ENCODER         : Lavf54.41.100
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
  Stream #0:1 -> #0:1 (copy)
Press [q] to stop, [?] for help
frame= 1295 fps=0.0 q=-1.0 Lsize=    3226kB time=00:00:43.60 bitrate= 606.1kbits/s
video:1058kB audio:2143kB subtitle:0 global headers:0kB muxing overhead 0.750993%
$ ffmpeg -i out2.ogv
ffmpeg version N-47320-g57b00d7 Copyright (c) 2000-2012 the FFmpeg developers
  built on Nov 30 2012 17:56:37 with gcc 4.7 (SUSE Linux)
  configuration: --enable-gpl --disable-indev=jack --enable-libvorbis --enable-libtheora
  libavutil      52. 10.100 / 52. 10.100
  libavcodec     54. 78.100 / 54. 78.100
  libavformat    54. 41.100 / 54. 41.100
  libavdevice    54.  3.101 / 54.  3.101
  libavfilter     3. 23.104 /  3. 23.104
  libswscale      2.  1.103 /  2.  1.103
  libswresample   0. 17.101 /  0. 17.101
  libpostproc    52.  2.100 / 52.  2.100
Input #0, ogg, from 'out2.ogv':
  Duration: 00:00:43.60, start: 0.000000, bitrate: 606 kb/s
    Stream #0:0: Video: theora, yuv420p, 320x240 [SAR 1:1 DAR 4:3], 30 fps, 30 tbr, 30 tbn, 30 tbc
    Metadata:
      ENCODER         : Lavf54.41.100
    Stream #0:1: Audio: flac, 44100 Hz, mono, s16
    Metadata:
      ENCODER         : Lavf54.41.100
At least one output file must be specified

comment:6 Changed 4 years ago by michael

  • Summary changed from ffmpeg does not list OGG-theora metadata tags (like title author etc) to ffmpeg looses OGG-theora metadata tags (like title author etc) on OGG->OGG

comment:7 Changed 4 years ago by richardpl

  • Component changed from undetermined to avformat

comment:8 Changed 3 years ago by michael

  • Resolution set to fixed
  • Status changed from reopened to closed

This has been fixed a while ago, seems closing this was forgotten

Note: See TracTickets for help on using tickets.