[mythtv-users] Upmixing with 0.25
Karl Newman
siliconfiend at gmail.com
Tue May 15 04:25:37 UTC 2012
I'm experiencing some problems trying to get audio upmixing working
the way I want. First of all, kudos to whoever wrote the built-in
upmixing code. I don't know how, but it seems to turn a simple stereo
signal into some nice pseudo-surround effects, where all the dialog is
through the front/center speaker(s), and music, laugh tracks, etc. is
in the surround channels. Unfortunately this is not how I want it to
work. I was hoping for a simpler upmixing where the front channels are
simply cloned to the rear channels and shared in the center and LFE
channels. That way I can use my rear speakers behind my head to hear
better without having to crank up the volume. I have had this working
perfectly since about version 0.17 using a custom asound.conf
(system-wide asoundrc) with the route plugin and ttable into an A52
encoder. The problem I'm encountering now is that using a custom
asound.conf causes mythfrontend to freeze until the process is killed.
The end of the log looks like this:
2012-05-14 20:16:42.759162 I [13032/13032] CoreContext tv_play.cpp:987
(TV) - TV: Creating TV object
2012-05-14 20:16:42.778330 N [13032/13032] CoreContext
mythmainwindow.cpp:2590 (PauseIdleTimer) - Resuming idle timer
2012-05-14 20:16:42.778420 N [13032/13032] CoreContext
mythmainwindow.cpp:2585 (PauseIdleTimer) - Suspending idle timer
2012-05-14 20:16:42.780692 I [13032/13032] CoreContext
tv_play.cpp:1206 (Init) - TV: Created TvPlayWindow.
2012-05-14 20:16:42.795295 I [13032/13032] CoreContext
tv_play.cpp:2121 (HandleStateChange) - TV: Attempting to change from
None to WatchingPreRecorded
2012-05-14 20:16:42.881358 E [13032/13032] CoreContext
audio/audiooutputalsa.cpp:172 (GetPCMInfo) - ALSA:
snd_pcm_info_get_card: Operation not permitted
2012-05-14 20:16:42.892038 N [13032/13032] CoreContext
audioplayer.cpp:167 (ReinitAudio) - AudioPlayer: Enabling Audio
2012-05-14 20:16:42.923354 I [13032/13032] CoreContext
avformatdecoder.cpp:2102 (ScanStreams) - AFD: Opened codec
0x7fed358a4590, id(MPEG2VIDEO) type(Video)
2012-05-14 20:16:42.923365 I [13032/13032] CoreContext
avformatdecoder.cpp:1960 (ScanStreams) - AFD: codec MP2 has 2 channels
2012-05-14 20:16:42.923392 I [13032/13032] CoreContext
avformatdecoder.cpp:2102 (ScanStreams) - AFD: Opened codec
0x7fed358718a0, id(MP2) type(Audio)
2012-05-14 20:16:42.923446 I [13032/13032] CoreContext
audio/audiooutputbase.cpp:791 (Reconfigure) - AO: Opening audio device
'default' ch 2(2) sr 48000 sf signed 16 bit reenc 0
At this point mythfrontend is locked up showing "Please Wait" and has
to be killed. (The same thing happens if I do a Test on the Audio
setup screen).
This asound.conf works perfectly with aplay and speaker-test, so I
know the configuration still works. Here's the asound.conf file:
pcm.!default {
type plug
slave.pcm "ch51dup"
}
ctl.!default {
type hw
card 0
}
pcm.ch51dup {
type route
slave.pcm "surround51"
slave.channels 6
ttable.0.0 1
ttable.1.1 1
ttable.0.2 1
ttable.1.3 1
ttable.0.4 0.5
ttable.1.4 0.5
ttable.0.5 0.5
ttable.1.5 0.5
}
pcm.!surround51
{
type plug
slave.pcm "ac3enc"
}
pcm.!surround40 "ac3enc"
pcm.ac3enc {
type a52
bitrate 448
channels 6
}
ctl.ac3enc {
type hw
card 0
}
If I type ALSA:default or ALSA:ch51dup for the audio device, I get the
lockup. I didn't try any other named pcms. Also, the overridden pcms
(default and surround51) don't show up in the audio scan any more. If
I start mythtv without the asound.conf, they are detected (but they
point to analog outputs).
One major complicating factor is that before the 0.25 upgrade came
out, my 6 year old nVidia chipset motherboard + AMD CPU died and I
replaced it with an Intel Core i3 on an H67 (Cougar Point)
motherboard. I upgraded to 0.25 for the VAAPI support (which is
another problem), but I don't know if this problem existed on 0.24 for
this motherboard/CPU. I've searched through the mailing list and bug
database but unfortunately I seem to be alone in my trouble. I tried a
bunch of settings in the Audio and Advanced Audio but it still froze.
Other pertinent information: Using Gentoo (amd64), compiled with
gcc-4.6.3. Output of mythfrontend--version:
Please attach all output as a file in bug reports.
MythTV Version : v0.25-51-g1a671d0
MythTV Branch : fixes/0.25
Network Protocol : 72
Library API : 0.25.20120408-1
QT Version : 4.7.4
Options compiled in:
linux profile use_hidesyms using_alsa using_oss using_backend
using_bindings_perl using_bindings_python using_bindings_php
using_frontend using_hdhomerun using_ceton using_hdpvr using_iptv
using_ivtv using_libcrypto using_libxml2 using_libudf using_lirc
using_mheg using_opengl_video using_qtwebkit using_qtscript
using_qtdbus using_v4l2 using_x11 using_xrandr using_xv
using_bindings_perl using_bindings_python using_bindings_php
using_mythtranscode using_opengl using_vaapi using_ffmpeg_threads
using_live using_mheg using_libass using_libxml2 using_libudf
Any ideas how I can accomplish my goal of duplicating the front
channels to the rear?
Thanks,
Karl
More information about the mythtv-users
mailing list