Судя по выводу, который вы выложили для второй командной строки, команда работает. vaapidecode декодирует видео на x-поверхность, vaapidownload берет x-поверхность и выводит x-raw-yuv, а appsink потребляет абсолютно что угодно , не производя ничего другого (так что, похоже, ничего не делает). Попробуйте добавить в исходный файл YUV файл YUV4MPEG (.y4m):
gst-launch-0.10 -v filesrc location=/path/to/file.mp4 ! qtdemux ! vaapidecode ! vaapidownload | y4menc ! filesink location=decoded-video.y4m
Посмотрите, создает ли эта команда файл .y4m, а затем просмотрите это видео, используя VLC, MPlayer или ffplay, чтобы проверить правильность.