Announcement

Collapse
No announcement yet.

Making dashcam application with speed overlay.

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Making dashcam application with speed overlay.

    Highly influenced by this thread, I'm writing an application that will record out your front window while the computer is running and overlay the speed onto the video. You might ask why since there's already RRcam but that isn't standalone and has to be embedded into a skin from what I read. So I'm writing this one independent of RoadRunner or any front end. Currently I'm using the Java Media Framework (JMF) to capture images at a specified framerate and save them in sequence. Then run another file and it merges all the images into a .mov file and plays as a video. All I've got to add is the NMEA parsing from the GPS receiver and the overlay of the text. This thread is just to let you know the progress.

    For any questions about my Java front end, it's on pause. Lots of issues with the seek bar.
    Ampie Case
    2.5" Hard Drive 80GB Samsung 5400RPM
    256 MB DDR2 PC5400
    Xenarc 700TSV - VGA Monitor
    Intel D945GCLF Motherboard
    M2-ATX-HV

    2005 Honda Civic

  • #2
    since it's java, are you keeping cross-platformability in mind?

    Also, why the mov format?

    I like the idea btw . How will it interface with the gps device?
    Former author of LinuxICE, nghost, nobdy.
    Current author of Automotive Message Broker (AMB).
    Works on Tizen IVI. Does not represent anyone or anything but himself.

    Comment


    • #3
      Any estimations on the amount of CPU power required to complete these tasks? It sounds like it might be quite a ressource hog...

      Comment


      • #4
        Cross platform will likely be possible, but I'll need to resource a machine to test it on. I simply have to have a check for the 2 different types of camera drivers for each platform.

        .mov right now is just what was in the piece of software I hacked up from forums.sun.com but I'm thinking about converting it to .mpeg or .asf. I'm not sure though, I don't really see a need to. I won't be reviewing the tape very often and if I need to, I can convert the finished video later.

        It'll interface with the GPS only to pull the NMEA sentence and then parse the sentence once it has it. You'll be able to get all GPS information from this single string such as heading, speed, location, altitude, all that stuff.

        And sorry, no estimates on CPU power right now, going to have to wait until it's done to see how it performs! I got the recording almost done now, just got to work on the NMEA catching/parsing.
        Ampie Case
        2.5" Hard Drive 80GB Samsung 5400RPM
        256 MB DDR2 PC5400
        Xenarc 700TSV - VGA Monitor
        Intel D945GCLF Motherboard
        M2-ATX-HV

        2005 Honda Civic

        Comment


        • #5
          will it be open source?
          Former author of LinuxICE, nghost, nobdy.
          Current author of Automotive Message Broker (AMB).
          Works on Tizen IVI. Does not represent anyone or anything but himself.

          Comment


          • #6
            If you can get this working to auto record and not error on standby/resume I will be very interested.
            My BMW E46 carpc
            My iGuidance 4 skin
            FS transflective 2008 lilliput

            Comment


            • #7
              I've put together a fairly reliable NMEA parsing app, but it has a bit of overhead, due to having to hold my serial controller's hand... the Serial controller that came with my GPS likes to blue screen windows, if you try to read data as soon as its dropped in the buffer... for some reason, it like the data to sit in the buffer for atleast 100ms... I havn't been able to figure out a good way around it, other than manually "aging" the data in the buffer, and checking to see if the data is atleast 100ms old before polling the buffer.

              but in any sense; for most of my resources, I used:
              http://www.gpsinformation.org/dale/nmea.htm

              about 90% of the info in there is accurate. I can't speak for Java, but in Visual Basic, parsing the info was very easy. Only thing to remember, is the lat and lng that you get from GGA, RMC, and GLL are not in a "standard" format..

              When you are done with the NMEA parsing function, I'd love to see how you managed the logic, on a per-command basis!

              thanks
              Mike

              Comment


              • #8
                Originally posted by kev000 View Post
                will it be open source?
                yes
                Ampie Case
                2.5" Hard Drive 80GB Samsung 5400RPM
                256 MB DDR2 PC5400
                Xenarc 700TSV - VGA Monitor
                Intel D945GCLF Motherboard
                M2-ATX-HV

                2005 Honda Civic

                Comment


                • #9
                  watching this closely if you need a beta tester im all yours
                  MY build...a walk thru, finally getting to it

                  Comment


                  • #10
                    haha thanks! I took a look at the J3D application from SUN last night and it's very interesting. It caches a frame from the video and then compares every pixel to all the pixels in the next frame. If any pixel has changed to a predefined degree, the frame is said to have changed and therefore detects movement. It's a motion detection application purely written in Java and it works great. I just don't know if I need to incorporate it since this camera will probably record all the time the car is moving. There'd be no point in having it not record if the computer is on. It'd be useful in a home security project though.
                    Ampie Case
                    2.5" Hard Drive 80GB Samsung 5400RPM
                    256 MB DDR2 PC5400
                    Xenarc 700TSV - VGA Monitor
                    Intel D945GCLF Motherboard
                    M2-ATX-HV

                    2005 Honda Civic

                    Comment


                    • #11
                      I just got the overlay working and now only have to work on the NMEA parsing. I currently have this working with a static speed indicator, it's awesome! conjur, I'll take a look at your resources now as well as SUN's Location API.....I'm sourcing code from a few different places for the parsing.
                      Ampie Case
                      2.5" Hard Drive 80GB Samsung 5400RPM
                      256 MB DDR2 PC5400
                      Xenarc 700TSV - VGA Monitor
                      Intel D945GCLF Motherboard
                      M2-ATX-HV

                      2005 Honda Civic

                      Comment


                      • #12
                        cant wait to see it all done
                        MY build...a walk thru, finally getting to it

                        Comment


                        • #13
                          Originally posted by Maheriano View Post
                          I just got the overlay working and now only have to work on the NMEA parsing. I currently have this working with a static speed indicator, it's awesome! conjur, I'll take a look at your resources now as well as SUN's Location API.....I'm sourcing code from a few different places for the parsing.
                          Check your PM's.

                          my code is ugly, and sorta specific to the GPS that I have, but it should give you a good lead on parsing the data.

                          Comment


                          • #14
                            Sorry, this is on hold for at least a month as I don't have the money to buy a webcam right now. Unless I can get a cheap one a friend is not using. I'm moving back home and it's sucking my finances.

                            Otherwise the code is almost done and I'll try and JAR it up so you don't have to install all the extra frameworks and JRE/JVM that I did.
                            Ampie Case
                            2.5" Hard Drive 80GB Samsung 5400RPM
                            256 MB DDR2 PC5400
                            Xenarc 700TSV - VGA Monitor
                            Intel D945GCLF Motherboard
                            M2-ATX-HV

                            2005 Honda Civic

                            Comment


                            • #15
                              Also, an alternate method:
                              In my reverse cam, I just used directshow; it can drop the "preview" window from a webcam on ANY control in windows, with almost no overhead... Just out of cuirosity, why are you going with java?

                              Comment

                              Working...
                              X