Android Xamarin 视频库仅下载声音
Android Xamarin Video Library download only Sound
我正在 Xamarin / C# 中为 Android 创建一个 Youtube 到 MP3 下载器。我正在使用 VideoLibrary 下载视频。我的代码:
if (!string.IsNullOrEmpty(EditText.Text))
{
byte[] bytes = null;
try
{
var v = YouTube.Default.GetVideo(EditText.Text);
bytes = await webClient.DownloadDataTaskAsync(v.Uri);
}
catch (TaskCanceledException)
{
Toast.MakeText(this, "Task Canceled", ToastLength.Long).Show();
return;
}
catch (Exception a)
{
Toast.MakeText(this, a.InnerException.Message, ToastLength.Long).Show();
Dialog.Progress = 0;
return;
}
var video = YouTube.Default.GetVideo(EditText.Text).Title;
var documentsPath = Android.OS.Environment.ExternalStorageDirectory + "/Download";
string localFilename = video
.Replace('.', ' ')
.Replace('-', ' ')
.Replace('(', ' ')
.Replace(')', ' ')
.Replace('"', ' ')
.Replace(',', ' ');
string localPath = System.IO.Path.Combine(documentsPath, localFilename);
Dialog.SetTitle("Download Complete");
FileStream fs = new FileStream(localPath + ".mp3", FileMode.OpenOrCreate);
fs.Write(bytes, 0, bytes.Length);
fs.Close();
如此有效,我可以将视频下载为 mp3 文件,但它也会下载视频。当我然后单击 .mp3 文件时,它还会下载视频。
这里的问题是,我无法将其添加到播放列表中,因为它是 mp3 格式的视频,而不是声音。
SO:我能否只获取 VideoLibrary 中的声音,或者我能否轻松地将此视频文件转换为 mp3 文件?
感谢您的帮助!!
注意:它必须在 Android (Xamarin)
上运行
根据 VideoLibrary 的 docs,您可以使用该库以与您观看时相同的文件扩展名下载视频。 VideoLibrary 中没有已发布的将视频格式更改为音频的功能,您必须为此使用不同的库。
您试图通过简单地将扩展名更改为 MP3
而不是适当地使用提供的 FileExtension
属性 来解决此问题。这就是您看到此问题的原因。
我正在 Xamarin / C# 中为 Android 创建一个 Youtube 到 MP3 下载器。我正在使用 VideoLibrary 下载视频。我的代码:
if (!string.IsNullOrEmpty(EditText.Text))
{
byte[] bytes = null;
try
{
var v = YouTube.Default.GetVideo(EditText.Text);
bytes = await webClient.DownloadDataTaskAsync(v.Uri);
}
catch (TaskCanceledException)
{
Toast.MakeText(this, "Task Canceled", ToastLength.Long).Show();
return;
}
catch (Exception a)
{
Toast.MakeText(this, a.InnerException.Message, ToastLength.Long).Show();
Dialog.Progress = 0;
return;
}
var video = YouTube.Default.GetVideo(EditText.Text).Title;
var documentsPath = Android.OS.Environment.ExternalStorageDirectory + "/Download";
string localFilename = video
.Replace('.', ' ')
.Replace('-', ' ')
.Replace('(', ' ')
.Replace(')', ' ')
.Replace('"', ' ')
.Replace(',', ' ');
string localPath = System.IO.Path.Combine(documentsPath, localFilename);
Dialog.SetTitle("Download Complete");
FileStream fs = new FileStream(localPath + ".mp3", FileMode.OpenOrCreate);
fs.Write(bytes, 0, bytes.Length);
fs.Close();
如此有效,我可以将视频下载为 mp3 文件,但它也会下载视频。当我然后单击 .mp3 文件时,它还会下载视频。 这里的问题是,我无法将其添加到播放列表中,因为它是 mp3 格式的视频,而不是声音。
SO:我能否只获取 VideoLibrary 中的声音,或者我能否轻松地将此视频文件转换为 mp3 文件?
感谢您的帮助!!
注意:它必须在 Android (Xamarin)
上运行根据 VideoLibrary 的 docs,您可以使用该库以与您观看时相同的文件扩展名下载视频。 VideoLibrary 中没有已发布的将视频格式更改为音频的功能,您必须为此使用不同的库。
您试图通过简单地将扩展名更改为 MP3
而不是适当地使用提供的 FileExtension
属性 来解决此问题。这就是您看到此问题的原因。