HDMI to RCA Audio and NTSC or PAL Video Adapter (ADA3365)

This is a placeholder topic for “HDMI to RCA Audio and NTSC or PAL Video Adapter” comments.



Do you have a display, television, projector or some other older device that isn’t compatible with your HDMI devices? Here’s an adapter that will allow you to convert … read more

Read more

My tv has hdmi, my dvd player has rca, (red, white and yellow holes in back) Can you help me please?

I’m using this to get audio out of my headless Pi400.
So far no joy.

It could be:
a) The rasp isn’t configured properly. (Maybe because It’s headless?)
b) I’m working with it through ssh and the protocol is trying to route audio back to my PC in some cursed way.
c) My program sucks…
d) The device is faulty…

What I need is some tests.
I can test d), I have a dvd player I can use.
I think I’ve ruled out c) since the I had the same code running on my laptop yesterday.
However I have no way to test a) or b).

I am reasonably sure that it’s a config issue on the pi because the default device I’m pulling is:

name = default
sample format range: SampleRate(1) – SampleRate(384000) Hz, 1-ch

…but I’d expect something like “vsd_hdmi1” and a sample rate of maybe 48k.

What are some simple headless tests I can try to make sure everything is configured correctly?

Hi there @Pixmusix,

A) Most likely outcome, but headless Pi’s should still be able to play audio. Are you able to get video? Can you do the following commands:

sudo raspi-config
Go to System Options
Make sure that there is something under audio that would point towards the device.

B) would involve streaming the audio to remote user, something that would need to be setup explicitly, so we can probably rule it out.

C) Possible, would you be able to share your code?

D) Definitely worth testing the device with something else so we can rule it out.

Hi ChristineKaye
Your DVD player should surely have HDMI which will carry audio and video to the TV.
If not your TV might have the same Red, White and Yellow connectors. This is composite A/V and will have poorer resolution than a HDMI connection.

If you can’t meet these requirements you will need some form of adaptor if any such beast exists.

The device that is the subject of this post is the wrong way around for you. You would need to convert composite A/V to HDMI.
Cheers Bob
Just noticed this post is 6 years old. Surely a solution has been found during this time. Everything is probably obsolete by now anyway.

Good instincts! Thanks @Jane
I always forget about raspi-config. So useful.

Anyway, raspi-config politely informed me that, apparently, I didn’t have an audio device at all. :man_shrugging:

So that sent me down a rabbit hole.
I got there in the end thanks to the pipewire docs which are just awesome.


I added this to my /boot/firmware/config.txt file.

hdmi_force_hotplug=1
hdmi_drive=2

Next, I chucked a sneaky little sudo reboot

That got me a the hdmi0 port showing in raspberry pi config which I selected.

With an actual host device and driver, I rebooted pulse-audio which kindly gave me a sink.

systemctl --user restart pipewire pipewire-pulse 
wpctl status | grep -A5 Sinks #Show me noisy things

Once I did all that cpal was satiated and her wrath turned away. :+1:

use cpal::traits::{DeviceTrait, HostTrait};
fn main() -> Result<(), Box<dyn Error>> {
    // Let's ensure we have a sink before we proceed  
    let host = cpal::default_host();
    let device = host.default_output_device().expect("no audio devices.. gross!");
    let dev_conf = device.default_output_config()?;

    println!("name = {}", device.name().unwrap_or_else(|_| "dead device _ do not use".into()));
    println!("{:?}", dev_conf);

    Ok(())
}

console
name = default
SupportedStreamConfig { channels: 2, sample_rate: SampleRate(44100), buffer_size: Range { min: 1, max: 4194304 }, sample_format: F32 }

2 Likes

Glad to hear you got it sorted, Pix.

I know what you mean about raspi-config though, it feels almost like a gui so I always forget that I can use it via SSH.