Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 108,668

HOME > .NET Framework > Forum > C# WinApp ขอคำแนะนำเกี่ยวกับการจัดการไฟล์ mkv หน่อยครับ



 

C# WinApp ขอคำแนะนำเกี่ยวกับการจัดการไฟล์ mkv หน่อยครับ

 



Topic : 135778



โพสกระทู้ ( 4,226 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook



คือผมจะดึง track ออกมาดูแบบนี้ครับ

55

ไม่ทราบว่ามีโค้ดของ .net ไม๊ ครับ
หรือว่าถ้าใช้ mkvmerge ต้องเขียนดึงค่าออกมายังครับ
คือจะเช็คว่า track index ไหนเป็น Audio th แล้วก็จะใช้ mkvmerge จัดการอีกทีครับ



Tag : .NET, Win (Windows App), C#, VS 2015 (.NET 4.x)







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2020-12-17 16:40:18 By : lamaka.tor View : 224 Reply : 25
 

 
จากรูปเสียงไทยคือ track 1
ใช้ของสำเร็จรูปดีแล้ว ถ้าไม่มีพื้นฐาน media file systems อย่าเขียนเอง เพราะเสียเวลาเปล่า

mkvtoolnix จัดการได้ทุกอย่างอยู่แล้ว






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2020-12-17 17:09:28 By : ล่องหน
 


 

No. 2



โพสกระทู้ ( 4,226 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 1 เขียนโดย : ล่องหน เมื่อวันที่ 2020-12-17 17:09:28
รายละเอียดของการตอบ ::
มันไม่ง่ายยังงั้นนี่สิครับ 100 ไฟล์ มันก็ใช่จะ track 1 ทุกไฟล์ ถ้าจะลากมาเช็คทุกไฟล์ก็เยอะไปเลยอยากดึงมานี่แหละครับ
mkvtoolnix ก็ไล่เช็คทีละไฟล์เลยช้าครับ

ไม่ทราบว่า mkvtoolnix ตั้งค่าให้ทำงานทีละหลายๆไฟล์ยังไงครับ
พอดีผมเพิ่งเล่นได้วัน 2 วันยังไม่คล่องเลยครับ


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2020-12-17 19:01:30 By : lamaka.tor
 

 
ถ้าต้องการทำทีละหลายไฟล์ ต้องศึกษาการทำ job แต่ผมแนะนำเขียน batch script

https://forum.videohelp.com/threads/369478-Newbie-Need-help-removing-audio-subs-from-multiple-videos-mkvmerge

ส่วนปัญหาเรื่อง track ไหนเป็นภาษาไทย ใช้ language code ตาม ISO ได้เลย ..เอกสารการใช้งาน

https://mkvtoolnix.download/doc/mkvmerge.html
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2020-12-17 19:51:51 By : ล่องหน
 


 

No. 4



โพสกระทู้ ( 9,043 )
บทความ ( 2 )



สถานะออฟไลน์


ไม่ลองใช้ command line search in file ดู ลองจาก explorer ดูก่อน ถ้าทำได้ ก็จะเร็วมากเลยนะครับ

แบบไม่เคยทำกับไฟล์ หนังหรือ music เหมือนกัน
แต่อาศัยประสบการณ์จากการ ค้นหาข้อมูลในไฟล์ แบบ หลายๆ ไฟล์

แบบรู้ format ที่แน่ชัด
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2020-12-17 21:14:58 By : Chaidhanan
 


 

No. 5



โพสกระทู้ ( 4,226 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 3 เขียนโดย : ล่องหน เมื่อวันที่ 2020-12-17 19:51:51
รายละเอียดของการตอบ ::
ตอนนี้ผมรันใน command line ครับ คือ list ไฟล์มาแล้วก็ใช้ mkvmerge
แต่ติดตรงที่ว่า จะเช็ค track เสียง เพื่อเอามาตั้งเป็น Audio นี่เลย ครับ
ถ้าใช้ mkvmerge ไม่ทราบว่า จะ ส่งค่ากลับมา หรือ เช็คค่ายังไงให้รู้ว่าเป็นเสียงไทย ครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2020-12-21 06:47:12 By : lamaka.tor
 


 
ไม่ต้องเช็คแทร็ก แต่ระบุ th กับ audio stream ไปเลย
พยายามทำความเข้าใจลิงค์เอกสารที่ผมให้ไป อ่านอิงค์ ไม่เก่งใช้ bing ช่วย
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2020-12-21 07:49:43 By : ล่องหน
 


 

No. 7



โพสกระทู้ ( 4,226 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 6 เขียนโดย : ล่องหน เมื่อวันที่ 2020-12-21 07:49:43
รายละเอียดของการตอบ ::
ผมลองใช้ --chapter-language th

Code
"E:\T_MEGA\Pro\MKVToolNix\mkvmerge.exe" -o "J:\Descendants.of.the.Sun.2016.E01.1080p.HDTV.x264-ELANOR [TH] [N-Rap]_.mkv" --chapter-language th -S "J:\Descendants.of.the.Sun.2016.E01.1080p.HDTV.x264-ELANOR [TH] [N-Rap].mkv"


ยังไม่ได้ ครับ
ต้นฉบับ
11

ผ่านสคลิป
22

นอกจาก --audio-tracks และ --chapter-language ยัง option อื่น อีกไม๊ครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2020-12-21 10:05:47 By : lamaka.tor
 


 
-a, --audio-tracks [!]n,m,...
Copy the audio tracks n, m etc. The numbers are track IDs which can be obtained with the --identify switch. They're not simply the track numbers (see section track IDs). Default: copy all audio tracks. Instead of track IDs you can also provide ISO 639-2 language codes. This will only work for source files that provide language tags for their tracks. Default: copy all tracks of this kind. If the IDs are prefixed with ! then the meaning is reversed: copy all tracks of this kind but the ones listed after the !.


สาระสำคัญผมทำสีแดงไว้ให้
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2020-12-21 11:04:03 By : ล่องหน
 


 

No. 9



โพสกระทู้ ( 4,226 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 8 เขียนโดย : ล่องหน เมื่อวันที่ 2020-12-21 11:04:03
รายละเอียดของการตอบ ::
ขอบคุณมากครับ

ผมอ่านน้อยไปจริงๆ คิดแค่ --audio-tracks ว่ามันต้องใช้แค่ track index ที่เป็นตัวเลข เท่านั้น ครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2020-12-21 15:02:47 By : lamaka.tor
 


 
แถมครับ ผมไปค้นมาให้มีคนทำเป็น python, batch, .NET มาให้แล้ว
https://forum.videohelp.com/threads/343271-BULK-remove-non-English-tracks-from-MKV-container


ลองนำไปประยุกต์ดูได้
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2020-12-21 15:15:06 By : ล่องหน
 


 

No. 11



โพสกระทู้ ( 4,226 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 10 เขียนโดย : ล่องหน เมื่อวันที่ 2020-12-21 15:15:06
รายละเอียดของการตอบ ::
ตอนนี้ผมใช้ .net list file แล้ว รันเป็นไฟล์ .cmd ครับ

กำลังไล่เช็คอยู่ว่า ตัว mkvmerge หรือเป็นที่ cmd มันไม่รองรับชื่อ path ภาษาอื่นนอกจากภาษาอังกฤษ หรือปล่าว
เหมือนถ้าชื่อ path มีภาษาไทย จีน เกาหลี แล้วมันจะไม่รันให้


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2020-12-21 15:54:55 By : lamaka.tor
 


 
Unicode ต้องใส่เป็น "absolute path" ที่มีเครื่องหมายคำพูด และถ้านำไปใช้ใน .NET ต้อง escape string ด้วย
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2020-12-21 16:02:23 By : ล่องหน
 


 

No. 13



โพสกระทู้ ( 4,226 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 12 เขียนโดย : ล่องหน เมื่อวันที่ 2020-12-21 16:02:23
รายละเอียดของการตอบ ::
ที่ผมกำลังทดลองโค้ดก็จะประมาณนี้ครับ

Code (C#)
 void CreateCMD(string _path)
        {
            string str = "";
            
            System.IO.Directory.GetFiles(_path, "*.mkv", SearchOption.TopDirectoryOnly).ToList<string>()
                    .ForEach(f =>
                    {

                        str += "\n\"E:\\T_MEGA\\Pro\\MKVToolNix\\mkvmerge.exe\"   -o \"" + f.Replace(".mkv", "_.mkv") + "\" --audio-tracks th  -S  \"" + f + "\"";
                    }
                    );



            System.Threading.Thread.Sleep(1000);
            using (StreamWriter sw = File.CreateText(_path + "\\file.cmd"))
            {
                sw.Write(str + "\n\n\n\n del \"" + _path + "\\file.cmd\"");

            }
           
            Process.Start(_path + "\\file.cmd");
        }



ในกรณีที่ f หรือ path มี ภาษาอื่นนอกจากภาษาอังกฤษ ตัว cmd เอง มันก็จะไม่รันไฟล์นั้นๆ ครับ

ถ้าใช้ได้ก็จะรันปกติ แบบนี้ ครับ

กัะเด่ี

ปล. เดี๋ยวจะลองเช็คดูอีกหน่อย แล้วก็จะเพิ่มโค้ดลงไปอีกที ครับ

Code (C#)
 void CreateCMD(string _path)
        {
            string str = "";
            string _str = "";
            
            System.IO.Directory.GetFiles(_path, "*.mkv", SearchOption.TopDirectoryOnly).ToList<string>()
                    .ForEach(f =>
                    {

                        str += "\n\"E:\\T_MEGA\\Pro\\MKVToolNix\\mkvmerge.exe\"   -o \"" + f.Replace(".mkv", "_.mkv") + "\" --audio-tracks th  -S  \"" + f + "\"";

                        _str += "\n del \"" + f + "\"";
                    }
                    );



            System.Threading.Thread.Sleep(1000);
            using (StreamWriter sw = File.CreateText(_path + "\\file.cmd"))
            {
                sw.Write(str + "\n\n"+_str +"\n\n del \"" + _path + "\\file.cmd\"");

            }
           
            Process.Start(_path + "\\file.cmd");
        }


รันแล้วจะได้ลยไฟล์เดิมทิ้งได้เลย


ประวัติการแก้ไข
2020-12-21 16:26:15
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2020-12-21 16:19:36 By : lamaka.tor
 


 
เพื่อพิสูจน์เรื่อง path ลองรันใน cmd ได้หรือไม่

และอีกอย่าง รหัสภาษาที่ใส่ไปกับเสียงรองรับ ISO 639-1 ด้วยรึ เห็นในเอกสารเขาบอกให้ใช้เป็น ISO 639-2
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2020-12-21 16:25:05 By : ล่องหน
 


 

No. 15



โพสกระทู้ ( 4,226 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 14 เขียนโดย : ล่องหน เมื่อวันที่ 2020-12-21 16:25:05
รายละเอียดของการตอบ ::
ภาษาผมยึดจากตรงนี้เลยครับ

669

แต่เท่าที่สังเกต บางไฟล์จะขึ้นเป็น thai เลยก็มี
แต่เท่าที่ลองทำไม่เคยเจอ tha นะครับ
ไม่แน่ว่ามีอะไรผิดปกติ หรือปล่าว

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2020-12-21 16:30:22 By : lamaka.tor
 


 
เรื่อง Unicode ลองเช็คที่ File -> Advanced Save Options

http://i.stack.imgur.com/R1ohF.png


ส่วน language ใน GUI น่าจะเป็น country code
เท่าที่อ่านเจอในเอกสาร การใช้คำสั่งใน command line ต้องใช้ tag code (ISO 639-2)

mkvmerge จะแปลงหรือลิงค์ข้อมูลไปยัง country code เอง
แต่ก็แค่อ่านยังไม่พิสูจน์เพราะไม่มีหนูทดลอง
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2020-12-21 16:37:02 By : ล่องหน
 


 
switch ก็มีผลครับ ต้องดูดีๆ

ตัวอย่างการใช้ switch ผิด
C:\>"D:\ThaiCreate\mkvtoolnix\mkvmerge.exe" --i "E:\Video Download\[DEMO with Watermark] ไชยเชษฐ์ ตอนที่ 1.mp4" mkvmerge v51.0.0 ('I Wish') 64-bit Error: no destination file name was given. C:\>"D:\ThaiCreate\mkvtoolnix\mkvmerge.exe" -i "E:\Video Download\[DEMO with Watermark] ไชยเชษฐ์ ตอนที่ 1.mp4" File 'E:\Video Download\[DEMO with Watermark] ไชยเชษฐ์ ตอนที่ 1.mp4': container: QuickTime/MP4 Track ID 0: audio (AAC) Track ID 1: video (MPEG-4p10/AVC/H.264)


ที่ผมอยากให้ลองรันใน cmd เพื่อดูว่า unicode path support จาก system หรือไม่ ถ้าอ่านได้ปัญหาก็แก้ที่ .NET
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2020-12-21 16:47:15 By : ล่องหน
 


 

No. 18



โพสกระทู้ ( 4,226 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ขอบคุณมากครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2020-12-21 16:59:37 By : lamaka.tor
 


 
เพิ่งได้หนูทดลองใหม่ เผื่อมีประโยชน์ครับ (ภาษาจะแสดงเฉพาะใน JSON format)

option ที่ใช้ดู TrackID ของภาษา
C:\>"D:\ThaiCreate\mkvtoolnix\mkvmerge.exe" -F json -i "Z:\TCMOV\Monster.Hunter.2020.720p.HDCAM.Hindi.Dub.Dual-Audio.x264-1XBET..mkv" { "attachments": [], "chapters": [], "container": { "properties": { "container_type": 17, "duration": 5499332000000, "is_providing_timestamps": true, "muxing_application": "Lavf58.20.100", "segment_uid": "2dd58f2ec64171adf23d150cb9149e4f", "writing_application": "Lavf58.20.100" }, "recognized": true, "supported": true, "type": "Matroska" }, "errors": [], "file_name": "Z:\\TCMOV\\Monster.Hunter.2020.720p.HDCAM.Hindi.Dub.Dual-Audio.x264-1XBET..mkv", "global_tags": [ { "num_entries": 1 } ], "identification_format_version": 13, "track_tags": [ { "num_entries": 1, "track_id": 0 }, { "num_entries": 1, "track_id": 1 }, { "num_entries": 1, "track_id": 2 } ], "tracks": [ { "codec": "MPEG-4p10/AVC/H.264", "id": 0, "properties": { "codec_id": "V_MPEG4/ISO/AVC", "codec_private_data": "01640020ffe1002a67640020acd1c05004bf9f014202020280000003008000001e71300007270e0000e4e1d261c07c60c47801000668e9bb2cc00bfdf8f800", "codec_private_length": 63, "default_duration": 33333333, "default_track": true, "display_dimensions": "1280x580", "display_unit": 0, "enabled_track": true, "forced_track": false, "language": "und", "minimum_timestamp": 33000000, "number": 1, "packetizer": "mpeg4_p10_video", "pixel_dimensions": "1280x580", "tag_duration": "01:31:39.332000000", "uid": 1 }, "type": "video" }, { "codec": "AAC", "id": 1, "properties": { "audio_channels": 2, "audio_sampling_frequency": 48000, "codec_id": "A_AAC", "codec_private_data": "1190", "codec_private_length": 2, "default_track": true, "enabled_track": true, "forced_track": false, "language": "hin", "minimum_timestamp": 0, "number": 2, "tag_duration": "01:31:39.263000000", "uid": 2 }, "type": "audio" }, { "codec": "AAC", "id": 2, "properties": { "audio_channels": 2, "audio_sampling_frequency": 48000, "codec_id": "A_AAC", "codec_private_data": "1190", "codec_private_length": 2, "default_track": true, "enabled_track": true, "forced_track": false, "language": "eng", "minimum_timestamp": 0, "number": 3, "tag_duration": "01:31:39.263000000", "uid": 3 }, "type": "audio" } ], "warnings": [] } C:\>



ที่เหลือก็ต่อยอดที่ .NET
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2020-12-21 17:56:10 By : ล่องหน
 


 
ตัวอย่างการใช้ ISO 639-1
C:\>"D:\ThaiCreate\mkvtoolnix\mkvmerge.exe" -o Y:\test.mkv -d -a hi "Z:\TCMOV\Monster.Hunter.2020.720p.HDCAM.Hindi.Dub.Dual-Audio.x264-1XBET..mkv" mkvmerge v51.0.0 ('I Wish') 64-bit Error: '-a' is not a valid IETF BCP 47/RFC 5646 language tag in '-d -a'. Additional information from the parser: The value does not adhere to the general structure of IETF BCP 47/RFC 5646 language tags. C:\>"D:\ThaiCreate\mkvtoolnix\mkvmerge.exe" -o Y:\test.mkv -d -a hin "Z:\TCMOV\Monster.Hunter.2020.720p.HDCAM.Hindi.Dub.Dual-Audio.x264-1XBET..mkv" mkvmerge v51.0.0 ('I Wish') 64-bit Error: '-a' is not a valid IETF BCP 47/RFC 5646 language tag in '-d -a'. Additional information from the parser: The value does not adhere to the general structure of IETF BCP 47/RFC 5646 language tags. C:\>"D:\ThaiCreate\mkvtoolnix\mkvmerge.exe" -o Y:\test.mkv -d --audio-tracks hi "Z:\TCMOV\Monster.Hunter.2020.720p.HDCAM.Hindi.Dub.Dual-Audio.x264-1XBET..mkv" mkvmerge v51.0.0 ('I Wish') 64-bit Error: '--audio-tracks' is not a valid IETF BCP 47/RFC 5646 language tag in '-d --audio-tracks'. Additional information from the parser: The value does not adhere to the general structure of IETF BCP 47/RFC 5646 language tags. C:\>"D:\ThaiCreate\mkvtoolnix\mkvmerge.exe" -o Y:\test.mkv -d --audio-tracks hin "Z:\TCMOV\Monster.Hunter.2020.720p.HDCAM.Hindi.Dub.Dual-Audio.x264-1XBET..mkv" mkvmerge v51.0.0 ('I Wish') 64-bit Error: '--audio-tracks' is not a valid IETF BCP 47/RFC 5646 language tag in '-d --audio-tracks'. Additional information from the parser: The value does not adhere to the general structure of IETF BCP 47/RFC 5646 language tags. C:\>"D:\ThaiCreate\mkvtoolnix\mkvmerge.exe" -o "Y:\test.mkv" -d -a hin "Z:\TCMOV\Monster.Hunter.2020.720p.HDCAM.Hindi.Dub.Dual-Audio.x264-1XBET..mkv" mkvmerge v51.0.0 ('I Wish') 64-bit Error: '-a' is not a valid IETF BCP 47/RFC 5646 language tag in '-d -a'. Additional information from the parser: The value does not adhere to the general structure of IETF BCP 47/RFC 5646 language tags. C:\>"D:\ThaiCreate\mkvtoolnix\mkvmerge.exe" -o Y:\test.mkv -d 0 -a hi "Z:\TCMOV\Monster.Hunter.2020.720p.HDCAM.Hindi.Dub.Dual-Audio.x264-1XBET..mkv" mkvmerge v51.0.0 ('I Wish') 64-bit 'Z:\TCMOV\Monster.Hunter.2020.720p.HDCAM.Hindi.Dub.Dual-Audio.x264-1XBET..mkv': Using the demultiplexer for the format 'Matroska'. 'Z:\TCMOV\Monster.Hunter.2020.720p.HDCAM.Hindi.Dub.Dual-Audio.x264-1XBET..mkv' track 0: Using the output module for the format 'AVC/H.264'. 'Z:\TCMOV\Monster.Hunter.2020.720p.HDCAM.Hindi.Dub.Dual-Audio.x264-1XBET..mkv' track 1: Using the output module for the format 'AAC'. The file 'Y:\test.mkv' has been opened for writing. Progress: 100% The cue entries (the index) are being written... Multiplexing took 57 seconds. C:\>"D:\ThaiCreate\mkvtoolnix\mkvmerge.exe" -F json -i Y:\test.mkv { "attachments": [], "chapters": [], "container": { "properties": { "container_type": 17, "date_local": "2020-12-22T10:37:18+07:00", "date_utc": "2020-12-22T03:37:18Z", "duration": 5499332000000, "is_providing_timestamps": true, "muxing_application": "libebml v1.4.0 + libmatroska v1.6.2", "segment_uid": "383a30f8f2487f74593a8c6f64d7185c", "writing_application": "mkvmerge v51.0.0 ('I Wish') 64-bit" }, "recognized": true, "supported": true, "type": "Matroska" }, "errors": [], "file_name": "Y:\\test.mkv", "global_tags": [ { "num_entries": 1 } ], "identification_format_version": 13, "track_tags": [], "tracks": [ { "codec": "MPEG-4p10/AVC/H.264", "id": 0, "properties": { "codec_id": "V_MPEG4/ISO/AVC", "codec_private_data": "01640020ffe1002a67640020acd1c05004bf9f014202020280000003008000001e71300007270e0000e4e1d261c07c60c47801000668e9bb2cc00bfdf8f800", "codec_private_length": 63, "default_duration": 33333333, "default_track": true, "display_dimensions": "1280x580", "display_unit": 0, "enabled_track": true, "forced_track": false, "language": "und", "language_ietf": "und", "minimum_timestamp": 33000000, "number": 1, "packetizer": "mpeg4_p10_video", "pixel_dimensions": "1280x580", "uid": 1 }, "type": "video" }, { "codec": "AAC", "id": 1, "properties": { "audio_channels": 2, "audio_sampling_frequency": 48000, "codec_id": "A_AAC", "codec_private_data": "1190", "codec_private_length": 2, "default_duration": 21333333, "default_track": true, "enabled_track": true, "forced_track": false, "language": "hin", "language_ietf": "hi", "minimum_timestamp": 0, "number": 2, "uid": 2 }, "type": "audio" } ], "warnings": [] } C:\>



สีน้ำเงินคือ tag ใหม่ที่เพิ่มเข้ามา
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2020-12-22 10:56:34 By : ล่องหน
 


 

No. 21



โพสกระทู้ ( 4,226 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ตอนนี้ผมลองเขียนคร่าวๆไว้ประมาณนี้ครับ


325

https://mega.nz/folder/1BwEkQAY#dW0EmqiWZ73OPqgA0W5EIw


-มีการลบข้อความที่ไม่ต้องการในชื่อไฟล์
-ตั้งค่าให้ลบ/ไม่ลบ ไฟล์ หลังจากทำงานเรียบร้อยแล้ว
-ทำงานแบบ backgroundWorker และ มี % บอกความคืบหน้า


ตอนนี้ก็ติดอีกข้อ คือ ขนาด vedio
ผมลองใช้ --display-dimensions '1:640x480' และ --aspect-ratio '16/9' ก็ยังไม่ได้
เห็นใน format factory มีก็เลยอยากมีกะเขามั่งครับ

666

อาจจะค่อยๆทำต่อไปเพื่อให้โค้ดดีขึ้นเรื่อยๆ ครับ


ประวัติการแก้ไข
2020-12-22 18:03:53
2020-12-22 18:04:42
2020-12-22 18:05:40
2020-12-22 18:06:14
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2020-12-22 18:01:39 By : lamaka.tor
 


 
Quote:
MvkToolnix can't crop or re-encode.


การ resize ต้องผ่านกระบวนการ re-encoding ซึ่งจะทำให้คุณภาพลดลงทั้งระดับที่สามารถและไม่สามารถมองเห็นด้วยตาคน และใช้เวลาตามการตั้งค่าความละเอียดและบิตเรต ...แต่เครื่องมือตระกูล MvkToolnix ไม่มีอันใดสามารถทำการ re-encoding ได้


ในกรณีนี้ต้องพึ่งพวก video encoder tools อย่าง FFMPEG... ฯลฯ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2020-12-22 19:26:43 By : ล่องหน
 


 

No. 23



โพสกระทู้ ( 4,226 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 22 เขียนโดย : ล่องหน เมื่อวันที่ 2020-12-22 19:26:43
รายละเอียดของการตอบ ::
ถ้าเป็น FF เราจะสามารถเลือก ภาษา เป็น ISO 639 ได้ไม๊ ครับ
เห็นใน gui มันให้เลือก แบบนี้

55

ไม่ขึ้น th en zh ko เหมือนใน mkvtoolnix
ตอนนี้ลองเขียน สคลิปดูก่อนได้ประมาณนี้ครับ

658

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2020-12-23 09:09:41 By : lamaka.tor
 


 
ดูภาษา
Quote:
ffprobe in.mkv -show_entries stream=index:stream_tags=language -select_streams a -of compact=p=0:nk=1


เก็บเฉพาะเสียงไทย
Quote:
ffmpeg -i in.mkv -c copy -map 0:v -map 0:m:language:tha OnlyTH.mkv


ถอดเฉพาะเสียงไทย
Quote:
ffmpeg -i in.mkv -c copy -map 0 -map -0:m:language:tha NoTH.mkv


https://ffmpeg.org/ffmpeg.html#Advanced-options
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2020-12-23 10:38:40 By : ล่องหน
 


 

No. 25



โพสกระทู้ ( 4,226 )
บทความ ( 23 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 24 เขียนโดย : ล่องหน เมื่อวันที่ 2020-12-23 10:38:40
รายละเอียดของการตอบ ::
ขอบคุณมากครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2020-12-23 17:36:56 By : lamaka.tor
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : C# WinApp ขอคำแนะนำเกี่ยวกับการจัดการไฟล์ mkv หน่อยครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: Voake, Comcube, รับทำเว็บไซต์ รับเขียนโปรแกรม , pangpond.com , pangpond.co.th , สำนักงานบัญชี.com , รถมือสอง

Load balance : Server 05
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2021 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่