diff --git a/.vs/Crunchyroll Downloader/v15/.suo b/.vs/Crunchyroll Downloader/v15/.suo index 6410712..dbcc9c6 100644 Binary files a/.vs/Crunchyroll Downloader/v15/.suo and b/.vs/Crunchyroll Downloader/v15/.suo differ diff --git a/.vs/Crunchyroll Downloader/v15/Server/sqlite3/storage.ide b/.vs/Crunchyroll Downloader/v15/Server/sqlite3/storage.ide index c056cd6..8d6c387 100644 Binary files a/.vs/Crunchyroll Downloader/v15/Server/sqlite3/storage.ide and b/.vs/Crunchyroll Downloader/v15/Server/sqlite3/storage.ide differ diff --git a/.vs/Crunchyroll Downloader/v15/Server/sqlite3/storage.ide-shm b/.vs/Crunchyroll Downloader/v15/Server/sqlite3/storage.ide-shm index e06527b..8187804 100644 Binary files a/.vs/Crunchyroll Downloader/v15/Server/sqlite3/storage.ide-shm and b/.vs/Crunchyroll Downloader/v15/Server/sqlite3/storage.ide-shm differ diff --git a/.vs/Crunchyroll Downloader/v15/Server/sqlite3/storage.ide-wal b/.vs/Crunchyroll Downloader/v15/Server/sqlite3/storage.ide-wal index e154241..bc3ffc4 100644 Binary files a/.vs/Crunchyroll Downloader/v15/Server/sqlite3/storage.ide-wal and b/.vs/Crunchyroll Downloader/v15/Server/sqlite3/storage.ide-wal differ diff --git a/Crunchyroll Downloader/Anime_Add.Designer.vb b/Crunchyroll Downloader/Anime_Add.Designer.vb index a167154..48cd56a 100644 --- a/Crunchyroll Downloader/Anime_Add.Designer.vb +++ b/Crunchyroll Downloader/Anime_Add.Designer.vb @@ -273,9 +273,9 @@ Partial Class Anime_Add Me.ClientSize = New System.Drawing.Size(630, 275) Me.Controls.Add(Me.pictureBox3) Me.Controls.Add(Me.pictureBox4) + Me.Controls.Add(Me.groupBox2) Me.Controls.Add(Me.groupBox1) Me.Controls.Add(Me.GroupBox3) - Me.Controls.Add(Me.groupBox2) Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None Me.Name = "Anime_Add" Me.Text = "Add" diff --git a/Crunchyroll Downloader/Anime_Add.vb b/Crunchyroll Downloader/Anime_Add.vb index d97301c..3f08483 100644 --- a/Crunchyroll Downloader/Anime_Add.vb +++ b/Crunchyroll Downloader/Anime_Add.vb @@ -343,7 +343,8 @@ Public Class Anime_Add 'MsgBox("Test") comboBox3.Items.Clear() comboBox4.Items.Clear() - 'comboBox3.Items.Add("Test") + 'comboBox3.Items.Add("[First Episode]") + 'comboBox4.Items.Add("[Last Episode]") Dim SeasonDropdownAnzahl As String() = Main.WebbrowserText.Split(New String() {"season-dropdown content-menu block"}, System.StringSplitOptions.RemoveEmptyEntries) Array.Reverse(SeasonDropdownAnzahl) Dim SDV As Integer = 0 @@ -365,6 +366,8 @@ Public Class Anime_Add comboBox3.Items.Add(URLGrapp2(0)) comboBox4.Items.Add(URLGrapp2(0)) Next + 'comboBox3.SelectedIndex = 0 + 'comboBox4.SelectedIndex = 0 End Sub Private Sub PictureBox1_MouseEnter(sender As Object, e As EventArgs) Handles PictureBox1.MouseEnter diff --git a/Crunchyroll Downloader/CRD_List_Item.Designer.vb b/Crunchyroll Downloader/CRD_List_Item.Designer.vb index 7acf6c4..d67d428 100644 --- a/Crunchyroll Downloader/CRD_List_Item.Designer.vb +++ b/Crunchyroll Downloader/CRD_List_Item.Designer.vb @@ -35,9 +35,13 @@ Partial Class CRD_List_Item Me.ToolTip1 = New System.Windows.Forms.ToolTip(Me.components) Me.Timer1 = New System.Windows.Forms.Timer(Me.components) Me.Timer2 = New System.Windows.Forms.Timer(Me.components) + Me.ContextMenuStrip1 = New System.Windows.Forms.ContextMenuStrip(Me.components) + Me.ViewInExplorerToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.PlaybackVideoFileToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() CType(Me.PB_Thumbnail, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.bt_pause, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.bt_del, System.ComponentModel.ISupportInitialize).BeginInit() + Me.ContextMenuStrip1.SuspendLayout() Me.SuspendLayout() ' 'PB_Thumbnail @@ -138,6 +142,24 @@ Partial Class CRD_List_Item ' Me.Timer2.Enabled = True ' + 'ContextMenuStrip1 + ' + Me.ContextMenuStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.ViewInExplorerToolStripMenuItem, Me.PlaybackVideoFileToolStripMenuItem}) + Me.ContextMenuStrip1.Name = "ContextMenuStrip1" + Me.ContextMenuStrip1.Size = New System.Drawing.Size(181, 70) + ' + 'ViewInExplorerToolStripMenuItem + ' + Me.ViewInExplorerToolStripMenuItem.Name = "ViewInExplorerToolStripMenuItem" + Me.ViewInExplorerToolStripMenuItem.Size = New System.Drawing.Size(180, 22) + Me.ViewInExplorerToolStripMenuItem.Text = "View in explorer" + ' + 'PlaybackVideoFileToolStripMenuItem + ' + Me.PlaybackVideoFileToolStripMenuItem.Name = "PlaybackVideoFileToolStripMenuItem" + Me.PlaybackVideoFileToolStripMenuItem.Size = New System.Drawing.Size(180, 22) + Me.PlaybackVideoFileToolStripMenuItem.Text = "playback video file" + ' 'CRD_List_Item ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) @@ -157,6 +179,7 @@ Partial Class CRD_List_Item CType(Me.PB_Thumbnail, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.bt_pause, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.bt_del, System.ComponentModel.ISupportInitialize).EndInit() + Me.ContextMenuStrip1.ResumeLayout(False) Me.ResumeLayout(False) Me.PerformLayout() @@ -174,4 +197,7 @@ Partial Class CRD_List_Item Friend WithEvents ToolTip1 As ToolTip Friend WithEvents Timer1 As Timer Friend WithEvents Timer2 As Timer + Friend WithEvents ContextMenuStrip1 As ContextMenuStrip + Friend WithEvents ViewInExplorerToolStripMenuItem As ToolStripMenuItem + Friend WithEvents PlaybackVideoFileToolStripMenuItem As ToolStripMenuItem End Class diff --git a/Crunchyroll Downloader/CRD_List_Item.resx b/Crunchyroll Downloader/CRD_List_Item.resx index 3163371..5f3ba93 100644 --- a/Crunchyroll Downloader/CRD_List_Item.resx +++ b/Crunchyroll Downloader/CRD_List_Item.resx @@ -126,4 +126,7 @@ 207, 12 + + 296, 12 + \ No newline at end of file diff --git a/Crunchyroll Downloader/CRD_List_Item.vb b/Crunchyroll Downloader/CRD_List_Item.vb index 1ce3de1..29e2fa9 100644 --- a/Crunchyroll Downloader/CRD_List_Item.vb +++ b/Crunchyroll Downloader/CRD_List_Item.vb @@ -28,6 +28,7 @@ Public Class CRD_List_Item Dim Retry As Boolean = False Dim HybridMode As Boolean = False Dim HybridRunning As Boolean = False + Dim TargetReso As Integer = 1080 #Region "Remove from list" Public Sub DisposeItem(ByVal Dispose As Boolean) If Dispose = True Then @@ -117,6 +118,9 @@ Public Class CRD_List_Item Public Sub SetSaveLog(ByVal Value As Boolean) SaveLog = Value End Sub + Public Sub SetTargetReso(ByVal Value As Integer) + TargetReso = Value + End Sub #End Region Public Sub KillRunningTask() If proc.HasExited Then @@ -196,6 +200,7 @@ Public Class CRD_List_Item ToolTip1.SetToolTip(Me, Text) End Sub Private Sub Item_Load(sender As Object, e As EventArgs) Handles MyBase.Load + Me.ContextMenuStrip = ContextMenuStrip1 '.ContextMenu Timer1.Enabled = True Dim locationY As Integer = 0 bt_del.SetBounds(775, locationY + 10, 35, 29) @@ -280,6 +285,8 @@ Public Class CRD_List_Item Dim DataRateString As String = Math.Round(DataRate, 2, MidpointRounding.AwayFromZero).ToString() If prozent > 100 Then prozent = 100 + ElseIf prozent < 0 Then + prozent = 0 End If Me.Invoke(New Action(Function() ProgressBar1.Value = prozent @@ -300,16 +307,45 @@ Public Class CRD_List_Item Dim m3u8_url As String() = DL_URL.Split(New [Char]() {Chr(34)}) - - + Dim m3u8_url_1 As String = Nothing + Dim m3u8_url_3 As String = m3u8_url(1) If Debug2 = True Then MsgBox(m3u8_url(1) + vbNewLine + DL_Pfad + vbNewLine + Filename) End If Dim client0 As New WebClient client0.Encoding = Encoding.UTF8 Dim text As String = client0.DownloadString(m3u8_url(1)) + If InStr(text, "RESOLUTION=") Then 'master m3u8 no fragments + Dim new_m3u8_2() As String = text.Split(New String() {vbLf}, System.StringSplitOptions.RemoveEmptyEntries) + If TargetReso = 42 Then + + Else + For i As Integer = 0 To new_m3u8_2.Count - 1 + 'MsgBox("x" + Main.Resu.ToString) + If CBool(InStr(new_m3u8_2(i), "x" + TargetReso.ToString)) = True Then + m3u8_url_1 = new_m3u8_2(i + 1) + Exit For + End If + Next + If InStr(m3u8_url_1, "https://") Then + text = client0.DownloadString(m3u8_url_1) + Else + Dim c() As String = New Uri(m3u8_url_3).Segments + Dim path As String = "https://" + New Uri(m3u8_url_3).Host + For i3 As Integer = 0 To c.Count - 2 + path = path + c(i3) + Next + m3u8_url_3 = path + m3u8_url_1 + 'MsgBox(m3u8_url_1) + text = client0.DownloadString(m3u8_url_3) + End If + + End If + + + End If Dim textLenght() As String = text.Split(New String() {vbLf}, System.StringSplitOptions.RemoveEmptyEntries) - Dim Fragments() As String = text.Split(New String() {"https:"}, System.StringSplitOptions.RemoveEmptyEntries) + Dim Fragments() As String = text.Split(New String() {".ts"}, System.StringSplitOptions.RemoveEmptyEntries) Dim FragmentsInt As Integer = Fragments.Count - 2 Dim nummerint As Integer = 0 '-1 Dim m3u8FFmpeg As String = Nothing @@ -353,9 +389,18 @@ Public Class CRD_List_Item Dim nummer4D As String = String.Format("{0:0000}", nummerint) Dim curi As String = textLenght(i) If InStr(curi, "https://") Then + ElseIf InStr(curi, "../") Then + Dim countDot() As String = curi.Split(New String() {"./"}, System.StringSplitOptions.RemoveEmptyEntries) + + Dim c() As String = New Uri(m3u8_url_3).Segments + Dim path As String = "https://" + New Uri(m3u8_url_3).Host + For i3 As Integer = 0 To c.Count - (2 + countDot.Count - 1) + path = path + c(i3) + Next + curi = path + countDot(countDot.Count - 1) Else - Dim c() As String = New Uri(m3u8_url(1)).Segments - Dim path As String = "https://" + New Uri(m3u8_url(1)).Host + Dim c() As String = New Uri(m3u8_url_3).Segments + Dim path As String = "https://" + New Uri(m3u8_url_3).Host For i3 As Integer = 0 To c.Count - 2 path = path + c(i3) Next @@ -682,5 +727,26 @@ Public Class CRD_List_Item End Try End Sub + + Private Sub Label_Anime_Click(sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Label_Anime.Click, PB_Thumbnail.Click, Label_Reso.Click, Label_percent.Click, ProgressBar1.Click, Label_website.Click, Me.Click + If e.Button = MouseButtons.Right Then + ' MsgBox("Right Button Clicked") + + ContextMenuStrip1.ContextMenu.Show(Me, MousePosition) + End If + End Sub + + Private Sub ViewInExplorerToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ViewInExplorerToolStripMenuItem.Click + Process.Start(Path.GetDirectoryName(DownloadPfad.Replace(Chr(34), ""))) + End Sub + + Private Sub PlaybackVideoFileToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles PlaybackVideoFileToolStripMenuItem.Click + If GetIsStatusFinished() = True Then + PlaybackVideoFileToolStripMenuItem.Enabled = True + Else + PlaybackVideoFileToolStripMenuItem.Enabled = False + End If + Process.Start(DownloadPfad.Replace(Chr(34), "")) + End Sub End Class diff --git a/Crunchyroll Downloader/Main.vb b/Crunchyroll Downloader/Main.vb index bbbf5f5..1e8376f 100644 --- a/Crunchyroll Downloader/Main.vb +++ b/Crunchyroll Downloader/Main.vb @@ -323,6 +323,7 @@ Public Class Main r = ListView1.Items(c).Bounds() r.Width = 838 r.Height = 142 + Item.SetTargetReso(Resu) Item.SetLabelWebsite(NameP1) Item.SetLabelAnimeTitel(NameP2) Item.SetLabelResolution(Reso) @@ -2343,7 +2344,7 @@ Public Class Main Dim SoftSubMergeURLs As String = " -i " + Chr(34) + UsedSub + Chr(34) Dim SoftSubMergeMaps As String = " -map 0:v -map 0:a -map 1" Dim SoftSubMergeMetatata As String = " -metadata:s:s:0 language=eng" - Funimation_m3u8_final = "-i " + Chr(34) + Funimation_m3u8_final + Chr(34) + DubMetatata + SoftSubMergeURLs + SoftSubMergeMaps + " " + ffmpeg_command + " -c:s mov_text" + SoftSubMergeMetatata + Funimation_m3u8_final = "-i " + Chr(34) + Funimation_m3u8_final + Chr(34) + SoftSubMergeURLs + SoftSubMergeMaps + " " + ffmpeg_command + " -c:s mov_text" + SoftSubMergeMetatata + DubMetatata End If Else If FunimationDub = "japanese" Then diff --git a/Crunchyroll Downloader/My Project/AssemblyInfo.vb b/Crunchyroll Downloader/My Project/AssemblyInfo.vb index 26c0b77..d5e3595 100644 --- a/Crunchyroll Downloader/My Project/AssemblyInfo.vb +++ b/Crunchyroll Downloader/My Project/AssemblyInfo.vb @@ -32,6 +32,6 @@ Imports System.Runtime.InteropServices ' übernehmen, indem Sie "*" eingeben: ' - - + + diff --git a/Crunchyroll Downloader/bin/x86/Debug/Crunchyroll Downloader.exe b/Crunchyroll Downloader/bin/x86/Debug/Crunchyroll Downloader.exe index 1e158c4..7bbccfc 100644 Binary files a/Crunchyroll Downloader/bin/x86/Debug/Crunchyroll Downloader.exe and b/Crunchyroll Downloader/bin/x86/Debug/Crunchyroll Downloader.exe differ diff --git a/Crunchyroll Downloader/bin/x86/Debug/Crunchyroll Downloader.pdb b/Crunchyroll Downloader/bin/x86/Debug/Crunchyroll Downloader.pdb index 24dc751..0aa8249 100644 Binary files a/Crunchyroll Downloader/bin/x86/Debug/Crunchyroll Downloader.pdb and b/Crunchyroll Downloader/bin/x86/Debug/Crunchyroll Downloader.pdb differ diff --git a/Crunchyroll Downloader/einstellungen.Designer.vb b/Crunchyroll Downloader/einstellungen.Designer.vb index af3b671..7a0b84c 100644 --- a/Crunchyroll Downloader/einstellungen.Designer.vb +++ b/Crunchyroll Downloader/einstellungen.Designer.vb @@ -857,7 +857,7 @@ Partial Class einstellungen ' Me.PictureBox6.Cursor = System.Windows.Forms.Cursors.Hand Me.PictureBox6.Image = Global.Crunchyroll_Downloader.My.Resources.Resources.main_credits_default - Me.PictureBox6.Location = New System.Drawing.Point(173, 354) + Me.PictureBox6.Location = New System.Drawing.Point(192, 338) Me.PictureBox6.Name = "PictureBox6" Me.PictureBox6.Size = New System.Drawing.Size(76, 39) Me.PictureBox6.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize @@ -872,7 +872,7 @@ Partial Class einstellungen Me.GroupBox5.Controls.Add(Me.ListViewAdd_True) Me.GroupBox5.Font = New System.Drawing.Font("Arial", 9.75!) Me.GroupBox5.ForeColor = System.Drawing.Color.Black - Me.GroupBox5.Location = New System.Drawing.Point(6, 228) + Me.GroupBox5.Location = New System.Drawing.Point(6, 205) Me.GroupBox5.Name = "GroupBox5" Me.GroupBox5.Size = New System.Drawing.Size(456, 100) Me.GroupBox5.TabIndex = 7 @@ -882,7 +882,7 @@ Partial Class einstellungen 'Server ' Me.Server.AutoSize = True - Me.Server.Location = New System.Drawing.Point(234, 29) + Me.Server.Location = New System.Drawing.Point(271, 29) Me.Server.Name = "Server" Me.Server.Size = New System.Drawing.Size(129, 20) Me.Server.TabIndex = 42 @@ -892,7 +892,7 @@ Partial Class einstellungen 'CB_Log ' Me.CB_Log.AutoSize = True - Me.CB_Log.Location = New System.Drawing.Point(45, 29) + Me.CB_Log.Location = New System.Drawing.Point(64, 29) Me.CB_Log.Name = "CB_Log" Me.CB_Log.Size = New System.Drawing.Size(84, 20) Me.CB_Log.TabIndex = 1 @@ -902,7 +902,7 @@ Partial Class einstellungen 'ListViewAdd_True ' Me.ListViewAdd_True.AutoSize = True - Me.ListViewAdd_True.Location = New System.Drawing.Point(98, 74) + Me.ListViewAdd_True.Location = New System.Drawing.Point(108, 74) Me.ListViewAdd_True.Name = "ListViewAdd_True" Me.ListViewAdd_True.Size = New System.Drawing.Size(236, 20) Me.ListViewAdd_True.TabIndex = 0 @@ -918,19 +918,19 @@ Partial Class einstellungen Me.GroupBox1.ForeColor = System.Drawing.Color.Black Me.GroupBox1.Location = New System.Drawing.Point(6, 85) Me.GroupBox1.Name = "GroupBox1" - Me.GroupBox1.Size = New System.Drawing.Size(456, 127) + Me.GroupBox1.Size = New System.Drawing.Size(456, 114) Me.GroupBox1.TabIndex = 7 Me.GroupBox1.TabStop = False Me.GroupBox1.Text = "Browser Settings" ' 'Label1 ' - Me.Label1.AutoSize = True - Me.Label1.Location = New System.Drawing.Point(186, 29) + Me.Label1.Location = New System.Drawing.Point(6, 29) Me.Label1.Name = "Label1" - Me.Label1.Size = New System.Drawing.Size(100, 16) + Me.Label1.Size = New System.Drawing.Size(444, 22) Me.Label1.TabIndex = 2 Me.Label1.Text = "Default Website" + Me.Label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter ' 'TextBox1 ' diff --git a/Crunchyroll Downloader/einstellungen.resx b/Crunchyroll Downloader/einstellungen.resx index ca3b37f..eac1e2f 100644 --- a/Crunchyroll Downloader/einstellungen.resx +++ b/Crunchyroll Downloader/einstellungen.resx @@ -126,4 +126,7 @@ 346, 17 + + 346, 17 + \ No newline at end of file diff --git a/Crunchyroll Downloader/obj/x86/Debug/Crunchyroll Downloader.exe b/Crunchyroll Downloader/obj/x86/Debug/Crunchyroll Downloader.exe index 1e158c4..7bbccfc 100644 Binary files a/Crunchyroll Downloader/obj/x86/Debug/Crunchyroll Downloader.exe and b/Crunchyroll Downloader/obj/x86/Debug/Crunchyroll Downloader.exe differ diff --git a/Crunchyroll Downloader/obj/x86/Debug/Crunchyroll Downloader.pdb b/Crunchyroll Downloader/obj/x86/Debug/Crunchyroll Downloader.pdb index 24dc751..0aa8249 100644 Binary files a/Crunchyroll Downloader/obj/x86/Debug/Crunchyroll Downloader.pdb and b/Crunchyroll Downloader/obj/x86/Debug/Crunchyroll Downloader.pdb differ diff --git a/Crunchyroll Downloader/obj/x86/Debug/Crunchyroll Downloader.vbproj.GenerateResource.cache b/Crunchyroll Downloader/obj/x86/Debug/Crunchyroll Downloader.vbproj.GenerateResource.cache index 6c03938..890db02 100644 Binary files a/Crunchyroll Downloader/obj/x86/Debug/Crunchyroll Downloader.vbproj.GenerateResource.cache and b/Crunchyroll Downloader/obj/x86/Debug/Crunchyroll Downloader.vbproj.GenerateResource.cache differ