Пример #1
0
 public static void Register()
 {
     foreach (KeyValuePair <string, Type> pair in youGetType)
     {
         SWFExtractor.RegisterExtractor(pair.Key, typeof(YouGetExtractor));
     }
 }
Пример #2
0
 static void Main(string[] args)
 {
     try
     {
         VideoURL videoURL = SWFExtractor.Extract("http://www.hunantv.com/v/1/1/f/1827705.html");
         System.Console.WriteLine("Normal URL: " + videoURL.NormalURL);
         foreach (KeyValuePair <String, String> pair in videoURL.URLs)
         {
             System.Console.WriteLine(pair.Key + ": " + pair.Value);
         }
     }
     catch (Exception ex)
     {
         System.Console.WriteLine(ex.Message);
     }
 }
        private void btnDownload_Click(object sender, RoutedEventArgs e)
        {
            Button        btn           = sender as Button;
            int           streamIndex   = (int)btn.Tag;
            StreamAddress streamAddress = (StreamAddress)(lvStreamAddress.ItemsSource as List <StreamAddress>)[streamIndex];

            if (streamAddress.StreamType != StreamType.M3U8)
            {
                MessageBox.Show("不是M3U8,下载不支持");
                return;
            }

            SaveFileDialog sfd = new SaveFileDialog();

            sfd.Filter = "m3u8文件|*.m3u8";
            if (sfd.ShowDialog() == true)
            {
                String localPath = sfd.FileName;
                try
                {
                    if (SWFExtractor.DownloadM3U8(streamAddress.Address, sfd.FileName))
                    {
                        MessageBox.Show("下载成功");
                    }
                    else
                    {
                        MessageBox.Show("下载失败!");
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show("下载失败!" + ex.ToString());
                }
            }
            else
            {
                MessageBox.Show("取消保存");
            }
        }
        private void btnExtract_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                Media media = SWFExtractor.Extract(tbURL.Text);
                if (media == null || media.Streams == null)
                {
                    MessageBox.Show("解析失败!");
                    return;
                }

                IList <StreamAddress> addresses = new List <StreamAddress>();
                int streamIndex = 1;
                foreach (Stream stream in media.Streams)
                {
                    int addressIndex = 1;
                    foreach (String address in stream.Addresses)
                    {
                        StreamAddress addr = new StreamAddress();
                        addr.StreamIndex       = streamIndex;
                        addr.StreamType        = stream.Type;
                        addr.AddressIndex      = addressIndex;
                        addr.Address           = address;
                        addr.SourceStreamIndex = addresses.Count;
                        addresses.Add(addr);
                        addressIndex++;
                    }
                    streamIndex++;
                }
                lvStreamAddress.ItemsSource = addresses;
                _currentMedia = media;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }
Пример #5
0
        private static readonly String VIDEO_INFO_ADDRESS2 = "http://my.tv.sohu.com/play/videonew.do?vid={0}";   // for http://my.tv.sohu.com/

        /// <summary>
        ///
        /// </summary>
        public static void Register()
        {
            SWFExtractor.RegisterExtractor(SOHU, typeof(SohuExtractor));
        }
Пример #6
0
 /// <summary>
 ///
 /// </summary>
 public static void Register()
 {
     SWFExtractor.RegisterExtractor(CCTV, typeof(CCTVExtractor));
 }
Пример #7
0
 /// <summary>
 ///
 /// </summary>
 public static void Register()
 {
     SWFExtractor.RegisterExtractor(HUNANTV, typeof(HunanTVExtractor));
 }
Пример #8
0
 /// <summary>
 ///
 /// </summary>
 public static void Register()
 {
     SWFExtractor.RegisterExtractor(IQIYI, typeof(TudouExtractor));
 }
Пример #9
0
 /// <summary>
 ///
 /// </summary>
 public static void Register()
 {
     SWFExtractor.RegisterExtractor(YOUKU, typeof(YoukuExtractor));
 }
Пример #10
0
 public static void Register()
 {
     SWFExtractor.RegisterExtractor(BALLBAR, typeof(BallbarExtractor));
 }
Пример #11
0
 /// <summary>
 ///
 /// </summary>
 public static void Register()
 {
     SWFExtractor.RegisterExtractor(LETV, typeof(LetvExtractor));
 }
 /// <summary>
 ///
 /// </summary>
 public static void Register()
 {
     SWFExtractor.RegisterExtractor(YUNNANTV, typeof(YunnanTVExtractor));
 }