Hi Cristian, On Fri, Sep 16, 2016 at 10:27:57AM +0200, Cristian Ionescu-Idbohrn wrote: > Muammar, > > On Fri, 16 Sep 2016, Muammar El Khatib wrote: > > > > I hope you are still interested in this. > > Of course. >
Nice!. > > I have prepared a page in the wiki that you can check: > > > > https://github.com/muammar/mkchromecast/wiki/ALSA > > > > I would be glad if you could test it. Note that you have to checkout > > the `alsa` branch. > > I would also be glad to do so, if I could figure out how ~/.asoundrc > must look like. Currently, the minimal conf to get sound out the > audio card I prefer is: > > ,----[ ~/.asoundrc ] > | pcm.!default { > | type plug > | slave.pcm spdif > | } > `---- > > Here are some more details on the sound cards on my system: > I have prepared two .asoundrc files (asoundrc1 and asoundrc2). You may want to download them and try them as your .asoundrc file. > ,----[ cat /proc/asound/cards ] > | 0 [Live ]: EMU10K1 - SB Live! 5.1 [SB0060] > | SB Live! 5.1 [SB0060] (rev.7, serial:0x80611102) at > 0xd000, irq 17 asoundrc1 for the case where this is the right card: hw:0,0 is the device. > | 1 [PCH ]: HDA-Intel - HDA Intel PCH > | HDA Intel PCH at 0xf7230000 irq 29 asoundrc1 for the case where this is the right card: hw:1,0 is the device. > > ,----[ aplay -l ] > | **** List of PLAYBACK Hardware Devices **** > | card 0: Live [SB Live! 5.1 [SB0060]], device 0: emu10k1 [ADC > Capture/Standard PCM Playback] > | Subdevices: 32/32 > | Subdevice #0: subdevice #0 > | Subdevice #1: subdevice #1 > | Subdevice #2: subdevice #2 > | Subdevice #3: subdevice #3 > | Subdevice #4: subdevice #4 > | Subdevice #5: subdevice #5 > | Subdevice #6: subdevice #6 > | Subdevice #7: subdevice #7 > | Subdevice #8: subdevice #8 > | Subdevice #9: subdevice #9 > | Subdevice #10: subdevice #10 > | Subdevice #11: subdevice #11 > | Subdevice #12: subdevice #12 > | Subdevice #13: subdevice #13 > | Subdevice #14: subdevice #14 > | Subdevice #15: subdevice #15 > | Subdevice #16: subdevice #16 > | Subdevice #17: subdevice #17 > | Subdevice #18: subdevice #18 > | Subdevice #19: subdevice #19 > | Subdevice #20: subdevice #20 > | Subdevice #21: subdevice #21 > | Subdevice #22: subdevice #22 > | Subdevice #23: subdevice #23 > | Subdevice #24: subdevice #24 > | Subdevice #25: subdevice #25 > | Subdevice #26: subdevice #26 > | Subdevice #27: subdevice #27 > | Subdevice #28: subdevice #28 > | Subdevice #29: subdevice #29 > | Subdevice #30: subdevice #30 > | Subdevice #31: subdevice #31 > | card 0: Live [SB Live! 5.1 [SB0060]], device 2: emu10k1 efx [Multichannel > Capture/PT Playback] > | Subdevices: 8/8 > | Subdevice #0: subdevice #0 > | Subdevice #1: subdevice #1 > | Subdevice #2: subdevice #2 > | Subdevice #3: subdevice #3 > | Subdevice #4: subdevice #4 > | Subdevice #5: subdevice #5 > | Subdevice #6: subdevice #6 > | Subdevice #7: subdevice #7 > | card 0: Live [SB Live! 5.1 [SB0060]], device 3: emu10k1 [Multichannel > Playback] > | Subdevices: 1/1 > | Subdevice #0: subdevice #0 > | card 1: PCH [HDA Intel PCH], device 0: ALC892 Analog [ALC892 Analog] > | Subdevices: 1/1 > | Subdevice #0: subdevice #0 > | card 1: PCH [HDA Intel PCH], device 1: ALC892 Digital [ALC892 Digital] > | Subdevices: 1/1 > | Subdevice #0: subdevice #0 > | card 2: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0] > | Subdevices: 1/1 > | Subdevice #0: subdevice #0 > | card 2: NVidia [HDA NVidia], device 7: HDMI 1 [HDMI 1] > | Subdevices: 1/1 > | Subdevice #0: subdevice #0 > | card 2: NVidia [HDA NVidia], device 8: HDMI 2 [HDMI 2] > | Subdevices: 1/1 > | Subdevice #0: subdevice #0 > | card 3: Controller [USB Audio Controller], device 0: USB Audio [USB Audio] > | Subdevices: 1/1 > | Subdevice #0: subdevice #0 > | card 4: Loopback [Loopback], device 0: Loopback PCM [Loopback PCM] > | Subdevices: 8/8 > | Subdevice #0: subdevice #0 > | Subdevice #1: subdevice #1 > | Subdevice #2: subdevice #2 > | Subdevice #3: subdevice #3 > | Subdevice #4: subdevice #4 > | Subdevice #5: subdevice #5 > | Subdevice #6: subdevice #6 > | Subdevice #7: subdevice #7 > | card 4: Loopback [Loopback], device 1: Loopback PCM [Loopback PCM] > | Subdevices: 8/8 > | Subdevice #0: subdevice #0 > | Subdevice #1: subdevice #1 > | Subdevice #2: subdevice #2 > | Subdevice #3: subdevice #3 > | Subdevice #4: subdevice #4 > | Subdevice #5: subdevice #5 > | Subdevice #6: subdevice #6 > | Subdevice #7: subdevice #7 > `---- > > Cards 0 and 1 connected to speakers. > Now, your Loopback's index is 4, and mkchromecast command should be: python mkchromecast.py --encoder-backend ffmpeg --alsa-device hw:4,1 -c ogg --volume Did it work?. > > Regarding the two interfaces in your machine, was the chromecast > > detected? If yes, I think I can provide a flag where you can specify > > the ip of the host. > > Yeah, that may be needed. Not being able to figure out the alsa > configuration, I tried this: > > ,---- > | $ python ./mkchromecast.py --debug --discover > | None > | This option is not implemented yet. > `---- > I will activate this option. Sorry. > But the device is there. Nmap report: > > ,---- > | PORT STATE SERVICE > | 8008/tcp open http > | 8009/tcp open ajp13 > | MAC Address: 6C:AD:F8:xx:yy:zz (AzureWave Technology) > | Device type: general purpose > | Running: Linux 2.6.X|3.X > | OS CPE: cpe:/o:linux:linux_kernel:2.6 cpe:/o:linux:linux_kernel:3 > | OS details: Linux 2.6.32 - 3.10 > | Network Distance: 1 hop > `---- Thanks. -- Muammar El Khatib. Linux user: 403107. GPG Key = 71246E4A. http://muammar.me | http://proyectociencia.org ,''`. : :' : `. `' `-
pcm.!default { type asym playback.pcm "LoopAndReal" #capture.pcm "looprec" capture.pcm "hw:0,0" } pcm.looprec { type hw card "Loopback" device 1 subdevice 0 } pcm.LoopAndReal { type plug slave.pcm mdev route_policy "duplicate" } pcm.mdev { type multi slaves.a.pcm pcm.MixReale slaves.a.channels 2 slaves.b.pcm pcm.MixLoopback slaves.b.channels 2 bindings.0.slave a bindings.0.channel 0 bindings.1.slave a bindings.1.channel 1 bindings.2.slave b bindings.2.channel 0 bindings.3.slave b bindings.3.channel 1 } pcm.MixReale { type dmix ipc_key 1024 slave { pcm "hw:0,0" rate 48000 #rate 44100 periods 128 period_time 0 period_size 1024 # must be power of 2 buffer_size 8192 } } pcm.MixLoopback { type dmix ipc_key 1025 slave { pcm "hw:Loopback,0,0" rate 48000 #rate 44100 periods 128 period_time 0 period_size 1024 # must be power of 2 buffer_size 8192 } }
pcm.!default { type asym playback.pcm "LoopAndReal" #capture.pcm "looprec" capture.pcm "hw:1,0" } pcm.looprec { type hw card "Loopback" device 1 subdevice 0 } pcm.LoopAndReal { type plug slave.pcm mdev route_policy "duplicate" } pcm.mdev { type multi slaves.a.pcm pcm.MixReale slaves.a.channels 2 slaves.b.pcm pcm.MixLoopback slaves.b.channels 2 bindings.0.slave a bindings.0.channel 0 bindings.1.slave a bindings.1.channel 1 bindings.2.slave b bindings.2.channel 0 bindings.3.slave b bindings.3.channel 1 } pcm.MixReale { type dmix ipc_key 1024 slave { pcm "hw:1,0" rate 48000 #rate 44100 periods 128 period_time 0 period_size 1024 # must be power of 2 buffer_size 8192 } } pcm.MixLoopback { type dmix ipc_key 1025 slave { pcm "hw:Loopback,0,0" rate 48000 #rate 44100 periods 128 period_time 0 period_size 1024 # must be power of 2 buffer_size 8192 } }