VideoHelp Forum




+ Reply to Thread
Results 1 to 18 of 18
  1. Hello!

    I have 11 .mp4 files which are, together, an episode. I downloaded them from youtube because that's the only source with decent image quality. Youtube uploaded the episodes after dividing each one of them into 11 or 12 parts. I have subtitle for each episode. All I need is a software to play these 11 files using that subtitle. I cannot join these 11 files because 1 or 2 files have 1138x720 instead of 1136x720, as the rest of them. The series have 81 eps, so it's a drama to re-encode those parts to match 1136x720 resolution and also is taking almost 1 hour/part. o.O
    I made a TEST just for me to know how those parts act together, I joined the parts of the first episode, after ecoding those 2 parts to match the main resolution. I loaded the subtitle and is working fine in Kmplayer. I had to adjust the timming -35.5. I'm so sorry I can't do this for the resy of the episodes. ((
    I don't know if there are more other alternatives. Please help me find a solution.

    With thanks...
    Quote Quote  
  2. Member DB83's Avatar
    Join Date
    Jul 2007
    Location
    United Kingdom
    Search Comp PM
    Let's get a few things straight. YT does not

    1. Create split videos with different AR (however small)
    2. Split single videos in to many parts.

    But I may be wrong and this is may be some counter-copy protection. Post a link to one episode and let's see if it is downloadable complete.
    Quote Quote  
  3. I remember that YouTube at one point had a fifteen minute limit on the length of videos. It has progressed since then. What I would do is instead of converting if the episodes are segmented as you described I would put them in a folder and just have software player play them in order. Of course you can join the segment to make one episode but you would have to make sure all the parameters match up which means converting all the videos to one set of video dimensions, make sure your audio is all the same, make sure that all your fps are the same. You do this by converting them one by one and then joining them when they are all exactly alike. It is a lot of work and I don't know about adding the subtitles at the end of all this.

    I have found that my LG Blu Ray player can play files such as these in order and there is just a second or two distraction as the next file starts playing.

    I am sure someone here can describe the process better than I have for converting and joining.
    Quote Quote  
  4. I want to play these files on my pc. Then to shift delete them.

    All the episodes were uploaded in May 2012 by their production company channel. Here is the link of episode 2 https://www.youtube.com/playlist?list=PL12E8B7B9386F5B0C I downloaded a middle episode and same thing, at least one of those parts has a slightly different resolution.
    I think your're right, DB83, it's because they want to copy protect their material. I tried to download the parts of episode 2 using various downloaders and the files are the same resolution, meaning at least one of them with different resolution (in this case, the same part with that different resolution 1138x720 instead of 1136x720).

    With thanks...
    Quote Quote  
  5. Member DB83's Avatar
    Join Date
    Jul 2007
    Location
    United Kingdom
    Search Comp PM
    Ok. So it does seem that the uploader has split the files and, possibly, in an attempt to protect them.

    Software players (for a PC) can use playlists to run them in a certain order but if resolution is different then you will have to convert the odd one(s) to a common resolution before joining them. No easy solution.
    Quote Quote  
  6. You can use an AviSynth script to open all the segments, crop or addborders to those that need adjusting, then join them together. Then use a media player to play the AVS script.

    Code:
    v1 = ffmpegsource2("p01.mp4", atrack=1) 
    v2 = ffmpegsource2("p02.mp4", atrack=1) 
    v3 = ffmpegsource2("p03.mp4", atrack=1) 
    v4 = ffmpegsource2("p04.mp4", atrack=1) 
    v5 = ffmpegsource2("p05.mp4", atrack=1).Crop(2,0,0,0)
    v6 = ffmpegsource2("p06.mp4", atrack=1) 
    v7 = ffmpegsource2("p07.mp4", atrack=1) 
    v8 = ffmpegsource2("p08.mp4", atrack=1) 
    v9 = ffmpegsource2("p09.mp4", atrack=1) 
    v10 = ffmpegsource2("p10.mp4", atrack=1) 
    v11 = ffmpegsource2("p11.mp4", atrack=1) 
    v12 = ffmpegsource2("p12.mp4", atrack=1) 
    
    v1++v2++v3++v4++v5++v6++v7++v8++v9++v10++v11++v12
    Part 5 was cropped down to 1136x720 to match the rest. One problem you may run into: AviSynth doesn't like UNICODE characters in file names (which is why I renamed them here). And, of course, you'll have to build the script for each episode.

    Here's KMPlayer playing the above script with a random SRT subtitle file:

    Click image for larger version

Name:	sample.jpg
Views:	372
Size:	79.4 KB
ID:	35221
    Last edited by jagabo; 15th Jan 2016 at 07:11.
    Quote Quote  
  7. DB83, playing these files while in a playlist is a great option. So sad no soft media player can use a subtitle file for a playlist.
    Jagabo, that is a magic thing. Unfortunatelly I don't know how to use this program. I suppose it can help me a lot, after reading all its features.

    "crop or addborders " ----- I just hope no re encoding is involved.

    So I have to use AvsPmod for making the script. And the script is the "text" I'm writting in AvsPmod.

    "v1" is to leave it like that? and "ffmpegsource2", "p01"...
    (2,0,0,0) I guess "2"is the difference between 1138-1136 ... So whichever part has this problem I write like that next to it.
    I don't know what I need to personalize. And would be no bother at all, than to have struggle splitting 81 subtitles into hundreds of parts.

    With thanks...
    Quote Quote  
  8. Here's a batch file that will take three file names (drag/drop them onto the batch file) and build an AviSynth script called script.avs. When you drag and drop, highlight all 3 files, then grab the first one and drop the names onto the batch file -- that way they will appear in the right order.

    Code:
    echo p01=DirectShowSource("%~s1") >script.avs
    echo p02=DirectShowSource("%~s2").Crop(0,0,p01.width, p01.height) >>script.avs
    echo p03=DirectShowSource("%~s3").Crop(0,0,p01.width, p01.height) >>script.avs
    echo p01++p02++p03 >>script.avs
    I used DirectShowSource() instead of ffMpegsource2() because it doesn't create index files. And it builds a script using the munged 8.3 filenames so it avoids problems with UNICODE (ie, you don't have to rename your files). You should be able to figure out how to extend the batch file for 12 filenames. This script will not work if the first file is the one with the larger frame. If you want a script that will always work, even if the first video has the larger frame size,replace all instances of Crop(0,0,p01.width, p01.height) with BicubicResize(p01.width, p01.height).
    Quote Quote  
  9. Probably no need to manually join the multiple videos as there is a feature like seamless playback in KMPlayer or Potplayer. I've just tried it and seamless playback works even with the different resolution and format of videos. As the feature already sums up the index of each videos, it would be more simple to make a feature request for keeping one subtitles during seamless playback. There is an official forum of potplayer. You can try it.
    Quote Quote  
  10. Jagabo, what batch file? How to make it? I'm sorry, but I don't understand.
    "highlight all 3 files, then grab the first one and drop the names onto the batch file" Please tell me that in other words. How to grab the first one when you previously said to highlight all 3 files?

    Sheppaul, I sent a request.


    With thanks...
    Quote Quote  
  11. Start NotePad. Copy and paste the contents of the code box in post #8 into it. Save the document with .BAT as the extension. Ie, give it a name like MakeAVS.bat. You now have a batch file.

    To drag/drop mulitiple files onto a batch file open the folder with your files in Explorer. Make sure the files are sorted by name, alphabetically. Left click on the first file to highlight it:

    Click image for larger version

Name:	pic1.png
Views:	351
Size:	84.3 KB
ID:	35231

    Hold down the shift key and left click on the last file. That should select all files from first to last, they should be highlighted:

    Click image for larger version

Name:	pic2.png
Views:	396
Size:	100.7 KB
ID:	35230

    Move back to the first file, press the left mouse button on it (don't release yet), drag to the batch file, and release. A file named script.avs will be created. You can open that script in a player or editor that supports AviSynth scripts. I included an SRT file in the same folder to verify the subtitles were working as expected.

    Well, crap! I just found out that the "%~s1" spec only works for numbers up to 9. For 12 files you have to use a modification:

    Code:
    echo p01=DirectShowSource("%~s1") >script.avs
    shift
    echo p02=DirectShowSource("%~s1").Crop(0,0,p01.width, p01.height) >>script.avs
    shift
    echo p03=DirectShowSource("%~s1").Crop(0,0,p01.width, p01.height) >>script.avs
    shift
    echo p04=DirectShowSource("%~s1").Crop(0,0,p01.width, p01.height) >>script.avs
    shift
    echo p05=DirectShowSource("%~s1").Crop(0,0,p01.width, p01.height) >>script.avs
    shift
    echo p06=DirectShowSource("%~s1").Crop(0,0,p01.width, p01.height) >>script.avs
    shift
    echo p07=DirectShowSource("%~s1").Crop(0,0,p01.width, p01.height) >>script.avs
    shift
    echo p08=DirectShowSource("%~s1").Crop(0,0,p01.width, p01.height) >>script.avs
    shift
    echo p09=DirectShowSource("%~s1").Crop(0,0,p01.width, p01.height) >>script.avs
    shift
    echo p10=DirectShowSource("%~s1").Crop(0,0,p01.width, p01.height) >>script.avs
    shift
    echo p11=DirectShowSource("%~s1").Crop(0,0,p01.width, p01.height) >>script.avs
    shift
    echo p12=DirectShowSource("%~s1").Crop(0,0,p01.width, p01.height) >>script.avs
    shift
    echo p01++p02++p03++p04++p05++p06++p07++p08++p09++p10++p11++p12 >>script.avs
    A copy of this 12 file version is attached in a ZIP archive.
    Image Attached Files
    Quote Quote  
  12. Please excuse me for reading everything so wrong. I thought everything is more complicated than I expected and it didn't occur you were just saying to select all files and drag them over the .bat file.

    Do I need to install DirectShowSource? When I open the script in Kmplayer, I see ""Splice: video framerate doesn't match ""

    With thanks...
    Quote Quote  
  13. Originally Posted by Username2013 View Post
    Please excuse me for reading everything so wrong. I thought everything is more complicated than I expected and it didn't occur you were just saying to select all files and drag them over the .bat file.
    Yes, but you need to be sure the file you select to drag is the first one in the selected list. Otherwise they will not appear in the correct order. For example, if you drag #5 the list that's built will be 5, 6, 7, 8, 9, 10, 11, 12, 1, 2, 3, 4.

    Originally Posted by Username2013 View Post
    Do I need to install DirectShowSource? When I open the script in Kmplayer, I see ""Splice: video framerate doesn't match ""
    DirectShowSource() comes with AviSynth, DirectShowSource.dll in AviSynth's plugins folder. If it was missing you would get a different error message. It sounds like one of the files has a different frame rate. You might be able to get around that by adding .ChangeFPS(p01.framerate) to each of the DirectShow lines with the Crop filter:

    Code:
    echo p02=DirectShowSource("%~s1").Crop(0,0,p01.width, p01.height).ChangeFPS(p01.framerate) >>script.avs
    Quote Quote  
  14. This saved my sanity.

    Thank you very much ^_^
    Quote Quote  
  15. jagabo: Thank you for everything you did to help the original poster. I know you have helped me quite a bit with my computer problems over the years. So thank you for all the information you have provided to help me and other posters here at videohelp.
    Quote Quote  
  16. Glad to help out...
    Quote Quote  
  17. Hello! Please tell me how to modify the code when there's no difference in resolution.

    With thanks...
    Quote Quote  
  18. You don't need to modify the batch file if the videos are all the same resolution. The Crops will simply do nothing and the script should work. But if you want, you can remove ".Crop(0,0,p01.width, p01.height)" from each line.
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!