Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: MythTV: Commits

Ticket #10086: 2->6 channel upmix results in buffer underruns

 

 

MythTV commits RSS feed   Index | Next | Previous | View Threaded


noreply at mythtv

Oct 10, 2011, 7:43 PM

Post #1 of 5 (76 views)
Permalink
Ticket #10086: 2->6 channel upmix results in buffer underruns

#10086: 2->6 channel upmix results in buffer underruns
---------------------------------------+-----------------------------------
Reporter: jpoet | Owner: jyavenard
Type: Bug Report - General | Status: new
Priority: minor | Milestone: unknown
Component: MythTV - Audio Output | Version: Unspecified
Severity: medium | Keywords: audio upmixer
Ticket locked: 0 | underrun
---------------------------------------+-----------------------------------
Watching a show with DD2.0 and timestretch enabled results in a log full
of

{{{
AudioOutputBase audio/audiooutputalsa.cpp:546 (WriteAudio) - ALSA:
WriteAudio: buffer underrun
}}}

Shows with native DD5.1 do not have this problem.

Turning off the 2.0 -> 5.1 upmixer fixes the problem.

I am ''guessing'' the problem is with the ALSA parameters being chosen,
but I don't know what needs tweaked.

With a 2.0 -> 5.1 upmixer enabled, I see
{{{
CoreContext audio/audiooutputbase.cpp:744 (Reconfigure) - AO: Opening
audio device 'hdmi:CARD=NVidia,DEV=3' ch 6(2) sr 48000 sf signed 32 bit
reenc 1
CoreContext audio/audiooutputalsa.cpp:139 (TryOpenDevice) - ALSA:
OpenDevice hdmi:CARD=NVidia,DEV=3
CoreContext audio/audiooutputalsa.cpp:634 (SetParameters) - ALSA:
SetParameters(format=10, channels=6, rate=48000, buffer_time=500000,
period_time=4)
CoreContext audio/audiooutputalsa.cpp:692 (SetParameters) - ALSA: Buffer
size range from 32 to 1398096
CoreContext audio/audiooutputalsa.cpp:695 (SetParameters) - ALSA: Period
size range from 16 to 699040
CoreContext audio/audiooutputalsa.cpp:712 (SetParameters) - ALSA: Buffer
time = 500000 us
CoreContext audio/audiooutputalsa.cpp:718 (SetParameters) - ALSA: Period
time = 4 periods
CoreContext audio/audiooutputalsa.cpp:727 (SetParameters) - ALSA: Buffer
size = 24000 | Period size = 6000
CoreContext audio/audiooutputbase.cpp:761 (Reconfigure) - AO: Audio
fragment size: 72000
}}}

With 2.0 audio, but the upmixer disabled, I see:
{{{
CoreContext audio/audiooutputbase.cpp:744 (Reconfigure) - AO: Opening
audio device 'hdmi:CARD=NVidia,DEV=3' ch 2(2) sr 48000 sf signed 16 bit
reenc 1
CoreContext audio/audiooutputalsa.cpp:139 (TryOpenDevice) - ALSA:
OpenDevice hdmi:CARD=NVidia,DEV=3
CoreContext audio/audiooutputalsa.cpp:634 (SetParameters) - ALSA:
SetParameters(format=2, channels=2, rate=48000, buffer_time=500000,
period_time=4)
CoreContext audio/audiooutputalsa.cpp:692 (SetParameters) - ALSA: Buffer
size range from 64 to 8388608
CoreContext audio/audiooutputalsa.cpp:695 (SetParameters) - ALSA: Period
size range from 32 to 4194304
CoreContext audio/audiooutputalsa.cpp:712 (SetParameters) - ALSA: Buffer
time = 500000 us
CoreContext audio/audiooutputalsa.cpp:718 (SetParameters) - ALSA: Period
time = 5 periods
CoreContext audio/audiooutputalsa.cpp:727 (SetParameters) - ALSA: Buffer
size = 24000 | Period size = 4800
CoreContext audio/audiooutputbase.cpp:761 (Reconfigure) - AO: Audio
fragment size: 9600
}}}

With native DD5.1, I see:
{{{
CoreContext audio/audiooutputbase.cpp:744 (Reconfigure) - AO: Opening
audio device 'hdmi:CARD=NVidia,DEV=3' ch 6(6) sr 48000 sf signed 16 bit
reenc 1
CoreContext audio/audiooutputalsa.cpp:139 (TryOpenDevice) - ALSA:
OpenDevice hdmi:CARD=NVidia,DEV=3
CoreContext audio/audiooutputalsa.cpp:634 (SetParameters) - ALSA:
SetParameters(format=2, channels=6, rate=48000, buffer_time=500000,
period_time=4)
CoreContext audio/audiooutputalsa.cpp:692 (SetParameters) - ALSA: Buffer
size range from 64 to 2796192
CoreContext audio/audiooutputalsa.cpp:695 (SetParameters) - ALSA: Period
size range from 32 to 1398080
CoreContext audio/audiooutputalsa.cpp:712 (SetParameters) - ALSA: Buffer
time = 500000 us
CoreContext audio/audiooutputalsa.cpp:718 (SetParameters) - ALSA: Period
time = 5 periods
CoreContext audio/audiooutputalsa.cpp:727 (SetParameters) - ALSA: Buffer
size = 24000 | Period size = 4800
CoreContext audio/audiooutputbase.cpp:761 (Reconfigure) - AO: Audio
fragment size: 28800
}}}

Another thing I noticed -- When the upmixer is turned off, or the show is
native DD5.1, it looks like timestretch is invoking a "Reconfigure", which
I don't see when upmix is enabled.

I am attaching three logs -- one with upmixer enabled, another with it
disabled, and one for a native DD5.1 show.

--
Ticket URL: <http://code.mythtv.org/trac/ticket/10086>
MythTV <http://code.mythtv.org/trac>
MythTV Media Center
_______________________________________________
mythtv-commits mailing list
mythtv-commits [at] mythtv
http://www.mythtv.org/mailman/listinfo/mythtv-commits


noreply at mythtv

Oct 11, 2011, 1:03 AM

Post #2 of 5 (64 views)
Permalink
Re: Ticket #10086: 2->6 channel upmix results in buffer underruns [In reply to]

#10086: 2->6 channel upmix results in buffer underruns
------------------------------------+-----------------------------
Reporter: jpoet | Owner: jyavenard
Type: Bug Report - General | Status: new
Priority: minor | Milestone: unknown
Component: MythTV - Audio Output | Version: Unspecified
Severity: medium | Resolution:
Keywords: audio upmixer underrun | Ticket locked: 0
------------------------------------+-----------------------------

Comment (by jyavenard):

I just can't reproduce the problem.
I too have a GT430, 1920x1080 video with stereo AC3 can be upmixed + time
stretch without problem.

I find it very surprising some of the reports by your cards in terms of
the memory available (it's like 10 times mine for audio buffer size, (I
use 4MB alsa hardware audio buffer size))

Your card reports that it supports channels 1,2,3,4,5,6,7,8 when hdmi
doesn't support any odd number of channels.

It looks to be an issue with your config somehow, and I just can't
reproduce it

--
Ticket URL: <http://code.mythtv.org/trac/ticket/10086#comment:1>
MythTV <http://code.mythtv.org/trac>
MythTV Media Center
_______________________________________________
mythtv-commits mailing list
mythtv-commits [at] mythtv
http://www.mythtv.org/mailman/listinfo/mythtv-commits


noreply at mythtv

Oct 11, 2011, 1:14 AM

Post #3 of 5 (64 views)
Permalink
Re: Ticket #10086: 2->6 channel upmix results in buffer underruns [In reply to]

#10086: 2->6 channel upmix results in buffer underruns
------------------------------------+-----------------------------
Reporter: jpoet | Owner: jyavenard
Type: Bug Report - General | Status: new
Priority: minor | Milestone: unknown
Component: MythTV - Audio Output | Version: Unspecified
Severity: medium | Resolution:
Keywords: audio upmixer underrun | Ticket locked: 0
------------------------------------+-----------------------------

Comment (by jyavenard):

Ok, I have the same alsa output when I use 32MB (the maximum) for the
hardware buffer... still no issue however

--
Ticket URL: <http://code.mythtv.org/trac/ticket/10086#comment:2>
MythTV <http://code.mythtv.org/trac>
MythTV Media Center
_______________________________________________
mythtv-commits mailing list
mythtv-commits [at] mythtv
http://www.mythtv.org/mailman/listinfo/mythtv-commits


noreply at mythtv

Oct 14, 2011, 11:56 PM

Post #4 of 5 (59 views)
Permalink
Re: Ticket #10086: 2->6 channel upmix results in buffer underruns [In reply to]

#10086: 2->6 channel upmix results in buffer underruns
------------------------------------+-----------------------------
Reporter: jpoet | Owner: jyavenard
Type: Bug Report - General | Status: new
Priority: minor | Milestone: unknown
Component: MythTV - Audio Output | Version: Unspecified
Severity: medium | Resolution:
Keywords: audio upmixer underrun | Ticket locked: 0
------------------------------------+-----------------------------

Comment (by jyavenard):

This is the output playing file 2269_20110910180000.mpg.

Note how AC3 is for me detected as 2 channels, and immediately after as 6
channels (so it does passthrough). Activating timestretch and it goes back
to being 2 channels audio. Something is wrong in AVD determining the
number of audio channels of the stream.
The file plays fine for me however, though without timestretch, as it's
seen as 6 channels AC3 by default upmixing isn't active.

I have noticed once that it keeps pausing/resuming audio. Pause/Resume is
sent from AVFD/MythPlayer, someone needs to check why those are happening.
Nothing to do with the audio framework.

--
Ticket URL: <http://code.mythtv.org/trac/ticket/10086#comment:3>
MythTV <http://code.mythtv.org/trac>
MythTV Media Center
_______________________________________________
mythtv-commits mailing list
mythtv-commits [at] mythtv
http://www.mythtv.org/mailman/listinfo/mythtv-commits


noreply at mythtv

Feb 5, 2012, 5:10 PM

Post #5 of 5 (31 views)
Permalink
Re: Ticket #10086: 2->6 channel upmix results in buffer underruns [In reply to]

#10086: 2->6 channel upmix results in buffer underruns
------------------------------------+------------------------------
Reporter: jpoet | Owner: jyavenard
Type: Bug Report - General | Status: closed
Priority: minor | Milestone: unknown
Component: MythTV - Audio Output | Version: Unspecified
Severity: medium | Resolution: Works for me
Keywords: audio upmixer underrun | Ticket locked: 0
------------------------------------+------------------------------
Changes (by jyavenard):

* status: new => closed
* resolution: => Works for me


--
Ticket URL: <http://code.mythtv.org/trac/ticket/10086#comment:4>
MythTV <http://code.mythtv.org/trac>
MythTV Media Center
_______________________________________________
mythtv-commits mailing list
mythtv-commits [at] mythtv
http://www.mythtv.org/mailman/listinfo/mythtv-commits

MythTV commits RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact Gossamer Threads
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.