问题 FFMPEG具有“处置”的概念,该属性描述了媒体文件中流的目的。例如,以下是我周围的文件中的流,带有

问题描述 投票:0回答:0
的概念 - 一种描述媒体文件中流目的的属性。例如,以下是我周围的文件中的流,强调了处置:

Stream #0:0[0x1](und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 251 kb/s (default) Metadata: creation_time : 2021-11-10T20:14:06.000000Z handler_name : Core Media Audio vendor_id : [0][0][0][0] Stream #0:1[0x2](und): Video: mjpeg (Baseline) (jpeg / 0x6765706A), yuvj420p(pc, bt470bg/unknown/unknown), 1024x1024, 0 kb/s, 0.0006 fps, 3.08 tbr, 600 tbn (default) (attached pic) (timed thumbnails) Metadata: creation_time : 2021-11-10T20:14:06.000000Z handler_name : Core Media Video vendor_id : [0][0][0][0] Stream #0:2[0x3](und): Data: bin_data (text / 0x74786574) Metadata: creation_time : 2021-11-10T20:14:06.000000Z handler_name : Core Media Text Stream #0:3[0x0]: Video: mjpeg (Baseline), yuvj420p(pc, bt470bg/unknown/ unknown), 1024x1024 [SAR 144:144 DAR 1:1], 90k tbr, 90k tbn (attached pic)

,但是,如果我使用C ++库对本文件的章节标记进行任何修改(即使只是重新保存现有的标记:auto f = MP4Modify("test.m4a"); MP4Chapter_t* chapterList; uint32_t chapterCount; MP4GetChapters(f, &chapterList, &chapterCount); MP4SetChapters(f, chapterList, chapterCount); MP4Close(f);

),则其中一些处置是由:

Stream #0:0[0x1](und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 251 kb/s (default) Metadata: creation_time : 2021-11-10T20:14:06.000000Z handler_name : Core Media Audio vendor_id : [0][0][0][0] Stream #0:1[0x2](und): Video: mjpeg (Baseline) (jpeg / 0x6765706A), yuvj420p(pc, bt470bg/unknown/unknown), 1024x1024, 0 kb/s, 0.0006 fps, 3.08 tbr, 600 tbn (default) ← “attached pic” and “timed thumbnails” removed! Metadata: creation_time : 2021-11-10T20:14:06.000000Z handler_name : Core Media Video vendor_id : [0][0][0][0] Stream #0:2[0x0]: Video: mjpeg (Baseline), yuvj420p(pc, bt470bg/unknown/ unknown), 1024x1024 [SAR 144:144 DAR 1:1], 90k tbr, 90k tbn (attached pic) Stream #0:3[0x4](und): Data: bin_data (text / 0x74786574) This stream was moved to the end, but that’s intended behavior. It contains chapter titles, and we just edited the chapters. Metadata: creation_time : 2025-03-05T09:56:31.000000Z 它还使该文件无法播放在MPC-HC中(但在VLC!)中,这显然是MP4V2中的一个错误。我目前正在调查该错误以进行报告并有可能修复它,但这是一个单独的问题 - 在我的旅程中,我正在脑子里试图了解MP4V2更改以使FFMPEG停止报告“附带的PIC”和“定时缩略图”的性格是什么。我已经探索了

Mp4box
中的前后,我一生都找不到以相关方式不同的原子。 (我很想共享文件,但不幸的是,内容是版权的 - 如果有人知道一种方法可以从mp4文件中删除音频而不更改其他任何内容,请让我知道,我将上传虚拟版本。没有它们,我无法直接问您这个问题。

问题
我以为我会阅读FFMPEG的源代码,以找出它如何确定MP4流的性格,但是当然,FFMPEG是

综合体。一个更熟悉C和/或FFMPEG的代码库的人可以帮助我sleuth ffmpeg如何确定mp4 files的处置

(尤其是“附加的pic”和“ timeed缩略图”)

有些想法… ifigut

搜索“ entacted_pic”

可能是一个不错的开始?

可以帮助mp4 muxermovenc.c请提供帮助吗? 我想象一下我们真正想看的是mp4demuxing流程,因为在脱掉ffmpeg期间,可以从文件中的数据中确定处置。但是,在编码数小时后,我完全无法找到发生的事情。

尽管我通过对MP4文件进行逆转工程而不是读取FFMPEG源代码来弄清楚它,但这是答案:
c ffmpeg mp4 mp4box muxer
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.