View Single Post
  #16   Report Post  
Posted to uk.d-i-y
Paul[_46_] Paul[_46_] is offline
external usenet poster
 
Posts: 870
Default Ripping DVD to hard drive

Graeme wrote:
In message , The Natural Philosopher
writes
On 02/08/2020 09:17, Graeme wrote:
Thanks for all the suggestions. Handbrake is apparently 64 bit only


handbrake 1.3.3 is 32 bit available.

https://handbrake.en.lo4d.com/windows


Thanks for that. I'm going round in circles, though. The link is
described as x32-x64 yet whenever I download and try to install, an
error message appears, telling me Handbrake is 64 bit only :-(


x86 32 bit

x64 \___ 64 bit
x86_64 /

x86/x64 Both (and not standardized either, as a descriptor)
Some softwares, when they mean both, just remove those numbers entirely.

*******

https://en.wikipedia.org/wiki/HandBrake

[On the right, is a synopsis]

Platform x64 === berp!!!

That would be "not encouraging" in my book.
That must be why there's no Handbrake on this WinXP setup.
WinXP does have a x64 version, it stopped at SP2, and it sucks (drivers).

*******

I checked my collection, and the Zeranoe one I'm using
is from 2014.

This site on the other hand, did some builds that work in WinXP.

The particular one I'm using here, was from a test back in 2019
and what seemed to work at the time. It's a nightly from 2018.

https://msfn.org/board/topic/177308-...ws-xp-in-2017/

https://rwijnsma.home.xs4all.nl/files/ffmpeg/?C=M;O=D

ffmpeg-N-92765-g2744d6b-win32-static_legacy.7z 2018-12-22 03:00 29M

Open with 7ZIP to unpack.

ffplay.exe 64,577,536 bytes SHA1= A1C381A41142E2FBF82553A5C0794E2E242D4BC9

Clean

https://www.virustotal.com/#/file/12...230a/detection

ffplay some.mp4

*******

The ffmpeg.exe executable can be renamed. The program detects
its name at runtime. If you call the file ffplay.exe then it
adopts the ffplay.exe personality. That's why the three files you
typically find in the downloaded ZIP are the same size. The compression
tool doesn't care, and the compression tool can see they're the same, such
that extra storage space is not needed. Only space on disk is used
when you unpack.

So when I virustotal scanned as in that example, I've actually
scanned ffmpeg.exe as well, because it's the same exact executable.

*******

What I didn't manage to figure out, is what format I should be
aiming for, to meet your 800MB target. I presume H.264 or H.265,
but I don't know if there's something better. For talking head
videos, it's possible VP9 or Ogg/Theora might be better. For
action movies, a Hollywood codec might be better.

These are some examples of FFMPEG in action.

The first, uses the profile concept.

ffmpeg -i input.avi -target pal-dvd output.mpg

Or, you can go "nerd" and spell it out completely.

http://todayiwantedtoprogram.tumblr....vd-actually-do

ffmpeg -i input.avi -c:v mpeg2video -f dvd -s 720x576 -r 25
-pix_fmt yuv420p -g 15 -b:v 4100k -maxrate 8000000 -minrate 0
-bufsize 1835008 -packetsize 2048 -pass 1 -an -y NUL

ffmpeg -i input.avi -c:v mpeg2video -c:a ac3 -f dvd -s 720x576 -r 25
-pix_fmt yuv420p -g 15 -b:v 4100k -maxrate 8000000 -minrate 0
-bufsize 1835008 -packetsize 2048
-muxrate 10080000 -b:a 448000 -ar 48000 -pass 2 output.mpg

That's high-quality DVD preparation, using two passes. The first
pass computes the bandwidth required. The second pass reads the info file
passed by the first pass, and using the bandwidth data, it can plan
the Q (quality) setting as a function of time. This improves the
overall quality, so that explosions aren't full of macroblocks
or the like.

*******

These are examples of using the video SIP in a newer video card.
This is hardware accelerated transcoding.

../ffmpeg -hwaccel nvdec -i "fedora.mkv" -y -acodec aac -vcodec h264_nvenc -crf 23 "output2.mp4"

# https://developer.nvidia.com/blog/nv...scoding-guide/
# preset slow is for quality

../ffmpeg -hwaccel cuvid -c:v h264_cuvid -i KEY01.mp4 -c:v nvenc_hevc -preset slow -c:a copy output.mp4

in GPU memory GPU decode GPU encode

The commands are from different generations. "acodec" is the old notation.
The "-c:a" is newer.

I can rewrite the last command. I want to stop using the video card. The first
command stores the video in GPU memory and uses the video card decoder to
decompress the KEY01.mp4 file. The second -c:v was for the encoding phase.
The command would be one pass. It's using *some* default profile, but I don't
know which one. So I don't know whether it's using 2 megabits/sec for the
target bitrate or not.

../ffmpeg -hwaccel cuvid -c:v h264_cuvid -i KEY01.mp4 -c:v nvenc_hevc -preset slow -c:a copy output.mp4
../ffmpeg -i KEY01.mp4 -c:v hevc -preset slow -c:a copy output.mp4

Using the commands though, and rework for Windows, I can dump just about
anything in there. I can read in an AVI container if I want, and
change just the video codec to HEVC before output into an MP4
container. The containers do not accept arbitrary CODEC choices,
and sometimes the tool will complain if you're doing something naughty.

ffmpeg.exe -i some.avi -c:v hevc -preset fast -c:a copy output.mp4

ffmpeg -h # dumps important command summaries
ffmpeg -codecs # shows names that should be used for codecs in commands.
# Like the hevc one I might have got wrong.
# The scrollback on WinXP isn't deep enough, so...

ffmpeg -codecs 2NUL | findstr hevc # dump just the hevc line in the info...

Summary: When GUI tools jerk you around, there is always FFMPEG.

It may take a lot of time to learn how to use, but it's
better than having Handbrake crash on you while doing a
default MP4. I don't mind software that crashes. I do
mind when there is no crash log that I can use to figure
out my mistake setting the controls.

Try out rwijnsma's build and see what you think of it.
I tested my Zeranoe collection, and so far only the 2014
one I've got, was in good shape on WinXP. The rest were missing
DLLs like bcrypt.dll on WinXP (it doesn't have one of those).

Paul