X-Git-Url: https://git.nihav.org/?a=blobdiff_plain;f=sndplay%2Fsrc%2Fmain.rs;h=4741853702fc81cedb211964d4b4993eade3d25c;hb=b452b665dbed05eff9b1560b220fadf1138d9f1d;hp=c368651a6815e68e3e87e8370d9972eabdc4c3c1;hpb=f8b39df7616777fbac588b4e7b1578ae5dba8ee0;p=nihav-player.git diff --git a/sndplay/src/main.rs b/sndplay/src/main.rs index c368651..4741853 100644 --- a/sndplay/src/main.rs +++ b/sndplay/src/main.rs @@ -303,8 +303,16 @@ impl Player { } let (dsupp, decoder) = dec.unwrap(); - let ainfo = ainfo.unwrap().get_properties().get_audio_info().unwrap(); - let arate = if ainfo.sample_rate > 0 { ainfo.sample_rate } else { 44100 }; + let info = ainfo.unwrap(); + let ainfo = info.get_properties().get_audio_info().unwrap(); + let sbr_hack = info.get_name() == "aac" && ainfo.sample_rate < 32000; + let arate = if ainfo.sample_rate > 0 { + if !sbr_hack { + ainfo.sample_rate + } else { + ainfo.sample_rate * 2 + } + } else { 44100 }; let ch = ainfo.channels; println!("Playing {} [{}Hz {}ch]", name, arate, ch);