Transcode does not work w/ rev. 636

Help
2009-06-05
2013-04-25
  • Mihai Moldovan
    Mihai Moldovan
    2009-06-05

    Hi all,

    I try to use FUPPES as the media "streamer" for my new Xbox 360.

    So far just passing supported videos around seems to work very fine, thanks for that, but I'd as well like to transcode videos with to the box "unknown" codecs.

    However, everytime I do enable transcoding in the config file, all my videos seem to vanish. I still can access the directories, but all videos with the given extension are just gone... until I disable transcoding.

    This will play "normal"/supported avi files (DivX/XviD vcodec with MP3 acodec) fine:

                <file ext="avi">
                  <type>VIDEO_ITEM</type>
                  <mime_type>video/avi</mime_type>
                </file>

    But this will make *all* .avi files vanish:

                <file ext="avi">
                  <type>VIDEO_ITEM</type>
                  <mime_type>video/avi</mime_type>
                  <transcode enabled="true">
                    <transcoder>ffmpeg</transcoder>
                    <ext>mpg</ext> <!-- wmv -->
                    <mime_type>video/mpeg</mime_type> <!-- x-ms-wmv -->
                    <video_codec vcodec="h264">mpeg2video</video_codec> <!-- wmv2 -->
                    <audio_codec acodec="mp3">mp2</audio_codec> <!-- wmav1 -->
                    <video_bitrate>1800000</video_bitrate>
                    <audio_bitrate>128000</audio_bitrate>
                  </transcode>
                </file>

    As you can see, I tried to specify only special codecs to be transcoded, but it won't help, no files are shown up.

    ffmpeg support is of course built-in.

    Btw., I'm also wondering, where "--enable-video-transcoding" has gone as configure option. It doesn't exist anymore, obviously, so... is it automatically enabled? Or maybe not at all?

    I hope there's some hint around. :)

    Best regards,

    Mihai Moldovan

     
    • Mihai Moldovan
      Mihai Moldovan
      2009-06-08

      Hi again,

      well... very active forum here. ;)

      Nevertheless, I have found some interesting new facts.

      First of all, all the files vanishing was due to wrong transcoding settings. Meantime, let us forget my .avi problems for a while and fix the FLV problem first.

      I've changed the transcoding settings in a way compatible to my Xbox 360:

                  <file ext="flv">
                    <type>VIDEO_ITEM</type>
                    <mime_type>application/x-flash-video</mime_type>
                    <transcode enabled="true">
                      <ext>mp4</ext>
                      <mime_type>video/mp4</mime_type>
                      <transcoder>ffmpeg</transcoder>
                      <video_codec>mpeg4</video_codec>
                      <audio_codec>libfaac</audio_codec>
                      <ffmpeg_params>-f mp4 -ac 2</ffmpeg_params>
                      <audio_samplerate>44100</audio_samplerate>
                      <video_bitrate>1800000</video_bitrate>
                      <audio_bitrate>128000</audio_bitrate>
                    </transcode>
                  </file>

      After that I have restarted fuppesd, ``tail -f''d the "debugging" log and opened one flv file. That's the mangled output (log file + fuppesd general output):

      == lib/DeviceSettings/DeviceIdentificationMgr.cpp (117) :: Mon Jun  8 19:23:16 2009 ==
      device settings "Xbox 360"
          ip: 192.168.0.12
          user agent: Xbox/2.0.7371.0 UPnP/1.0 Xbox/2.0.7371.0

      == lib/DeviceSettings/DeviceIdentificationMgr.cpp (117) :: Mon Jun  8 19:23:20 2009 ==
      device settings "Xbox 360"
          ip: 192.168.0.12
          user agent: Xbox/2.0.7371.0 UPnP/1.0 Xbox/2.0.7371.0

      Seems stream 0 codec frame rate differs from container frame rate: 1000.00 (1000/1) -> 25.00 (25/1)
      Input #0, flv, from '/opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv':
        Duration: 00:03:27.48, start: 0.000000, bitrate: 319 kb/s
          Stream #0.0: Video: flv, yuv420p, 320x240, 263 kb/s, 25 tbr, 1k tbn, 1k tbc
          Stream #0.1: Audio: mp3, 22050 Hz, mono, s16, 56 kb/s
      Output #0, mp4, to '/tmp/fuppes/0.mp4':
          Stream #0.0: Video: mpeg4, yuv420p, 320x240, q=2-31, 1800 kb/s, 90k tbn, 25 tbc
          Stream #0.1: Audio: libfaac, 44100 Hz, stereo, s16, 128 kb/s
      Stream mapping:
        Stream #0.0 -> #0.0
        Stream #0.1 -> #0.1
      == lib/DeviceSettings/DeviceIdentificationMgr.cpp (117) :: Mon Jun  8 19:23:23 2009 ==
      device settings "Xbox 360"
          ip: 192.168.0.12
          user agent: Xenon

      == lib/HTTP/HTTPRequestHandler.cpp (85) :: Mon Jun  8 19:23:23 2009 ==
      HandleHTTPRequest() :: /MediaServer/VideoItems/00FFFFFC5C.mp4

      == lib/HTTP/HTTPRequestHandler.cpp (287) :: Mon Jun  8 19:23:23 2009 ==
      transcode /opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv

      == lib/HTTP/HTTPMessage.cpp (722) :: Mon Jun  8 19:23:23 2009 ==
      TranscodeContentFromFile :: /opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv

      == lib/Transcoding/TranscodingCache.cpp (562) :: Mon Jun  8 19:23:33 2009 ==
      release object "/opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv"
      ref count: 1
      delay: 4

      == lib/Transcoding/TranscodingCache.cpp (596) :: Mon Jun  8 19:23:38 2009 ==
      delete object "/opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv"
      delay: 4

      It is clearly visible, that ffmpeg detects the file settings and tries to transcode to the correct/setup codecs using the correct/setup bitrates, too. However, the output file /tmp/fuppes/0.mp4 is just 44 Byte in size, which suggests that ffmpeg just wrote the container but actually no data. Why?

      My Xbox' error message is not too conclusive either, it just said it couldn't reach the media server. Sounds like a timeout somewhere, but I don't know where exactly and why... I'm kinda stuck here.

      May anyone know any solution to this? Or at least, I would like to debug this stuff more. I'll have strace run on fuppesd, let's see what this brings. I'd very like to see the ffmpeg invocation because currently I have not the slightlighest idea of it.

      Best regards,

      Mihai Moldovan

       
    • Mihai Moldovan
      Mihai Moldovan
      2009-06-08

      Hi,

      sorry, doesn't seem like it. FUPPES doesn't compile with your patch (although I am indeed using ffmpeg 0.5... weird...)

      Here's the compilation output:

      /bin/sh ../../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I../../src    -DFFMPEG_VERSION=52  -D__STDC_CONSTANT_MACROS -g -O2 -MT libtranscoder_ffmpeg_la-ffmpeg.lo -MD -MP -MF .deps/libtranscoder_ffmpeg_la-ffmpeg.Tpo -c -o libtranscoder_ffmpeg_la-ffmpeg.lo `test -f 'ffmpeg/ffmpeg.cpp' || echo './'`ffmpeg/ffmpeg.cpp
      g++ -DHAVE_CONFIG_H -I. -I../../src -DFFMPEG_VERSION=52 -D__STDC_CONSTANT_MACROS -g -O2 -MT libtranscoder_ffmpeg_la-ffmpeg.lo -MD -MP -MF .deps/libtranscoder_ffmpeg_la-ffmpeg.Tpo -c ffmpeg/ffmpeg.cpp  -fPIC -DPIC -o .libs/libtranscoder_ffmpeg_la-ffmpeg.o
      In file included from ffmpeg/ffmpeg.cpp:28:
      ffmpeg/ffmpeg.h: In member function 'void CFFmpeg::opt_input_file(const char*)':
      ffmpeg/ffmpeg.h:912: warning: 'AVFormatContext* av_alloc_format_context()' is deprecated (declared at /usr/include/libavformat/avformat.h:873)
      ffmpeg/ffmpeg.h:912: warning: 'AVFormatContext* av_alloc_format_context()' is deprecated (declared at /usr/include/libavformat/avformat.h:873)
      ffmpeg/ffmpeg.h: In member function 'int CFFmpeg::opt_default(const char*, const char*)':
      ffmpeg/ffmpeg.h:1287: warning: 'const AVOption* av_set_string(void*, const char*, const char*)' is deprecated (declared at /usr/include/libavcodec/opt.h:107)
      ffmpeg/ffmpeg.h:1287: warning: 'const AVOption* av_set_string(void*, const char*, const char*)' is deprecated (declared at /usr/include/libavcodec/opt.h:107)
      ffmpeg/ffmpeg.h:1290: warning: 'const AVOption* av_set_string(void*, const char*, const char*)' is deprecated (declared at /usr/include/libavcodec/opt.h:107)
      ffmpeg/ffmpeg.h:1290: warning: 'const AVOption* av_set_string(void*, const char*, const char*)' is deprecated (declared at /usr/include/libavcodec/opt.h:107)
      ffmpeg/ffmpeg.h:1292: warning: 'const AVOption* av_set_string(void*, const char*, const char*)' is deprecated (declared at /usr/include/libavcodec/opt.h:107)
      ffmpeg/ffmpeg.h:1292: warning: 'const AVOption* av_set_string(void*, const char*, const char*)' is deprecated (declared at /usr/include/libavcodec/opt.h:107)
      ffmpeg/ffmpeg.h:1295: warning: 'const AVOption* av_set_string(void*, const char*, const char*)' is deprecated (declared at /usr/include/libavcodec/opt.h:107)
      ffmpeg/ffmpeg.h:1295: warning: 'const AVOption* av_set_string(void*, const char*, const char*)' is deprecated (declared at /usr/include/libavcodec/opt.h:107)
      ffmpeg/ffmpeg.h:1297: warning: 'const AVOption* av_set_string(void*, const char*, const char*)' is deprecated (declared at /usr/include/libavcodec/opt.h:107)
      ffmpeg/ffmpeg.h:1297: warning: 'const AVOption* av_set_string(void*, const char*, const char*)' is deprecated (declared at /usr/include/libavcodec/opt.h:107)
      ffmpeg/ffmpeg.h:1299: warning: 'const AVOption* av_set_string(void*, const char*, const char*)' is deprecated (declared at /usr/include/libavcodec/opt.h:107)
      ffmpeg/ffmpeg.h:1299: warning: 'const AVOption* av_set_string(void*, const char*, const char*)' is deprecated (declared at /usr/include/libavcodec/opt.h:107)
      ffmpeg/ffmpeg.h: In member function 'void CFFmpeg::opt_output_file(const char*)':
      ffmpeg/ffmpeg.h:1402: warning: 'AVFormatContext* av_alloc_format_context()' is deprecated (declared at /usr/include/libavformat/avformat.h:873)
      ffmpeg/ffmpeg.h:1402: warning: 'AVFormatContext* av_alloc_format_context()' is deprecated (declared at /usr/include/libavformat/avformat.h:873)
      ffmpeg/ffmpeg.cpp: In function 'void do_audio_out(AVFormatContext*, AVOutputStream*, AVInputStream*, unsigned char*, int, CFFmpeg*)':
      ffmpeg/ffmpeg.cpp:273: error: invalid conversion from 'uint8_t*' to 'int'
      ffmpeg/ffmpeg.cpp:273: error:   initializing argument 2 of 'int av_fifo_generic_read(AVFifoBuffer*, int, void (*)(void*, void*, int), void*)'
      ffmpeg/ffmpeg.cpp:273: error: invalid conversion from 'int' to 'void (*)(void*, void*, int)'
      ffmpeg/ffmpeg.cpp:273: error:   initializing argument 3 of 'int av_fifo_generic_read(AVFifoBuffer*, int, void (*)(void*, void*, int), void*)'
      ffmpeg/ffmpeg.cpp: In function 'int output_packet(AVInputStream*, int, AVOutputStream**, int, const AVPacket*, CFFmpeg*)':
      ffmpeg/ffmpeg.cpp:1078: error: invalid conversion from 'uint8_t*' to 'int'
      ffmpeg/ffmpeg.cpp:1078: error:   initializing argument 2 of 'int av_fifo_generic_read(AVFifoBuffer*, int, void (*)(void*, void*, int), void*)'
      ffmpeg/ffmpeg.cpp:1078: error: invalid conversion from 'int' to 'void (*)(void*, void*, int)'
      ffmpeg/ffmpeg.cpp:1078: error:   initializing argument 3 of 'int av_fifo_generic_read(AVFifoBuffer*, int, void (*)(void*, void*, int), void*)'
      ffmpeg/ffmpeg.cpp: In function 'int av_encode(AVFormatContext**, int, AVFormatContext**, int, AVStreamMap*, int, CFFmpeg*)':
      ffmpeg/ffmpeg.cpp:1329: error: 'av_fifo_alloc' was not declared in this scope
      ffmpeg/ffmpeg.cpp:1357: warning: 'ReSampleContext* audio_resample_init(int, int, int, int)' is deprecated (declared at /usr/include/libavcodec/avcodec.h:2556)
      ffmpeg/ffmpeg.cpp:1358: warning: 'ReSampleContext* audio_resample_init(int, int, int, int)' is deprecated (declared at /usr/include/libavcodec/avcodec.h:2556)
      ffmpeg/ffmpeg.cpp: In member function 'int CFFmpeg::ffmpeg_main(int, char**)':
      ffmpeg/ffmpeg.cpp:2280: warning: 'AVFormatContext* av_alloc_format_context()' is deprecated (declared at /usr/include/libavformat/avformat.h:873)
      ffmpeg/ffmpeg.cpp:2280: warning: 'AVFormatContext* av_alloc_format_context()' is deprecated (declared at /usr/include/libavformat/avformat.h:873)
      make[1]: *** [libtranscoder_ffmpeg_la-ffmpeg.lo] Error 1
      make[1]: Leaving directory `/usr/src/fuppes/src/plugins'
      make: *** [all-recursive] Error 1

      Best regards,

      Mihai Moldovan

       
      • I goofed the bug interface.  Try fork.patch.

         
        • Mihai Moldovan
          Mihai Moldovan
          2009-06-08

          Ok, now that's even weirder.

          Transcoding obviously works but my xbox does reject the file.

          Combined log:

          == lib/DeviceSettings/DeviceIdentificationMgr.cpp (117) :: Mon Jun  8 22:29:14 2009 ==
          device settings "Xbox 360"
              ip: 192.168.0.12
              user agent: Xbox/2.0.7371.0 UPnP/1.0 Xbox/2.0.7371.0

          [CHandleMSearchSession] done

          [CHandleMSearchSession] done

          [CHandleMSearchSession] done

          == lib/DeviceSettings/DeviceIdentificationMgr.cpp (117) :: Mon Jun  8 22:29:19 2009 ==
          device settings "Xbox 360"
              ip: 192.168.0.12
              user agent: Xbox/2.0.7371.0 UPnP/1.0 Xbox/2.0.7371.0

          FFmpeg version 0.5, Copyright (c) 2000-2009 Fabrice Bellard, et al.
            configuration: --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64 --mandir=/usr/share/man --enable-static --enable-shared --cc=x86_64-pc-linux-gnu-gcc --disable-debug --disable-optimizations --enable-libfaac --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libx264 --enable-libxvid --enable-libdc1394 --enable-pthreads --enable-libfaad --enable-libdirac --enable-libschroedinger --enable-libspeex --enable-libopenjpeg --enable-libgsm --enable-libamr-nb --enable-libamr-wb --enable-nonfree --disable-altivec --cpu=core2 --disable-vhook --enable-gpl --enable-postproc --enable-avfilter --enable-avfilter-lavf --enable-swscale --disable-stripping --enable-hardcoded-tables
            libavutil     49.15. 0 / 49.15. 0
            libavcodec    52.20. 0 / 52.20. 0
            libavformat   52.31. 0 / 52.31. 0
            libavdevice   52. 1. 0 / 52. 1. 0
            libavfilter    0. 4. 0 /  0. 4. 0
            libswscale     0. 7. 1 /  0. 7. 1
            libpostproc   51. 2. 0 / 51. 2. 0
            built on Jun  8 2009 13:49:59, gcc: 4.3.2

          Seems stream 0 codec frame rate differs from container frame rate: 1000.00 (1000/1) -> 25.00 (25/1)
          Input #0, flv, from '/opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv':
            Duration: 00:03:27.48, start: 0.000000, bitrate: 319 kb/s
              Stream #0.0: Video: flv, yuv420p, 320x240, 263 kb/s, 25 tbr, 1k tbn, 1k tbc
              Stream #0.1: Audio: mp3, 22050 Hz, mono, s16, 56 kb/s
          Output #0, mp4, to '/tmp/fuppes/0.mp4':
              Stream #0.0: Video: mpeg4, yuv420p, 320x240, q=2-31, 1800 kb/s, 90k tbn, 25 tbc
              Stream #0.1: Audio: libfaac, 44100 Hz, stereo, s16, 128 kb/s
          Stream mapping:
            Stream #0.0 -> #0.0
            Stream #0.1 -> #0.1
          Press [q] to stop encoding
          == lib/DeviceSettings/DeviceIdentificationMgr.cpp (117) :: Mon Jun  8 22:29:22 2009 ==
          device settings "Xbox 360"
              ip: 192.168.0.12
              user agent: Xenon

          == lib/HTTP/HTTPRequestHandler.cpp (85) :: Mon Jun  8 22:29:22 2009 ==
          HandleHTTPRequest() :: /MediaServer/VideoItems/00FFFFFC5C.mp4

          == lib/HTTP/HTTPRequestHandler.cpp (287) :: Mon Jun  8 22:29:22 2009 ==
          transcode /opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv

          == lib/HTTP/HTTPMessage.cpp (722) :: Mon Jun  8 22:29:22 2009 ==
          TranscodeContentFromFile :: /opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv

          == lib/HTTP/HTTPServer.cpp (785) :: Mon Jun  8 22:29:24 2009 ==09.8kbits/s   
          send error :: error no. 104 Connection reset by peer

          == lib/Transcoding/TranscodingCache.cpp (562) :: Mon Jun  8 22:29:24 2009 ==
          release object "/opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv"
          ref count: 1
          delay: 4

          == lib/Transcoding/TranscodingCache.cpp (596) :: Mon Jun  8 22:29:29 2009 ==  
          delete object "/opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv"
          delay: 4

          [flv @ 0x121b6f0]skipping flv packet: type 250, size 827, flags 05.1kbits/s   
          frame= 5188 fps=597 q=2.0 Lsize=   30143kB time=206.98 bitrate=1193.0kbits/s   
          video:27662kB audio:2368kB global headers:0kB muxing overhead 0.376379%
          [SSDPDCtrl] received m-search from: "192.168.0.12:10584"

          [SSDPDCtrl] received m-search from: "192.168.0.12:26072"

          [CHandleMSearchSession] unicasting response

          [CHandleMSearchSession] done

          Additionally, /tmp/fuppes/ is empty so I don't have any temp file... what's happening there? :(

          Best regards,

          Mihai Moldovan

           
    • Mihai Moldovan
      Mihai Moldovan
      2009-06-08

      Hi,

      weird...

      That's the combined output:

      == lib/DeviceSettings/DeviceIdentificationMgr.cpp (117) :: Mon Jun  8 22:17:42 2009 ==
      device settings "Xbox 360"
          ip: 192.168.0.12
          user agent: Xbox/2.0.7371.0 UPnP/1.0 Xbox/2.0.7371.0

      FFmpeg version 0.5, Copyright (c) 2000-2009 Fabrice Bellard, et al.
        configuration: --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64 --mandir=/usr/share/man --enable-static --enable-shared --cc=x86_64-pc-linux-gnu-gcc --disable-debug --disable-optimizations --enable-libfaac --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libx264 --enable-libxvid --enable-libdc1394 --enable-pthreads --enable-libfaad --enable-libdirac --enable-libschroedinger --enable-libspeex --enable-libopenjpeg --enable-libgsm --enable-libamr-nb --enable-libamr-wb --enable-nonfree --disable-altivec --cpu=core2 --disable-vhook --enable-gpl --enable-postproc --enable-avfilter --enable-avfilter-lavf --enable-swscale --disable-stripping --enable-hardcoded-tables
        libavutil     49.15. 0 / 49.15. 0
        libavcodec    52.20. 0 / 52.20. 0
        libavformat   52.31. 0 / 52.31. 0
        libavdevice   52. 1. 0 / 52. 1. 0
        libavfilter    0. 4. 0 /  0. 4. 0
        libswscale     0. 7. 1 /  0. 7. 1
        libpostproc   51. 2. 0 / 51. 2. 0
        built on Jun  8 2009 13:49:59, gcc: 4.3.2
      -y: no such file or directory
      == lib/DeviceSettings/DeviceIdentificationMgr.cpp (117) :: Mon Jun  8 22:17:45 2009 ==
      device settings "Xbox 360"
          ip: 192.168.0.12
          user agent: Xenon

      == lib/HTTP/HTTPRequestHandler.cpp (85) :: Mon Jun  8 22:17:45 2009 ==
      HandleHTTPRequest() :: /MediaServer/VideoItems/00FFFFFC5C.mp4

      == lib/HTTP/HTTPRequestHandler.cpp (287) :: Mon Jun  8 22:17:45 2009 ==
      transcode /opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv

      == lib/HTTP/HTTPMessage.cpp (722) :: Mon Jun  8 22:17:45 2009 ==
      TranscodeContentFromFile :: /opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv

      == lib/Transcoding/TranscodingCache.cpp (562) :: Mon Jun  8 22:17:45 2009 ==
      release object "/opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv"
      ref count: 1
      delay: 4

      == lib/DeviceSettings/DeviceIdentificationMgr.cpp (117) :: Mon Jun  8 22:17:46 2009 ==
      device settings "Xbox 360"
          ip: 192.168.0.12
          user agent: Xenon

      == lib/HTTP/HTTPRequestHandler.cpp (85) :: Mon Jun  8 22:17:46 2009 ==
      HandleHTTPRequest() :: /MediaServer/VideoItems/00FFFFFC5C.mp4

      == lib/HTTP/HTTPRequestHandler.cpp (287) :: Mon Jun  8 22:17:46 2009 ==
      transcode /opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv

      == lib/HTTP/HTTPMessage.cpp (722) :: Mon Jun  8 22:17:46 2009 ==
      TranscodeContentFromFile :: /opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv

      == lib/Transcoding/TranscodingCache.cpp (562) :: Mon Jun  8 22:17:46 2009 ==
      release object "/opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv"
      ref count: 1
      delay: 4

      == lib/DeviceSettings/DeviceIdentificationMgr.cpp (117) :: Mon Jun  8 22:17:46 2009 ==
      device settings "Xbox 360"
          ip: 192.168.0.12
          user agent: Xenon

      == lib/HTTP/HTTPRequestHandler.cpp (85) :: Mon Jun  8 22:17:46 2009 ==
      HandleHTTPRequest() :: /MediaServer/VideoItems/00FFFFFC5C.mp4

      == lib/HTTP/HTTPRequestHandler.cpp (287) :: Mon Jun  8 22:17:46 2009 ==
      transcode /opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv

      == lib/HTTP/HTTPMessage.cpp (722) :: Mon Jun  8 22:17:46 2009 ==
      TranscodeContentFromFile :: /opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv

      == lib/Transcoding/TranscodingCache.cpp (562) :: Mon Jun  8 22:17:46 2009 ==
      release object "/opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv"
      ref count: 1
      delay: 4

      == lib/DeviceSettings/DeviceIdentificationMgr.cpp (117) :: Mon Jun  8 22:17:46 2009 ==
      device settings "Xbox 360"
          ip: 192.168.0.12
          user agent: Xenon

      == lib/HTTP/HTTPRequestHandler.cpp (85) :: Mon Jun  8 22:17:46 2009 ==
      HandleHTTPRequest() :: /MediaServer/VideoItems/00FFFFFC5C.mp4

      == lib/HTTP/HTTPRequestHandler.cpp (287) :: Mon Jun  8 22:17:46 2009 ==
      transcode /opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv

      == lib/HTTP/HTTPMessage.cpp (722) :: Mon Jun  8 22:17:46 2009 ==
      TranscodeContentFromFile :: /opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv

      == lib/Transcoding/TranscodingCache.cpp (562) :: Mon Jun  8 22:17:46 2009 ==
      release object "/opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv"
      ref count: 1
      delay: 4

      == lib/DeviceSettings/DeviceIdentificationMgr.cpp (117) :: Mon Jun  8 22:17:46 2009 ==
      device settings "Xbox 360"
          ip: 192.168.0.12
          user agent: Xenon

      == lib/HTTP/HTTPRequestHandler.cpp (85) :: Mon Jun  8 22:17:46 2009 ==
      HandleHTTPRequest() :: /MediaServer/VideoItems/00FFFFFC5C.mp4

      == lib/HTTP/HTTPRequestHandler.cpp (287) :: Mon Jun  8 22:17:46 2009 ==
      transcode /opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv

      == lib/HTTP/HTTPMessage.cpp (722) :: Mon Jun  8 22:17:46 2009 ==
      TranscodeContentFromFile :: /opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv

      == lib/Transcoding/TranscodingCache.cpp (562) :: Mon Jun  8 22:17:46 2009 ==
      release object "/opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv"
      ref count: 1
      delay: 4

      == lib/DeviceSettings/DeviceIdentificationMgr.cpp (117) :: Mon Jun  8 22:17:46 2009 ==
      device settings "Xbox 360"
          ip: 192.168.0.12
          user agent: Xenon

      == lib/HTTP/HTTPRequestHandler.cpp (85) :: Mon Jun  8 22:17:46 2009 ==
      HandleHTTPRequest() :: /MediaServer/VideoItems/00FFFFFC5C.mp4

      == lib/HTTP/HTTPRequestHandler.cpp (287) :: Mon Jun  8 22:17:46 2009 ==
      transcode /opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv

      == lib/HTTP/HTTPMessage.cpp (722) :: Mon Jun  8 22:17:46 2009 ==
      TranscodeContentFromFile :: /opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv

      == lib/Transcoding/TranscodingCache.cpp (562) :: Mon Jun  8 22:17:46 2009 ==
      release object "/opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv"
      ref count: 1
      delay: 4

      == lib/DeviceSettings/DeviceIdentificationMgr.cpp (117) :: Mon Jun  8 22:17:46 2009 ==
      device settings "Xbox 360"
          ip: 192.168.0.12
          user agent: Xenon

      == lib/HTTP/HTTPRequestHandler.cpp (85) :: Mon Jun  8 22:17:46 2009 ==
      HandleHTTPRequest() :: /MediaServer/VideoItems/00FFFFFC5C.mp4

      == lib/HTTP/HTTPRequestHandler.cpp (287) :: Mon Jun  8 22:17:46 2009 ==
      transcode /opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv

      == lib/HTTP/HTTPMessage.cpp (722) :: Mon Jun  8 22:17:46 2009 ==
      TranscodeContentFromFile :: /opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv

      == lib/Transcoding/TranscodingCache.cpp (562) :: Mon Jun  8 22:17:46 2009 ==
      release object "/opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv"
      ref count: 1
      delay: 4

      == lib/DeviceSettings/DeviceIdentificationMgr.cpp (117) :: Mon Jun  8 22:17:46 2009 ==
      device settings "Xbox 360"
          ip: 192.168.0.12
          user agent: Xenon

      == lib/HTTP/HTTPRequestHandler.cpp (85) :: Mon Jun  8 22:17:46 2009 ==
      HandleHTTPRequest() :: /MediaServer/VideoItems/00FFFFFC5C.mp4

      == lib/HTTP/HTTPRequestHandler.cpp (287) :: Mon Jun  8 22:17:46 2009 ==
      transcode /opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv

      == lib/HTTP/HTTPMessage.cpp (722) :: Mon Jun  8 22:17:46 2009 ==
      TranscodeContentFromFile :: /opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv

      == lib/Transcoding/TranscodingCache.cpp (562) :: Mon Jun  8 22:17:46 2009 ==
      release object "/opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv"
      ref count: 1
      delay: 4

      == lib/Transcoding/TranscodingCache.cpp (596) :: Mon Jun  8 22:17:50 2009 ==
      delete object "/opt/samba/public/Videos/Switch Reloaded/49cc472ea2abc312cca08c6b5438767173.flv"
      delay: 4

      I simply don't know where the -y is coming from. I don't have any -y option specified in the config file as you know.

      -y should be used to overwrite the output file if it is there, but nevertheless, I haven't specified it, so why does ffmpeg complain about this?

      It seems like -y is added in src/plugins/transcoder_ffmpeg.cpp, but maybe at the wrong place... I will add it before

              data->szArgs[data->numArgs] = (char*)malloc((strlen(outputFile) + 1) * sizeof(char));
        strcpy(data->szArgs[data->numArgs++], outputFile);

      and see, if that helps.

      Best regards,

      Mihai Moldovan

       
    • Mihai Moldovan
      Mihai Moldovan
      2009-06-08

      Hmm, when I convert the file manually via ffmpeg -i ../Switch\ Reloaded/49cc472ea2abc312cca08c6b5438767173.flv -f mp4 -vcodec mpeg4 -b 1800000 -acodec libfaac -ac 2 -ab 128000 -y switch.mp4, the box is able to play the file very well.

      So my codecs are right... weird.

      Best regards,

      Mihai

       
  • Very weird indeed. Transcoding to the XBox itself may be the problem or something else entirely. I'll place it on the todo list to look into transcoding media to the XBox 360.

     
  • Mike
    Mike
    2010-01-01

    hi,

    sounds i had the same problem with transcoding. The transcoding will start, but i also get just an few kb file. Then it stops.

    as config i tried this:
    <file ext="flv">
      <type>VIDEO_ITEM</type>
      <mime_type>application/x-flash-video</mime_type>
      <transcode enabled="true">
        <ext>mpg</ext>
        <mime_type>video/mpeg</mime_type>
        <transcoder>ffmpeg</transcoder>
        <video_codec>mpeg2video</video_codec>
        <audio_codec>mp2</audio_codec>
        <audio_samplerate>44100</audio_samplerate>
        <video_bitrate>1800000</video_bitrate>
      </transcode>
    </file>

    if i encode the file, it plays very well.

    ffmpeg -i model.flv -vcodec mpeg2video -aspect 16:9  model.mpg -ar 44100 -ab 192000

    in the log are these lines

    == lib/DeviceSettings/DeviceIdentificationMgr.cpp (125) :: Fri Jan  1 16:05:57 2010 ==
    device settings "default"
            ip: 192.168.1.101
            user agent: Allegro-Software-WebClient/4.61 DLNADOC/1.00

    == lib/Transcoding/TranscodingCache.cpp (613) :: Fri Jan  1 16:05:57 2010 ==
    delete object "/home/mdomann/deluge/model.flv"
    delay: 4

    == lib/HTTP/HTTPServer.cpp (913) :: Fri Jan  1 16:05:59 2010 ==
    send error :: error no. 104 Connection reset by peer

    For me it sounds like the same problem like Mihai.
    If there is more debug needed, please tell me.

    regards micha

    debian sid fuppes svn 0.659