[HowTo] »Rip» or copy a DVD by hand with cat and ffmpeg

The other day my cousin lent me some movies, and he was asking me back, so I wanted to make one of them. copy. I tried with dvd :: rip but it didn't work very well for me, and checking the DVD I saw some video files. I thought if the joined and encoded, would have the movie. And it served 🙂 Today I come to share the trick.

Note: my intention is simply share knowledge, No. Encourage the piracy. The mess they can get into is in their hands, or FromLinux ni its authors (me included) we are responsible for the use they make of it.

With that note, we begin. First of all, let's introduce a DVD. I used one of Sherlock Holmes 😉

To start, we insert the DVD that we want to copy. Then we assemble and check it. In my case, the folder where the movie is is called VIDEO_TS. We just have to copy those parts of the movie to a folder in our Home. One good thing about this is that we do not copy the advertisements that it may bring 😉

Parts of the film

In case you want to know, they are «shares»Because the programs that the DVDs often generate a menu of «Select scene«. So, they divide the movie in order to be able to choose a specific scene.

The directory, name and format of the videos may vary. Basically the procedure is the same.

The next thing is to give him permission to Reading and writing to those files, to delete them later. Now we open a terminal in the folder where the pieces of the film are, and we execute this command:

cat parte1.extensión parte2.extensión ... parteX.extensión > temp.extensión

I explain. Where says "partX.extension«, Place the name and extension of each of the parts, then those parts are copied to a single file called temp. extension. It is important that the file «temp»Has the same extension as the other files. For example:

cat VTS_01_1.VOB VTS_01_2.VOB VTS_01_3.VOB VTS_01_4.VOB > temp.VOB

In my case there are 4 parts, extension .VOB. So the final file also has the extension .VOB.

When that's done, it just remains code the final file with ffmpeg. For example:

ffmpeg -i temp.VOB -vcodec libxvid -sameq nombre.avi

Or it could also be:

ffmpeg -i temp.VOB -vcodec msmpegv4 -sameq nombre.mp4

Use of El ffmpeg it's simple. the parameter -i is to enter the file to encode, -vcodec is used to indicate a video codec, with -sameq we indicate that you keep the same quality, and finally we write the name of the final file.

The codec «msmpegv4»Also applies to the format .avi, and it gives a good compression 🙂

That's it. I would only subtract delete temporary file and parts, in addition to placing the finished file where we want.

You know, if you have any questions, opinions or suggestions: comment 😀

The content of the article adheres to our principles of editorial ethics. To report an error click here!.

13 comments, leave yours

Leave a Comment

Your email address will not be published.



  1. Responsible for the data: Miguel Ángel Gatón
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.

  1.   Marcelo said

    What if the DVD is protected?
    In Windows we have the great AnyDVD but there is no equivalent in Linux

    And the subtitles?

    1.    auroszx said

      If it is protected no idea, but unfortunately the subtitles are not included (most of the time) in the original videos: / So this copies them without subtitles.

  2.   anti said

    Leave your piracy. Something like this can come in handy when you're recording things on a camera or phone and you need to stitch them together without much trouble.

    1.    Marcelo said

      The popular saying already says: "The thief thinks everyone is of his condition."
      Nothing piracy brother, do not prejudge me without knowing me. I have ORIGINAL DVDs that I have used quite a bit and I would like to have a backup just in case. That is not a crime and I am not hacking anything. I have the right to copy something that is mine as many times as I want as long as it is for personal use.

    2.    auroszx said

      Yes, that may be another use 🙂 You could just merge videos into one file.

  3.   sieg84 said

    And how would it be to use x264 and faac?

    1.    auroszx said

      Like this: ffmpeg -i file.extension -vcodec libx264 -acodec libfaac file.extension

      -vcodec and -acodec are used for video and audio codec respectively.

  4.   Max Steel said

    The warning is very good but very bad ... bad because piracy seeks a profit (to sell or rent) here we only seek to entertain ourselves.

    Thanks for the info. For KDE you can use K9Copy which has worked perfectly for me.

  5.   kike said

    Hello everyone! My only problem with this is that I have DVD movies such as the Simpsons and when I wanted to rip them to have them saved and see them on the PC they were heard in English, because this only works when the movie is in Spanish, if they are in many languages ​​such as Spanish, English, French, Italian, it does not work, or if you also want to remove the subtitles.

    I got it using mencoder, I leave a manual although I think it will be somewhat outdated -> http://kikefree.wordpress.com/2011/05/04/ripear-dvd-en-gnulinux-a-traves-de-3-pasos-usando-mencoder/

    Anyway good post!

  6.   Gregory Swords said

    Doubt: And what on earth do the .IFO and ..BUP files contain that are not necessary to rip the movie?

    1.    auroszx said

      Well, the .ifo are the ones that contain the menus, subtitles, languages, etc. The .bup are only backups of the .ifo, which are used in case of being corrupt.

  7.   David DR said

    Interesting, I'm going to try it

  8.   VaryHeavy said

    I am not particularly fond of the avi format ... and whenever I can, I opt for the much better mkv. Didn't you test if the same could be done with Handbrake? Handbrake allows you to export the video to mkv or mp4.

bool (true)