nixpkgs/pkgs/development/libraries/libmkv/A02-audio-out-sampling-freq.patch

29 lines
1.1 KiB
Diff
Raw Normal View History

diff --git a/include/libmkv.h b/include/libmkv.h
index 146a91f..f03d608 100644
--- a/include/libmkv.h
+++ b/include/libmkv.h
@@ -203,6 +204,7 @@ struct mk_TrackConfig_s {
} video;
struct {
float samplingFreq; /* Sampling Frequency in Hz */
+ float outputSamplingFreq; /* Playback Sampling Frequency in Hz (e.g. for AAC w/SBR) */
unsigned channels; /* Number of channels for this track */
unsigned bitDepth; /* Bits per sample (PCM) */
} audio;
diff --git a/src/tracks.c b/src/tracks.c
index f9c7e48..a2a60ca 100644
--- a/src/tracks.c
+++ b/src/tracks.c
@@ -174,6 +174,11 @@ mk_Track *mk_createTrack(mk_Writer *w, mk_TrackConfig *tc)
/* SamplingFrequency */
if (mk_writeFloat(v, MATROSKA_ID_AUDIOSAMPLINGFREQ, tc->extra.audio.samplingFreq) < 0)
return NULL;
+ if (tc->extra.audio.outputSamplingFreq) {
+ /* Output SamplingFrequency */
+ if (mk_writeFloat(v, MATROSKA_ID_AUDIOOUTSAMPLINGFREQ, tc->extra.audio.outputSamplingFreq) < 0)
+ return NULL;
+ }
/* Channels */
if (mk_writeUInt(v, MATROSKA_ID_AUDIOCHANNELS, tc->extra.audio.channels) < 0)
return NULL;