Handbrake settings to convert MKV to MP4 while retaining the original quality












42















I have a ton of MKV files I need to convert to MP4 and my chosen software is Handbrake.



I'm stuck on which settings would be best for the conversion. I want to retain full quality. Do I just convert with the original settings and not change anything or is there any specific thing I need to change?










share|improve this question

























  • Here is quite detailed guide on Handbrake's settings mattgadient.com/2013/06/12/…

    – janot
    May 18 '15 at 23:38











  • i'm getting an error on some files (for mkv to mp4 and mp4 to mkv): Output file #0 does not contain any stream. Anybody have any idea what this means?

    – user2230470
    Sep 14 '17 at 1:15
















42















I have a ton of MKV files I need to convert to MP4 and my chosen software is Handbrake.



I'm stuck on which settings would be best for the conversion. I want to retain full quality. Do I just convert with the original settings and not change anything or is there any specific thing I need to change?










share|improve this question

























  • Here is quite detailed guide on Handbrake's settings mattgadient.com/2013/06/12/…

    – janot
    May 18 '15 at 23:38











  • i'm getting an error on some files (for mkv to mp4 and mp4 to mkv): Output file #0 does not contain any stream. Anybody have any idea what this means?

    – user2230470
    Sep 14 '17 at 1:15














42












42








42


38






I have a ton of MKV files I need to convert to MP4 and my chosen software is Handbrake.



I'm stuck on which settings would be best for the conversion. I want to retain full quality. Do I just convert with the original settings and not change anything or is there any specific thing I need to change?










share|improve this question
















I have a ton of MKV files I need to convert to MP4 and my chosen software is Handbrake.



I'm stuck on which settings would be best for the conversion. I want to retain full quality. Do I just convert with the original settings and not change anything or is there any specific thing I need to change?







video-conversion mp4 matroska handbrake






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Mar 11 '13 at 19:14









slhck

161k47447470




161k47447470










asked Sep 10 '12 at 17:23









orangeorange

41531013




41531013













  • Here is quite detailed guide on Handbrake's settings mattgadient.com/2013/06/12/…

    – janot
    May 18 '15 at 23:38











  • i'm getting an error on some files (for mkv to mp4 and mp4 to mkv): Output file #0 does not contain any stream. Anybody have any idea what this means?

    – user2230470
    Sep 14 '17 at 1:15



















  • Here is quite detailed guide on Handbrake's settings mattgadient.com/2013/06/12/…

    – janot
    May 18 '15 at 23:38











  • i'm getting an error on some files (for mkv to mp4 and mp4 to mkv): Output file #0 does not contain any stream. Anybody have any idea what this means?

    – user2230470
    Sep 14 '17 at 1:15

















Here is quite detailed guide on Handbrake's settings mattgadient.com/2013/06/12/…

– janot
May 18 '15 at 23:38





Here is quite detailed guide on Handbrake's settings mattgadient.com/2013/06/12/…

– janot
May 18 '15 at 23:38













i'm getting an error on some files (for mkv to mp4 and mp4 to mkv): Output file #0 does not contain any stream. Anybody have any idea what this means?

– user2230470
Sep 14 '17 at 1:15





i'm getting an error on some files (for mkv to mp4 and mp4 to mkv): Output file #0 does not contain any stream. Anybody have any idea what this means?

– user2230470
Sep 14 '17 at 1:15










2 Answers
2






active

oldest

votes


















84














What's the problem with Handbrake?



When you're using Handbrake to convert from one container format to
the other (i.e. MKV to MP4 in your case), Handbrake will re-encode the video. See also the respective feature request that would have enabled video passthrough:




Sorry, adding video passthrough is not planned. HandBrake is designed to be a video transcoder. It wasn't designed to allow passthrough.




So, anytime you're changing containers with Handbrake, your video is going to get re-encoded, which means it a) takes time and b) may introduce quality loss.



Do I have to re-encode? Couldn't I just swap the container?



Since passthrough is not possible, ask yourself: Do I need to re-encode? If you only want to change the container from MKV to MP4, you usually don't need to encode anything, you just change the "wrapping" around the video. This doesn't lose quality, and it'll be a much faster process.



You can swap containers easily with FFmpeg – you just have to tell it to copy the video and audio streams:



ffmpeg -i input.mkv -c copy -map 0 output.mp4


There are also tools like MP4Box which can also create MP4 containers — the same exists for MKV with MKVtoolnix.



However, there's a big caveat: this only works if the audio and video codecs are supported in the target (MP4) container, which is the case for H.264/H.265 and AAC, for example, but not for many others. Also, subtitle format support for MP4 is different from MKV, and actually quite restricted, so this command may fail.



If this command does not work, and if your input uses the wrong codecs for the output container, you will probably have to re-encode. In this case, the codecs will be adapted to the output container.



To understand why this is necessary, it's important to learn the difference between video codecs and containers. This will help you understand why changing containers works and why the containers MP4 and MKV have little to do with video codecs, actually.



Why is re-encoding bad, anyway?



You can (usually) not retain full quality when encoding a video that was already encoded. This is because the original has already been compressed by throwing away information, and by doing it again you're introducing generation loss.



Often, you want to re-encode video when for example its dimensions change, or you need a specific bit rate to squeeze your video stream into, or your original video uses a codec that you can't play for whatever reason.



So, if you load your MKV video into Handbrake, and re-encode it with x264, the H.264 encoder Handbrake uses, store it in an MP4 container, you are going to lose quality no matter what, unless you set the bitrate or quality factor so high that you won't (really) see the difference. But then, the file size will be bigger as well.



In the ideal case, you would convert the video to an uncompressed video, which won't lose you any quality, but give you files of a dozen Gigabytes in size, even for a few minutes of video material.



Okay, but I really have to re-encode!



If you really have to re-encode, make sure not to set an average bitrate, but choose a Constant Rate Factor, which is something like "constant quality". Just like "variable bit rate" for MP3: It will make sure to spend the bits on the video parts that need them and make the overall quality better — at the same file size.



Sane CRF values are from 19 to 24, where lower means "better". So, you could try with a Rate Factor of 19. Also, make sure to set the "High" profile, which enables the encoder to use all bells and whistles and optimize the quality for a given bit rate.








share|improve this answer


























  • Thank you! It seems you are the only one who seems to care about this question and help me out, I followed your advice and seems the quality is same as the original! :)

    – orange
    Sep 11 '12 at 18:46











  • For some mkv files this will fail with (Could not write header for output file...incorrect codec). Use ffprobe -i file.mkv to see what format the a/v is in, you will likely need to reecode with x264 video and aac/ac3 audio

    – ski_squaw
    Apr 9 '16 at 18:33











  • u 100% certain that rewrapping files doesn't cause quality loss??

    – user2230470
    Sep 14 '17 at 0:45






  • 1





    @BallpointBen Not possible, no: github.com/HandBrake/HandBrake/issues/…

    – slhck
    Jun 14 '18 at 9:17






  • 1





    @Hashim I tried to clarify the post as requested. And regarding your question, since Handbrake does not allow passthrough, converting from MP4 to MKV will introduce quality loss. And it'll take a lot of time. Just do ffmpeg -i input.mp4 -c copy output.mkv and you should be fine.

    – slhck
    Jan 8 at 9:18



















4














This works very well for me.
Below is code to convert all .mkv to .mp4 files in windows.




  • You may need to add ffmpeg to your path. you can just put the full
    path to the ffmpeg executable, D:appsffmpegbinffmpeg.exe

  • Download ffmpeg for windows here.

  • Usage: Drop a .mkv file onto it. It will do the whole directory.


Save in a file called convert.bat.



for %%a in ("*.mkv") do ffmpeg.exe -i "%%a" -vcodec copy -acodec copy "%%~na .mp4"
pause





share|improve this answer
























  • Works like a charm.

    – Kit Johnson
    Mar 21 '16 at 6:36











  • I put this in the folder with ffmpeg.exe and then changed it to for %%a in ("*.mkv") do %~dp0ffmpeg.exe -i "%%a" -vcodec copy -acodec copy "%%~na .mp4"

    – davidtbernal
    Mar 30 '17 at 1:32










protected by slhck Feb 11 '14 at 7:23



Thank you for your interest in this question.
Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).



Would you like to answer one of these unanswered questions instead?














2 Answers
2






active

oldest

votes








2 Answers
2






active

oldest

votes









active

oldest

votes






active

oldest

votes









84














What's the problem with Handbrake?



When you're using Handbrake to convert from one container format to
the other (i.e. MKV to MP4 in your case), Handbrake will re-encode the video. See also the respective feature request that would have enabled video passthrough:




Sorry, adding video passthrough is not planned. HandBrake is designed to be a video transcoder. It wasn't designed to allow passthrough.




So, anytime you're changing containers with Handbrake, your video is going to get re-encoded, which means it a) takes time and b) may introduce quality loss.



Do I have to re-encode? Couldn't I just swap the container?



Since passthrough is not possible, ask yourself: Do I need to re-encode? If you only want to change the container from MKV to MP4, you usually don't need to encode anything, you just change the "wrapping" around the video. This doesn't lose quality, and it'll be a much faster process.



You can swap containers easily with FFmpeg – you just have to tell it to copy the video and audio streams:



ffmpeg -i input.mkv -c copy -map 0 output.mp4


There are also tools like MP4Box which can also create MP4 containers — the same exists for MKV with MKVtoolnix.



However, there's a big caveat: this only works if the audio and video codecs are supported in the target (MP4) container, which is the case for H.264/H.265 and AAC, for example, but not for many others. Also, subtitle format support for MP4 is different from MKV, and actually quite restricted, so this command may fail.



If this command does not work, and if your input uses the wrong codecs for the output container, you will probably have to re-encode. In this case, the codecs will be adapted to the output container.



To understand why this is necessary, it's important to learn the difference between video codecs and containers. This will help you understand why changing containers works and why the containers MP4 and MKV have little to do with video codecs, actually.



Why is re-encoding bad, anyway?



You can (usually) not retain full quality when encoding a video that was already encoded. This is because the original has already been compressed by throwing away information, and by doing it again you're introducing generation loss.



Often, you want to re-encode video when for example its dimensions change, or you need a specific bit rate to squeeze your video stream into, or your original video uses a codec that you can't play for whatever reason.



So, if you load your MKV video into Handbrake, and re-encode it with x264, the H.264 encoder Handbrake uses, store it in an MP4 container, you are going to lose quality no matter what, unless you set the bitrate or quality factor so high that you won't (really) see the difference. But then, the file size will be bigger as well.



In the ideal case, you would convert the video to an uncompressed video, which won't lose you any quality, but give you files of a dozen Gigabytes in size, even for a few minutes of video material.



Okay, but I really have to re-encode!



If you really have to re-encode, make sure not to set an average bitrate, but choose a Constant Rate Factor, which is something like "constant quality". Just like "variable bit rate" for MP3: It will make sure to spend the bits on the video parts that need them and make the overall quality better — at the same file size.



Sane CRF values are from 19 to 24, where lower means "better". So, you could try with a Rate Factor of 19. Also, make sure to set the "High" profile, which enables the encoder to use all bells and whistles and optimize the quality for a given bit rate.








share|improve this answer


























  • Thank you! It seems you are the only one who seems to care about this question and help me out, I followed your advice and seems the quality is same as the original! :)

    – orange
    Sep 11 '12 at 18:46











  • For some mkv files this will fail with (Could not write header for output file...incorrect codec). Use ffprobe -i file.mkv to see what format the a/v is in, you will likely need to reecode with x264 video and aac/ac3 audio

    – ski_squaw
    Apr 9 '16 at 18:33











  • u 100% certain that rewrapping files doesn't cause quality loss??

    – user2230470
    Sep 14 '17 at 0:45






  • 1





    @BallpointBen Not possible, no: github.com/HandBrake/HandBrake/issues/…

    – slhck
    Jun 14 '18 at 9:17






  • 1





    @Hashim I tried to clarify the post as requested. And regarding your question, since Handbrake does not allow passthrough, converting from MP4 to MKV will introduce quality loss. And it'll take a lot of time. Just do ffmpeg -i input.mp4 -c copy output.mkv and you should be fine.

    – slhck
    Jan 8 at 9:18
















84














What's the problem with Handbrake?



When you're using Handbrake to convert from one container format to
the other (i.e. MKV to MP4 in your case), Handbrake will re-encode the video. See also the respective feature request that would have enabled video passthrough:




Sorry, adding video passthrough is not planned. HandBrake is designed to be a video transcoder. It wasn't designed to allow passthrough.




So, anytime you're changing containers with Handbrake, your video is going to get re-encoded, which means it a) takes time and b) may introduce quality loss.



Do I have to re-encode? Couldn't I just swap the container?



Since passthrough is not possible, ask yourself: Do I need to re-encode? If you only want to change the container from MKV to MP4, you usually don't need to encode anything, you just change the "wrapping" around the video. This doesn't lose quality, and it'll be a much faster process.



You can swap containers easily with FFmpeg – you just have to tell it to copy the video and audio streams:



ffmpeg -i input.mkv -c copy -map 0 output.mp4


There are also tools like MP4Box which can also create MP4 containers — the same exists for MKV with MKVtoolnix.



However, there's a big caveat: this only works if the audio and video codecs are supported in the target (MP4) container, which is the case for H.264/H.265 and AAC, for example, but not for many others. Also, subtitle format support for MP4 is different from MKV, and actually quite restricted, so this command may fail.



If this command does not work, and if your input uses the wrong codecs for the output container, you will probably have to re-encode. In this case, the codecs will be adapted to the output container.



To understand why this is necessary, it's important to learn the difference between video codecs and containers. This will help you understand why changing containers works and why the containers MP4 and MKV have little to do with video codecs, actually.



Why is re-encoding bad, anyway?



You can (usually) not retain full quality when encoding a video that was already encoded. This is because the original has already been compressed by throwing away information, and by doing it again you're introducing generation loss.



Often, you want to re-encode video when for example its dimensions change, or you need a specific bit rate to squeeze your video stream into, or your original video uses a codec that you can't play for whatever reason.



So, if you load your MKV video into Handbrake, and re-encode it with x264, the H.264 encoder Handbrake uses, store it in an MP4 container, you are going to lose quality no matter what, unless you set the bitrate or quality factor so high that you won't (really) see the difference. But then, the file size will be bigger as well.



In the ideal case, you would convert the video to an uncompressed video, which won't lose you any quality, but give you files of a dozen Gigabytes in size, even for a few minutes of video material.



Okay, but I really have to re-encode!



If you really have to re-encode, make sure not to set an average bitrate, but choose a Constant Rate Factor, which is something like "constant quality". Just like "variable bit rate" for MP3: It will make sure to spend the bits on the video parts that need them and make the overall quality better — at the same file size.



Sane CRF values are from 19 to 24, where lower means "better". So, you could try with a Rate Factor of 19. Also, make sure to set the "High" profile, which enables the encoder to use all bells and whistles and optimize the quality for a given bit rate.








share|improve this answer


























  • Thank you! It seems you are the only one who seems to care about this question and help me out, I followed your advice and seems the quality is same as the original! :)

    – orange
    Sep 11 '12 at 18:46











  • For some mkv files this will fail with (Could not write header for output file...incorrect codec). Use ffprobe -i file.mkv to see what format the a/v is in, you will likely need to reecode with x264 video and aac/ac3 audio

    – ski_squaw
    Apr 9 '16 at 18:33











  • u 100% certain that rewrapping files doesn't cause quality loss??

    – user2230470
    Sep 14 '17 at 0:45






  • 1





    @BallpointBen Not possible, no: github.com/HandBrake/HandBrake/issues/…

    – slhck
    Jun 14 '18 at 9:17






  • 1





    @Hashim I tried to clarify the post as requested. And regarding your question, since Handbrake does not allow passthrough, converting from MP4 to MKV will introduce quality loss. And it'll take a lot of time. Just do ffmpeg -i input.mp4 -c copy output.mkv and you should be fine.

    – slhck
    Jan 8 at 9:18














84












84








84







What's the problem with Handbrake?



When you're using Handbrake to convert from one container format to
the other (i.e. MKV to MP4 in your case), Handbrake will re-encode the video. See also the respective feature request that would have enabled video passthrough:




Sorry, adding video passthrough is not planned. HandBrake is designed to be a video transcoder. It wasn't designed to allow passthrough.




So, anytime you're changing containers with Handbrake, your video is going to get re-encoded, which means it a) takes time and b) may introduce quality loss.



Do I have to re-encode? Couldn't I just swap the container?



Since passthrough is not possible, ask yourself: Do I need to re-encode? If you only want to change the container from MKV to MP4, you usually don't need to encode anything, you just change the "wrapping" around the video. This doesn't lose quality, and it'll be a much faster process.



You can swap containers easily with FFmpeg – you just have to tell it to copy the video and audio streams:



ffmpeg -i input.mkv -c copy -map 0 output.mp4


There are also tools like MP4Box which can also create MP4 containers — the same exists for MKV with MKVtoolnix.



However, there's a big caveat: this only works if the audio and video codecs are supported in the target (MP4) container, which is the case for H.264/H.265 and AAC, for example, but not for many others. Also, subtitle format support for MP4 is different from MKV, and actually quite restricted, so this command may fail.



If this command does not work, and if your input uses the wrong codecs for the output container, you will probably have to re-encode. In this case, the codecs will be adapted to the output container.



To understand why this is necessary, it's important to learn the difference between video codecs and containers. This will help you understand why changing containers works and why the containers MP4 and MKV have little to do with video codecs, actually.



Why is re-encoding bad, anyway?



You can (usually) not retain full quality when encoding a video that was already encoded. This is because the original has already been compressed by throwing away information, and by doing it again you're introducing generation loss.



Often, you want to re-encode video when for example its dimensions change, or you need a specific bit rate to squeeze your video stream into, or your original video uses a codec that you can't play for whatever reason.



So, if you load your MKV video into Handbrake, and re-encode it with x264, the H.264 encoder Handbrake uses, store it in an MP4 container, you are going to lose quality no matter what, unless you set the bitrate or quality factor so high that you won't (really) see the difference. But then, the file size will be bigger as well.



In the ideal case, you would convert the video to an uncompressed video, which won't lose you any quality, but give you files of a dozen Gigabytes in size, even for a few minutes of video material.



Okay, but I really have to re-encode!



If you really have to re-encode, make sure not to set an average bitrate, but choose a Constant Rate Factor, which is something like "constant quality". Just like "variable bit rate" for MP3: It will make sure to spend the bits on the video parts that need them and make the overall quality better — at the same file size.



Sane CRF values are from 19 to 24, where lower means "better". So, you could try with a Rate Factor of 19. Also, make sure to set the "High" profile, which enables the encoder to use all bells and whistles and optimize the quality for a given bit rate.








share|improve this answer















What's the problem with Handbrake?



When you're using Handbrake to convert from one container format to
the other (i.e. MKV to MP4 in your case), Handbrake will re-encode the video. See also the respective feature request that would have enabled video passthrough:




Sorry, adding video passthrough is not planned. HandBrake is designed to be a video transcoder. It wasn't designed to allow passthrough.




So, anytime you're changing containers with Handbrake, your video is going to get re-encoded, which means it a) takes time and b) may introduce quality loss.



Do I have to re-encode? Couldn't I just swap the container?



Since passthrough is not possible, ask yourself: Do I need to re-encode? If you only want to change the container from MKV to MP4, you usually don't need to encode anything, you just change the "wrapping" around the video. This doesn't lose quality, and it'll be a much faster process.



You can swap containers easily with FFmpeg – you just have to tell it to copy the video and audio streams:



ffmpeg -i input.mkv -c copy -map 0 output.mp4


There are also tools like MP4Box which can also create MP4 containers — the same exists for MKV with MKVtoolnix.



However, there's a big caveat: this only works if the audio and video codecs are supported in the target (MP4) container, which is the case for H.264/H.265 and AAC, for example, but not for many others. Also, subtitle format support for MP4 is different from MKV, and actually quite restricted, so this command may fail.



If this command does not work, and if your input uses the wrong codecs for the output container, you will probably have to re-encode. In this case, the codecs will be adapted to the output container.



To understand why this is necessary, it's important to learn the difference between video codecs and containers. This will help you understand why changing containers works and why the containers MP4 and MKV have little to do with video codecs, actually.



Why is re-encoding bad, anyway?



You can (usually) not retain full quality when encoding a video that was already encoded. This is because the original has already been compressed by throwing away information, and by doing it again you're introducing generation loss.



Often, you want to re-encode video when for example its dimensions change, or you need a specific bit rate to squeeze your video stream into, or your original video uses a codec that you can't play for whatever reason.



So, if you load your MKV video into Handbrake, and re-encode it with x264, the H.264 encoder Handbrake uses, store it in an MP4 container, you are going to lose quality no matter what, unless you set the bitrate or quality factor so high that you won't (really) see the difference. But then, the file size will be bigger as well.



In the ideal case, you would convert the video to an uncompressed video, which won't lose you any quality, but give you files of a dozen Gigabytes in size, even for a few minutes of video material.



Okay, but I really have to re-encode!



If you really have to re-encode, make sure not to set an average bitrate, but choose a Constant Rate Factor, which is something like "constant quality". Just like "variable bit rate" for MP3: It will make sure to spend the bits on the video parts that need them and make the overall quality better — at the same file size.



Sane CRF values are from 19 to 24, where lower means "better". So, you could try with a Rate Factor of 19. Also, make sure to set the "High" profile, which enables the encoder to use all bells and whistles and optimize the quality for a given bit rate.









share|improve this answer














share|improve this answer



share|improve this answer








edited Jan 8 at 9:24

























answered Sep 10 '12 at 17:58









slhckslhck

161k47447470




161k47447470













  • Thank you! It seems you are the only one who seems to care about this question and help me out, I followed your advice and seems the quality is same as the original! :)

    – orange
    Sep 11 '12 at 18:46











  • For some mkv files this will fail with (Could not write header for output file...incorrect codec). Use ffprobe -i file.mkv to see what format the a/v is in, you will likely need to reecode with x264 video and aac/ac3 audio

    – ski_squaw
    Apr 9 '16 at 18:33











  • u 100% certain that rewrapping files doesn't cause quality loss??

    – user2230470
    Sep 14 '17 at 0:45






  • 1





    @BallpointBen Not possible, no: github.com/HandBrake/HandBrake/issues/…

    – slhck
    Jun 14 '18 at 9:17






  • 1





    @Hashim I tried to clarify the post as requested. And regarding your question, since Handbrake does not allow passthrough, converting from MP4 to MKV will introduce quality loss. And it'll take a lot of time. Just do ffmpeg -i input.mp4 -c copy output.mkv and you should be fine.

    – slhck
    Jan 8 at 9:18



















  • Thank you! It seems you are the only one who seems to care about this question and help me out, I followed your advice and seems the quality is same as the original! :)

    – orange
    Sep 11 '12 at 18:46











  • For some mkv files this will fail with (Could not write header for output file...incorrect codec). Use ffprobe -i file.mkv to see what format the a/v is in, you will likely need to reecode with x264 video and aac/ac3 audio

    – ski_squaw
    Apr 9 '16 at 18:33











  • u 100% certain that rewrapping files doesn't cause quality loss??

    – user2230470
    Sep 14 '17 at 0:45






  • 1





    @BallpointBen Not possible, no: github.com/HandBrake/HandBrake/issues/…

    – slhck
    Jun 14 '18 at 9:17






  • 1





    @Hashim I tried to clarify the post as requested. And regarding your question, since Handbrake does not allow passthrough, converting from MP4 to MKV will introduce quality loss. And it'll take a lot of time. Just do ffmpeg -i input.mp4 -c copy output.mkv and you should be fine.

    – slhck
    Jan 8 at 9:18

















Thank you! It seems you are the only one who seems to care about this question and help me out, I followed your advice and seems the quality is same as the original! :)

– orange
Sep 11 '12 at 18:46





Thank you! It seems you are the only one who seems to care about this question and help me out, I followed your advice and seems the quality is same as the original! :)

– orange
Sep 11 '12 at 18:46













For some mkv files this will fail with (Could not write header for output file...incorrect codec). Use ffprobe -i file.mkv to see what format the a/v is in, you will likely need to reecode with x264 video and aac/ac3 audio

– ski_squaw
Apr 9 '16 at 18:33





For some mkv files this will fail with (Could not write header for output file...incorrect codec). Use ffprobe -i file.mkv to see what format the a/v is in, you will likely need to reecode with x264 video and aac/ac3 audio

– ski_squaw
Apr 9 '16 at 18:33













u 100% certain that rewrapping files doesn't cause quality loss??

– user2230470
Sep 14 '17 at 0:45





u 100% certain that rewrapping files doesn't cause quality loss??

– user2230470
Sep 14 '17 at 0:45




1




1





@BallpointBen Not possible, no: github.com/HandBrake/HandBrake/issues/…

– slhck
Jun 14 '18 at 9:17





@BallpointBen Not possible, no: github.com/HandBrake/HandBrake/issues/…

– slhck
Jun 14 '18 at 9:17




1




1





@Hashim I tried to clarify the post as requested. And regarding your question, since Handbrake does not allow passthrough, converting from MP4 to MKV will introduce quality loss. And it'll take a lot of time. Just do ffmpeg -i input.mp4 -c copy output.mkv and you should be fine.

– slhck
Jan 8 at 9:18





@Hashim I tried to clarify the post as requested. And regarding your question, since Handbrake does not allow passthrough, converting from MP4 to MKV will introduce quality loss. And it'll take a lot of time. Just do ffmpeg -i input.mp4 -c copy output.mkv and you should be fine.

– slhck
Jan 8 at 9:18













4














This works very well for me.
Below is code to convert all .mkv to .mp4 files in windows.




  • You may need to add ffmpeg to your path. you can just put the full
    path to the ffmpeg executable, D:appsffmpegbinffmpeg.exe

  • Download ffmpeg for windows here.

  • Usage: Drop a .mkv file onto it. It will do the whole directory.


Save in a file called convert.bat.



for %%a in ("*.mkv") do ffmpeg.exe -i "%%a" -vcodec copy -acodec copy "%%~na .mp4"
pause





share|improve this answer
























  • Works like a charm.

    – Kit Johnson
    Mar 21 '16 at 6:36











  • I put this in the folder with ffmpeg.exe and then changed it to for %%a in ("*.mkv") do %~dp0ffmpeg.exe -i "%%a" -vcodec copy -acodec copy "%%~na .mp4"

    – davidtbernal
    Mar 30 '17 at 1:32
















4














This works very well for me.
Below is code to convert all .mkv to .mp4 files in windows.




  • You may need to add ffmpeg to your path. you can just put the full
    path to the ffmpeg executable, D:appsffmpegbinffmpeg.exe

  • Download ffmpeg for windows here.

  • Usage: Drop a .mkv file onto it. It will do the whole directory.


Save in a file called convert.bat.



for %%a in ("*.mkv") do ffmpeg.exe -i "%%a" -vcodec copy -acodec copy "%%~na .mp4"
pause





share|improve this answer
























  • Works like a charm.

    – Kit Johnson
    Mar 21 '16 at 6:36











  • I put this in the folder with ffmpeg.exe and then changed it to for %%a in ("*.mkv") do %~dp0ffmpeg.exe -i "%%a" -vcodec copy -acodec copy "%%~na .mp4"

    – davidtbernal
    Mar 30 '17 at 1:32














4












4








4







This works very well for me.
Below is code to convert all .mkv to .mp4 files in windows.




  • You may need to add ffmpeg to your path. you can just put the full
    path to the ffmpeg executable, D:appsffmpegbinffmpeg.exe

  • Download ffmpeg for windows here.

  • Usage: Drop a .mkv file onto it. It will do the whole directory.


Save in a file called convert.bat.



for %%a in ("*.mkv") do ffmpeg.exe -i "%%a" -vcodec copy -acodec copy "%%~na .mp4"
pause





share|improve this answer













This works very well for me.
Below is code to convert all .mkv to .mp4 files in windows.




  • You may need to add ffmpeg to your path. you can just put the full
    path to the ffmpeg executable, D:appsffmpegbinffmpeg.exe

  • Download ffmpeg for windows here.

  • Usage: Drop a .mkv file onto it. It will do the whole directory.


Save in a file called convert.bat.



for %%a in ("*.mkv") do ffmpeg.exe -i "%%a" -vcodec copy -acodec copy "%%~na .mp4"
pause






share|improve this answer












share|improve this answer



share|improve this answer










answered Nov 15 '14 at 12:52









MonkeyMagicMonkeyMagic

1612




1612













  • Works like a charm.

    – Kit Johnson
    Mar 21 '16 at 6:36











  • I put this in the folder with ffmpeg.exe and then changed it to for %%a in ("*.mkv") do %~dp0ffmpeg.exe -i "%%a" -vcodec copy -acodec copy "%%~na .mp4"

    – davidtbernal
    Mar 30 '17 at 1:32



















  • Works like a charm.

    – Kit Johnson
    Mar 21 '16 at 6:36











  • I put this in the folder with ffmpeg.exe and then changed it to for %%a in ("*.mkv") do %~dp0ffmpeg.exe -i "%%a" -vcodec copy -acodec copy "%%~na .mp4"

    – davidtbernal
    Mar 30 '17 at 1:32

















Works like a charm.

– Kit Johnson
Mar 21 '16 at 6:36





Works like a charm.

– Kit Johnson
Mar 21 '16 at 6:36













I put this in the folder with ffmpeg.exe and then changed it to for %%a in ("*.mkv") do %~dp0ffmpeg.exe -i "%%a" -vcodec copy -acodec copy "%%~na .mp4"

– davidtbernal
Mar 30 '17 at 1:32





I put this in the folder with ffmpeg.exe and then changed it to for %%a in ("*.mkv") do %~dp0ffmpeg.exe -i "%%a" -vcodec copy -acodec copy "%%~na .mp4"

– davidtbernal
Mar 30 '17 at 1:32





protected by slhck Feb 11 '14 at 7:23



Thank you for your interest in this question.
Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).



Would you like to answer one of these unanswered questions instead?



Popular posts from this blog

"Incorrect syntax near the keyword 'ON'. (on update cascade, on delete cascade,)

Alcedinidae

RAC Tourist Trophy