Page 2 of 2 FirstFirst 12
Results 11 to 20 of 20

Thread: Transcoding

  1. #11
    A few more transcoding questions. Thought I'd put them here instead of start a new thread.

    1) Is there a way to completely disable transcoding in KooKaRoo? (Instead of having to disable on a device by device basis.)

    2) I read the manual, FAQ, etc but don't see any mention of what codecs have to be installed for transcoding to work. Does KooKaRoo come with its own codecs?

  2. #12
    Quote Originally Posted by anontemp123 View Post
    A few more transcoding questions. Thought I'd put them here instead of start a new thread.

    1) Is there a way to completely disable transcoding in KooKaRoo? (Instead of having to disable on a device by device basis.)
    No, not really. It's a per-device setting.

    If you find that your device doesn't need transcoding of some files and KRR transcodes them, then we need to fix up the device profile for it to include those files as "native" and they'll be passed through.

    2) I read the manual, FAQ, etc but don't see any mention of what codecs have to be installed for transcoding to work. Does KooKaRoo come with its own codecs?
    KooRaRoo uses FFmpeg (and can use other converters as well), so no need to install any codecs on your systems - everything is included in the installation and your system is not modified in any way.

  3. #13
    Quote Originally Posted by Dennis View Post
    If you find that your device doesn't need transcoding of some files and KRR transcodes them, then we need to fix up the device profile for it to include those files as "native" and they'll be passed through.
    Is this something we can do from the GUI, or something that has to be coordinated with the developers?

    Quote Originally Posted by Dennis View Post
    KooRaRoo uses FFmpeg (and can use other converters as well), so no need to install any codecs on your systems - everything is included in the installation and your system is not modified in any way.
    Is there documentation on using other converters?

    Some more transcoding-related question:

    Does transcoding happen frame by frame as needed or all at once? It seems like KooRaRoo will completely transcode a file before delivering it to a DLNA client. For large files, this causes my client to timeout while waiting for transcoding to complete. I am unfamiliar with transcoding, so maybe this is how it always happens.

    Is there any sort of lowest common denominator all DLNA clients are supposed to support, and that's what KooRaRoo transcodes to? Or does KooRaRoo decide based on the device profile how it will transcode a file?

  4. #14
    Quote Originally Posted by anontemp123 View Post
    Is this something we can do from the GUI, or something that has to be coordinated with the developers?
    The device profiles need to be edited manually (at least currently - perhaps there will be an editor in the future). It's an XML file called KooRaRooDevices.krrx in the databases folder.

    Is there documentation on using other converters?
    No, not yet, but if there are converters that perform better for some particular file types than FFmpeg, they can be easily added in.

    Does transcoding happen frame by frame as needed or all at once? It seems like KooRaRoo will completely transcode a file before delivering it to a DLNA client. For large files, this causes my client to timeout while waiting for transcoding to complete. I am unfamiliar with transcoding, so maybe this is how it always happens.
    Transcoding is started when a device requests a file and then goes on in the background. The way a device plays a file is really device-dependent. Many devices don't handle an unknown or a changing file size (as is the case with transcoded files) well, so there are certain tricks that KRR tries to apply to fool the device into playing a file. This is also format-dependent, as some formats are more strict and won't allow for this (e.g. technically the file needs to be fully written before it can be successfully read and played). It's also possible that the transcoding speed is not fast enough (unless you have an i5+ CPU) for real-time playback and this could be causing the timeout.

    Is there any sort of lowest common denominator all DLNA clients are supposed to support, and that's what KooRaRoo transcodes to? Or does KooRaRoo decide based on the device profile how it will transcode a file?
    Yes, there is a lowest common denominator, but KRR tries to find the best possible combination to deliver both the best video quality and to do that as quickly as possible.

  5. #15
    Quote Originally Posted by Dennis View Post
    Transcoding is started when a device requests a file and then goes on in the background. The way a device plays a file is really device-dependent. Many devices don't handle an unknown or a changing file size (as is the case with transcoded files) well, so there are certain tricks that KRR tries to apply to fool the device into playing a file. This is also format-dependent, as some formats are more strict and won't allow for this (e.g. technically the file needs to be fully written before it can be successfully read and played). It's also possible that the transcoding speed is not fast enough (unless you have an i5+ CPU) for real-time playback and this could be causing the timeout.
    Just to see if I'm understanding correctly: Transcoding is never frame-by-frame; however, KRR tries to stream the already transcoded parts of the file as soon as possible. In this case, it's possible that transcoding on a low-end CPU will cause lag in streaming. Likely this won't occur if KRR is able to remux. Additionally, as KRR prefers remuxing over re-encoding, for technical reasons some formats must be completely transcoded before streaming. (As opposed to if KRR never remux-ed and, instead, KRR always transcoded to an immediately streamable format. This would be somewhat similar to LXiMedia.)

    Does that sound correct at all?

  6. #16
    Quote Originally Posted by anontemp123 View Post
    Just to see if I'm understanding correctly: Transcoding is never frame-by-frame; however, KRR tries to stream the already transcoded parts of the file as soon as possible. In this case, it's possible that transcoding on a low-end CPU will cause lag in streaming. Likely this won't occur if KRR is able to remux. Additionally, as KRR prefers remuxing over re-encoding, for technical reasons some formats must be completely transcoded before streaming. (As opposed to if KRR never remux-ed and, instead, KRR always transcoded to an immediately streamable format. This would be somewhat similar to LXiMedia.)

    Does that sound correct at all?
    Yes, pretty much...

    KooRaRoo will attempt to start streaming as soon as it has enough data for a few full frames. KRR will try to remux when it can (because it's faster and preserves original quality), but of course this depends on what the device supports and the device profile used and the original file. Some formats, such as MP4 cannot be streamed until fully encoded (because of the MOOV atom that needs to be placed in the beginning of the file, but can only be done after the whole file is written). This can all be tweaked by editing the device profile and additionally you can manually force transcoding of some files from within the GUI if remuxing them produces unplayable files (which can happen if the video stream is compatible with what the device should support on a higher level, but is actually encoded in a way that cannot be handled by the device's decoder properly).

  7. #17
    Is there any way to force transcoding for all files on a particular device?

    Also, when I first transcode a file manually, the grid in the GUI will list the transcoded video/audio/subtitle information in the grid right below with the thumbnail, filename, type, and bitrate. However, after restarting the GUI, I can't get this information to display again. I prefer this quick reference over clicking File Properties->Transcoding, especially because that Transcoding tab doesn't have a "Subtitles" column.
    Last edited by anontemp123; December 11th, 2012 at 01:53 AM.

  8. #18
    Quote Originally Posted by anontemp123 View Post
    Is there any way to force transcoding for all files on a particular device?
    You could set the Default profile for it, which will transcode anything that's not MPEG2. Can you please tell me for which device you'd want to do this?

    Also, when I first transcode a file manually, the grid in the GUI will list the transcoded video/audio/subtitle information in the grid right below with the thumbnail, filename, type, and bitrate. However, after restarting the GUI, I can't get this information to display again. I prefer this quick reference over clicking File Properties->Transcoding, especially because that Transcoding tab doesn't have a "Subtitles" column.
    The file information displayed beside the thumbnail in the main view is what the original file is - it does not display what it is transcoded to. It's shown when you click on the blue file type - is that the one you mean?

  9. #19
    I inquired about forced transcoding to experiment with my TV and learn a bit more about how transcoding works in KRR. That's all.

    Quote Originally Posted by Dennis View Post
    The file information displayed beside the thumbnail in the main view is what the original file is - it does not display what it is transcoded to. It's shown when you click on the blue file type - is that the one you mean?
    Yes, that's the one! I must have accidentally clicked the blue-colored file type. Thanks.
    Last edited by anontemp123; December 11th, 2012 at 08:25 AM.

  10. #20
    The easiest way to experiment would be to assign different profiles to your TV and then do manual transcoding of files (manual transcoding allows you to select one of the connected profiles and lists various file containers and codecs supported). Just remember to clear up those transcoded files after (via the Transcoding tab).

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •