ref: 32cb1d0119aa1d70eab4f21a9bdbfefbd299c299
parent: ae64d6cc645b83c922f85918a8f7c85693a85839
author: Sigrid Solveig Haflínudóttir <[email protected]>
date: Thu Feb 18 03:32:37 EST 2021
matroska: fix output sample rate
--- a/matroska.c
+++ b/matroska.c
@@ -169,13 +169,17 @@
trackinfo(Biobuf *o, Ebml *e)
{
char *t;
+ int rate;
+ rate = e->audio.outsamplerate;
+ if(rate == 0)
+ rate = e->audio.samplerate;
t = ebmltracktype(e->tracktype);
Bprint(o, "%d\t%s\t%s\t", e->tracknum, t, format(e));
if(e->tracktype == Etrackvideo)
Bprint(o, "%d\t%d", e->video.width, e->video.height);
else if(e->tracktype == Etrackaudio)
- Bprint(o, "%d\t%d", e->audio.channels, (int)e->audio.outsamplerate);
+ Bprint(o, "%d\t%d", e->audio.channels, rate);
else if(e->tracktype == Etracksubtitles)
Bprint(o, "%s", e->lang);
else
@@ -262,9 +266,6 @@
trackdump = e.tracknum;
else if(trackdump == Dumpaudio && e.tracktype == Etrackaudio)
trackdump = e.tracknum;
-
- if(e.tracktype == Etrackaudio && e.audio.outsamplerate == 0)
- e.audio.outsamplerate = e.audio.samplerate;
}
if(e.tracknum == trackdump)
memmove(&te, &e, sizeof(e));