开发多媒体播放音轨问题小结计划
民生法规 2021-08-24 13:35 字号: 大 中 小
1、什么是声(音)轨、声道?
在早先的VCD时代,一个媒体文件只有一个音轨。故“音轨”一词不常被人们提及。VCD媒体文件中的伴唱或原唱,只有通过切换左右声道来实现。
音轨是随着DVD而来的“产物”。在DVD(MPEG2格式)媒体文件中,一个音轨来记录一个语种(在VOD中常说的“原唱”和“伴唱”)。
2、如何切换音轨?
在这里,我推荐使用“Morgan Stream Switcher”Filter。音轨的切换,一般是使用Filter上实现的IAMStreamSelect接口中的Enable方法。例:
var
obj: IAMStreamSelect;
begin
if eryInterface(IID_IAMStreamSelect, obj) = S_OK then
begin
able(Index{音轨}, AMSTREAMSELECTENABLE_ENABLE);
obj := nil;
留下来征战本场比赛的只剩下替补甚至是预备队二线阵容。面对提前送到嘴边的 软柿子 end;
end;
3、如果切换声道?
切换声道,需要获取Audio Renderer Filter上的IBasicAudio接口(提示:神龙卡的IBasicAudio接口在hardware decoder Filter上获取)。使用该接口的put_Balance方法即可实现切换声道。
传入值说明:-10000 右声道
10000 左声道
0 立体声
4、如何知道媒体文件的音轨数?
一般来说,在播放媒体文件时,都需要File Source - Splitter。视Splitter Filter不同。获取的方法了也不尽相同。
比如,有一些MPEG的Splitter,有几个音轨,就会创建几个Audio Output Pin.这种情况,你可以取得该Splitter Filter上的Audio Output Pin的数量(就是音轨数量)还有一些MPEG的Splitter,不论有多少音轨,只会输出一个Audio Output Pin.这种情况,该Splitter上已经实现了IAMStreamSelect接口。调用该接口上的Count方法即可获得音轨数量。
5、引出的问题
在切换声道之后,只有一个音箱发声。推荐使用“TBalncer 音频声道均衡控件”。
查看本文来源
江中小儿健胃消食片石家庄哪医院治疗男科好
六盘水妇科医院
-
-
科尔格林赛后微笑相拥再大的仇打火箭就忘
科尔格林赛后微笑相拥! 再大的仇打火箭就忘科尔格林放下恩...
2020-08-13 | 民生法规
-
-
青海省冰壶队开始冰上训练精准打击目标明确
青海省冰壶队开始冰上训练 精准打击 目标明确根据省体育局...
2020-08-12 | 民生法规
-
-
海南迎来冬季旅游旺季邮轮游免税游会奖游受搭配
海南迎来冬季旅游旺季 邮轮游免税游会奖游受捧“听说海南开...
2020-06-06 | 民生法规
-
-
白雪皑皑着夏装陕西鳌山光猪滑勇敢者挑战冰搭配
白雪皑皑着夏装 陕西鳌山光猪滑勇敢者挑战冰雪由陕西太白鳌...
2020-06-02 | 民生法规
-
-
曝浓眉本赛季不会被雪藏他此前曾差点申诉搭配
曝浓眉本赛季不会被雪藏!他此前曾差点申诉直播吧2月8日讯...
2020-06-02 | 民生法规
-
-
凯尔特人官方曝欧文面部骨折或缺席明天比赛搭配
凯尔特人官方曝欧文面部骨折 或缺席明天比赛欧文受伤画面北...
2020-05-31 | 民生法规