mpv2 mp4录制

本文介绍了如何使用mp4v2库创建MP4文件,特别是针对h264+aac的视频音频流进行录制。通过MP4Create、MP4SetTimeScale等接口实现文件创建、时间标度设置,MP4AddH264VideoTrack和MP4AddAudioTrack用于添加视频和音频轨道,MP4WriteSample则用于写入样本数据。同时,文章提到了设置参数的重要性,如MP4SetTrackESConfiguration用于配置音频解码信息,避免音视频不同步或崩溃的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

                                                                                                                           MP4录制

MP4录制程序是根据mpeg4ip中mpeg4ip-1.5.0.1\server\mp4live\file_mp4_recorder.cpp文件改的。程序支持h264+aac(raw 流)的写入方式,用到了动态库mp4v2-2.0.0,不要用mpeg4ip中那个较老的版本,因为在录制大文件时会有效率问题,下面是一些mp4v2接口的简介。

 

MP4FileHandle MP4Create (const char* fileName,uint32_t  flags)
功能:创建MP4文件句柄。
 返回:MP4文件句柄。
 参数:fileName 要录制的MP4文件名;flags 创建文件类型,如果要创建普通文件用默认值0就可以,如要录制大于4G的MP4文件此处要设置MP4_CREATE_64BIT_DATA。

 

bool MP4SetTimeScale( MP4FileHandle hFile, uint32_t value )
功能:设置时间标度。
返回:成功返回true,失败返回false。
参数:hFile MP4文件句柄,value 要设置的值(每秒的时钟ticks数)。

 

MP4TrackId MP4AddH264VideoTrack(MP4FileHandle hFile,
                            

### 如何在 Ubuntu 系统上使用 mpv 播放器 #### 1. 安装 mpv 播放器 要在 Ubuntu 上安装 `mpv` 播放器,可以按照以下方法操作: 通过官方仓库安装: ```bash sudo apt update sudo apt install mpv ``` 如果希望获取最新版本或者开发版功能,则可以通过 PPA 添加源并安装: ```bash sudo add-apt-repository ppa:mc3man/mpv-tests sudo apt update sudo apt install mpv ``` 此命令会启用一个测试性质的 PPA 来提供更新更快的功能支持[^2]。 --- #### 2. 启动与基本用法 启动 `mpv` 只需打开终端并运行如下命令即可加载指定媒体文件: ```bash mpv /path/to/video/file.mp4 ``` 上述路径应替换为实际存在的视频文件位置。对于网络资源链接同样适用: ```bash mpv https://example.com/video.mp4 ``` 还可以直接拖拽本地文件到终端窗口来快速构建播放命令[^4]。 --- #### 3. 配置自定义设置 为了进一步优化体验,可编辑配置文件实现个性化调整。默认情况下,用户的全局配置位于 `~/.config/mpv/mpv.conf` 和按键映射表保存于同一目录下的 `input.conf` 文件中。 以下是几个常用选项的例子写入方式: - **提升画质**:增加去噪强度和平滑效果 将下面这行加入至 `mpv.conf` 中: ```conf cscale=ewa_lanczossharp dscale=spline36 ``` - **修改快捷键绑定** 编辑 `input.conf` ,例如更改退出程序热键由原来的 `q` 改成 `Esc` 键: ```conf ESC quit ``` 更多高级参数详情参见官方手册[^3]。 --- #### 4. 快捷键概览 掌握一些常用的键盘控制能够极大提高效率。下述列举部分重要组合键及其作用[^5]: | 功能 | 默认快捷键 | |-------------------------|------------------| | 增加音量 | ↑ 或者 Shift+Up | | 减少音量 | ↓ 或者 Shift+Down | | 跳过向前 | → | | 返回 | ← | | 切换全屏模式 | f | 完整的交互列表可通过访问官网文档查阅获得更多信息。 --- #### 5. 进阶技巧——录制屏幕作为输入源 除了常规多媒体处理外,借助 FFmpeg 工具还能完成实时抓取桌面画面并通过管道传递给 MPV 显示出来。执行类似这样的脚本片段即刻生效: ```bash ffmpeg -f x11grab -video_size $(xdpyinfo | grep dimensions | awk '{print $2}') -i :0.0 -c:v libx264rgb -crf 0 -preset ultrafast -pix_fmt bgr0 -framerate 60 -vf format=bgra -f matroska - ``` 随后将其输出重定向供给另一个进程消费: ```bash ... | mpv - ``` 这样就实现了无缝衔接的效果。 ---
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值