Opened 10 years ago

Last modified 19 months ago

#3595 open enhancement

Support >6 channels in E-AC-3 audio encoder

Reported by: Ridley Combs Owned by:
Priority: wish Component: avcodec
Version: git-master Keywords: eac3
Cc: LigH, rodger.combs@gmail.com, j.kis@me.com, hoffbrinkle@hotmail.com, Nomis101@web.de, ohneherren@gmail.com Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

E-AC-3 supports up to 15 full-bandwidth channels, but libavcodec's encoder currently doesn't support 6.1 and 7.1 channel layouts. Do these layouts just need to be added to ff_ac3_channel_layouts, or would this require additional work on the encoder?

Attachments (5)

snip.eac3 (500.0 KB ) - added by LigH 8 years ago.
7.1 channel Blu-ray E-AC-3 with 5.1 AC-3 core and 2 dependent substreams
7.1sample1.dts (666.1 KB ) - added by ackbc 4 years ago.
7.1sample2.thd (400.3 KB ) - added by ackbc 4 years ago.
7.1sample3.eac3 (282.0 KB ) - added by ackbc 4 years ago.
7.1sample3.mka (287.8 KB ) - added by ackbc 4 years ago.

Change History (36)

comment:1 by Carl Eugen Hoyos, 10 years ago

Priority: minorwish
Reproduced by developer: set
Status: newopen
Summary: Support >5 channels in E-AC-3 audioSupport >6 channels in E-AC-3 audio

comment:2 by LigH, 8 years ago

This does not only belong to the E-AC-3 encoder, but also to the decoder or the format recognition in general. There is a report in the German doom9/Gleitz video forum that ffmpeg does not even recognize a 7.1 channel Blu-ray audio stream correctly, which consists of a 5.1 AC-3 core and additional E-AC-3 channels. It may have been related to a slightly older version; a rather current ffmpeg version (N-81308-g369ed11, 2016-08-09) prints a warning that it will handle only the 5.1 core:

[eac3 @ 0000000002a8f900] Dependent substream decoding is not implemented. Update your FFmpeg version to the newest one from Git. If the problem still occurs, it means that your file has a feature which has not been implemented.
[eac3 @ 0000000002a8f900] If you want to help, upload a sample of this file to ftp://upload.ffmpeg.org/incoming/ and contact the ffmpeg-devel mailing list. (ffmpeg-devel@ffmpeg.org)

Possibly relevant: MediaInfo does not recognize it correctly either (e.g. reports an obviously improbable bitrate of 500 bytes per second).

by LigH, 8 years ago

Attachment: snip.eac3 added

7.1 channel Blu-ray E-AC-3 with 5.1 AC-3 core and 2 dependent substreams

comment:3 by Carl Eugen Hoyos, 8 years ago

Cc: LigH added

Is this the one sample we know about (from a demo disk) or a new file?

comment:4 by LigH, 8 years ago

AFAIK it's a new file, extracted from a Blu-ray by a Gleitz forum member.

http://forum.gleitz.info/showthread.php?47670-e-ac3-richtig-convertieren

comment:5 by Carl Eugen Hoyos, 8 years ago

Then please ask for a longer sample that provides actual audible sound (at least 2,5M) and ask which Bluray this is.

Last edited 8 years ago by Carl Eugen Hoyos (previous) (diff)

comment:6 by Carl Eugen Hoyos, 8 years ago

Two minute eac3 7.1 sample (that does not come from the demo disk) uploaded to http://samples.ffmpeg.org/ffmpeg-bugs/trac/ticket3595/

in reply to:  2 comment:7 by dcxero, 7 years ago

Replying to LigH:

Possibly relevant: MediaInfo does not recognize it correctly either (e.g. reports an obviously improbable bitrate of 500 bytes per second).

MediaInfo only seems to have a bug reading 7.1 Dolby Digital Plus tracks authored using the Blu-ray Disc profile (which is what the other samples use). It can read 7.1 Dolby Digital Plus tracks authored using the standard profile (which is used more for software and file/streaming distribution)

Here is a Standard profile 7.1 sample: https://www.datafilehost.com/d/ae18d85c

Last edited 7 years ago by dcxero (previous) (diff)

comment:8 by Elon Musk, 6 years ago

Summary: Support >6 channels in E-AC-3 audioSupport >6 channels in E-AC-3 audio encoder

comment:9 by johnesz, 6 years ago

Cc: j.kis@me.com added

comment:10 by hoffer, 5 years ago

Cc: hoffbrinkle@hotmail.com added

comment:11 by ackbc, 4 years ago

Reproduced by developer: unset

ffmpeg doesn't support encode 7.1 files into 7.1 EAC3

i've uploaded some samples for testing (three 7.1 files), i hope it could support 7.1 EAC3 encode, input output
the closed, dupe ticket https://trac.ffmpeg.org/ticket/8519

update: samples uploaded here.

Last edited 4 years ago by ackbc (previous) (diff)

by ackbc, 4 years ago

Attachment: 7.1sample1.dts added

by ackbc, 4 years ago

Attachment: 7.1sample2.thd added

by ackbc, 4 years ago

Attachment: 7.1sample3.eac3 added

by ackbc, 4 years ago

Attachment: 7.1sample3.mka added

comment:12 by Carl Eugen Hoyos, 4 years ago

Reproduced by developer: set

comment:13 by Nomis101, 4 years ago

Cc: Nomis101@web.de added

This is also an annoying issue for HandBrake: https://github.com/HandBrake/HandBrake/issues/1085
What makes it so difficult to support >6 channels for E-AC3 encoding?

comment:14 by Elon Musk, 4 years ago

Missing actual sponsor.

in reply to:  14 comment:15 by Nomis101, 4 years ago

Replying to richardpl:

Missing actual sponsor.

Thats all? How to find a sponsor? Who can be a sponsor?

comment:16 by Elon Musk, 4 years ago

The one with lot of money.

comment:17 by LigH, 4 years ago

They possibly mean: someone willing to pay for access to confidential specifications, level "trade secret, and we have lawyers to protect it".

comment:18 by Elon Musk, 4 years ago

Nope, look what I said and please stop spreading false information.

in reply to:  18 comment:19 by Jim DeLaHunt, 4 years ago

Replying to richardpl:

Nope, look what I said and please stop spreading false information.

I'm new to the ticket. @richardpl, I'm afraid your comment:14 is a bit too cryptic for me to understand, especially given how in comment:18 you seem to say that the interpretation in comment:17 is "false information".

Could you please say clearly what you mean by "missing actual sponsor"? What does the sponsor do with their "lot of money"? Who do they give it to? How does it help?

It seems to me that part of what that money would do is pay for access to specifications. But you apparently don't mean that. Maybe it would pay a competent developer to write the necessary code? What do you mean, please?

comment:20 by Elon Musk, 4 years ago

It means to write code. Specification is already available.

comment:21 by LigH, 4 years ago

Regarding code, I would call that rather "contributor" than "sponsor". Hence the misunderstanding, maybe... contributing code is hopefully not bound to huge amounts of money. At least I wish.

comment:22 by Elon Musk, 4 years ago

If you want to contribute code and time without any compensation, be my guest.

comment:23 by Andrew, 4 years ago

Cc: ohneherren@gmail.com added

comment:24 by tmchow, 3 years ago

Is this fixed now because #4608 was fixed? Or is the 8 channel fix in #4608 something unique that doesn't help 7 channel?

Last edited 3 years ago by tmchow (previous) (diff)

in reply to:  24 ; comment:25 by Nomis101, 3 years ago

Replying to tmchow:

Is this fixed now because #4608 was fixed?

No, it is not. This is about encoder, #4608 is about decoder.

in reply to:  25 comment:26 by tmchow, 3 years ago

Replying to Nomis101:

Replying to tmchow:

Is this fixed now because #4608 was fixed?

No, it is not. This is about encoder, #4608 is about decoder.

Ah, got it! thanks.

comment:27 by Balling, 21 months ago

Plex ffmpeg fork supports 8 channel eac3 encoder.

in reply to:  27 comment:28 by Nomis101, 21 months ago

Replying to Balling:

Plex ffmpeg fork supports 8 channel eac3 encoder.

Could their changes be ported to ffmpeg?

in reply to:  27 ; comment:29 by Carl Eugen Hoyos, 21 months ago

Replying to Balling:

Plex ffmpeg fork supports 8 channel eac3 encoder.

Where can this version be found?

in reply to:  29 ; comment:30 by Jann Gobble, 19 months ago

Replying to Carl Eugen Hoyos:

Replying to Balling:

Plex ffmpeg fork supports 8 channel eac3 encoder.

Where can this version be found?

This is the most current fork source code of ffmpeg for Plex:
https://downloads.plex.tv/ffmpeg-source/plex-media-server-ffmpeg-gpl-be22e264c2.tar.gz

in reply to:  30 comment:31 by Balling, 19 months ago

Replying to Jann Gobble:

Replying to Carl Eugen Hoyos:

Replying to Balling:

Plex ffmpeg fork supports 8 channel eac3 encoder.

Where can this version be found?

This is the most current fork source code of ffmpeg for Plex:
https://downloads.plex.tv/ffmpeg-source/plex-media-server-ffmpeg-gpl-be22e264c2.tar.gz

This literally has nothing on EAE. Eae.exe is here: https://downloads.plex.tv/codecs/1785/windows-x86_64-standard/EasyAudioEncoder-windows-x86_64-standard.zip

Last edited 19 months ago by Balling (previous) (diff)
Note: See TracTickets for help on using tickets.