How to create a tv tuner library for android?









up vote
0
down vote

favorite












I have a K1 Plus android box which have a built-in dvb-t2` and dvb-s2 tuner in it. I want to create an app that gets and shows the channels from those tuners.



At first, I found about android's TV Input Framework(TIF). The sample app keeps crashing by calling a method that gets the available inputs of the device. Then, found out that it only work for real Android TVs. I looked for android libraries for that android box but didn't find anything. I looked for c libraries that can access the tuners but didn't find anything as well. I looked for code on how to access the hardware components of an android device and didn't find anything. I recently found about https://opencv.org/. I haven't read everything about it yet so I don't really know how to use it.



I found about https://git.linuxtv.org/v4l-utils.git from an answer to a SO question but it seems like it can only be used after installing it to an OS. I was able to compile it using CMake on android but it got missing header files.
I also found http://android4tv.iwedia.com. Unfortunately, it's also using TIF.



I'm trying to create something like kodi but I found out that it isn't really the one that gets the channels but kodi is getting it from a supported iptv box. I have zero knowledge about writing C but I'll try to make the code.



This is the box btw. http://www.videostrong.com/S905D+DVB(KI%20PLUS)/55.html










share|improve this question



























    up vote
    0
    down vote

    favorite












    I have a K1 Plus android box which have a built-in dvb-t2` and dvb-s2 tuner in it. I want to create an app that gets and shows the channels from those tuners.



    At first, I found about android's TV Input Framework(TIF). The sample app keeps crashing by calling a method that gets the available inputs of the device. Then, found out that it only work for real Android TVs. I looked for android libraries for that android box but didn't find anything. I looked for c libraries that can access the tuners but didn't find anything as well. I looked for code on how to access the hardware components of an android device and didn't find anything. I recently found about https://opencv.org/. I haven't read everything about it yet so I don't really know how to use it.



    I found about https://git.linuxtv.org/v4l-utils.git from an answer to a SO question but it seems like it can only be used after installing it to an OS. I was able to compile it using CMake on android but it got missing header files.
    I also found http://android4tv.iwedia.com. Unfortunately, it's also using TIF.



    I'm trying to create something like kodi but I found out that it isn't really the one that gets the channels but kodi is getting it from a supported iptv box. I have zero knowledge about writing C but I'll try to make the code.



    This is the box btw. http://www.videostrong.com/S905D+DVB(KI%20PLUS)/55.html










    share|improve this question

























      up vote
      0
      down vote

      favorite









      up vote
      0
      down vote

      favorite











      I have a K1 Plus android box which have a built-in dvb-t2` and dvb-s2 tuner in it. I want to create an app that gets and shows the channels from those tuners.



      At first, I found about android's TV Input Framework(TIF). The sample app keeps crashing by calling a method that gets the available inputs of the device. Then, found out that it only work for real Android TVs. I looked for android libraries for that android box but didn't find anything. I looked for c libraries that can access the tuners but didn't find anything as well. I looked for code on how to access the hardware components of an android device and didn't find anything. I recently found about https://opencv.org/. I haven't read everything about it yet so I don't really know how to use it.



      I found about https://git.linuxtv.org/v4l-utils.git from an answer to a SO question but it seems like it can only be used after installing it to an OS. I was able to compile it using CMake on android but it got missing header files.
      I also found http://android4tv.iwedia.com. Unfortunately, it's also using TIF.



      I'm trying to create something like kodi but I found out that it isn't really the one that gets the channels but kodi is getting it from a supported iptv box. I have zero knowledge about writing C but I'll try to make the code.



      This is the box btw. http://www.videostrong.com/S905D+DVB(KI%20PLUS)/55.html










      share|improve this question















      I have a K1 Plus android box which have a built-in dvb-t2` and dvb-s2 tuner in it. I want to create an app that gets and shows the channels from those tuners.



      At first, I found about android's TV Input Framework(TIF). The sample app keeps crashing by calling a method that gets the available inputs of the device. Then, found out that it only work for real Android TVs. I looked for android libraries for that android box but didn't find anything. I looked for c libraries that can access the tuners but didn't find anything as well. I looked for code on how to access the hardware components of an android device and didn't find anything. I recently found about https://opencv.org/. I haven't read everything about it yet so I don't really know how to use it.



      I found about https://git.linuxtv.org/v4l-utils.git from an answer to a SO question but it seems like it can only be used after installing it to an OS. I was able to compile it using CMake on android but it got missing header files.
      I also found http://android4tv.iwedia.com. Unfortunately, it's also using TIF.



      I'm trying to create something like kodi but I found out that it isn't really the one that gets the channels but kodi is getting it from a supported iptv box. I have zero knowledge about writing C but I'll try to make the code.



      This is the box btw. http://www.videostrong.com/S905D+DVB(KI%20PLUS)/55.html







      android c cmake






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited yesterday

























      asked 2 days ago









      rminaj

      95




      95






















          1 Answer
          1






          active

          oldest

          votes

















          up vote
          0
          down vote



          accepted










          It will probably take a lot of reverse engineering or a leaked documentation to achieve what you are trying to do.



          Devices like the one you are working on usually use proprietery hardware with proprietery drivers for things like DVB, so making a third party app for a TV tuner is very hard.



          First, you need to find out what kind of DVB chip / card this Android box has.
          Then, you need to figure out how (on what kind of BUS) it is connected to the system.



          If it is something generic, you may be able to talk to its driver, if not, you would need to write your own driver.



          This is too complicated to explain in a SO post, but you could start by opening the box and looking at the components or by running commands like lsusb through ADB to try and identify the DVB component.



          If the device already has a DVB app, you could try disassembling it, to find out how it works.



          Good luck!






          share|improve this answer








          New contributor




          Lev M. is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
          Check out our Code of Conduct.

















          • Oh, I see. I didn't know it would be a very difficult task. I know I need c but didn't know I need to go into disassembling the device itself.
            – rminaj
            yesterday










          • Can you, like, email me the other details about this? So I can have more idea of how to do this. I already understand the things that I need to do but it's not bad having more information about the task I need to do.
            – rminaj
            yesterday










          Your Answer






          StackExchange.ifUsing("editor", function ()
          StackExchange.using("externalEditor", function ()
          StackExchange.using("snippets", function ()
          StackExchange.snippets.init();
          );
          );
          , "code-snippets");

          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "1"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













           

          draft saved


          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53237848%2fhow-to-create-a-tv-tuner-library-for-android%23new-answer', 'question_page');

          );

          Post as a guest






























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes








          up vote
          0
          down vote



          accepted










          It will probably take a lot of reverse engineering or a leaked documentation to achieve what you are trying to do.



          Devices like the one you are working on usually use proprietery hardware with proprietery drivers for things like DVB, so making a third party app for a TV tuner is very hard.



          First, you need to find out what kind of DVB chip / card this Android box has.
          Then, you need to figure out how (on what kind of BUS) it is connected to the system.



          If it is something generic, you may be able to talk to its driver, if not, you would need to write your own driver.



          This is too complicated to explain in a SO post, but you could start by opening the box and looking at the components or by running commands like lsusb through ADB to try and identify the DVB component.



          If the device already has a DVB app, you could try disassembling it, to find out how it works.



          Good luck!






          share|improve this answer








          New contributor




          Lev M. is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
          Check out our Code of Conduct.

















          • Oh, I see. I didn't know it would be a very difficult task. I know I need c but didn't know I need to go into disassembling the device itself.
            – rminaj
            yesterday










          • Can you, like, email me the other details about this? So I can have more idea of how to do this. I already understand the things that I need to do but it's not bad having more information about the task I need to do.
            – rminaj
            yesterday














          up vote
          0
          down vote



          accepted










          It will probably take a lot of reverse engineering or a leaked documentation to achieve what you are trying to do.



          Devices like the one you are working on usually use proprietery hardware with proprietery drivers for things like DVB, so making a third party app for a TV tuner is very hard.



          First, you need to find out what kind of DVB chip / card this Android box has.
          Then, you need to figure out how (on what kind of BUS) it is connected to the system.



          If it is something generic, you may be able to talk to its driver, if not, you would need to write your own driver.



          This is too complicated to explain in a SO post, but you could start by opening the box and looking at the components or by running commands like lsusb through ADB to try and identify the DVB component.



          If the device already has a DVB app, you could try disassembling it, to find out how it works.



          Good luck!






          share|improve this answer








          New contributor




          Lev M. is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
          Check out our Code of Conduct.

















          • Oh, I see. I didn't know it would be a very difficult task. I know I need c but didn't know I need to go into disassembling the device itself.
            – rminaj
            yesterday










          • Can you, like, email me the other details about this? So I can have more idea of how to do this. I already understand the things that I need to do but it's not bad having more information about the task I need to do.
            – rminaj
            yesterday












          up vote
          0
          down vote



          accepted







          up vote
          0
          down vote



          accepted






          It will probably take a lot of reverse engineering or a leaked documentation to achieve what you are trying to do.



          Devices like the one you are working on usually use proprietery hardware with proprietery drivers for things like DVB, so making a third party app for a TV tuner is very hard.



          First, you need to find out what kind of DVB chip / card this Android box has.
          Then, you need to figure out how (on what kind of BUS) it is connected to the system.



          If it is something generic, you may be able to talk to its driver, if not, you would need to write your own driver.



          This is too complicated to explain in a SO post, but you could start by opening the box and looking at the components or by running commands like lsusb through ADB to try and identify the DVB component.



          If the device already has a DVB app, you could try disassembling it, to find out how it works.



          Good luck!






          share|improve this answer








          New contributor




          Lev M. is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
          Check out our Code of Conduct.









          It will probably take a lot of reverse engineering or a leaked documentation to achieve what you are trying to do.



          Devices like the one you are working on usually use proprietery hardware with proprietery drivers for things like DVB, so making a third party app for a TV tuner is very hard.



          First, you need to find out what kind of DVB chip / card this Android box has.
          Then, you need to figure out how (on what kind of BUS) it is connected to the system.



          If it is something generic, you may be able to talk to its driver, if not, you would need to write your own driver.



          This is too complicated to explain in a SO post, but you could start by opening the box and looking at the components or by running commands like lsusb through ADB to try and identify the DVB component.



          If the device already has a DVB app, you could try disassembling it, to find out how it works.



          Good luck!







          share|improve this answer








          New contributor




          Lev M. is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
          Check out our Code of Conduct.









          share|improve this answer



          share|improve this answer






          New contributor




          Lev M. is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
          Check out our Code of Conduct.









          answered 2 days ago









          Lev M.

          1515




          1515




          New contributor




          Lev M. is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
          Check out our Code of Conduct.





          New contributor





          Lev M. is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
          Check out our Code of Conduct.






          Lev M. is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
          Check out our Code of Conduct.











          • Oh, I see. I didn't know it would be a very difficult task. I know I need c but didn't know I need to go into disassembling the device itself.
            – rminaj
            yesterday










          • Can you, like, email me the other details about this? So I can have more idea of how to do this. I already understand the things that I need to do but it's not bad having more information about the task I need to do.
            – rminaj
            yesterday
















          • Oh, I see. I didn't know it would be a very difficult task. I know I need c but didn't know I need to go into disassembling the device itself.
            – rminaj
            yesterday










          • Can you, like, email me the other details about this? So I can have more idea of how to do this. I already understand the things that I need to do but it's not bad having more information about the task I need to do.
            – rminaj
            yesterday















          Oh, I see. I didn't know it would be a very difficult task. I know I need c but didn't know I need to go into disassembling the device itself.
          – rminaj
          yesterday




          Oh, I see. I didn't know it would be a very difficult task. I know I need c but didn't know I need to go into disassembling the device itself.
          – rminaj
          yesterday












          Can you, like, email me the other details about this? So I can have more idea of how to do this. I already understand the things that I need to do but it's not bad having more information about the task I need to do.
          – rminaj
          yesterday




          Can you, like, email me the other details about this? So I can have more idea of how to do this. I already understand the things that I need to do but it's not bad having more information about the task I need to do.
          – rminaj
          yesterday

















           

          draft saved


          draft discarded















































           


          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53237848%2fhow-to-create-a-tv-tuner-library-for-android%23new-answer', 'question_page');

          );

          Post as a guest














































































          這個網誌中的熱門文章

          How to read a connectionString WITH PROVIDER in .NET Core?

          In R, how to develop a multiplot heatmap.2 figure showing key labels successfully

          Museum of Modern and Contemporary Art of Trento and Rovereto