#timvideos

/

      • mithro
        ysionneau: I assume you are asleep, but I'm pretty sure if those i2c-tools above can read your virtual EEPROM, then the fx2 will be able too
      • CarlFK
        mithro: when versions get promoted to testing and stable, how do we know what the source is?
      • mithro
        CarlFK: the git ID is encoded in the firmware and in the firmware name
      • CarlFK
        oh cool
      • mithro
      • tpb
        Title: HDMI2USB-firmware-prebuilt/archive at master · timvideos/HDMI2USB-firmware-prebuilt · GitHub (at github.com)
      • mithro
        CarlFK: stable / testing are really just symlinks
      • -- BotBot disconnected, possible missing messages --
      • -- BotBot disconnected, possible missing messages --
      • -- BotBot disconnected, possible missing messages --
      • [d__d] joined the channel
      • CarlFK has quit
      • CarlFK joined the channel
      • jamesh_ joined the channel
      • jamesh has quit
      • jamesh_ is now known as jamesh
      • xfxf
        mithro: how can I help to fix/progress this issue talking to the hdmi2usb?
      • you said it was an issue with the driver?
      • any workarounds that come to mind?
      • mithro
        xfxf: The issue is with the exart-uart-driver USB serial adapter
      • xfxf: so, unless you think you can work on that driver there isn't much you can help with that
      • xfxf
        i'm no kernel hacker, that's for sure
      • mithro
        xfxf: the code I wrote tries to work around the pyseral / exart-uart-driver weirdness
      • xfxf
        is this something we can report upstream?
      • mithro
        xfxf: there is no "upstream"
      • xfxf: upstream is currently shenki :-P
      • xfxf
        oh, right, you guys wrote the driver
      • i assumed it was in the kernel
      • so i should prod shenki? :P
      • mithro
        xfxf: well, no we didn't - we make the old crappy obsolete driver work again
      • xfxf
        right, but it's still evidently crappy
      • mithro
        xfxf: correct
      • xfxf
        like i'm happy hacking away at application level stuff hence my interest in getting this basic switcher more fleshed out as basic capture software
      • to use 'for now' until voctomix or gst-switch is in a usable state
      • and i'm keen to get my hands dirty with python again, been doing too much php/rails lately
      • oh, while i remember too - i'm keen on solving the issue with gstreamer only capturing at 15fps
      • you wanted to know what the encoer was running at?
      • i can test that now
      • _florent_
        xfxf: have tried commenting the line I sent you the other day for the 15fps?
      • tpb
        Title: HDMI2USB-misoc-firmware/encoder.c at master · timvideos/HDMI2USB-misoc-firmware · GitHub (at github.com)
      • xfxf
        _florent_: ah, sorry, i completely forgot about that. will do! i haven't been home, am now
      • _florent_
        ok thanks
      • Bertl_zZ_ is now known as Bertl
      • xfxf
        hmm
      • encoder says
      • encoder: 1280x720 @ 30fps (19Mbps) from input0 (q: 85)
      • captured file when poked with avprobe
      • Stream #0.0(eng): Video: mjpeg, yuvj422p, 1280x720 [PAR 1:1 DAR 16:9], 15 fps, 15 tbr, 1k tbn (default)
      • capture command:
      • gst-launch-1.0 v4l2src device=/dev/video1 ! image/jpeg,width=1280,height=720 ! matroskamux name=mux alsasrc device='hw:0,0' ! audio/x-raw,channels=2,rate=48000 ! audioconvert ! vorbisenc ! queue ! mux. mux. ! queue max-size-bytes=100000000 max-size-time=0 ! filesink location=hdmi2usb_recording_`date +%s`.mkv
      • mithro
        xfxf: does the file actually have 15fps or does it have 30fps in it?
      • xfxf
        totem is claiming 15fps, it looks less juddery than the previous content captured
      • i'd normally rely on what the file reports though and not my perception, not really scientific
      • i assume you're implying the headers might say 15fps but the content is 30?
      • mithro
        xfxf: break the file apart and see how many frames per second are in the file?
      • xfxf
        what tools would i use to splice apart the files and inspect the frames?
      • well, mplayer with -fps 15 displays slower than -fps 30
      • -fps 30 looks the same as if played normally
      • so perhaps it is 30 fps now
      • aah
      • okay
      • so
      • the content i captured the other day
      • with the gstreamer line above
      • actually is 30fps i think
      • just because the headers say 15fps then my ffmpeg conversion just converted it to a 15fps file
      • as it looked at the fps of the original file
      • i'm playing back the mjpeg recording now, looks fine
      • although the player is claiming it's 15fps
      • why is that happening?
      • so _florent_ commenting out that line doesn't make any difference
      • _florent_
        ok, so the issue is probably in the UVC header inserted by the FX2 (fixed to 15fps)
      • xfxf
        also wierd, so each mjpeg frame can contain data about the playback rate? i had always thought that was the responsibility of the container
      • right
      • mithro
        kind of
      • the source is likely to be the UVC header, but it goes USB->V4L2->gstreamer
      • tpb
        Title: HDMI2USB-misoc-firmware/descriptors_hdmi2usb_alt.c at fx2-refactor · mithro/HDMI2USB-misoc-firmware · GitHub (at github.com)
      • mithro
        Probably either line 316 or 331
      • xfxf
        ah, i assume they're defaults? why not default to 30?
      • mithro
        xfxf: because that is what the old code did
      • tpb
        Title: HDMI2USB-misoc-firmware/descriptors_hdmi2usb.a51 at fx2-refactor · mithro/HDMI2USB-misoc-firmware · GitHub (at github.com)
      • mithro
        I spent a whole bunch of time converting that a51 into that .c file so I could understand what was going on
      • xfxf
        right
      • tpb
        Title: HDMI2USB-misoc-firmware/uvclocal.h at fx2-refactor · mithro/HDMI2USB-misoc-firmware · GitHub (at github.com)
      • xfxf
        so i see FRAME_INTERVAL_30FPS is defined there
      • should i just change 15 to 30 in that c file?
      • mithro
        xfxf: Yes, I just added that
      • xfxf: I have no idea if that .c file works yet
      • xfxf
        oh, right, you're still using the a51
      • mithro
        xfxf: this is my fx2-refactor branch
      • xfxf
        right
      • mithro
        which is trying to get the FX2 firmware into a better state were we can improve it
      • and get it working reliably under Linux, Windows and Mac
      • xfxf
        that explains why trying to egrep for FRAME_INTERVAL locally found nothing
      • neat, sounds good
      • so i should hang tight until you've done that?
      • mithro
        xfxf: well, it seems like you might have a work-around for now?
      • xfxf: btw did you try my changes to your code?
      • xfxf
        sort of, i know what the issue is now, i'll just need to figure out how to get to create a 30fps file (it's only the mjpeg dumped off the device that is playing back properly)
      • i did a basic straight capture + manual conversion the other day just to prove this works to myself
      • my intention was to mangle up the gstreamer pipeline more so it's transcoding to disk as part of the capture
      • not sure if the 15fps wierdness might complicate that
      • mithro
        I'm sure thaytan and help you figure out a gstreamer pipeline which overrides the information that v4l2 is telling it
      • xfxf
        cool, can you do that to the above so the mjpeg saved out does have the right header info?
      • above line i pasted, that is
      • i assume if that's done early enough in the pipeline then i shouldn't have an issue adding extra stuff after it
      • pretty much as soon as i have some basic switching working
      • i'll start recording stuff with it
      • even if it requires some wierd workarounds
      • as long as i get usable video out at the other end
      • mithro
        xfxf: I don't know how
      • xfxf
        thaytan: ping :)
      • thaytan
        hmm?
      • xfxf
        see above - the hdmi2usb device with the gstreamer line i pasted seems to be writing out 30fps data with a 15fps header (i assume)
      • need a way to force it to 30fps
      • thaytan
        capssetter
      • gst-launch-1.0 v4l2src device=/dev/video1 ! image/jpeg,width=1280,height=720 ! capssetter caps='image/jpeg,width=1280,height=720,framerate=30/1' ! ....
      • like that
      • xfxf
        right, ta, was just looking up the syntax
      • will give it a go
      • neat, works, thanks again!
      • mithro: another thing that happens too is my canon HDMI camera when plugged into the HDMI2USB doesn't actually feed it any data
      • you have to turn it off and turn it back on again then HDMI2USB will see it
      • given you force the output resolution on the camera my assumption is it's possibly not handshaking (as much, at all? i don't know)
      • may be common with other cameras or scalers, not sure
      • (this is my XA20 camera, not the LCA ones)
      • ysionneau
        morning
      • mithro
        xfxf: the camera or the HDMI2USB?
      • xfxf
        the camera has to be power cycled
      • this throws one out in a normal setup routine because you plug everything in, turn it on, and the camera doesn't work
      • mithro
        xfxf: have you tried resetting the video_mode with the camera plugged in?
      • xfxf
        i believe i did, but i'm happy to try that now
      • mithro
        Please do
      • ysionneau
        I guess that to use the tools you linked mithro I need to connect somehow my i2c pins to my computer motherboard?
      • since those tools run on host
      • mithro
        ysionneau: I was going to ask if you had a beaglebone or buspirate or something?
      • xfxf: I was wondering if it was a form of https://github.com/timvideos/HDMI2USB-misoc-fir... or not?
      • tpb
        Title: Support resetting an video input without resetting the output · Issue #80 · timvideos/HDMI2USB-misoc-firmware · GitHub (at github.com)
      • ysionneau
        hmmm I don't, but I think I might have some compatible board
      • I think there are alternative firmware for other boards
      • oh, I have a minnowboard Max
      • let's hope it has i2c
      • mithro
        ysionneau: if you had a beaglebone or similar board, Rohit might actually be able to help
      • he's done a whole bunch of i2c work for talking to the VGA chipset
      • ysionneau
        yay i2c
      • xfxf
        mithro: nope, doesn't work