RK3399 去掉HDMI音频

简介: RK3399 去掉HDMI音频

audio_policy_rk30board.conf

# devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_ALL_SCO|AUDIO_DEVICE_OUT_AUX_DIGITAL|AUDIO_DEVICE_OUT_SP
devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_ALL_SCO|AUDIO_DEVICE_OUT_SPDIF

dts修改

&hdmi_sound {
  status: "disabled"
}

如果tinyalsa_hal/audio_hw.h中有对应的宏,将其注释

如PCM_CARD_HDMI

RK3288 HDMI配置和调试



RK3288
最大输出分辨率为 3840x2160

HDMI 驱动代码位于 kernel/drivers/video/rockchip/hdmi/rockchip-hdmiv2

目录

1、设置默认输出分辨率

网上的资源是修改 kernel/drivers/video/rockchip/hdmi/rockchip-hdmiv2中的 rockchip-hdmi.h 文件,

/* HDMI defaultvide mode */

#define HDMI_VIDEO_DEFAULT_MODE    HDMI_1280X720P_60HZ

官方文档中是修改板级 dts 文件,路径为kernel\arch\arm\boot\dts\xxx.dts

在 hdmi 节点中添加 rockchip,defaultmode = <value>,<value>值可以在 rockchip-hdmi.h的 hdmi_video_infomation_code 中查到相应值。

hdmi_video_infomation_code是一个枚举数组,从 1 开始,想设置哪个分辨率,value 值就填此分辨率的序号。

设置前首先得支持此分辨率。查看支持的分辨率:cat/sys/class/display/HDMI/modes

例如,设置默认分辨率为1280x720P60Hz输出:

//路径:kernel\arch\arm\boot\dts\xxx.dts

&hdmi {

   status = "okay";

   rockchip,hdmi_video_source = <DISPLAY_SOURCE_LCDC1>;

   rockchip,defaultmode = <4>;

};

//路径:kernel\drivers\video\rockchip\hdmi\rockchip-hdmi.h

/* HDMI videoinformation code according CEA-861-F */

enum hdmi_video_infomation_code {

   HDMI_640X480P_60HZ = 1,

   HDMI_720X480P_60HZ_4_3,

   HDMI_720X480P_60HZ_16_9,

   HDMI_1280X720P_60HZ,

       ...

}

2、调试方法

                                            本帖隐藏的内容

查看sink设备的EDID信息,含原始数据和解析后信息。

cat /sys/class/display/HDMI/debug

shell@xxx:/ $ cat/sys/class/display/HDMI/debug

//EDID状态

EDID status:Okay

//原始数据

Raw Data:

0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x05, 0xe3, 0x80, 0x22, 0xfd, 0x05, 0x00, 0x00,

0x0e, 0x1a, 0x01, 0x03, 0xa0, 0x30, 0x1b, 0x78, 0xba, 0x5a, 0x65, 0xa7, 0x56, 0x52, 0x9c, 0x27,

0x0f, 0x50, 0x54, 0xbf, 0xef, 0x00, 0xd1, 0xc0, 0xb3, 0x00, 0x95, 0x00, 0x81, 0x80, 0x81, 0x40,

0x81, 0xc0, 0x01, 0x01, 0x01, 0x01, 0x02, 0x3a, 0x80, 0x18, 0x71, 0x38, 0x2d, 0x40, 0x58, 0x2c,

0x45, 0x00, 0xdd, 0x0c, 0x11, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00, 0xfd, 0x00, 0x32, 0x4c, 0x1e,

0x53, 0x11, 0x00, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x32,

0x32, 0x38, 0x30, 0x57, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x00, 0x00, 0xff,

0x00, 0x41, 0x42, 0x38, 0x30, 0x36, 0x31, 0x34, 0x5a, 0x30, 0x31, 0x35, 0x33, 0x33, 0x01, 0xa8,

0x02, 0x03, 0x1b, 0x71, 0x23, 0x09, 0x07, 0x07, 0x83, 0x01, 0x00, 0x00, 0x67, 0x03, 0x0c, 0x00,

0x10, 0x00, 0x80, 0x21, 0x43, 0x01, 0x10, 0x84, 0xe2, 0x00, 0x0f, 0x01, 0x1d, 0x00, 0x72, 0x51,

0xd0, 0x1e, 0x20, 0x6e, 0x28, 0x55, 0x00, 0x81, 0x49, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00,

0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xbf,

******** Show SinkInfo ********

//最大***s通道时钟频率

Max ***s clk is 0

//支持的分辨率

Support videomode:

        1920x1080p@60Hz

        1280x720p@60Hz

//支持的视频颜色模式

Support videocolor mode: RGB YCbCr422 YCbCr444

//支持的视频颜色位深

Support videocolor depth: 24bit

//支持的音频类型

Support audiotype: LPCM

//支持的最大音频通道

Support max audiochannel is 2

//支持的音频采样速率

Support audiosample rate: 32000 44100 48000

//支持的音频字长

Support audio wordlenght: 16bit 20bit 24bit

查看支持的分辨率

$ cat/sys/class/display/HDMI/modes

查看当前分辨率

$ cat/sys/class/display/HDMI/mode

切换分辨率

$ echo1920x1080p-60 > /sys/class/display/HDMI/mode

查看HDMI是否连接

$ cat/sys/class/display/HDMI/connect

查看HDMI使能状态

$ cat/sys/class/display/HDMI/enable

设置HDMI使能,<value> 可取0或1,0表示关闭,1表示开启。

$ echo<value> > /sys/class/display/HDMI/enable

修改输出颜色

$ echomode=<value> > /sys/class/display/HDMI/color

mode = 0 是自动模式,优先级为:

YCbCr444[16-235]> YCbCr422[16-235] > RGB[16-235] > RGB[0-255]

mode = 1 是RGB[0-255]

mode = 2 是RGB[16-235]

mode = 3 是YCbCr444[16-235]

mode = 4 是YCbCr422[16-235]

查看3D模式

$ cat/sys/class/display/HDMI/3dmode

设置3D模式

$ echo<value> > /sys/class/display/HDMI/3dmode

<value>可以取以下值:

0:Frame packing

6:Top and Bottom

8:Side by Side Half

在 make menuconfig 中打开内核的 Debug 选项,可以查看更多的Log信息。

Device Drivers --->

    Graphics support --->

        Rockchip HDMI support --->

            Rockchip HDMI Debugging



目录
相关文章
|
3月前
|
编解码 语音技术 内存技术
FFmpeg开发笔记(五十八)把32位采样的MP3转换为16位的PCM音频
《FFmpeg开发实战:从零基础到短视频上线》一书中的“5.1.2 把音频流保存为PCM文件”章节介绍了将媒体文件中的音频流转换为原始PCM音频的方法。示例代码直接保存解码后的PCM数据,保留了原始音频的采样频率、声道数量和采样位数。但在实际应用中,有时需要特定规格的PCM音频。例如,某些语音识别引擎仅接受16位PCM数据,而标准MP3音频通常采用32位采样,因此需将32位MP3音频转换为16位PCM音频。
99 0
FFmpeg开发笔记(五十八)把32位采样的MP3转换为16位的PCM音频
|
5月前
|
存储 计算机视觉
通过视频帧提取及批量取模转换实现基于STC32的点阵LED动画播放
【8月更文挑战第25天】该方案概述了如何通过视频帧提取与批量取模转换技术,在STC32微控制器上实现点阵LED动画播放。步骤分为:1) 视频帧提取:选用合适的视频处理库(如OpenCV)或专用工具,将视频按指定帧率逐帧转存为图片;2) 批量取模转换:利用自定义或第三方工具将图片转换成适用于点阵LED显示的格式;3) 在STC32上实现动画播放:完成硬件连接后,通过SPI/I2C等接口从存储器读取取模数据,并设计定时器中断等机制控制帧切换,最终呈现流畅动画效果。此外,还需进行必要的优化和调试以改善显示质量。
|
7月前
|
编解码 Linux 计算机视觉
python 调用ffmpeg使用usb摄像头录制视频,输出h264格式,自动获取摄像头的最佳帧率和最大画面尺寸
使用 Python 调用 FFmpeg 进行 USB 摄像头视频录制,需先确保安装 FFmpeg 和 Python 的 `subprocess` 模块。代码示例展示了如何自动获取摄像头的最佳帧率和最大分辨率,然后录制视频。首先通过 FFmpeg 列出摄像头格式获取信息,解析出帧率和分辨率,选择最优值。之后调用 FFmpeg 命令录制视频,设置帧率、分辨率等参数。注意 `/dev/video0` 是 Linux 的摄像头设备路径,Windows 系统需相应调整。代码中未直接实现自动获取最佳参数,通常需要借助其他库如 OpenCV。
|
编解码 前端开发 安全
详细讲解ffmpeg命令的使用(视频合并&avi转MP4&补空白音频【收藏下来一定用的到】)
您好,我是码农飞哥,感谢您阅读本文,欢迎一键三连哦。 本文从实战的角度出发详细讲解ffmpeg命令的使用。 干货满满,建议收藏,需要用到时常看看。 小伙伴们如有问题及需要,欢迎踊跃留言哦~ ~ ~。
2338 0
详细讲解ffmpeg命令的使用(视频合并&avi转MP4&补空白音频【收藏下来一定用的到】)
|
语音技术 内存技术
用C/CCC++实现输出双声道(立体声).wav 文件
audioCodec为1,channels为2,samplesPerSec为8000(非常重要)。samplesPerSec设置为8000的原因是需要用16000/2,也就是要用采样率除以通道数。这样做的原因是立体声设置语音内容时将左右声道的语音数据打散交叉放置到内容中。
|
物联网
【BLE MIDI】MIDI 文件速度设置识别 ( 查找 midi 文件中速度相关的二进制数据 | FF 51 03 速度设置指令 )
【BLE MIDI】MIDI 文件速度设置识别 ( 查找 midi 文件中速度相关的二进制数据 | FF 51 03 速度设置指令 )
244 0
【BLE MIDI】MIDI 文件速度设置识别 ( 查找 midi 文件中速度相关的二进制数据 | FF 51 03 速度设置指令 )
【FFmpeg】ffmpeg 命令查询二 ( 比特流过滤器 | 可用协议 | 过滤器 | 像素格式 | 标准声道布局 | 音频采样格式 | 颜色名称 )(四)
【FFmpeg】ffmpeg 命令查询二 ( 比特流过滤器 | 可用协议 | 过滤器 | 像素格式 | 标准声道布局 | 音频采样格式 | 颜色名称 )(四)
210 0
【FFmpeg】ffmpeg 命令查询二 ( 比特流过滤器 | 可用协议 | 过滤器 | 像素格式 | 标准声道布局 | 音频采样格式 | 颜色名称 )(四)
|
数据安全/隐私保护
【FFmpeg】ffmpeg 命令查询二 ( 比特流过滤器 | 可用协议 | 过滤器 | 像素格式 | 标准声道布局 | 音频采样格式 | 颜色名称 )(二)
【FFmpeg】ffmpeg 命令查询二 ( 比特流过滤器 | 可用协议 | 过滤器 | 像素格式 | 标准声道布局 | 音频采样格式 | 颜色名称 )(二)
188 0
【FFmpeg】ffmpeg 命令查询二 ( 比特流过滤器 | 可用协议 | 过滤器 | 像素格式 | 标准声道布局 | 音频采样格式 | 颜色名称 )(二)
|
编解码
【FFmpeg】ffmpeg 命令查询二 ( 比特流过滤器 | 可用协议 | 过滤器 | 像素格式 | 标准声道布局 | 音频采样格式 | 颜色名称 )(三)
【FFmpeg】ffmpeg 命令查询二 ( 比特流过滤器 | 可用协议 | 过滤器 | 像素格式 | 标准声道布局 | 音频采样格式 | 颜色名称 )(三)
271 0
【FFmpeg】ffmpeg 命令查询二 ( 比特流过滤器 | 可用协议 | 过滤器 | 像素格式 | 标准声道布局 | 音频采样格式 | 颜色名称 )(三)
【FFmpeg】ffmpeg 命令查询二 ( 比特流过滤器 | 可用协议 | 过滤器 | 像素格式 | 标准声道布局 | 音频采样格式 | 颜色名称 )(一)
【FFmpeg】ffmpeg 命令查询二 ( 比特流过滤器 | 可用协议 | 过滤器 | 像素格式 | 标准声道布局 | 音频采样格式 | 颜色名称 )(一)
219 0
【FFmpeg】ffmpeg 命令查询二 ( 比特流过滤器 | 可用协议 | 过滤器 | 像素格式 | 标准声道布局 | 音频采样格式 | 颜色名称 )(一)