3
I am trying to remove the copyright string from the generated mp4 file using ffmpeg (copyright string is already present in avi file).
I have an input avi which I'd like to make 'streamable' and remove all metadata so I used:
$ ffmpeg -i input.avi -map 0 -movflags faststart -map_metadata -1 -codec copy output.mp4
Looking at the output it seems to be 'clean':
$ ffprobe output.mp4
[...]
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'output.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf58.20.100
Duration: 01:36:21.74, start: 0.000000, bitrate: 2036 kb/s
Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, smpte170m/smpte170m/bt709), 704x396, 1392 kb/s, 23.98 fps, 23.98 tbr, 24k tbn, 47.95 tbc (default)
Metadata:
handler_name : VideoHandler
Stream #0:1(und): Audio: ac3 (ac-3 / 0x332D6361), 48000 Hz, 5.1(side), fltp, 640 kb/s (default)
Metadata:
handler_name : SoundHandler
Side data:
audio service type: main
But if one look carefully:
$ strings -50 output.mp4 | sort -u
x264 - core - H.264/MPEG-4 AVC codec - Copyleft 2003-2010 - http://www.videolan.org/x264.html
and:
$ strings -50 output.mp4 | wc
1320 15840 125400
Is there a way to get rid of those 1320 copyright string from my target mp4 movie ?
Update: according to user Deltik this copyright string is set in function x264_sei_version_write:
Which is hardcoded in x264_encoder_headers:
But since the ffmepg documentation seems to claims that units can be removed:
I was wondering if it was possible to remove existing copyright strings from an H.264 stream (eg. save some disk space) ?
3
Not enough for an answer, but I'm seeing that the string comes from the
– Deltik – 2019-03-05T21:46:08.390x264_sei_version_write
function inencoder/set.c
in the x264 source code. It looks hard-coded intoencoder/encoder.c
.1Why do you want to remove that? – llogan – 2019-03-05T22:42:26.617