Smooth Streaming2009. 11. 17. 09:20

이거 찾느라 참 힘들었다....


내가 생각한 SetBitRage가 맞는것이다....


현재 내가 쓰는 Control은 예전부터 쓰던 MediaElement이고 


Smooth Streaming Devolopkit beta1 을 깔면 SmoothStreamingMediaElement를 얻을수 있다....


MediaElement랑 비슷하지만 좀더 기능이 많고 최적화 되어있다....


내가 한 뻘짓은 


private void Button_Click(object sender, System.Windows.RoutedEventArgs e)
{
if (string.IsNullOrEmpty(InputBox.Text) == true)
return;

Uri uri = new Uri(InputBox.Text, UriKind.Absolute);

source = new AdaptiveStreamingSource();
source.MediaElement = Media;
source.ManifestUrl = new Uri(InputBox.Text);
//source.SetBitrateRange(MediaStreamType.Video, 100, 100);
//source.SetOfflinePlaybackBitrateInKbps(MediaStreamType.Video, 100);
source.PlayBitrateChange += new EventHandler<BitrateChangedEventArgs>(source_PlayBitrateChange);
source.StartPlayback();
GraphPanel.Children.Clear();
GraphPanel.Children.Add(source.StatisticsGraph);
}

이건 버튼을 클릭하면 Media라는 MediaElement에 ism영상을 보여주는것이다.


근데 SetBitrateRange를 위에서 보는거와 같이 설정해두었다


하지만 영상의 bitrate는 보이지 않았다. 이유는 player를 하기전에 세팅한거같아서 paenl에 add하고 넣어도 작동이 되지 않았다...


아 이 메서드가 아닌가? 싶어서 구글을 삿삿이 찾았지만 이 메소드를 쓴 사람이 전세계에 아무도 없었다....


하지만 버튼을 하나더 만들어서 플레이어 도중에 구현을 했더니


void xTestButton_Click(object sender, RoutedEventArgs e)
{
long minBitrate = 100;
long maxBitrate = 100;
source.SetBitrateRange(MediaStreamType.Video,minBitrate , maxBitrate);
MessageBoxResult messageBoxResult = MessageBox.Show("change bitrate" +minBitrate+" , " + maxBitrate);
}


작동이 잘되었다 아마 버그인가? 


아니면 내가 못한것일까?........


소스 :  [#FILE|SmoothStreamingSample.zip|pds/200911/17/37/|mid|0|0|pds15|0#]




Posted by 동동(이재동)