Page 1 of 3 123 LastLast
Results 1 to 10 of 30

Thread: TrueHD, DTS-HD, E-AC3 Over HDMI On Linux

Hybrid View

  1. #1
    Join Date
    Jan 2007
    Posts
    15,193

    Default TrueHD, DTS-HD, E-AC3 Over HDMI On Linux

    Phoronix: TrueHD, DTS-HD, E-AC3 Over HDMI On Linux

    Here's another interesting bit of news that just arrived into the Phoronix inbox this Thanksgiving: it's now possible to do TrueHD, DTS-HD, and E-AC3 over HDMI on Linux via FFmpeg. The TrueHD/DTS-HD/E-AC3 support is added to one of FFmpeg muxers to allow HDMI pass-through for these formats. DTS-HD/DTS-HD MA audio up to this point hasn't been supported under Linux and it's used by a sizable portion of the Blu-ray media currently on the market...

    http://www.phoronix.com/vr.php?view=ODgyOA

  2. #2
    Join Date
    Feb 2009
    Posts
    375

    Default

    It's cool to see this support, even though I have no intention of getting a bluray drive any time soon.

  3. #3
    Join Date
    Jan 2010
    Location
    Portugal
    Posts
    945

    Default

    Quote Originally Posted by benmoran View Post
    It's cool to see this support, even though I have no intention of getting a bluray drive any time soon.
    I second that. I don't know if blu-ray is having a good acceptance rate, but for me DVD already has pretty good image quality. I don't think there's so much difference as was the case when switching from VHS to DVD. The medium also takes up the same space (once again another big advantage for DVD over VHS), and they both have the same physical resistance. It probably only makes sense with a big ass TV, but even then I'm not sure if media streaming isn't more interesting than physical media. Oh, and then there's the question of the stupid name. Blu-Ray (what happened to the "e"? It seems one of those Kool names from the 80's)... a big advantage of CD and DVD names is that those work in any language. Blu-Ray is too anglicized and so not so universal as predecessor. Anyway, this news is actually good, since more functionality doesn't hurt

  4. #4
    Join Date
    Oct 2008
    Posts
    898

    Default

    Quote Originally Posted by devius View Post
    I don't know if blu-ray is having a good acceptance rate, but for me DVD already has pretty good image quality.
    DVD is going the way of VHS.

    I don't think there's so much difference as was the case when switching from VHS to DVD.
    Watch a Blu-Ray on an HD television, then make that assessment. You won't notice any difference if you are still using standard definition.

  5. #5
    Join Date
    Jun 2008
    Location
    Perth, Scotland
    Posts
    441

    Default

    I've only just worked out how to get my machine to decode regular old AC3 and DTS in software from an external source without passing it through. Seems I'm a generation behind! There's surprisingly little information about it around though. If everyone out there has fancy decoder boxes these days, it's news to me. I hope to write some software to make this a bit easier because switching from one codec to another currently requires manual intervention. It's not nice when my 360 suddenly switches from PCM to AC3 and I get a horrible noise.

  6. #6
    Join Date
    Aug 2009
    Posts
    2,264

    Default

    I fscking hate this closed crap! I want it, but I can't get it

  7. #7
    Join Date
    Oct 2009
    Location
    Tampere, Finland
    Posts
    26

    Default Call for testing

    (I'm the poster of the patchset)

    We are in need of testers of TrueHD / DTS-HD passthrough (no ffmpeg patching needed).

    To the best of our knowledge, only two people (me and Carl Eugen) have tested this so far, and it isn't working for one of them (Carl Eugen). We don't know why; we need more testers to figure out what is going on.

    If you have
    • Intel or NVIDIA based graphics with HDMI output (e.g. GeForce G210, NVS 3100M, etc)
    • Not an old NVIDIA card that is connected to the motherboard audio card with an extra S/PDIF cable
    • Not GeForce 9400
    • You are using the open-source intel driver or the proprietary NVIDIA driver
    • Kernel 2.6.36 or newer
    • HDMI cable connected to a receiver that supports TrueHD and/or DTS-HD,

    it would be appreciated if you could try the following:

    You can find the two preprocessed test files in http://samples.mplayerhq.hu/hdmi/.

    For the duration of the test, add the following to ~/.asoundrc (You need to uncomment either "card NVidia" or "card Intel" line, depending on your hardware):
    Code:
    ## begin hdtest stuff
    pcm.hdmihdtest {
            @args [ DEVICE CTLINDEX ]
            @args.DEVICE { type integer }
            @args.CTLINDEX { type integer }
            type hooks
            slave.pcm {
                    type hw
    # Uncomment the correct one of the below lines:
    #                card NVidia
    #                card Intel
                    device $DEVICE
            }
            hooks.0 {
                    type ctl_elems
                    hook_args [
                    {
                            name "IEC958 Playback Default"
                            index $CTLINDEX
                            lock true
                            preserve true
                            value [ 0x06 0x82 0x00 0x01 ]
                    }
                    {
                            name "IEC958 Playback Switch"
                            index $CTLINDEX
                            lock true
                            preserve true
                            value true
                    }
                    ]
            }
    }
    pcm.hdmihdtest0 { @func refer name "pcm.hdmihdtest:DEVICE=3,CTLINDEX=0" }
    pcm.hdmihdtest1 { @func refer name "pcm.hdmihdtest:DEVICE=7,CTLINDEX=1" }
    pcm.hdmihdtest2 { @func refer name "pcm.hdmihdtest:DEVICE=8,CTLINDEX=2" }
    pcm.hdmihdtest3 { @func refer name "pcm.hdmihdtest:DEVICE=9,CTLINDEX=3" }
    ## end hdtest stuff
    Make sure the HDMI audio ports are all enabled with alsa mixer (the ports are commonly called "S/PDIF", possibly with a number), with one of the two following commands:
    Code:
    alsamixer -c NVidia
    alsamixer -c Intel
    Also, you must use enable the HDMI output and set a 1280x720 or higher mode into the HDMI output (you'll probably need a TV plugged into the A/V receiver for this).

    Then, you can try playing the test samples with the following commands (where "file.spdif" is replaced with one of the above test samples):
    Code:
    aplay -D hdmihdtest0 -c8 -fs16_le -r192000 file.spdif
    aplay -D hdmihdtest1 -c8 -fs16_le -r192000 file.spdif
    aplay -D hdmihdtest2 -c8 -fs16_le -r192000 file.spdif
    aplay -D hdmihdtest3 -c8 -fs16_le -r192000 file.spdif
    There are four different commands because there may be up to 4 HDMI codecs on board. Only one of them will work reliably, but it depends on the card and the HDMI port. Note that the files are only several seconds long; we are only interested in whether your receiver recognizes them.

    After testing, please provide the following information:
    • Card and GPU type or codename (GT218, etc. see e.g. /var/log/Xorg.0.log)
    • Display driver version
    • Kernel version and ALSA version (/proc/asound/version)
    • Model name of the receiver
    • Which of the test files work or won't work

    If you can't provide all information, partial reports are fine as well.

    You can post the results here, in the nvnews thread, or send them to me at anssi.hannula@iki.fi.

  8. #8
    Join Date
    Feb 2009
    Posts
    7

    Thumbs up

    Quote Originally Posted by Anssi View Post
    (I'm the poster of the patchset)

    We are in need of testers of TrueHD / DTS-HD passthrough (no ffmpeg patching needed).

    ...
    You can post the results here, in the nvnews thread, or send them to me at anssi.hannula@iki.fi.
    I have an Intel i3 with HDMI connected to an Onkyo SR607. I'll try this as soon as possible.

    And thanks a lot for all of you guys that spend time on this wonderful (much expected) feature.

    Cheers!

  9. #9
    Join Date
    Feb 2009
    Posts
    7

    Default

    Quote Originally Posted by marriouss View Post
    I have an Intel i3 with HDMI connected to an Onkyo SR607. I'll try this as soon as possible.

    And thanks a lot for all of you guys that spend time on this wonderful (much expected) feature.

    Cheers!
    Kernel: 2.6.37-020637rc2-generic #201011160905 SMP
    Alsa: 1.0.23
    Driver: xserver-xorg-video-intel 2.12.0
    Receiver: Onkyo SR 607
    Files that work: none


    aplay -D hdmihdtest0 -c8 -fs16_le -r192000 dts.spdif
    ALSA lib conf.c:4643snd_config_expand) Expand error (walk): File exists
    ALSA lib confmisc.c:1286snd_func_refer) Unable to find definition 'pcm.hdmihdtestEVICE=3,CTLINDEX=0'
    ALSA lib conf.c:4170_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
    ALSA lib conf.c:4649snd_config_expand) Evaluate error: No such file or directory
    ALSA lib pcm.c:2208snd_pcm_open_noupdate) Unknown PCM hdmihdtest0
    aplay: main:654: audio open error: No such file or directory

    -- the same for the other, just with different DEVICE/CTLINDEX


    aplay -L
    default
    pulse
    Playback/recording through the PulseAudio sound server
    front:CARD=Intel,DEV=0
    HDA Intel, ALC892 Analog
    Front speakers
    surround40:CARD=Intel,DEV=0
    HDA Intel, ALC892 Analog
    4.0 Surround output to Front and Rear speakers
    surround41:CARD=Intel,DEV=0
    HDA Intel, ALC892 Analog
    4.1 Surround output to Front, Rear and Subwoofer speakers
    surround50:CARD=Intel,DEV=0
    HDA Intel, ALC892 Analog
    5.0 Surround output to Front, Center and Rear speakers
    surround51:CARD=Intel,DEV=0
    HDA Intel, ALC892 Analog
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
    surround71:CARD=Intel,DEV=0
    HDA Intel, ALC892 Analog
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
    iec958:CARD=Intel,DEV=0
    HDA Intel, ALC892 Digital
    IEC958 (S/PDIF) Digital Audio Output
    hdmi:CARD=Intel,DEV=0
    HDA Intel, HDMI 0
    HDMI Audio Output
    hdmi:CARD=Intel,DEV=1
    HDA Intel, HDMI 1
    HDMI Audio Output
    dmix:CARD=Intel,DEV=0
    HDA Intel, ALC892 Analog
    Direct sample mixing device
    dmix:CARD=Intel,DEV=1
    HDA Intel, ALC892 Digital
    Direct sample mixing device
    dmix:CARD=Intel,DEV=3
    HDA Intel, HDMI 0
    Direct sample mixing device
    dmix:CARD=Intel,DEV=7
    HDA Intel, HDMI 1
    Direct sample mixing device
    dsnoop:CARD=Intel,DEV=0
    HDA Intel, ALC892 Analog
    Direct sample snooping device
    dsnoop:CARD=Intel,DEV=1
    HDA Intel, ALC892 Digital
    Direct sample snooping device
    dsnoop:CARD=Intel,DEV=3
    HDA Intel, HDMI 0
    Direct sample snooping device
    dsnoop:CARD=Intel,DEV=7
    HDA Intel, HDMI 1
    Direct sample snooping device
    hw:CARD=Intel,DEV=0
    HDA Intel, ALC892 Analog
    Direct hardware device without any conversions
    hw:CARD=Intel,DEV=1
    HDA Intel, ALC892 Digital
    Direct hardware device without any conversions
    hw:CARD=Intel,DEV=3
    HDA Intel, HDMI 0
    Direct hardware device without any conversions
    hw:CARD=Intel,DEV=7
    HDA Intel, HDMI 1
    Direct hardware device without any conversions
    plughw:CARD=Intel,DEV=0
    HDA Intel, ALC892 Analog
    Hardware device with all software conversions
    plughw:CARD=Intel,DEV=1
    HDA Intel, ALC892 Digital
    Hardware device with all software conversions
    plughw:CARD=Intel,DEV=3
    HDA Intel, HDMI 0
    Hardware device with all software conversions
    plughw:CARD=Intel,DEV=7
    HDA Intel, HDMI 1
    Hardware device with all software conversions



    What am I doing wrong?

  10. #10
    Join Date
    Jan 2007
    Posts
    459

    Default

    Quote Originally Posted by Anssi View Post
    (I'm the poster of the patchset)

    We are in need of testers of TrueHD / DTS-HD passthrough (no ffmpeg patching needed).

    To the best of our knowledge, only two people (me and Carl Eugen) have tested this so far, and it isn't working for one of them (Carl Eugen). We don't know why; we need more testers to figure out what is going on.

    If you have
    • Intel or NVIDIA based graphics with HDMI output (e.g. GeForce G210, NVS 3100M, etc)
    • Not an old NVIDIA card that is connected to the motherboard audio card with an extra S/PDIF cable
    • Not GeForce 9400
    • You are using the open-source intel driver or the proprietary NVIDIA driver
    • Kernel 2.6.36 or newer
    • HDMI cable connected to a receiver that supports TrueHD and/or DTS-HD,

    it would be appreciated if you could try the following:

    You can find the two preprocessed test files in http://samples.mplayerhq.hu/hdmi/.

    For the duration of the test, add the following to ~/.asoundrc (You need to uncomment either "card NVidia" or "card Intel" line, depending on your hardware):
    Code:
    ## begin hdtest stuff
    pcm.hdmihdtest {
            @args [ DEVICE CTLINDEX ]
            @args.DEVICE { type integer }
            @args.CTLINDEX { type integer }
            type hooks
            slave.pcm {
                    type hw
    # Uncomment the correct one of the below lines:
    #                card NVidia
    #                card Intel
                    device $DEVICE
            }
            hooks.0 {
                    type ctl_elems
                    hook_args [
                    {
                            name "IEC958 Playback Default"
                            index $CTLINDEX
                            lock true
                            preserve true
                            value [ 0x06 0x82 0x00 0x01 ]
                    }
                    {
                            name "IEC958 Playback Switch"
                            index $CTLINDEX
                            lock true
                            preserve true
                            value true
                    }
                    ]
            }
    }
    pcm.hdmihdtest0 { @func refer name "pcm.hdmihdtest:DEVICE=3,CTLINDEX=0" }
    pcm.hdmihdtest1 { @func refer name "pcm.hdmihdtest:DEVICE=7,CTLINDEX=1" }
    pcm.hdmihdtest2 { @func refer name "pcm.hdmihdtest:DEVICE=8,CTLINDEX=2" }
    pcm.hdmihdtest3 { @func refer name "pcm.hdmihdtest:DEVICE=9,CTLINDEX=3" }
    ## end hdtest stuff
    Make sure the HDMI audio ports are all enabled with alsa mixer (the ports are commonly called "S/PDIF", possibly with a number), with one of the two following commands:
    Code:
    alsamixer -c NVidia
    alsamixer -c Intel
    Also, you must use enable the HDMI output and set a 1280x720 or higher mode into the HDMI output (you'll probably need a TV plugged into the A/V receiver for this).

    Then, you can try playing the test samples with the following commands (where "file.spdif" is replaced with one of the above test samples):
    Code:
    aplay -D hdmihdtest0 -c8 -fs16_le -r192000 file.spdif
    aplay -D hdmihdtest1 -c8 -fs16_le -r192000 file.spdif
    aplay -D hdmihdtest2 -c8 -fs16_le -r192000 file.spdif
    aplay -D hdmihdtest3 -c8 -fs16_le -r192000 file.spdif
    There are four different commands because there may be up to 4 HDMI codecs on board. Only one of them will work reliably, but it depends on the card and the HDMI port. Note that the files are only several seconds long; we are only interested in whether your receiver recognizes them.

    After testing, please provide the following information:
    • Card and GPU type or codename (GT218, etc. see e.g. /var/log/Xorg.0.log)
    • Display driver version
    • Kernel version and ALSA version (/proc/asound/version)
    • Model name of the receiver
    • Which of the test files work or won't work

    If you can't provide all information, partial reports are fine as well.

    You can post the results here, in the nvnews thread, or send them to me at anssi.hannula@iki.fi.
    Anssi,I assume your using (x264 developers) Kierank's (Kieran Kunhya) and Kemuri9's (Steven Walters) code-base as your basis for these patches ?, i don't see any mention of their contribution in the patch-set though!

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •