(I decided to post this here because it doesn't fit very well into the Gaming category, but it is a gaming question.)

I had the idea to try streaming video to Twitch one on computer and to record it with VLC on another, using Livestreamer. The result is a TS file.

If I wanted to upload it to YouTube, how would I convert it to mp4 (Or is there a better format?) without loosing quality?

Also, I hear people talk about rendering their video. I understand that when a video is first recorded it is in 'raw' format. What does rendering entail?

  • Post the output of mediainfo (mediaarea.net/en/MediaInfo, or apt-get install mediainfo on Debian/Ubuntu.) The MPEG-TS container format can hold multiple different formats. If it's just the same h.264 stream that your desktop encoded and sent to twitch (so there haven't been any lossy re-encode steps), and it's not too big a file to upload to youtube, then just upload it directly. Or remux it to an mp4 container (without transcoding). I assume there's a gui for this, if you don't have command-line MP4Box installed. Mar 3 '15 at 5:44
  • You can tell you're remuxing instead of transcoding because it goes as fast as a file copy, instead of at best a few times faster than realtime. Mar 3 '15 at 5:45
  • Here is the output: pastebin.com/5MRLNJY9 Mar 4 '15 at 13:19
  • I've since realized, though, that the stream wasn't as HD as I thought. I do have one final question though: I read a while ago that sometimes video uses a technique to decrease size by 'chunking'? areas of the video. When the video moves a lot it then becomes all pixelated. What is this called? Mar 4 '15 at 13:21
  • ya that stream is weird. H.264 Main (not high) profile, and 1088x576p30. mp3 audio. Does Vlc use a lot of CPU time while recording? (It might be transcoding, instead of just saving the stream.) If no, then that's what your twitch streaming setup is outputting. And yeah, it should be fine to just upload it to youtube. 3500kb/s is a reasonable bitrate. Mar 5 '15 at 17:11

"Raw" ususally refers to uncompressed video (though this is technically wrong), meaning you probably have a very large file. Rendering is the process of re-encoding the video using another codec, usually to reduce file-size while maintaining a decent enough video quality. The reason that .mp4-files with the H264-codec are widely used is that they offer a very good filesize-quality-ratio.

In your case, a very compressed file is not what you might want, since Youtube reencodes your video when you upload it. Every reencoding reduces the video quality, so the double reencoding will result in poor quality.

If you cant upload the .ts-file directly (I don't think Youtube allows this), you could reencode it to an mp4 or avi (imho, the latter is better in this case, though getting the encoding settings right is a bit tougher for beginners). The key is to chose a very high bitrate and the same framerate and resolution as the original video. Using a high bitrate, the quality-loss resulting from the reencoding can be minimized. However, this will result in very large files (espacially if you choose avi), which depending on your internet connection might take very long to upload.

There is a range of free encoding programs out there. I'd recommend XMedia-Recode, but you could also try Xilisoft Video Converter or Format Factory.

Edit: If you want to cut your video (i.e. add an intro and an outro, put different videos together, remove unwanted parts, ...), you'll need a video editing program. There are some freeware programs for this (none of which are as good as professional, paid programs), you can find a list of video editing software at wikipedia.

  • What bitrate do I use? The default in XMedia Recode is 2000. Is this sufficient? Update: I used mp4, the result was higher quality but it's still not very HD. If you don't mind, I can upload the TS file somewhere today and see if you can help. Mar 1 '15 at 14:59
  • That depends on your original file. You can check it's bitrate with software like MediaInfo. To minimize quality loss, I would set the bitrate to roughly equal the original video's bitrate or slightly lower. Make sure to use a variable bitrate as well. If the resulting file is to big for you to upload, lower the bitrate before trying anything else. If the bitrate is over 8000~10000 kb, don't use a bitrate that high for reencoding. Above that, you won't see much of a difference with gaming videos and the file would get really big ...
    – MoritzLost
    Mar 1 '15 at 15:04
  • Assuming you want to use h.264 instead of next-gen VP9 or h.265, then you should use x264, or a GUI that uses libx264. mediainfo on the resulting file will show that it was encoded with x264, if you aren't sure what a GUI uses. You can trade off more CPU time for smaller files with the same quality by using --preset slower, or even --preset veryslow. For rate-control, you might want to use CRF 20 or so, rather than a target bitrate. A given CRF will give you similar quality for all inputs, and the output bitrate will vary depending on how compressible it was. Mar 3 '15 at 23:29

If I wanted to upload it to YouTube, you neeed convert ts video to webm mp4 first, total video converter is a converter transcoding .. avhcd mts ts file to mp4 with raw quality.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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