HDMI for Channels

I am going to try USB ADB debugging using this HUB later on connected to my Channels DVR Server. To see how the response is Instead of wireless ADB debugging. Just curious to see if it even works ... I am a Tinkerer.

BTW that usb to 12 v Adapter powered my 4 Input Encoder so took off the brick.

I'm amazed. That hub has got to be delivering more than the USB3 standard 1.5 amps per port. Not complaining of course. What's the listed amp requirement of your encoder @ 12V?

12 V 2A

MY PC after a reboot picked the ADB devices Via USB .(serial #s) ... So I am going to setup USB ADB and not have to worry about IP's on my devices,

Just corrected the USB3 spec number to 1.5A, so that's 7.5W -- which is a long way from the 24W your encoder says it could need. Probably worth a test run to be sure encoding 4 simultaneous streams isn't going to ruin recordings you care about. PoE+ (30W) would be a safer bet, if you have it as an option.

EDIT: And to further muddy the waters, 1.5A is supposed to be for dedicated USB3 charging devices -- .9A was correct for standard devices, so 4.5W for certified products (which maybe this hub isn't given the language mix printed on it). I'll put a USB power meter on it when I get a chance.

Anyone in here using a hauppauge colossus 2 or hdpvr 2 in linux? I am trying to test something to get video feed into Channels. I made some headway but my scripting skill are limited to inelegant brute force.

I experimented a bit with a USB HDMI adapter on OSX.

The issue with most of those is they capture a raw stream which is huge, so you have to use ffmpeg to re-encode it. Here's a simple way to pipe that into Channels DVR:

#EXTM3U
#EXTINF:-1 channel-id="hdpvr2", HDPVR
udp://127.0.0.1:33444

Then run:

ffmpeg -i /dev/video0 -c:v h264 -b:v 8000k -f mpegts udp://127.0.0.1:33444

Which should pull the video feed from the capture device, encode the video at 8mbps, then send it to port 33444 where the DVR is listening for video data.

On Linux you can use /dev/videoX like above

On macOS the video capture happens via avfoundation, which ffmpeg also supports. To see a list of capture devices:

$ ffmpeg -hide_banner -f avfoundation -list_devices 1 -i /dev/null
[AVFoundation indev @ 0x14ee04e10] AVFoundation video devices:
[AVFoundation indev @ 0x14ee04e10] [0] Studio Display Camera
[AVFoundation indev @ 0x14ee04e10] [1] Elgato Virtual Camera
[AVFoundation indev @ 0x14ee04e10] [2] Cam Link 4K
[AVFoundation indev @ 0x14ee04e10] [3] iphone Camera
[AVFoundation indev @ 0x14ee04e10] [4] Capture screen 0

You can see "Cam Link 4K" is marked as [2]. You can use that as so:

ffmpeg -f avfoundation -framerate 60 -i "2" -c:v h264_videotoolbox -b:v 8000k udp://127.0.0.1:33444

1 Like

I have seen HDMI USB capture cards that do hardware encoding on the device and pass mpeg4 streams. I'll try to dig it back up.

Testing stream for now [hopefully the more skillfull ones will help to refine it]

/opt/Hauppauge/bin/hauppauge2 --serial E505-00-00AF2C6B -i 3 -a 3 -d 2 |  ffmpeg -i - -vcodec copy -acodec copy -f mpegts -tune zerolatency -listen 1  udp://127.0.0.1:1234/stream

It plays with 5.1 audio when called on like so:

ffplay udp://localhost:1234/stream

It plays with 5.1 audio when called on like so:

Wait, for real? Which card are you using specifically you mentioned 2?

1 Like

For real man.

Here is a video of where I am currently at:

1 Like

Which card is that? I'll promptly order one for my linux box and help test.

Sorry, steped away. Hauppauge Colossus 2.

https://www.amazon.com/Hauppauge-Colossus-Express-Internal-HD-PVR/dp/B00WMJMDG6/ref=asc_df_B00WMJMDG6/?tag=hyprod-20&linkCode=df0&hvadid=309743296044&hvpos=&hvnetw=g&hvrand=9300924594825467615&hvpone=&hvptwo=&hvqmt=&hvdev=c&hvdvcmdl=&hvlocint=&hvlocphy=9026223&hvtargid=pla-556736748717&psc=1

Can confirm this one will work. The linux driver casts it as a usb device. There are in fact usb versions but some of them do not work with the driver so I will hold of on recommending them for now

I think trying to power my 4 devices and the encoder was pushing it. So I will use the Brick.

Thanks! I'll experiment tomorrow and get it working with the HDMI code.

probably the best solution here would be to teach androidhdmi-for-channels to be able run this hauppage command (without the ffmpeg pipe bit) as an alternative to a http url for the underlying video stream.

I went the path of the http url because I saw where androidhdmi-for-channels seemed url dependent. Are you saying ti should work if I simply input the first part of the command?

not currently but that's what @KompilerDJ is working to add

Some context generally for anyone interested in testing this out.

The driver for linux can be found here:

In one of his more recent posts the developer wanted to know if anyone was willing the take over the project since he does not have the device anymore. If you are capable and willing...

If you are tempted to try out one of the usb versions of the card (hdpvr 2) please note that for now only SOME of the ones with a spidf port will give you ac3 audio (dd 5.1) both via the port and via hdmi.

The ones that currently do that with the driver are the ones with a mini usb out port at the back. They are the newer ones apparently. At the back of them you will see a model number like 1573xxx Rev. x.

The ones with the spidif port and the standard sized usb out port will only give ac3 output in Windows! The linux driver needs some work apparently. These ones will have model number that read 1572xxx

There are no such problems with the colossus 2, the pice version of the card linked above.

I currently run a few of these on a linux based nextpvr server dedicated to movie capture.

2 Likes

Pretty much done - will be testing tomorrow. Finally we can get some 5.1 love.

PS: thinking of adding device capture support as well. Or maybe that could just be a fancy shell cmd?

2 Likes

No epg set up yet but output seems solid in channels dvr.

2 Likes