Take the 2-minute tour ×
Video Production Stack Exchange is a question and answer site for engineers, producers, editors, and enthusiasts spanning the fields of video, and media creation. It's 100% free, no registration required.

I have an mp4 movie, containing an h264 video stream (pixel format yuv420p10le), and an AAC audio stream.

My favorite player cannot read the yuv420p10le pixel format. I was wondering if it is possible to convert losslessly the pixel format of the movie from yuv420p10le to yuv420p. More specifically, is it possible (theoretically speaking), and if so, can any program do it and how?

I've tried the following with ffmpeg, but it does not work:

ffmpeg -i super_movie.mp4 -vcodec copy -acodec copy -pix_fmt yuv420p super_movie_yuv420p.mp4

Thanks in advance for any help.

share|improve this question

1 Answer 1

up vote 3 down vote accepted

No this is not possible. Looking at this theoretically disregarding the codec you can not take away information and call it lossless, thats already a terminology problem.

Applying a new color space without transcoding is also not possible It's not so easy to say whether this is even possible with certain codecs other than h264, it really depends on how you define certain terminology.

Regarding h264 its simply not possible in the way the codec works, color information is essential in how the codec encodes frames as its based on motion estimation and the color information between frames is what defines the in between frames that don't hold the information of a whole frame but only the differences between keyframes. So just applying different color values to each existing pixel is not really possible. It would result in major artifacts.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.