我试图将几个音频文件连接到一个包含章节元数据的mp4/m4a文件中.
我目前正在使用QTKit执行此操作但不幸的是,当QTKit导出到m4a格式时,元数据全部被删除(这已被Apple确认为错误)请参阅示例代码.我认为这可以为这项工作规定QTKit,但很高兴被证明是错误的,因为它是一个非常巧妙的API,如果它工作.
所以,我正在寻找一种方法来连接音频文件(输入格式并不重要,因为我可以转换)到具有章节元数据的m4a文件.
作为代码的替代方案,我愿意使用现有的命令行工具来完成此任务,只要它可以作为另一个应用程序的一部分进行再发布.
有任何想法吗?
我正在尝试播放MP4-Stream.该流是从我的Android手机发送的.问题是,播放mp4所需的moov原子只有在手机完成录制进度时才会写入.所以目前我只是在录制结束后播放流数据.我的想法是自己编写ftyp和moov原子,以便在手机正在录制时播放流数据.我试图使用来自另一个视频文件的moov原子,但这不起作用.我也读过,如果只给出mdat原子,通常不可能建立一个moov原子.但在我的情况下,我知道录音条件,如帧速率等.
所以我的问题是,如果我知道录制参数,是否可以为传入流生成有效/可用的moov原子?
我想将我准备好的石英成分(我使用的是Quartz Composer 4.6)导出到.mov.我尝试使用"文件>导出为QuickTime电影",但它询问了我的持续时间,然后单击确定后它会创建一个文件.mov什么是"零千字节".
我不知道这是一个错误还是我做错了什么?如何以其他方式将其导出到.mov?
我有一个非常奇怪的问题.我的OSX应用程序正在生成基于屏幕投射的mp4视频.出于某种原因,如果我在Quicktime或任何基于OSX的AVPlayer中打开此视频,它将在第0帧之前大约14-15帧开始.如果我使用Chrome或Firefox打开mp4,它实际上将在第0帧开始播放.
什么可能导致忽略开始帧?这是一个计时器倒计时的屏幕截图,比较Quicktime与Firefox在零时间.注意Firefox播放器如何在9:55启动,而Quicktime播放器则跳到9:54.

这是我的样本mp4文件,如果你想亲眼看看.
谢谢
我刚刚构建了一个在谷歌助手上运行的语音对话应用程序.但是,我无法弄清楚如何录制此应用程序的演示以便与其他人共享.我正在使用iPhone和Mac.视频录制部分工作正常,但我无法录制语音对话.
我尝试使用手机作为视频源进行QuickTime视频录制.如果我选择手机作为音频源,它会记录我的应用所说的内容,但它不会记录我说的内容.如果我选择我的麦克风麦克风作为源它记录我说的话(通过麦克风的麦克风),但它不会记录应用程序的内容(因为应用程序音频不再通过任何扬声器传入).
我究竟做错了什么?
在Mountain Lion(全新安装而不是从10.6或10.7升级),我在尝试创建QTMovie时面临问题,但有以下例外:
2012-08-17 15:34:49.434 DemoApp[15995:303] Failed to communicate with qtkitserver:
Connection invalid
2012-08-17 15:34:49.434 DemoApp [15995:303] Failed to initializeServer(), returned 5
2012-08-17 15:34:55.614 DemoApp [15995:303] Error - Error Domain=NSOSStatusErrorDomain Code=-2012
"The movie contains an invalid data reference." (invalidDataRef)
UserInfo=0x108ae9ca0 {NSLocalizedDescription=The movie contains an invalid data reference.}
Run Code Online (Sandbox Code Playgroud)
我的代码如下:
NSError *error = nil;
movie = [QTMovie movieWithURL:mediaURL error:&error];
NSLog(@"Error - %@", error);
Run Code Online (Sandbox Code Playgroud)
但"电影"对象是零.谁可以帮我这个事.
提前致谢,
每当我使用ffmpeg对HiDPI/Retina屏幕录制进行编码时,视频播放的大小为2倍,因此看起来很模糊,因为像素密度不会保留.
如何使用ffmpeg保留HiDPI屏幕录制的原始像素密度?
如何重现:
?1 Actual Size视图播放您在QuickTime Player中录制的视频.请注意,它在Retina显示屏上播放2:1,因此视频看起来很清晰.它的播放时间是实际录制像素的一半.使用ffmpeg使用如下命令对视频进行编码:
ffmpeg -i haha.mov -c:v libx264 -crf 23 haha-lg.mov
Run Code Online (Sandbox Code Playgroud)?1 Actual Size视图在QuickTime Player中播放新的ffmpeg压缩视频.请注意,它正在以1:1播放,因此视频看起来很模糊.为了澄清,视频看起来并不模糊,因为它是压缩的.相反,它看起来很模糊,因为视频的播放次数是应有的两倍,像素密度为1:1,而不是所需的2:1像素密度,可能是因为某些元数据在编码时被丢弃.
为了记录,VLC播放的视频太大(模糊).因此,能够播放HiDPI视频似乎是QuickTime Player的一项功能.
以下是ffmpeg显示原始屏幕录制的详细信息:
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'haha.mov':
Metadata:
major_brand : qt
minor_version : 0
compatible_brands: qt
creation_time : 2018-02-26T16:46:00.000000Z
com.apple.quicktime.make: Apple
com.apple.quicktime.model: iMac18,3
com.apple.quicktime.software: Mac OS X 10.13.3 (17D102)
com.apple.quicktime.creationdate: 2018-02-26T10:45:50-0600
Duration: 00:00:04.35, start: 0.000000, bitrate: 10947 kb/s
Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 1396x928 [SAR 1:1 …Run Code Online (Sandbox Code Playgroud) 通过照明电缆将 iPhone 设备连接到 Macbook Pro 并在 QuickTime Player 中从此 iPhone 启用“电影录制”后,我无法在 iPhone 设备上播放任何声音。
我的目标不是录制仅在屏幕上显示 iPhone 上正在发生的事情的电影,而是在设备上播放声音。启用从 iPhone 到 MacBook 屏幕的屏幕捕获会话后,我听不到 iPhone 的任何声音。
在以下情况下我只能听到音频: - 我将耳机连接到 iPhone,然后我可以在耳机中听到声音。- 在 QuickTime 中禁用捕获屏幕会话后声音又回来了,但这不是我想要的,因为现在我在 MacBook 屏幕上看不到 iPhone 屏幕。
难道我做错了什么?
我的 MacBook OSX:10.11.6,iOS:10.0.2
就这么简单
我跑
ffmpeg -i my_stack.mp4 -vcodec h264 -acodec aac -strict -2 out_video.mov
Run Code Online (Sandbox Code Playgroud)
我有输出文件 out_video.mov
然后我尝试用quicktime播放器打开它并得到
The file isn’t compatible with QuickTime Player.
Run Code Online (Sandbox Code Playgroud)
有人知道我应该运行什么命令来解决这个问题吗?
谢谢