Initial investigation points to some fine tuning in the `typefind` element:

The test file that mopidy generates (single line) is detected as a
subtitle format:

```
$ GST_DEBUG=typefind*:5 gst-launch-1.0 filesrc
location=/home/marc/Development/salsa/mopidy/.pybuild/cpython3_3.13/build/tests/data/scanner/plain.txt
! typefind ! fakesink dump=0
0:00:00.008654079      44667      44667 DEBUG               typefind
gsttypefindelement.c:409:gst_type_find_handle_src_query:<typefindelement0>
Handling src query caps
0:00:00.008670771      44667      44667 DEBUG               typefind
gsttypefindelement.c:419:gst_type_find_handle_src_query:<typefindelement0>
Got caps query, our caps are (NULL)
0:00:00.008685844      44667      44667 DEBUG               typefind
gsttypefindelement.c:409:gst_type_find_handle_src_query:<typefindelement0>
Handling src query caps
0:00:00.008688759      44667      44667 DEBUG               typefind
gsttypefindelement.c:419:gst_type_find_handle_src_query:<typefindelement0>
Got caps query, our caps are (NULL)
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
0:00:00.009315864      44667      44669 DEBUG               typefind
gsttypefindelement.c:409:gst_type_find_handle_src_query:<typefindelement0>
Handling src query uri
0:00:00.009340142      44667      44669 DEBUG               typefind
gsttypefindelement.c:1114:gst_type_find_element_loop:<typefindelement0>
Pushing STREAM_START
0:00:00.009355903      44667      44669 DEBUG               typefind
gsttypefindelement.c:1128:gst_type_find_element_loop:<typefindelement0>
find type in pull mode
0:00:00.009367582      44667      44669 DEBUG               typefind
gsttypefindelement.c:823:gst_type_find_get_extension:<typefindelement0>
finding extension of
file:///home/marc/Development/salsa/mopidy/.pybuild/cpython3_3.13/build/tests/data/scanner/plain.txt
0:00:00.009396859      44667      44669 DEBUG               typefind
gsttypefindelement.c:846:gst_type_find_get_extension:<typefindelement0>
found extension txt
0:00:00.015174636      44667      44669 DEBUG               typefind
gsttypefindelement.c:1169:gst_type_find_element_loop: Found caps
(NULL)
0:00:00.015183905      44667      44669 DEBUG               typefind
gsttypefindelement.c:1179:gst_type_find_element_loop: Trying to guess
using extension
0:00:00.015190564      44667      44669 DEBUG               typefind
gsttypefindelement.c:823:gst_type_find_get_extension:<typefindelement0>
finding extension of
file:///home/marc/Development/salsa/mopidy/.pybuild/cpython3_3.13/build/tests/data/scanner/plain.txt
0:00:00.015199078      44667      44669 DEBUG               typefind
gsttypefindelement.c:846:gst_type_find_get_extension:<typefindelement0>
found extension txt
0:00:00.015330116      44667      44669 DEBUG               typefind
gsttypefindelement.c:1192:gst_type_find_element_loop: Emitting found
caps application/x-subtitle
0:00:00.015339495      44667      44669 INFO                typefind
gsttypefindelement.c:183:gst_type_find_element_have_type:<typefindelement0>
found caps application/x-subtitle, probability=100
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
0:00:00.015608737      44667      44667 DEBUG               typefind
gsttypefindelement.c:409:gst_type_find_handle_src_query:<typefindelement0>
Handling src query latency
Redistribute latency...
0:00:00.015698777      44667      44667 DEBUG               typefind
gsttypefindelement.c:409:gst_type_find_handle_src_query:<typefindelement0>
Handling src query latency
New clock: GstSystemClock
Got EOS from element "pipeline0".
Execution ended after 0:00:00.000245248
Setting pipeline to NULL ...
Freeing pipeline ...

```

While a longer text format is detected as text:

```
$ GST_DEBUG=typefind*:5 gst-launch-1.0 filesrc
location=/home/marc/vivotek-bug.txt ! typefind ! fakesink dump=0
0:00:00.008476834      44713      44713 DEBUG               typefind
gsttypefindelement.c:409:gst_type_find_handle_src_query:<typefindelement0>
Handling src query caps
0:00:00.008488294      44713      44713 DEBUG               typefind
gsttypefindelement.c:419:gst_type_find_handle_src_query:<typefindelement0>
Got caps query, our caps are (NULL)
0:00:00.008494098      44713      44713 DEBUG               typefind
gsttypefindelement.c:409:gst_type_find_handle_src_query:<typefindelement0>
Handling src query caps
0:00:00.008497422      44713      44713 DEBUG               typefind
gsttypefindelement.c:419:gst_type_find_handle_src_query:<typefindelement0>
Got caps query, our caps are (NULL)
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
0:00:00.009285388      44713      44715 DEBUG               typefind
gsttypefindelement.c:409:gst_type_find_handle_src_query:<typefindelement0>
Handling src query uri
0:00:00.009322194      44713      44715 DEBUG               typefind
gsttypefindelement.c:1114:gst_type_find_element_loop:<typefindelement0>
Pushing STREAM_START
0:00:00.009344733      44713      44715 DEBUG               typefind
gsttypefindelement.c:1128:gst_type_find_element_loop:<typefindelement0>
find type in pull mode
0:00:00.009361943      44713      44715 DEBUG               typefind
gsttypefindelement.c:823:gst_type_find_get_extension:<typefindelement0>
finding extension of file:///home/marc/vivotek-bug.txt
0:00:00.009392056      44713      44715 DEBUG               typefind
gsttypefindelement.c:846:gst_type_find_get_extension:<typefindelement0>
found extension txt
0:00:00.016466129      44713      44715 DEBUG               typefind
gsttypefindelement.c:1169:gst_type_find_element_loop: Found caps
text/plain
0:00:00.016472763      44713      44715 DEBUG               typefind
gsttypefindelement.c:1192:gst_type_find_element_loop: Emitting found
caps text/plain
0:00:00.016482456      44713      44715 INFO                typefind
gsttypefindelement.c:183:gst_type_find_element_have_type:<typefindelement0>
found caps text/plain, probability=85
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
0:00:00.016683200      44713      44713 DEBUG               typefind
gsttypefindelement.c:409:gst_type_find_handle_src_query:<typefindelement0>
Handling src query latency
Redistribute latency...
0:00:00.016720517      44713      44713 DEBUG               typefind
gsttypefindelement.c:409:gst_type_find_handle_src_query:<typefindelement0>
Handling src query latency
New clock: GstSystemClock
Got EOS from element "pipeline0".
Execution ended after 0:00:00.000107546
Setting pipeline to NULL ...
Freeing pipeline ...

```

When a longer text is added, the test succeeds. I suggest updating the
test in Mopidy to provide a more relevant text input.

Reply via email to