Opened 6 years ago
Last modified 4 years ago
#7717 new defect
-disposition is broken for mka containers
Reported by: | hicksel | Owned by: | |
---|---|---|---|
Priority: | normal | Component: | ffmpeg |
Version: | git-master | Keywords: | disposition, mka |
Cc: | Blocked By: | ||
Blocking: | Reproduced by developer: | no | |
Analyzed by developer: | no |
Description
Summary of the bug:
The -disposition command does not work for mka containers. I initially wanted to set a stream as "-disposition:v:1 attached_pic". But as that did not work I tried other disposition tags. But none worked. The following is a simple example repacking a flac into a mka container but DISPOSITION:original=1 is not set.
How to reproduce:
Original File:
./ffprobe -show_streams Ironic.flac ffprobe version N-48056-g2e2b44baba-static https://johnvansickle.com/ffmpeg/ Copyright (c) 2007-2019 the FFmpeg developers built with gcc 6.3.0 (Debian 6.3.0-18+deb9u1) 20170516 configuration: --enable-gpl --enable-version3 --enable-static --disable-debug --disable-ffplay --disable-indev=sndio --disable-outdev=sndio --cc=gcc-6 --enable-fontconfig --enable-frei0r --enable-gnutls --enable-gmp --enable-gray --enable-libaom --enable-libfribidi --enable-libass --enable-libvmaf --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librubberband --enable-libsoxr --enable-libspeex --enable-libvorbis --enable-libopus --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libdav1d --enable-libxvid --enable-libzvbi --enable-libzimg libavutil 56. 26.100 / 56. 26.100 libavcodec 58. 46.100 / 58. 46.100 libavformat 58. 26.100 / 58. 26.100 libavdevice 58. 6.101 / 58. 6.101 libavfilter 7. 48.100 / 7. 48.100 libswscale 5. 4.100 / 5. 4.100 libswresample 3. 4.100 / 3. 4.100 libpostproc 55. 4.100 / 55. 4.100 Input #0, flac, from 'Ironic.flac': Metadata: SOURCE : Deezer SOURCEID : 789250 TITLE : Ironic ALBUM : The Collection (Standard Edition) GENRE : Pop album_artist : Alanis Morissette ARTIST : Alanis Morissette track : 6 TRACKTOTAL : 19 TOTALTRACKS : 19 disc : 1 DISCTOTAL : 1 TOTALDISCS : 1 LABEL : Maverick LENGTH : 225 ISRC : USMV20500296 BARCODE : 093624949060 MEDIA : Digital Media COMPILATION : 0 EXPLICIT : 0 RELEASETYPE : Album ARTISTS : Alanis Morissette AUTHOR : Alanis Morissette;Glen Ballard LYRICS : An old man turned ninety-eight : He won the lottery and died the next day : It's a black fly in your Chardonnay : It's a death row pardon two minutes too late : Isn't it ironic, don't you think : : It's like rain on your wedding day : It's a free ride when you've already paid : It's the good advice that you just didn't take : Who would've thought, it figures : : Mr. Play It Safe was afraid to fly : He packed his suitcase and kissed his kids good-bye : He waited his whole damn life to take that flight : And as the plane crashed down he thought : "Well, isn't this nice." : And isn't it ironic,l don't you think : : It's like rain on your wedding day : It's a free ride when you've already paid : It's the good advice that you just didn't take : Who would've thought, it figures : : Well, life has a funny way of sneaking up on you : When you think everything's okay and everything's going right : And life has a funny way of helping you out when : You think everything's gone wrong and everything blows up : In your face : : A traffic jam when you're already late : A no-smoking sign on your cigarette break : It's like ten thousand spoons when all you need is a knife : It's meeting the man of my dreams : And then meeting his beautiful wife : And isn't it ironic, don't you think : A little too ironic, and yeah I really do think : : It's like rain on your wedding day : It's a free ride when you've already paid : It's the good advice that you just didn't take : Who would've thought, it figures : : Well, life has a funny way of sneaking up on you : And life has a funny way of helping you out : Helping you out. YEAR : 2005 DATE : 2005-11-11 Duration: 00:03:45.93, start: 0.000000, bitrate: 972 kb/s Stream #0:0: Audio: flac, 44100 Hz, stereo, s16 Stream #0:1: Video: mjpeg (Progressive), yuvj420p(pc, bt470bg/unknown/unknown), 1400x1400 [SAR 1:1 DAR 1:1], 90k tbr, 90k tbn, 90k tbc Metadata: comment : Cover (front) [STREAM] index=0 codec_name=flac codec_long_name=FLAC (Free Lossless Audio Codec) profile=unknown codec_type=audio codec_time_base=1/44100 codec_tag_string=[0][0][0][0] codec_tag=0x0000 sample_fmt=s16 sample_rate=44100 channels=2 channel_layout=stereo bits_per_sample=0 id=N/A r_frame_rate=0/0 avg_frame_rate=0/0 time_base=1/44100 start_pts=0 start_time=0.000000 duration_ts=9963660 duration=225.933333 bit_rate=N/A max_bit_rate=N/A bits_per_raw_sample=16 nb_frames=N/A nb_read_frames=N/A nb_read_packets=N/A DISPOSITION:default=0 DISPOSITION:dub=0 DISPOSITION:original=0 DISPOSITION:comment=0 DISPOSITION:lyrics=0 DISPOSITION:karaoke=0 DISPOSITION:forced=0 DISPOSITION:hearing_impaired=0 DISPOSITION:visual_impaired=0 DISPOSITION:clean_effects=0 DISPOSITION:attached_pic=0 DISPOSITION:timed_thumbnails=0 [/STREAM] [STREAM] index=1 codec_name=mjpeg codec_long_name=Motion JPEG profile=Progressive codec_type=video codec_time_base=0/1 codec_tag_string=[0][0][0][0] codec_tag=0x0000 width=1400 height=1400 coded_width=1400 coded_height=1400 has_b_frames=0 sample_aspect_ratio=1:1 display_aspect_ratio=1:1 pix_fmt=yuvj420p level=-99 color_range=pc color_space=bt470bg color_transfer=unknown color_primaries=unknown chroma_location=center field_order=unknown timecode=N/A refs=1 id=N/A r_frame_rate=90000/1 avg_frame_rate=0/0 time_base=1/90000 start_pts=0 start_time=0.000000 duration_ts=20334000 duration=225.933333 bit_rate=N/A max_bit_rate=N/A bits_per_raw_sample=8 nb_frames=N/A nb_read_frames=N/A nb_read_packets=N/A DISPOSITION:default=0 DISPOSITION:dub=0 DISPOSITION:original=0 DISPOSITION:comment=0 DISPOSITION:lyrics=0 DISPOSITION:karaoke=0 DISPOSITION:forced=0 DISPOSITION:hearing_impaired=0 DISPOSITION:visual_impaired=0 DISPOSITION:clean_effects=0 DISPOSITION:attached_pic=1 DISPOSITION:timed_thumbnails=0 TAG:comment=Cover (front) [/STREAM]
ffmpeg run:
./ffmpeg -i Ironic.flac -c copy -disposition original Ironic-nodisposition.mka ffmpeg version N-48056-g2e2b44baba-static https://johnvansickle.com/ffmpeg/ Copyright (c) 2000-2019 the FFmpeg developers built with gcc 6.3.0 (Debian 6.3.0-18+deb9u1) 20170516 configuration: --enable-gpl --enable-version3 --enable-static --disable-debug --disable-ffplay --disable-indev=sndio --disable-outdev=sndio --cc=gcc-6 --enable-fontconfig --enable-frei0r --enable-gnutls --enable-gmp --enable-gray --enable-libaom --enable-libfribidi --enable-libass --enable-libvmaf --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librubberband --enable-libsoxr --enable-libspeex --enable-libvorbis --enable-libopus --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libdav1d --enable-libxvid --enable-libzvbi --enable-libzimg libavutil 56. 26.100 / 56. 26.100 libavcodec 58. 46.100 / 58. 46.100 libavformat 58. 26.100 / 58. 26.100 libavdevice 58. 6.101 / 58. 6.101 libavfilter 7. 48.100 / 7. 48.100 libswscale 5. 4.100 / 5. 4.100 libswresample 3. 4.100 / 3. 4.100 libpostproc 55. 4.100 / 55. 4.100 Input #0, flac, from 'Ironic.flac': Metadata: SOURCE : Deezer SOURCEID : 789250 TITLE : Ironic ALBUM : The Collection (Standard Edition) GENRE : Pop album_artist : Alanis Morissette ARTIST : Alanis Morissette track : 6 TRACKTOTAL : 19 TOTALTRACKS : 19 disc : 1 DISCTOTAL : 1 TOTALDISCS : 1 LABEL : Maverick LENGTH : 225 ISRC : USMV20500296 BARCODE : 093624949060 MEDIA : Digital Media COMPILATION : 0 EXPLICIT : 0 RELEASETYPE : Album ARTISTS : Alanis Morissette AUTHOR : Alanis Morissette;Glen Ballard LYRICS : An old man turned ninety-eight : He won the lottery and died the next day : It's a black fly in your Chardonnay : It's a death row pardon two minutes too late : Isn't it ironic, don't you think : : It's like rain on your wedding day : It's a free ride when you've already paid : It's the good advice that you just didn't take : Who would've thought, it figures : : Mr. Play It Safe was afraid to fly : He packed his suitcase and kissed his kids good-bye : He waited his whole damn life to take that flight : And as the plane crashed down he thought : "Well, isn't this nice." : And isn't it ironic,l don't you think : : It's like rain on your wedding day : It's a free ride when you've already paid : It's the good advice that you just didn't take : Who would've thought, it figures : : Well, life has a funny way of sneaking up on you : When you think everything's okay and everything's going right : And life has a funny way of helping you out when : You think everything's gone wrong and everything blows up : In your face : : A traffic jam when you're already late : A no-smoking sign on your cigarette break : It's like ten thousand spoons when all you need is a knife : It's meeting the man of my dreams : And then meeting his beautiful wife : And isn't it ironic, don't you think : A little too ironic, and yeah I really do think : : It's like rain on your wedding day : It's a free ride when you've already paid : It's the good advice that you just didn't take : Who would've thought, it figures : : Well, life has a funny way of sneaking up on you : And life has a funny way of helping you out : Helping you out. YEAR : 2005 DATE : 2005-11-11 Duration: 00:03:45.93, start: 0.000000, bitrate: 972 kb/s Stream #0:0: Audio: flac, 44100 Hz, stereo, s16 Stream #0:1: Video: mjpeg (Progressive), yuvj420p(pc, bt470bg/unknown/unknown), 1400x1400 [SAR 1:1 DAR 1:1], 90k tbr, 90k tbn, 90k tbc Metadata: comment : Cover (front) Output #0, matroska, to 'Ironic-nodisposition.mka': Metadata: SOURCE : Deezer SOURCEID : 789250 TITLE : Ironic ALBUM : The Collection (Standard Edition) GENRE : Pop album_artist : Alanis Morissette ARTIST : Alanis Morissette PART_NUMBER : 6 TRACKTOTAL : 19 TOTALTRACKS : 19 disc : 1 DISCTOTAL : 1 TOTALDISCS : 1 LABEL : Maverick LENGTH : 225 ISRC : USMV20500296 BARCODE : 093624949060 MEDIA : Digital Media COMPILATION : 0 EXPLICIT : 0 RELEASETYPE : Album ARTISTS : Alanis Morissette AUTHOR : Alanis Morissette;Glen Ballard LYRICS : An old man turned ninety-eight : He won the lottery and died the next day : It's a black fly in your Chardonnay : It's a death row pardon two minutes too late : Isn't it ironic, don't you think : : It's like rain on your wedding day : It's a free ride when you've already paid : It's the good advice that you just didn't take : Who would've thought, it figures : : Mr. Play It Safe was afraid to fly : He packed his suitcase and kissed his kids good-bye : He waited his whole damn life to take that flight : And as the plane crashed down he thought : "Well, isn't this nice." : And isn't it ironic,l don't you think : : It's like rain on your wedding day : It's a free ride when you've already paid : It's the good advice that you just didn't take : Who would've thought, it figures : : Well, life has a funny way of sneaking up on you : When you think everything's okay and everything's going right : And life has a funny way of helping you out when : You think everything's gone wrong and everything blows up : In your face : : A traffic jam when you're already late : A no-smoking sign on your cigarette break : It's like ten thousand spoons when all you need is a knife : It's meeting the man of my dreams : And then meeting his beautiful wife : And isn't it ironic, don't you think : A little too ironic, and yeah I really do think : : It's like rain on your wedding day : It's a free ride when you've already paid : It's the good advice that you just didn't take : Who would've thought, it figures : : Well, life has a funny way of sneaking up on you : And life has a funny way of helping you out : Helping you out. YEAR : 2005 DATE : 2005-11-11 encoder : Lavf58.26.100 Stream #0:0: Audio: flac ([172][241][0][0] / 0xF1AC), 44100 Hz, stereo, s16 (original) Stream mapping: Stream #0:0 -> #0:0 (copy) Press [q] to stop, [?] for help size= 26372kB time=00:03:45.88 bitrate= 956.4kbits/s speed=1.08e+03x video:0kB audio:26351kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.078178%
output file:
./ffprobe -show_streams Ironic-nodisposition.mka ffprobe version N-48056-g2e2b44baba-static https://johnvansickle.com/ffmpeg/ Copyright (c) 2007-2019 the FFmpeg developers built with gcc 6.3.0 (Debian 6.3.0-18+deb9u1) 20170516 configuration: --enable-gpl --enable-version3 --enable-static --disable-debug --disable-ffplay --disable-indev=sndio --disable-outdev=sndio --cc=gcc-6 --enable-fontconfig --enable-frei0r --enable-gnutls --enable-gmp --enable-gray --enable-libaom --enable-libfribidi --enable-libass --enable-libvmaf --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librubberband --enable-libsoxr --enable-libspeex --enable-libvorbis --enable-libopus --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libdav1d --enable-libxvid --enable-libzvbi --enable-libzimg libavutil 56. 26.100 / 56. 26.100 libavcodec 58. 46.100 / 58. 46.100 libavformat 58. 26.100 / 58. 26.100 libavdevice 58. 6.101 / 58. 6.101 libavfilter 7. 48.100 / 7. 48.100 libswscale 5. 4.100 / 5. 4.100 libswresample 3. 4.100 / 3. 4.100 libpostproc 55. 4.100 / 55. 4.100 Input #0, matroska,webm, from 'Ironic-nodisposition.mka': Metadata: title : Ironic DATE : 2005-11-11 SOURCE : Deezer SOURCEID : 789250 ALBUM : The Collection (Standard Edition) GENRE : Pop ALBUM_ARTIST : Alanis Morissette ARTIST : Alanis Morissette track : 6 TRACKTOTAL : 19 TOTALTRACKS : 19 DISC : 1 DISCTOTAL : 1 TOTALDISCS : 1 LABEL : Maverick LENGTH : 225 ISRC : USMV20500296 BARCODE : 093624949060 MEDIA : Digital Media COMPILATION : 0 EXPLICIT : 0 RELEASETYPE : Album ARTISTS : Alanis Morissette AUTHOR : Alanis Morissette;Glen Ballard LYRICS : An old man turned ninety-eight : He won the lottery and died the next day : It's a black fly in your Chardonnay : It's a death row pardon two minutes too late : Isn't it ironic, don't you think : : It's like rain on your wedding day : It's a free ride when you've already paid : It's the good advice that you just didn't take : Who would've thought, it figures : : Mr. Play It Safe was afraid to fly : He packed his suitcase and kissed his kids good-bye : He waited his whole damn life to take that flight : And as the plane crashed down he thought : "Well, isn't this nice." : And isn't it ironic,l don't you think : : It's like rain on your wedding day : It's a free ride when you've already paid : It's the good advice that you just didn't take : Who would've thought, it figures : : Well, life has a funny way of sneaking up on you : When you think everything's okay and everything's going right : And life has a funny way of helping you out when : You think everything's gone wrong and everything blows up : In your face : : A traffic jam when you're already late : A no-smoking sign on your cigarette break : It's like ten thousand spoons when all you need is a knife : It's meeting the man of my dreams : And then meeting his beautiful wife : And isn't it ironic, don't you think : A little too ironic, and yeah I really do think : : It's like rain on your wedding day : It's a free ride when you've already paid : It's the good advice that you just didn't take : Who would've thought, it figures : : Well, life has a funny way of sneaking up on you : And life has a funny way of helping you out : Helping you out. YEAR : 2005 ENCODER : Lavf58.26.100 Duration: 00:03:45.93, start: 0.000000, bitrate: 956 kb/s Stream #0:0: Audio: flac, 44100 Hz, stereo, s16 (default) Metadata: DURATION : 00:03:45.934000000 [STREAM] index=0 codec_name=flac codec_long_name=FLAC (Free Lossless Audio Codec) profile=unknown codec_type=audio codec_time_base=1/44100 codec_tag_string=[0][0][0][0] codec_tag=0x0000 sample_fmt=s16 sample_rate=44100 channels=2 channel_layout=stereo bits_per_sample=0 id=N/A r_frame_rate=0/0 avg_frame_rate=0/0 time_base=1/1000 start_pts=0 start_time=0.000000 duration_ts=N/A duration=N/A bit_rate=N/A max_bit_rate=N/A bits_per_raw_sample=16 nb_frames=N/A nb_read_frames=N/A nb_read_packets=N/A DISPOSITION:default=1 DISPOSITION:dub=0 DISPOSITION:original=0 DISPOSITION:comment=0 DISPOSITION:lyrics=0 DISPOSITION:karaoke=0 DISPOSITION:forced=0 DISPOSITION:hearing_impaired=0 DISPOSITION:visual_impaired=0 DISPOSITION:clean_effects=0 DISPOSITION:attached_pic=0 DISPOSITION:timed_thumbnails=0 TAG:DURATION=00:03:45.934000000 [/STREAM]
I have also reproduced the Bug using the Windows Build 20190131-1e03d60-win64-static.
Attachments (3)
Change History (6)
by , 6 years ago
Attachment: | ffmpeg-run.txt added |
---|
by , 6 years ago
Attachment: | ffprobe-original.txt added |
---|
by , 6 years ago
Attachment: | ffprobe-output.txt added |
---|
comment:1 by , 6 years ago
comment:2 by , 4 years ago
I haven't tried an .mka file, but I can set or remove disposition tags in .mkv files just fine. I think the problem lies with .flac files, in your case you're remuxing into .mka from .flac while trying to set the disposition flag.
But apparently setting disposition flags for streams inside .flac files doesn't work. I just tried setting various flags but it doesn't work (disposition settings are ignored in the output file).
Example command used:
ffmpeg -i input.flac -map 0 -c copy -disposition:a:0 dub output.flac
comment:3 by , 4 years ago
Actually you are partly right: I can only set the Default and Forced disposition types for subtitle and audio streams inside .mkv containers (subs + audio are the ones I checked).
This is somewhat related to comment:8:ticket:4591 since i initially found the problem when trying to set a coverart stream manually as attached_pic.
But apparently all disposition tags for mka and mkv seem to be broken.