[FFmpeg-trac] #8338(avformat:new): can't copy GoPro metadata
FFmpeg
trac at avcodec.org
Tue Aug 6 06:18:35 EEST 2024
#8338: can't copy GoPro metadata
-------------------------------------+------------------------------------
Reporter: importon | Owner: (none)
Type: enhancement | Status: new
Priority: wish | Component: avformat
Version: git-master | Resolution:
Keywords: mov | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+------------------------------------
Comment (by Kamil Filipek):
On v4.0.2, the error is thrown when no `track->par->codec_tag` is found.
For both .mov & .mp4 format.
The codec_tag is read in `mov_find_codec_tag(s, track)` function, with
.mov going down to sub-function `mov_get_codec_tag(s, track)`, where the
same `codec_tag` parameter is read in case of unidentifiable codec.
In the branch where v4.2.1 has been released, a `validate_codec_tag`
function has been introduced. It is not ran when **MODE** is set to MOV,
but is executed for **MODE** of MP4 files.
The `validate_codec_tag` only does a simple check if the codec_tag or id
exists in the white tables.
As I see the timecode track being a feature exclusive to Apple QuickTime &
MOV container. I don't see any reason for it to receive preferential
treatment.
But, I also don't see a reason for it to not be allowed a copy, if it
already exists in the container and user explicitly accepts the risks with
the `copy_unknown` flag.
So, I propose adoption of `copy_unknown` flag into the
`validate_codec_tag`, where validation this validation is skipped and the
stream is copied, just like in the case of MOV container. I'll attempt to
make a valid commit for this change.
--
Ticket URL: <https://trac.ffmpeg.org/ticket/8338#comment:17>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list