$ sed 's/-[^-]*\.mp4$//' file
55363642b-b13218-4cb0-8334-546565346
gfdggwg-e1321-4qwe-9ewq-de32155139d8
The sed expression s/-[^-]*\.mp4$// is a substitution that matches a dash followed by any number of non-dashes, a dot and the string mp4 (at the very end of the line). The matching text is removed.
To make the change in-place, use the -i flag of sed (but run without first to make sure the result is correct):
sed -i 's/-[^-]*\.mp4$//' file
If these were names of files, I would loop over the actual files instead:
for mp4file in *.mp4; do
printf 'The truncated name is "%s"\n' "${mp4file%-*.mp4}"
done
The parameter substitution ${mp4file%-*.mp4} would expand to the name of the file with the shortest string matching -*.mp4 removed from the end.