<div dir="ltr">On Thu, Sep 8, 2016 at 12:33 AM Sebastian Dröge <<a href="mailto:sebastian@centricular.com">sebastian@centricular.com</a>> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Wed, 2016-09-07 at 23:14 +0000, John P Poet wrote:<br>
> <br>
> Hi Sebastian,<br>
><br>
> I am attaching my attempt at this.<br>
<br>
Thanks, can you put it into Bugzilla? We're using that for patch review<br>
/ discussions:<br>
<br>
  <a href="https://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer" rel="noreferrer" target="_blank">https://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer</a></blockquote><div><br></div><div>Will do.<br> <br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">> Unfortunately it does not quite work.  I cannot figure out how to get<br>
> 8 channels of audio encoded into ac3.  With this pipeline:<br>
><br>
> ```<br>
> gst-launch-1.0 decklinkvideosrc device-number=${DEVICE} mode=0 !<br>
> queue ! autovideoconvert ! deinterlace mode=2 ! queue !<br>
> avenc_mpeg2video bitrate=800000 ! mpegvideoparse ! mpegtsmux name=mux<br>
> ! filesink location=video.ts decklinkaudiosrc device-number=${DEVICE}<br>
> audio-channels=8 ! audioconvert ! avenc_ac3 bitrate=640000 ! ac3parse<br>
> ! queue ! mux.<br>
> ```<br>
> [...]<br>
<br>
Are the caps set to 8 channels on decklinkaudiosrc?<br></blockquote><div><br></div><div>Yes.<br> <br>Also avenc_ac3 only supports up to 6 channels, not 8. So audioconvert<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
would convert to something else.<br></blockquote><div><br></div><div>Okay.  I assumed it could handle 7.1.  If AC3 is a bad choice, what would you recommend?<br> <br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
The number of channels should also be negotiated via caps, similar to<br>
what other elements are doing, instead of a property.<br>
<br>
> Note: If I set the channel mask to zero, then those pipelines don't<br>
> run at all.<br>
<br>
The problem with setting it to anything else is that you give meaning<br>
to each channel (the position), which you don't have with decklink. You<br>
have 8 unpositioned channels and if anything you can know their<br>
positions from the application.<br>
<br>
As such, using 0 as channel mask is the right thing to do here. And it<br>
would be the applications job to set the actual channel mask via a<br>
capssetter or similar.<br></blockquote><div><br></div><div>I am far from an expert with gstreamer.  It would help me greately if someone could provide me with a pipeline what should work in this situation.  Maybe an example of writing 8/16 channels of PCM (LPCM?) audio to a container, or any other audio encoding which can handle that many channels.<br><br></div><div>Thank you,<br><br></div><div>John<br>   <br></div><div> </div></div></div>